CN108206763B - 在交换机更换期间用于数据恢复的方法和设备 - Google Patents
在交换机更换期间用于数据恢复的方法和设备 Download PDFInfo
- Publication number
- CN108206763B CN108206763B CN201711382010.6A CN201711382010A CN108206763B CN 108206763 B CN108206763 B CN 108206763B CN 201711382010 A CN201711382010 A CN 201711382010A CN 108206763 B CN108206763 B CN 108206763B
- Authority
- CN
- China
- Prior art keywords
- port device
- mode single
- management controller
- switch
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2007—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1608—Error detection by comparing the output signals of redundant hardware
- G06F11/1616—Error detection by comparing the output signals of redundant hardware where the redundant component is an I/O device or an adapter therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3031—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a motherboard or an expansion card
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/557—Error correction, e.g. fault recovery or fault tolerance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Abstract
提供了在交换机更换期间用于数据恢复的方法和设备。公开了一种管理控制器。所述管理控制器可以包括从启动器接收请求的接收器。翻译器可以将从所述启动器接收的请求翻译成用于多模单端口装置的命令。桥接器可以与所述多模单端口装置通信,所述桥接器将所述命令发送到所述多模单端口装置,并从所述多模单端口装置接收回复。所述翻译器则可以将对所述命令的回复翻译成用于所述启动器的响应,于是发送器可以将所述响应传送到所述启动器。
Description
相关申请
本申请要求于2016年12月20日提交的序列号为62/437,029的美国临时专利申请的权益,出于所有目的通过引用将其并入本文。
技术领域
本发明构思总体上涉及计算机装置,且更具体地,涉及当在高可用性机箱中时可以支持单端口输入/输出(I/O)的计算机装置。
背景技术
最广泛使用的固态驱动器(SSD)支持单端口输入/输出(I/O)。一些SSD通过提供更好的故障保护来支持双端口I/O,以获得更高的系统可用性。但是双端口装置通常更加昂贵,且可能具有稍低的性能(如果待发送的信息量超过用于传输信息的总线的容量)。以太网连接的SSD或[通过织物的非易失性存储器标准(Non-Volatile Memory Express,NVMe)](Non-Volatile Memory Express Over Fabrics,NVMeoF)装置被视为新颖的、新兴的且颠覆性的技术。这样的装置可以具有不同的类型,但是将被归于单端口或双端口I/O装置。
虽然单端口I/O装置更加便宜且可以提供更好的性能,但是单端口I/O装置具有缺点:机箱仅使用一条路径与装置通信。如果沿着该路径的任何部件发生故障,则装置(更重要的是装置上的任何数据)将无法访问,直到故障得到纠正或者系统执行降级恢复(graceful recovery)。
在沿着装置和其机箱之间的路径出现故障的情况下,仍然需要提供对单端口装置的访问的方法。
发明内容
下面的讨论旨在提供对可以实现本发明构思的某些方面的合适的(多个)机器的简要的一般描述。(多个)机器可以至少部分地通过以下来控制:通过来自常规输入装置的输入,例如键盘、鼠标等,以及通过从另一机器接收的指令、与虚拟现实(VR)环境的交互、生物计量反馈、或其他输入信号。如本文所使用的,术语“机器”旨在广义地涵盖单个机器、虚拟机器、或者通信耦接的机器、虚拟机器或一起操作的装置的系统。示例性的机器包括诸如个人计算机、工作站、服务器、便携式计算机、手持装置、电话、平板计算机等的计算装置,以及诸如私人或公共交通的运输装置,例如汽车、火车、出租车等。
(多个)机器可以包括嵌入式控制器,诸如可编程或不可编程逻辑装置或阵列、专用集成电路(ASIC)、嵌入式计算机、智能卡等。(多个)机器可以利用到一个或多个远程机器的一个或多个连接,诸如通过网络接口、调制解调器或其他通信耦接。机器可以通过诸如内联网、互联网、局域网、广域网等物理和/或逻辑网络互连。本领域技术人员将认识到,网络通信可以利用各种有线和/或无线短距离或长距离载波和协议,包括射频(RF)、卫星、微波、电气和电子工程师协会(IEEE)802.11、蓝牙、光学、红外线、电缆、激光等。
本发明构思的实施例可通过参考或结合包括功能、过程、数据结构、应用程序等的相关联的数据来描述时,在由机器访问,所述数据使得机器执行任务或定义抽象数据类型或低级硬件环境。相关联的数据可以例如存储在易失性和/或非易失性存储器(例如,RAM,ROM等)中,或存储在其他存储装置及其相关联的存储介质中,包括硬盘驱动器、磁盘、光学存储、磁带、闪存存储器、存储棒、数字视频光盘、生物存储等。相关联的数据可以以数据分组、串行数据、并行数据、传播信号等形式通过各种传输环境(包括物理和/或逻辑网络)被传送,并且可以以压缩或加密格式使用。相关联的数据可以在分布式环境中使用,并且本地和/或远程地存储以供机器访问。
本发明构思的实施例可以包括有形的非暂时机器可读介质,其包括可由一个或多个处理器执行的指令,所述指令包括用于执行本文所述的本发明构思的元素的指令。
本发明构思的实施例可以延伸到以下陈述,不作限制:
陈述1.本发明构思的实施例包括一种设备,其包括:
处理器;
在所述处理器上运行的软件;
故障交换机检测器,确定主交换机是否工作;
发送器,响应于所述故障交换机检测器来经由第一通信路径向主交换机传送请求或者经由第二通信路径向次级交换机传送请求;以及
接收器,接收对所述请求的响应。
陈述2.本发明构思的实施例包括如陈述1所述的设备,其中所述请求去往多模单端口装置。
陈述3.本发明构思的实施例包括如陈述2所述的设备,其中所述多模单端口装置支持通过织物的非易失性存储器标准(NVMeoF)协议。
陈述4.本发明构思的实施例包括如陈述1所述的设备,其中所述发送器可操作为:如果所述主交换机工作,则经由所述第一通信路径向所述主交换机传送所述请求,如果所述主交换机不工作,则经由所述第二通信路径向所述次级交换机传送所述请求。
陈述5.本发明构思的实施例包括如陈述4所述的设备,其中所述发送器可操作为:如果所述主交换机工作,则经由所述第二通信路径向所述次级交换机上的管理控制器传送所述请求,所述第二通信路径包括机架顶部(TOR)开关。
陈述6.本发明构思的实施例包括如陈述4所述的设备,其中:
所述故障交换机检测器包括定时器,以测量所述主交换机的延迟;以及
比较器,将所述主交换机的延迟与阈值进行比较,以确定所述主交换机是否故障。
陈述7.本发明构思的实施例包括如陈述4所述的设备,其中所述故障交换机检测器包括连接断开检测器,以检测与所述主交换机的连接断开。
陈述8.本发明构思的实施例包括如陈述4所述的设备,其中所述第一通信路径包括以太网端口。
陈述9.本发明构思的实施例包括如陈述8所述的设备,其中所述第二通信路径包括至少一个外围部件交换标准(PCIe)通道。
陈述10.本发明构思的实施例包括如陈述8所述的设备,其中所述第二通信路径包括系统管理总线(SMBus)。
陈述11.本发明构思的实施例包括一种管理控制器,其包括:
接收器,从启动器接收请求;
翻译器,将从所述启动器接收的请求翻译成用于多模单端口装置的命令,并将对所述命令的回复翻译成用于所述启动器的响应;
桥接器,与所述多模单端口装置通信,所述桥接器可操作为将所述命令发送到所述多模单端口装置,并从所述多模单端口装置接收所述回复;以及
发送器,将所述响应传送到所述启动器。
陈述12.本发明构思的实施例包括如陈述11所述的管理控制器,其中所述管理控制器是基板管理控制器(BMC)。
陈述13.本发明构思的实施例包括如陈述11所述的管理控制器,其中所述桥接器可操作为经由耦接到所述多模单端口装置的至少一个外围部件互连标准(PCIe)通道与所述多模单端口装置通信。
陈述14.本发明构思的实施例包括如陈述13所述的管理控制器,还包括根联合体,其使得所述管理控制器能够充当PCIe主机。
陈述15.本发明构思的实施例包括如陈述11所述的管理控制器,其中所述桥接器可操作为经由系统管理总线(SMBus)与所述多模单端口装置通信。
陈述16.本发明构思的实施例包括如陈述11所述的管理控制器,其中所述桥接器可操作为使用从包括非易失性存储器标准(NVMe)协议和NVMe管理接口的集合抽取的协议。
陈述17.本发明构思的实施例包括如陈述16所述的管理控制器,其中所述多模单端口装置支持通过织物的NVMe(NVMeoF)协议。
陈述18.本发明构思的实施例包括一种方法,其包括:
通过第一通信路径经由主交换机向多模单端口装置发送第一请求,所述多模单端口装置支持到主机的两个通信路径;
通过所述第一通信路径从所述主交换机接收对所述第一请求的第一响应;
在接收所述第一响应之后,确定所述主交换机不可用;
通过第二通信路径向次级交换机上的管理控制器发送去往所述多模单端口装置的第二请求;以及
通过所述第二通信路径从所述次级交换机上的管理控制器接收对所述第二请求的第二响应。
陈述19.本发明构思的实施例包括如陈述18所述的方法,还包括:
在接收所述第二响应之后,确定所述主交换机不可用;
通过所述第一通信路径向所述多模单端口装置发送第三请求;以及
通过所述第一通信路径从所述主交换机接收对所述第三请求的第三响应。
陈述20.本发明构思的实施例包括如权利要求18所述的陈述,其中确定主交换机不可用包括:
测量与所述主交换机的通信延迟;以及
如果所述延迟超过阈值,则确认所述主交换机不可用。
陈述21.本发明构思的实施例包括如陈述18所述的方法,其中确定主交换机不可用包括检测与所述主交换机的连接断开。
陈述22.本发明构思的实施例包括如陈述18所述的方法,其中所述多模单端口装置支持通过织物的非易失性存储器标准(NVMeoF)协议。
陈述23.本发明构思的实施例包括如陈述18所述的方法,其中所述第一通信路径包括以太网端口。
陈述24.本发明构思的实施例包括如陈述23所述的方法,其中所述第二通信路径包括至少一个外围部件交换标准(PCIe)通道。
陈述25.本发明构思的实施例包括如陈述23所述的方法,其中所述第二通信路径包括系统管理总线(SMBus)。
陈述26.本发明构思的实施例包括一种方法,其包括:
在管理控制器处从启动器接收请求,所述管理控制器包含在次级交换机内;
将所述请求翻译成用于多模单端口装置的命令,所述多模单端口装置通常由主交换机控制;
将所述命令从所述管理控制器发送到所述多模单端口装置;
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复;
将所述回复翻译成用于所述启动器的响应;以及
将所述响应从所述管理控制器发送到所述启动器。
陈述27.本发明构思的实施例包括如陈述26所述的方法,其中:
将所述命令从所述管理控制器发送到所述多模单端口装置包括通过至少一个外围部件互连标准(PCIe)通道将所述命令从所述管理控制器发送到所述多模单端口装置;以及
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复包括通过至少一个PCIe通道在所述管理控制器处从所述多模单端口装置接收对所述命令的回复。
陈述28.本发明构思的实施例包括如陈述27所述的方法,其中通过至少一个外围部件互连标准(PCIe)通道将所述命令从所述管理控制器发送到所述多模单端口装置包括使用根联合体以使得所述管理控制器能够充当PCIe主机。
陈述29.本发明构思的实施例包括如陈述26所述的方法,其中:
从所述管理控制器向所述多模单端口装置发送所述命令包括通过系统管理总线(SMBus)从所述管理控制器向所述多模单端口装置发送所述命令;以及
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复包括通过所述SMBus在所述管理控制器处从所述多模单端口装置接收对所述命令的回复。
陈述30.本发明构思的实施例包括如陈述26所述的方法,其中从所述管理控制器向所述多模单端口装置发送所述命令包括使用从包括非易失性存储器标准(NVMe)协议和NVMe管理接口的集合抽取的协议从所述管理控制器向所述多模单端口装置发送所述命令。
陈述31.本发明构思的实施例包括如陈述26所述的方法,其中:
将所述请求翻译成用于多模单端口装置的命令包括将所述请求翻译成通过织物的NVMe(NVMeoF)命令;以及
将所述回复翻译成用于所述启动器的响应包括将所述NVMeoF回复翻译成所述响应。
陈述32.本发明构思的实施例包括一种制品,其包括有形存储介质,所述存储介质已经在其上存储有非暂时指令,当由机器执行非暂时指令时,导致:
通过第一通信路径经由主交换机向多模单端口装置发送第一请求,所述多模单端口装置支持到主机的两个通信路径;
通过所述第一通信路径从所述主交换机接收对所述第一请求的第一响应;
在接收所述第一响应之后确定主交换机不可用;
通过第二通信路径向次级交换机上的管理控制器发送去往所述多模单端口装置的第二请求;以及
通过所述第二通信路径从所述次级交换机上的管理控制器接收对所述第二请求的第二响应。
陈述33.本发明构思的实施例包括如陈述32所述的制品,所述有形存储介质在其上存储有另外的非暂时指令,当由所述机器执行所述另外的非暂时指令时,导致:
在接收所述第二响应之后,确定所述主交换机可用;以及
通过所述第一通信路径经由所述主交换机向所述多模单端口装置发送第三请求;以及
通过所述第一通信路径从所述主交换机接收对所述第三请求的第三响应。
陈述34.本发明构思的实施例包括根据陈述32所述的制品,其中确定主交换机不可用包括:
测量与所述主交换机的通信延迟;以及
如果所述延迟超过阈值,则确认所述主交换机不可用。
陈述35.本发明构思的实施例包括如陈述32所述的制品,其中确定主交换机不可用包括检测与所述主交换机的连接断开。
陈述36.本发明构思的实施例包括如陈述32所述的制品,其中所述多模单端口装置支持通过织物的非易失性存储器标准(NVMeoF)协议。
陈述37.本发明构思的实施例包括如陈述32所述的制品,其中所述第一通信路径包括以太网端口。
陈述38.本发明构思的实施例包括如陈述37所述的制品,其中所述第二通信路径包括至少一个外围部件交换标准(PCIe)通道。
陈述39.本发明构思的实施例包括如陈述37所述的制品,其中所述第二通信路径包括系统管理总线(SMBus)。
陈述40.本发明构思的实施例包括一种制品,其包括有形存储介质,所述有形存储介质在其上存储有非暂时指令,当由机器执行所述非暂时指令时,导致:
在管理控制器处从启动器接收请求,所述管理控制器包含在次级交换机内;
将所述请求翻译成用于多模单端口装置的命令,所述多模单端口装置通常由主交换机控制;
将所述命令从所述管理控制器发送到所述多模单端口装置;
在所述管理控制器处从所述模单端口装置接收对所述命令的回复;
将所述回复翻译成用于所述启动器的响应;以及
将所述响应从所述管理控制器发送到所述启动器。
陈述41.本发明构思的实施例包括如陈述40所述的制品,其中:
将所述命令从所述管理控制器发送到所述多模单端口装置包括通过至少一个外围部件互连标准(PCIe)通道从将所述命令从所述管理控制器发送到所述多模单端口装置;以及
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复包括通过至少一个PCIe通道在所述管理控制器处从所述模单端口装置接收对所述命令的回复。
陈述42.本发明构思的实施例包括如陈述41所述的制品,其中通过至少一个外围部件互连标准(PCIe)通道从将所述命令从所述管理控制器发送到所述多模单端口装置包括使用根联合体以使得所述管理控制器能够充当PCIe主机。
陈述43.本发明构思的实施例包括如陈述40所述的制品,其中:
将所述命令从所述管理控制器发送到所述多模单端口装置包括通过系统管理总线(SMBus)将所述命令从所述管理控制器发送到所述多模单端口装置;以及
在所述理控制器处从所述多模单端口装置接收对所述命令的回复包括通过所述SMBus在所述管理控制器处从所述多模单端口装置接收对所述命令的回复。
陈述44.本发明构思的实施例包括如陈述40所述的制品,其中将所述命令从所述管理控制器发送到所述多模单端口装置包括使用从包括非易失性存储器标准(NVMe)协议和NVMe管理接口的集合抽取的协议将所述命令从所述管理控制器发送到所述多模单端口装置。
陈述45.本发明构思的实施例包括如陈述40所述的制品,其中:
将所述请求翻译成用于多模单端口装置的命令包括将所述请求翻译成通过织物的NVMe(NVMeoF)命令;以及
将所述回复翻译成用于所述启动器的响应包括将所述NVMeoF回复翻译成所述响应。
附图说明
图1示出了根据本发明构思的实施例的具有装置的机器。
图2示出了图1的机器的附加细节。
图3A示出了使用第一通信路径进行通信的图1的机箱和装置。
图3B示出了在第一通信路径故障的情况下的使用第二通信路径通信的图1的机箱和装置。
图4示出了图1的故障交换机检测器的细节。
图5示出了图3A-3B的管理控制器的细节。
图6示出了处理图1的启动器与装置之间的通信的图5的翻译器和桥接器。
图7示出了根据本发明构思的实施例的图1的启动器请求使用第二通信路径进行路由来与图1的装置进行通信的示例过程的流程图。
图8-9示出了根据本发明构思的实施例的图1的故障交换机检测器确定主交换机是不工作的示例过程的流程图。
图10示出了根据本发明构思的实施例的图3的管理控制器代表图1的启动器与图3的装置进行通信的示例过程的流程图。
具体实施方式
现在将详细参考本发明构思的实施例,这些实施例的示例在附图中示出。在下面的详细描述中,阐述了许多具体细节以使能够透彻地理解本发明构思。然而,应当理解,本领域普通技术人员可以在没有这些具体细节的情况下实践本发明构思。在其他情况下,没有详细描述公知的方法、过程、部件、电路和网络,以免不必要地模糊实施例的方面。
应该理解,尽管本文可能使用术语第一、第二等来描述各种元件,但是这些元件不应被这些术语限制。这些术语仅用于区分一个元件和另一个元件。例如,第一模块可以被称为第二模块,并且类似地,第二模块可以被称为第一模块,而不脱离本发明构思的范围。
在本发明构思的描述中使用的术语仅用于描述特定实施例的目的,而不意在限制本发明构思。如在本发明构思和所附的权利要求的描述中所使用的,单数形式“一”、“一个”和“所述”旨在也包括复数形式,除非上下文另外清楚地指明。还应当理解,本文所使用的术语“和/或”是指并涵盖一个或多个相关的所列项目的任何和所有可能的组合。应当进一步理解的是,当在本说明书中使用时,术语“包括”和/或“包含”指定所陈述的特征、整体、步骤、操作、元件和/或部件的存在,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件,部件和/或其组合。附图的部件和特征不一定按比例绘制。
请想象支持两个半宽度(half-width)热插拔交换机的假想架构。当需要更换交换机时,由于缺少到受影响的装置的备用或冗余数据路径,连接到故障交换机的单端口装置将无法从中断幸免。在此期间,这些装置上的数据不再可用。这将导致不期望的后果。
在与单端口输入/输出(I/O)装置通信故障期间,经由控制平面的替代的通信构件可以用作临时数据路径。在正常操作期间,经由控制平面的该替代通信构件不活动作为数据路径,但是可以被基板管理控制器(BMC)激活并使用,以监视目标装置。在故障或交换机更换期间,该替代通信构件将变为活动的,且可以用于将数据向/从受影响的装置移动到进行请求的(多个)启动器。请注意,可能不是主交换机整体发生故障:主交换机可能是经受某个部件的硬件升级,或单独的部件(其可以被替换)出现故障。然而,也可能是没有故障的部件被热插拔(例如,以升级该部件)。
在物理地移除故障交换机之前,锁存传感器可以检测到故障交换机即将从系统机箱被物理地移除。本地中央处理单元(CPU)和/或BMC可以通过打开锁存器引起的中断被通知,并立即通知连接到受影响的装置的所有启动器。所有受影响的启动器可以经由机架顶部(TOR)开关联络幸存交换机上的BMC对端(相同的机箱的另一半),以在该停机事件期间建立临时通信构件。预计故障交换机的更换时间为几分钟。
例如,考虑由两个交换机组成的以太网固态驱动器(SSD)或eSSD机箱。每个交换机都具有以太网开关控制器,其带有连接到远程启动器的上行链路端口。以太网开关控制器提供下载端口,其通过共同的中平面(midplane)直接连接到eSSD。到装置的以太网路径被视为数据路径或数据平面。
但还有另一条路径用于控制和监视系统的健康,其称为控制路径或控制平面。控制平面由本地CPU、存储器、BMC和外围部件互连标准(PCIe)开关组成。BMC芯片通过板载(on-board)PCIe交换机使用PCIe总线连接到所有的eSSDs。
在更换主交换机期间,可以通知启动器主交换机不再可用。启动器可以将相同的请求路由到次级交换机的BMC。次级交换机上的当前活动的BMC可以通过其本地PCIe开关将请求直接转发到合适的目标或eSSD。将使用PCIe X2通道向/从eSSD传输数据。
BMC软件可以作为桥接器装置操作。当其从主机驱动器接收[通过织物的非易失性存储器标准(NVMe)](NVMeoF)命令时,BMC可以使用PCIe总线从eSSD获取所需的数据。BMC有多种方式从eSSD读取数据。BMC可以使用行业标准,例如通过PCIe总线或系统管理总线(SMBus)的NVMe管理接口。BMC也可以使用通过PCIe的正常NVMe接口。
在主交换机成功更换之后,流量可以通过正常路径回流。
图1示出了根据本发明构思的实施例的具有装置的机器。在图1中,机箱105被示出。机箱105可以是任何期望的机箱,包括但不限于台式或膝上型计算机、服务器(独立服务器或机架式服务器)、或者可受益于本发明构思的实施例的任何其他装置。机箱105还可以包括专用便携式计算装置、平板计算机、智能手机、以及其他计算装置。
无论其特定形式如何,机箱105可以包括处理器110、存储器115、多模单端口装置120(简称为“装置”)、故障交换机检测器125、发送器130和接收器135。处理器110可以是任何种类的处理器:例如,Intel Xeon、Celeron、Itanium或Atom处理器、AMD Opteron处理器、ARM处理器,等等。虽然图1示出了单个处理器,机箱105可以包括任何数量的处理器。存储器115可以是任何种类的存储器,例如闪存存储器、静态随机存取存储器(SRAM)、持久随机存取存储器、铁电随机存取存储器(FRAM)、或非易失性随机存取存储器(NVRAM),例如磁致电阻随机存取存储器(MRAM)等,但通常是DRAM。存储器115也可以是不同存储器类型的任何期望的组合。
故障交换机检测器125可以确定装置120可以连接到的主交换机是否可操作。即是说,故障交换机检测器125可以确定用于与装置120通信的主通信路径是否工作。
装置120可以是任何种类的装置。虽然本发明构思的所述实施例涉及诸如以太网固态驱动器(eSSD)的存储装置,但本发明构思的实施例可以应用于可以受益于数据和控制平面的分离的任何形式的装置(例如,多模串行连接小型计算机系统接口(SCSI)(SAS)装置)、或应用于使用除了以太网之外的通信协议(例如,无限带宽或光纤通道)的装置。如本文所使用的,术语“装置”旨在涵盖任何多模装置,而无论装置所使用的形状因数、接口或协议(例如以太网、无限带宽、光纤通道、非易失性存储器高速(NVMe)、或通过织物的NVMe(NVMeoF))。这样的装置的示例可以包括固态驱动器(SSDs)且更具体地为eSSD,但其他存储形式,例如硬盘驱动器或其他长期存储装置也是可行的,除了存储装置以外的装置也是可行的。所述的SSD装置的使用仅是为了简化描述的目的。
发送器130和接收器135允许向和从机箱105的通信。发送器130可以从机箱105传送信息,且接收器135可以在机箱105处接收信息。
机箱105可以与之通信的一个部件是机架顶部(TOR)开关140。TOR开关140允许通信被引导到机架内的特定装置。例如,虽然图1示出了在其中包括所有的装置(除了TOR开关140以外)的机箱105,处理器110可能期望在不同的机箱中与装置120通信。因此,本发明构思的实施例可以仅包括图1中所示的一些部件。
其他装置也可以使用TOR开关140与装置120通信。例如,另一机箱中的启动器145可以向装置120发送请求,所述启动器145可以是另一处理器(或者在这样的处理器上运行的操作系统或应用)。虽然图1将启动器145示出为与机箱105及其中的部件相分离,但处理器110可以启动发送给装置120的请求。例如,当使用的机箱105是NVMe机箱时,启动器145通常位于机箱105内;但当机箱105是NVMeoF机箱时,启动器145预期在机箱105的外部。术语“启动器”旨在涵盖特定请求可以源于的所有这样的概念。
图2示出了图1的机箱的附加细节。参考图2,通常,机箱105包括一个或多个处理器110,处理器110可以包括存储器控制器205和时钟210,其可以用于协调机箱105的部件的操作。处理器110还可以耦接到存储器115,存储器115可以例如包括随机存取存储器(RAM)、只读存储器(ROM)、或其他状态保存介质。处理器110还可以耦接到装置120,并耦接到网络连接器215,网络连接器215例如可以是以太网连接器或无线连接器。处理器110还可以连接到总线220,用户接口225和可以使用输入/输出引擎230管理的输入/输出接口端口及其他部件可以附接到总线220。
图3A示出了使用第一通信路径进行通信的图1的机箱105和装置120。在图3A中,图1的机箱105可以包括多达24个装置,其经由中平面315由交换机305和310管理。在图3A所示的本发明构思的示例实施例中,装置120可以使用作为数据平面的以太网和作为控制平面的PCIe来与启动器145通信,但是本发明构思的其他实施例可以支持数据平面或控制平面的其他通信模式。关于多模装置的更多信息,可以参考:2017年1月20日提交的序列号为15/411,962的美国专利申请,其要求2016年11月25日提交的序列号为62/426,422的美国临时专利申请的权益;2016年9月2日提交的序列号为15/256,495的美国专利申请,其要求2016年7月26日提交的序列号为62/366,622的美国临时专利申请的权益;2016年11月7日提交的序列号为15/345,507的美国专利申请,其要求2016年9月14日提交的序列号为62/394,726的美国临时专利申请的权益;2016年11月7日提交的序列号为15/345,509的美国专利申请,其要求2016年9月14日提交的序列号为62/394,727的美国临时专利申请的权益;2017年1月10日提交的序列号为15/403,008的美国专利申请,其要求2016年11月10日提交的序列号为62/420,355的美国临时专利申请的权益,这些申请的全部内容通过引用并入本文。
每个交换机305和310可以包括以太网开关320和325、PCI开关330和335、以及管理控制器340和345。如上文所述,以太网开关320和325以及PCI开关330和335可以用于管理与装置120的通信;管理控制器340和345可以监视图1的机箱105内的部件的操作。为了实现本发明构思的实施例,管理控制器340、345可以与图1的机箱105中的任何装置会话。在图3A中,示出了24个这样的装置,标识为装置120-1至120-24,但本发明构思的实施例可以支持比图1的机箱105中更多或更少的装置。例如,管理控制器340和345可以是基板管理控制器,其(除了监视图1的机箱105中的部件的温度以及相应地调整冷却操作的正常功能之外)可以与图1的机箱105内的每个相关部件进行通信。
在图3A中,启动器145被示出为发送请求350,其可以从由主交换机305管理的装置中的一个请求数据:例如,装置120-1。启动器145可以将请求350引导到TOR开关140;TOR开关140可以包括指示请求350应当经由路径355发送到主交换机305的信息。基于请求350,主交换机305可以使用以太网开关320、PCI开关330、或两者来将命令路由到装置120-1。例如,数据命令可以经由连接360(数据平面)被路由,且控制命令可以经由连接365(控制平面)被路由。装置120-1则可以经由相同的连接返回回复,该回复可以由启动器145作为响应370接收。
当主交换机305正常操作时,图3A所示的操作是良好的。但是,当主交换机305不正常操作时—例如,如果主交换机305已经故障,或如果主交换机305上的一个或多个部件损坏—启动器145可能无法经由主交换机305向装置120-1发送请求350。在这种情况下,装置120-1上的数据将不可用—除非请求350以不同的方式路由。当管理控制器340和345共享“心跳”通信时,当管理控制器340的“心跳”丢失时,管理控制器345可以变得意识到主交换机305的问题。在这种情况下,管理控制器345可以通知启动器145主交换机305没有正常操作,且启动器145应当故障切换(failover)到次级交换机310。图3B示出了请求350可以被如何路由,以处理不工作的主交换机305。
在图3B中,由于主交换机305因某些原因不操作,启动器145不能经由主交换机305向装置120-1发送请求350(另一种可能性可以是装置120-1上支持数据平面的连接器上的一个或多个引脚发生故障的情况,但是支持控制平面的连接器上的引脚仍然是可工作的,且装置120-1上的数据仍然可访问)。替代地,启动器145向TOR开关140发送请求350,其具有指令以将请求350路由到次级交换机310上的管理控制器345。由于到装置120-1的以太网连接连线到主交换机305,次级交换机310不能经由以太网与装置120-1通信。但是经由中平面315,管理控制器345可以在检测到主交换机305上的故障之后与装置120-1通信。次级交换机310上的BMC 345可以指示启动器145经由次级交换机310路由请求。因此,TOR开关140经由路径375可以将请求350路由到管理控制器345。
管理控制器345可以经由PCIe通道、系统管理总线(SMBus)或可能可用的任何其他通信路径并使用任何期望的接口向装置120-1发送命令:该通信路径被示为通信路径380。管理控制器345可以使用任何期望的协议:例如,可以使用非易失性存储器标准(NVMe)协议或NVMe管理接口协议。
虽然图3A-3B将图1的机箱105示出为包括两个半宽度交换机305和310,本发明构思的实施例可以支持任何期望的机构以与装置120进行通信。例如,如果可以将两个全宽度交换机连接到中平面315,则可以使用两个全宽度交换机。理论上,如果有到装置120的通信路径,则交换机305和310不需要在图1的机箱105的内部。
本发明构思的实施例提供了相对于传统机箱和单端口装置的优点,在于,即使当主交换机305不工作时,仍然可以进行装置访问。装置120可以提供双端口技术的一些优点,而没有真正的双端口技术的成本。
本发明构思的实施例可以扩展到分离装置的数据平面和控制平面的任何硬件配置。实际上,在图3B中,次级交换机310的控制平面被用作备份数据平面,以当主交换机305不工作时与装置120-1进行通信。
图4示出了图1的故障交换机检测器125的细节。在图4中,故障交换机检测器125可以包括定时器405、比较器410和阈值415。定时器405可以测量图3A的主交换机305响应图3A的请求350所花的时间。比较器410可以将由定时器405测量的时间与阈值415进行比较:如果定时器405测量的时间大于阈值415,则故障交换机检测器125可以推断图3的主交换机305不工作,且图1的启动器145可以向图3A的次级交换机310发送图3的请求350。
替代地,故障交换机检测器125可以包括连接断开(dropped connection)检测器420。连接断开检测器420可以检测与图3A的主交换机305的连接何时已经丢失(例如,如果没有检测到插槽专用(slot-specific)的当前引脚上的信号)。连接断开检测器420可以以任何期望的方式操作,以确定与图3A的主交换机305的连接已经丢失。
图5示出了图3A-3B的管理控制器340和345的细节。在图5中,管理控制器340和345可以包括接收器505、翻译器510、桥接器515、发送器520和根联合体525。接收器505可以从图1的启动器145接收图3A的请求350。翻译器510可以将图3A的请求350翻译成命令,所述命令可以经由第二通信路径发送到图1的装置120。例如,图3A的请求350可以设计为使用图3A的以太网开关320,但是第二通信路径(使用图3B的次级交换机310)可能需要请求可通过PCIe通道传送。翻译器510可以补偿这种可能性:图3A的请求350可能对于待使用的第二通信路径是错误格式。
桥接器515使得管理控制器340和345能够充当桥接器装置。即是说,桥接器515允许管理控制器340和345充当图1的启动器145与图1的装置120之间的中介(go-between),“桥接”这些装置之间的连接。发送器520使得管理控制器340和345能够从管理控制器340和345发送信息。例如,当在第二通信路径中使用时,发送器520可以将命令传送到图1的装置120,或将图3B的响应370传送到启动器145。
根联合体525是使得管理控制器340和345能够充当PCIe主机的部件。PCIe装置通常被分为主机或目标:主机启动通信,而目标仅接收并响应于来自PCIe主机的通信。根联合体525允许管理控制器340和345沿着PCIe通道启动通信,当管理控制器340和345在其桥接容量中充当第二通信路径时,这是有用的。注意到,管理控制器340和345通常仅充当PCIe目标:它们作为桥接器使用,需要包括根联合体525。
图6示出了处理图1的启动器145与装置120之间的通信的图5的翻译器510和桥接器515。在图6中,翻译器510可以接收请求350,并以不同的格式或协议将其翻译成命令605。命令605则可以经由桥接器515(以及图5的发送器520)发送到装置120-1。装置120-1则可以返回回复610,翻译器510可以以不同的格式或协议将回复610翻译成响应370,响应370可以返回图1的启动器145。
图7示出了根据本发明构思的实施例的图1的启动器145请求使用第二通信路径进行路由来与图1的装置120进行通信的示例过程的流程图。在图7中,在框705,图1的启动器145可以确定其需要向图1的装置120发送图3的请求350。在框710,图1的故障交换机检测器125可以确定图3A的主交换机305是否工作。如果图3A的主交换机305工作,则在框715,图1的启动器145可以经由图3A的主交换机305向TOR开关140发送图3A的请求350,图3A的请求350去往图3A的装置120-1,且在框720,图1的启动器145可以从图3A的装置120-1和图3A的主交换机305接收图3A的响应370。
替代地,如果在框710,图1的故障交换机检测器125确定图3A的主交换机305不工作,则在框725,图1的启动器145可以经由图3B的次级交换机310向TOR开关140发送图3B的请求350,图3B的请求350去往图3B的装置120-1,且在框730,图1的启动器145可以从图3A的装置120-1和图3B的次级交换机310接收图3B的响应370。
在本发明构思的另一实施例中,图3A-3B的管理控制器345可以通知图1的启动器145图3A的主交换机305没有正确地工作(例如基于图3A的管理控制器340和345之间的“心跳”),以及图1的启动器145应当故障切换到图3B的次级交换机310。如果图3A-3B的管理控制器345已经通知图1的启动器145图3A的主交换机305没有正确地工作,则在框710,图1的启动器145可以基于该通信确定图3A的主交换机没有正确地工作。在这种情况下,处理可以根据框725和730进行,如上文所述,而不涉及图1的故障交换机检测器125。
图8-9示出了根据本发明构思的实施例的图1的故障交换机检测器125确定主交换机是不工作的的示例过程的流程图。在图8中,在框805,图4的定时器405可以测量与图3A的主交换机305的通信延迟。在框810,图4的比较器410可以将测得的延迟与图4的阈值415进行比较。如果测得的延迟大于图4的阈值415,则在框815,图1的故障交换机检测器125可以报告图3A的主交换机305是不工作的;否则,在框820,图1的故障交换机检测器125可以报告图3A的主交换机305是工作的。
相比之下,在图9中,图4的连接断开检测器420可以检查与图3A的主交换机305的连接是否仍然活动,且在框905,图4的连接断开检测器420可以基于其检查来确认图3A的主交换机305是否仍然活动。如果图3A的主交换机305是不活动的,则在框815,图1的故障交换机检测器125可以报告图3A的主交换机305是不工作的;否则,在框820,图1的故障交换机检测器125可以报告图3A的主交换机305是工作的。
而图7-9从图1的启动器145的视角示出了操作,图3B的管理控制器345具有其自身的操作。图10示出了根据本发明构思的实施例的图3B的管理控制器345代表图1的启动器145与图3B的装置120-1进行通信的示例过程的流程图。在图10中,在框1005,图5的接收器505可以(经由图1的TOR开关140)从图1的启动器145接收图3B的请求350。在框1010,图5的翻译器510可以将图3B的请求350翻译成图6的命令605。图5的翻译器510可以考虑由图3B的装置120-1和用于与图3B的装置120-1进行通信的图3B的通信路径380所使用的协议。在框1015,图3B的管理控制器345可以使用图5的根联合体525来充当主机,以启动通过图3B的通信路径380的通信。在框1020,图5的发送器520可以使用图5的桥接器515将图6的命令605传送到图3B的装置120-1。
在框1025,图5的接收器505可以(经由图3B的通信路径380)从图3B的装置120-1接收图6的回复610。在框1030,图5的翻译器510可以将图6的回复610翻译成图3B的响应370。在框1035,图5的发送器520可以将图3B的响应370传送回图1的启动器145。
在图7-10中,示出了一些本发明构思的实施例。但是本领域技术人员将认识到,通过改变框的顺序,省略框、或者通过包含未在附图中示出的链路,本发明构思的实施例也是可能的。流程图的所有这些变化被视为本发明构思的实施例,无论是否明确描述。
已经参考示出的实施例描述和说明了本发明构思的原理,应认识到,所示出的实施例可以在不脱离这些原理的情况下在布置和细节上进行修改,并且可以以任何期望的方式进行组合。而且,尽管前面的讨论已经侧重于特定的实施例,但是也可以设想其他的配置。特别地,尽管本文中使用诸如“根据本发明构思的实施例”等表达,但是这些短语一般引用指参考实施例的可能性,并不意图将本发明构思限制为特定的实施例配置。如本文所使用的,这些术语可以引用可组合到其他实施例中的相同或不同的实施例。
前述说明性实施例不应被解释为限制其本发明构思。虽然已经描述了一些实施例,但是本领域技术人员将容易地认识到,在不实质上脱离本公开的新颖教导和优点的情况下,可以对这些实施例进行许多修改。因此,所有这样的修改旨在被包含在如权利要求中限定的本发明构思的范围内。
因此,鉴于这里描述的实施例的变化的多样性,该详细描述和随附材料仅旨在是说明性的,而不应被视为限制本发明构思的范围。因此,本发明构思所要求保护的是可以落入所附权利要求及其等同物的范围和精神内的所有这样的修改。
Claims (19)
1.一种管理控制器,包括:
接收器,从启动器接收请求;
翻译器,将从所述启动器接收的请求翻译成用于多模单端口装置的命令,并将对所述命令的回复翻译成用于所述启动器的响应;
桥接器,与所述多模单端口装置通信,所述桥接器可操作为将所述命令发送到所述多模单端口装置,并从所述多模单端口装置接收所述回复;以及
发送器,将所述响应传送到所述启动器;
其中,当沿着主数据通信的与所述多模单端口装置的通信中断时,所述管理控制器在所述启动器和所述多模单端口装置之间沿着控制平面提供备用数据通信路径,
其中所述管理控制器被包括在交换机中,所述交换机包括以太网交换机和外围部件互连高速(PCle)交换机,但是所述以太网交换机和所述外围部件互连高速交换机未直接连接到所述多模单端口装置,以及
其中所述多模单端口装置通过所述多模单端口装置上的连接器使用第一协议或第二协议来接收所述请求。
2.如权利要求1所述的管理控制器,其中所述管理控制器是基板管理控制器(BMC)。
3.如权利要求1所述的管理控制器,其中所述桥接器可操作为经由耦接到所述多模单端口装置的至少一个外围部件互连高速(PCIe)通道与所述多模单端口装置通信。
4.如权利要求3所述的管理控制器,还包括根联合体,其使得所述管理控制器能够充当外围部件互连高速主机。
5.如权利要求1所述的管理控制器,其中所述桥接器可操作为经由系统管理总线(SMBus)与所述多模单端口装置通信。
6.如权利要求1所述的管理控制器,其中所述桥接器可操作为使用从包括非易失性存储器标准(NVMe)协议和NVMe管理接口的集合抽取的所述第一协议。
7.一种用于数据恢复的方法,包括:
通过第一通信路径经由主交换机向多模单端口装置发送第一请求,所述多模单端口装置支持到主机的两个通信路径;
通过所述第一通信路径从所述主交换机接收对所述第一请求的第一响应;
在接收所述第一响应之后确定主交换机不可用;
通过第二通信路径将向次级交换机上的管理控制器发送去往所述多模单端口装置的第二请求;以及
通过所述第二通信路径从所述次级交换机上的管理控制器接收对所述第二请求的第二响应,
在接收到所述第二响应之后确定所述主交换机可用;以及
通过所述第一通信路径经由所述主交换机向所述多模单端口装置发送第三请求;以及
通过所述第一通信路径从所述主交换机接收对所述第三请求的第三响应,
其中所述次级交换机包括以太网交换机和外围部件互连高速(PCle)交换机,但是所述以太网交换机和所述外围部件互连高速交换机未直接连接到所述多模单端口装置,以及
其中所述多模单端口装置通过所述多模单端口装置上的连接器使用第一协议或第二协议来接收所述请求。
8.如权利要求7所述的方法,其中确定主交换机不可用包括:
测量与所述主交换机的通信延迟;以及
如果所述延迟超过阈值,则确认所述主交换机不可用。
9.如权利要求7所述的方法,其中确定主交换机不可用包括检测与所述主交换机的连接断开。
10.如权利要求7所述的方法,其中所述多模单端口装置支持通过织物的非易失性存储器标准(NVMeoF)协议。
11.如权利要求7所述的方法,其中所述第一通信路径包括以太网端口。
12.如权利要求11所述的方法,其中所述第二通信路径包括至少一个外围部件互换标准(PCIe)通道。
13.如权利要求11所述的方法,其中所述第二通信路径包括系统管理总线(SMBus)。
14.一种用于数据恢复的方法,包括:
在管理控制器处从启动器接收请求,所述管理控制器包含在次级交换机内;
将所述请求翻译成用于多模单端口装置的命令,所述多模单端口装置通常从主交换机来控制;
将所述命令从所述管理控制器发送到所述多模单端口装置;
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复;
将所述回复翻译成用于所述启动器的响应;以及
将所述响应从所述管理控制器发送到所述启动器,
其中当沿着所述启动器和所述多模单端口装置之间的主数据通信的通信中断时,所述管理控制器提供所述启动器和所述多模单端口装置之间的备用通信路径,
其中所述次级交换机包括以太网交换机和外围部件互连高速(PCle)交换机,但是所述以太网交换机和所述外围部件互连高速交换机未直接连接到所述多模单端口装置,以及
其中所述多模单端口装置通过所述多模单端口装置上的连接器使用第一协议或第二协议来接收所述请求。
15.如权利要求14所述的方法,其中:
将所述命令从所述管理控制器发送到所述多模单端口装置包括通过至少一个外围部件互连标准(PCIe)通道将所述命令从所述管理控制器发送到所述多模单端口装置;以及
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复包括通过所述至少一个外围部件互连标准通道在所述管理控制器处从所述多模单端口装置接收对所述命令的回复。
16.如权利要求15所述的方法,其中通过至少一个外围部件互连标准(PCIe)通道将所述命令从所述管理控制器发送到所述多模单端口装置包括使用根联合体以使得所述管理控制器能够充当外围部件互连标准主机。
17.如权利要求14所述的方法,其中:
将所述命令从所述管理控制器发送到所述多模单端口装置包括通过系统管理总线(SMBus)将所述命令从所述管理控制器发送到所述多模单端口装置;以及
在所述管理控制器处从所述多模单端口装置接收对所述命令的回复包括通过所述系统管理总线在所述管理控制器处从所述多模单端口装置接收对所述命令的回复。
18.如权利要求14所述的方法,其中从所述管理控制器向所述多模单端口装置发送所述命令包括使用从包括非易失性存储器标准(NVMe)协议和非易失性存储器标准管理接口的集合抽取的协议来从所述管理控制器向所述多模单端口装置发送所述命令。
19.如权利要求14所述的方法,其中:
将所述请求翻译成用于多模单端口装置的命令包括将所述请求翻译成通过织物的非易失性存储器标准(NVMeoF)命令;以及
将所述回复翻译成用于所述启动器的响应包括将所述通过织物的非易失性存储器标准回复翻译成所述响应。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662437029P | 2016-12-20 | 2016-12-20 | |
US62/437,029 | 2016-12-20 | ||
US15/447,086 US10496566B2 (en) | 2016-12-20 | 2017-03-01 | Method and apparatus for data recovering during a board replacement |
US15/447,086 | 2017-03-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108206763A CN108206763A (zh) | 2018-06-26 |
CN108206763B true CN108206763B (zh) | 2022-04-19 |
Family
ID=62561712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711382010.6A Active CN108206763B (zh) | 2016-12-20 | 2017-12-20 | 在交换机更换期间用于数据恢复的方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10496566B2 (zh) |
KR (1) | KR102419351B1 (zh) |
CN (1) | CN108206763B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11144496B2 (en) | 2016-07-26 | 2021-10-12 | Samsung Electronics Co., Ltd. | Self-configuring SSD multi-protocol support in host-less environment |
US11461258B2 (en) | 2016-09-14 | 2022-10-04 | Samsung Electronics Co., Ltd. | Self-configuring baseboard management controller (BMC) |
US10346041B2 (en) | 2016-09-14 | 2019-07-09 | Samsung Electronics Co., Ltd. | Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host |
US20190109720A1 (en) | 2016-07-26 | 2019-04-11 | Samsung Electronics Co., Ltd. | Modular system (switch boards and mid-plane) for supporting 50g or 100g ethernet speeds of fpga+ssd |
US10372659B2 (en) | 2016-07-26 | 2019-08-06 | Samsung Electronics Co., Ltd. | Multi-mode NMVE over fabrics devices |
US10210123B2 (en) | 2016-07-26 | 2019-02-19 | Samsung Electronics Co., Ltd. | System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices |
US10579568B2 (en) * | 2017-07-03 | 2020-03-03 | Intel Corporation | Networked storage system with access to any attached storage device |
US20190305983A1 (en) * | 2018-03-29 | 2019-10-03 | Hyundai Motor Company | Method and apparatus for configuring backup path in vehicle network |
US11500593B2 (en) | 2019-03-20 | 2022-11-15 | Samsung Electronics Co., Ltd. | High-speed data transfers through storage device connectors |
US11656992B2 (en) | 2019-05-03 | 2023-05-23 | Western Digital Technologies, Inc. | Distributed cache with in-network prefetch |
US11765250B2 (en) | 2020-06-26 | 2023-09-19 | Western Digital Technologies, Inc. | Devices and methods for managing network traffic for a distributed cache |
US11675706B2 (en) | 2020-06-30 | 2023-06-13 | Western Digital Technologies, Inc. | Devices and methods for failure detection and recovery for a distributed cache |
US11736417B2 (en) | 2020-08-17 | 2023-08-22 | Western Digital Technologies, Inc. | Devices and methods for network message sequencing |
US11847071B2 (en) | 2021-12-30 | 2023-12-19 | Pure Storage, Inc. | Enabling communication between a single-port device and multiple storage system controllers |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320538A (zh) * | 2014-06-16 | 2016-02-10 | 联发科技股份有限公司 | 电子装置以及启动电子装置的方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040165890A1 (en) * | 1999-11-08 | 2004-08-26 | Throughput Holdings, Inc. | Wide-signal bandwidth multi-access channel |
TW586063B (en) * | 2000-08-14 | 2004-05-01 | I2 Technologies Inc | Network application program interface facilitating communication in a distributed network environment |
US20080046628A1 (en) * | 2006-08-21 | 2008-02-21 | Mikal Hunsaker | Multi-bus type management messaging method and apparatus |
KR100950555B1 (ko) * | 2008-01-02 | 2010-03-31 | 텔코웨어 주식회사 | 스위치 보드 변경 방법 |
US8547825B2 (en) | 2011-07-07 | 2013-10-01 | International Business Machines Corporation | Switch fabric management |
US20130201316A1 (en) * | 2012-01-09 | 2013-08-08 | May Patents Ltd. | System and method for server based control |
US9280504B2 (en) | 2012-08-24 | 2016-03-08 | Intel Corporation | Methods and apparatus for sharing a network interface controller |
US9684613B2 (en) * | 2013-05-15 | 2017-06-20 | Seagate Technology Llc | Methods and systems for reducing spurious interrupts in a data storage system |
KR20150047785A (ko) * | 2013-10-25 | 2015-05-06 | 삼성전자주식회사 | 서버 시스템 및 스토리지 시스템 |
US9792243B2 (en) | 2013-12-26 | 2017-10-17 | Intel Corporation | Computer architecture to provide flexibility and/or scalability |
FR3025333B1 (fr) | 2014-08-26 | 2017-12-08 | Bull Sas | Serveur comprenant une pluralite de modules |
KR102291505B1 (ko) * | 2014-11-24 | 2021-08-23 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US9626106B2 (en) * | 2015-01-13 | 2017-04-18 | Sandisk Technologies Llc | System and method for memory command queue management and configurable memory status checking |
US10114778B2 (en) * | 2015-05-08 | 2018-10-30 | Samsung Electronics Co., Ltd. | Multi-protocol IO infrastructure for a flexible storage platform |
KR102447471B1 (ko) * | 2015-06-24 | 2022-09-27 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 스토리지 장치 |
-
2017
- 2017-03-01 US US15/447,086 patent/US10496566B2/en active Active
- 2017-11-22 KR KR1020170156258A patent/KR102419351B1/ko active IP Right Grant
- 2017-12-20 CN CN201711382010.6A patent/CN108206763B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320538A (zh) * | 2014-06-16 | 2016-02-10 | 联发科技股份有限公司 | 电子装置以及启动电子装置的方法 |
Also Published As
Publication number | Publication date |
---|---|
US10496566B2 (en) | 2019-12-03 |
KR20180071941A (ko) | 2018-06-28 |
CN108206763A (zh) | 2018-06-26 |
US20180173652A1 (en) | 2018-06-21 |
KR102419351B1 (ko) | 2022-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108206763B (zh) | 在交换机更换期间用于数据恢复的方法和设备 | |
US10417166B2 (en) | Implementing sideband control structure for PCIE cable cards and IO expansion enclosures | |
US8812913B2 (en) | Method and apparatus for isolating storage devices to facilitate reliable communication | |
US11126583B2 (en) | Multi-mode NMVe over fabrics devices | |
US7356638B2 (en) | Using out-of-band signaling to provide communication between storage controllers in a computer storage system | |
US8402189B2 (en) | Information processing apparatus and data transfer method | |
US9727398B2 (en) | Information processing apparatus, control device, and computer-readable recording medium having stored control program | |
US20140122753A1 (en) | Electronic Device, Management Method Thereof, and Rack Serving System | |
US20150242354A1 (en) | Redundant storage enclosure processor (sep) implementation for use in serial attached scsi (sas) environment | |
CN112835519B (zh) | 一种数据读取方法、装置、电子设备及存储介质 | |
JP2017010390A (ja) | ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 | |
KR101437735B1 (ko) | 정보 처리 장치 및 동작 상태 감시 방법 | |
US8694826B2 (en) | SAS host cache control | |
US9507677B2 (en) | Storage control device, storage apparatus, and computer-readable recording medium having storage control program stored therein | |
US10409663B2 (en) | Storage system and control apparatus | |
US9246848B2 (en) | Relay apparatus, storage system, and method of controlling relay apparatus | |
US10503678B1 (en) | Fabric management system and method | |
US10235317B1 (en) | Fabric management system and method | |
JP2015053555A (ja) | データ転送装置、およびデータ転送方法 | |
US10324880B1 (en) | Fabric management system and method | |
JP2014170364A (ja) | ディスクアレイ装置およびそのケーブル誤接続検出方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |