JP2018029337A - コンピューティング資源への高可用性アクセスを提供するコンピューティングシステム及び予備資源連結ファブリック - Google Patents

コンピューティング資源への高可用性アクセスを提供するコンピューティングシステム及び予備資源連結ファブリック Download PDF

Info

Publication number
JP2018029337A
JP2018029337A JP2017156664A JP2017156664A JP2018029337A JP 2018029337 A JP2018029337 A JP 2018029337A JP 2017156664 A JP2017156664 A JP 2017156664A JP 2017156664 A JP2017156664 A JP 2017156664A JP 2018029337 A JP2018029337 A JP 2018029337A
Authority
JP
Japan
Prior art keywords
switch
resource
data storage
computing
connection
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.)
Granted
Application number
JP2017156664A
Other languages
English (en)
Other versions
JP2018029337A5 (ja
JP7043201B2 (ja
Inventor
アール. マリプディ グネスワラ
R Marripudi Gunneswara
アール. マリプディ グネスワラ
ジー. フィッシャー ステファン
g fischer Stephen
ジー. フィッシャー ステファン
ピン ジャン
Ping Zhang
ピン ジャン
ジョシ インディラ
Joshi Indira
ジョシ インディラ
ロジャース ハリー
Rogers Harry
ロジャース ハリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2018029337A publication Critical patent/JP2018029337A/ja
Publication of JP2018029337A5 publication Critical patent/JP2018029337A5/ja
Application granted granted Critical
Publication of JP7043201B2 publication Critical patent/JP7043201B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2002Error 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/2007Error 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
    • G06F11/201Error 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 between storage system components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2035Error 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 processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2046Error 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 processing functionality is redundant where the redundant components share persistent storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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 persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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 persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/557Error correction, e.g. fault recovery or fault tolerance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】向上した性能を有する高可用性及び負荷均等のための適応的多重経路ファブリックを提供する。【解決手段】本発明の実施形態に係るコンピューティングシステムは、複数のインターフェイス、複数のコンピューティング資源セット、及び少なくとも3つのスイッチを含み、複数のコンピューティング資源セットの各々は複数のコンピューティング資源を含み、少なくとも3つのスイッチの各々はホストリンクを通じてインターフェイスの中の対応する1つと連結され、複数の資源連結を通じて複数のコンピューティング資源セットの中の対応する1つと連結され、スイッチの各々はスイッチの中の1つが故障の場合、スイッチ間の複数のクロス接続を通じてスイッチの中の残されているスイッチにデータトラフィックが分散されるように構成される。【選択図】図1

Description

本発明はコンピューティング資源への高可用性アクセスを提供するコンピュータシステム及び予備資源連結ファブリックに係り、より詳しくは、冗長性(redundancy)を提供するコンピュータシステム及び予備資源連結ファブリックに関する。
コンピュータシステムの分野において、データ及び他のコンピューティング資源への信頼性ある高性能アクセス(reliable and high performance access)はビジネス及び日常生活において重要である。高可用性(HA;high availability)の用語は1つの要素の故障(又は1つの障害箇所;single points of failure)を除去するか、又は減少させる(例えば、1つの要素の故障が全体システムの故障とならないようにシステムに冗長性を提供する)システムを説明するために頻繁に使用される。
高可用性の長所を有する例示的なコンピュータシステムはLAN(local area network)のようなコンピュータネットワーク又はインターネットを通じてデータの検索又は格納のためのデータ資源を提供できるSAN(storage area network)のようなデータ格納システムを含む。
本発明の目的は向上した性能を有するコンピューティング資源への高可用性及び負荷均性を提供するコンピューティングシステム及び予備資源連結ファブリックを提供することにある。
本発明の目的は、適応的多重経路ファブリックの使用を通じてコンピューティング資源への高可用性及び負荷均等性を提供することにある。
本発明の一実施形態によれば、コンピューティング資源への高可用性アクセスを提供するコンピューティングシステムは、複数のインターフェイス、複数のコンピューティング資源セット、及び少なくとも3つのスイッチを含み、前記複数のコンピューティング資源セットの各々は複数のコンピューティング資源を含み、前記少なくとも3つのスイッチの各々はホストリンクを通じて前記インターフェイスの中の対応する1つと連結され、複数の資源連結を通じて前記複数のコンピューティング資源セットの中の対応する1つと連結され、前記スイッチの中の1つが故障の場合、前記スイッチの間の複数のクロス接続を通じて前記スイッチの中の残されているスイッチにデータトラフィックが分散されるように構成される。
前記少なくとも3つのスイッチは第1スイッチ、第2スイッチ、及び第1クロス接続を通じて前記第1スイッチと直接連結され、第2クロス接続を通じて前記第2スイッチと直接連結される第3スイッチを含む。
前記コンピューティングシステムは第1ホストリンクを通じて前記第1スイッチと連結され、前記複数のインターフェイスの中の第1インターフェイスを含む第1サーバーノード、及び第2ホストリンクを通じて前記第2スイッチと連結され、前記複数のインターフェイスの中の第2インターフェイスを含む第2サーバーノードをさらに含む。
前記コンピューティングシステムは第3ホストリンクを通じて前記第3スイッチと連結される第3サーバーノードをさらに含む。
前記コンピューティングシステムは前記第1サーバーノードと直接連結される第1補助スイッチ、前記第2サーバーノードと直接連結される第2補助スイッチ、前記第3サーバーノードと直接連結される第3補助スイッチ、前記第1補助スイッチを前記第2補助スイッチと直接連結する第1クロス接続、前記第1補助スイッチを前記第3補助スイッチと直接連結する第2クロス接続、前記第2補助スイッチを前記第3補助スイッチと直接連結する第3クロス接続をさらに含む。
前記複数のコンピューティング資源セットの中の第1コンピューティング資源セットは第1データ格納装置セットを含み、前記第1データ格納装置セットのデータ格納装置の各々は前記複数の資源連結の中の第1資源連結を通じて前記第1スイッチと直接連結された第1ポート及び前記複数の資源連結の中の第2資源連結を通じて前記第2スイッチと直接連結された第2ポートを含み、前記複数のコンピューティング資源セットの中の第2コンピューティング資源セットは第2データ格納装置セットを含み、前記第2データ格納装置セットのデータ格納装置の各々は前記複数の資源連結の中の第3資源連結を通じて前記第1スイッチと直接連結された第3ポート及び前記複数の資源連結の中の第4資源連結を通じて前記2スイッチと直接連結される第4ポートを含む。
前記コンピューティングシステムは第3クロス接続を通じて前記第1スイッチと直接連結され、第4クロス接続を通じて前記第2スイッチと直接連結される第4スイッチをさらに含む。
前記コンピューティングシステムは第3データ格納装置セットをさらに含み、前記第3データ格納装置セットのデータ格納装置の各々は第5資源連結を通じて前記第3スイッチと直接連結される第5ポート及び第6資源連結を通じて前記第4スイッチと直接連結される第6ポートを含む。
前記コンピューティングシステムは第4ホストリンクを通じて前記第4スイッチと直接連結された第4サーバーノードをさらに含む。
前記コンピューティングシステムは第4データ格納装置セットをさらに含み、前記第4データ格納装置セットのデータ格納装置の各々は第7資源連結を通じて前記第3スイッチと直接連結される第7ポート及び第8資源連結を通じて前記第4スイッチと直接連結される第8ポートを含む。
前記スイッチの各々は他のスイッチの故障を検出し、前記スイッチに対応する前記クロス接続及び前記ホストリンクを通じて前記第1データ格納装置セットのデータ格納装置及び前記第2データ格納装置セットのデータ格納装置へのアクセスを提供するように構成される。
前記コンピューティングシステムはN個(但し、Nは自然数)のインターフェイスを含み、帯域幅ユニットB(但し、Bは正数)は前記コンピューティング資源セットの中の1つが最高帯域幅(full bandwidth)にて動作するのに要求される帯域幅の量を示し、前記複数の資源連結の各々は少なくとも1XBの帯域幅を含み、前記複数のコンピューティング資源セットの各々はK(但し、Kは自然数)個以下のコンピューティング資源を含み、前記複数のインターフェイスの各々のホストリンクの各々はKXBの正常トラフィック帯域幅及びKXB以上の最大トラフィック帯域幅を支援し、前記複数のクロス接続の各々は少なくともKXB/(N−1)の帯域幅を含む。
前記スイッチはPCIe(Peripheral Component Interconnect Express)スイッチであり、前記ホストリンク及び前記資源連結はPCIeバスリンクである。
本発明の一実施形態に係るコンピューティングシステムは少なくとも2つの高可用性ペア(high−availability pairs)を含み、前記高可用性ペアの各々は、第1スイッチ、第2スイッチ、第1ホストリンクを通じて前記第1スイッチと連結される第1インターフェイス、第2ホストリンクを通じて前記第2スイッチと連結される第2インターフェイス、第1資源連結を通じて前記第1スイッチと連結され、第2資源連結を通じて前記第2スイッチと連結される第1コンピューティング資源セット、第3資源連結を通じて前記第1スイッチと連結され、第4資源連結を通じて前記第2スイッチと連結される第2コンピューティング資源セット、複数の第1クロス接続、及び複数の第2クロス接続を含み、前記複数の第1クロス接続の各々は前記第1スイッチを他の高可用性ペアの各スイッチに直接連結し、前記第2クロス接続の各々は前記第2スイッチを前記他の高可用性ペアの各スイッチに直接連結する。
前記第1コンピューティング資源セットは第1データ格納装置セットを含み、前記第1データ格納装置セットのデータ格納装置の各々は前記第1資源連結を通じて前記第1スイッチと直接連結される第1ポート及び前記第2資源連結を通じて前記第2スイッチと直接連結される第2ポートを含み、前記第2コンピューティング資源セットは第2データ格納装置セットを含み、前記第2データ格納装置セットのデータ格納装置の各々は前記第3資源連結を通じて前記第1スイッチと直接連結される第3ポート及び前記第4資源連結を通じて前記第2スイッチと直接連結される第4ポートを含む。
前記第1スイッチは前記第2スイッチの故障を検出し、前記第1ホストリンク及び前記第1クロス接続を通じて前記第1データ格納装置セットのデータ格納装置及び前記第2データ格納装置セットのデータ格納装置へのアクセスを提供するように構成される。
前記コンピューティングシステムは、N個(但し、Nは自然数)のサーバーノードを含み、帯域幅ユニットB(但し、Bは正数)は前記コンピューティング資源の中の1つが最高帯域幅(full bandwidth)にて動作するのに要求される帯域幅の量であり、資源連結の各々は少なくとも1XBの帯域幅を含み、コンピューティング資源セットの各々はK(但し、Kは自然数)個以下のコンピューティング資源を含み、前記サーバーノードの各々はKXBの正常帯域幅を支援し、KXB以上の最大帯域幅を支援し、クロス接続の各々は少なくともKXB/(N−1)の帯域幅を含む。
前記スイッチはPCIe(Peripheral Component Interconnect Express)スイッチであり、前記ホストリンク及び前記資源連結はPCIeバスリンクである。
前記少なくとも2つの高可用性ペアは第1高可用性ペア、第2高可用性ペア、第3高可用性ペア、及び第4高可用性ペアを含む。
本発明の一実施形態に係る予備資源連結ファブリックは第1スイッチ、第2スイッチ、第1クロス接続を通じて前記第1スイッチと直接連結され、第2クロス接続を通じて前記第2スイッチと直接連結される第3スイッチ、第1コンピューティング資源セット、及び第2コンピューティング資源セットを含み、前記第1コンピューティング資源セットの各々は第1資源連結を通じて前記第1スイッチと直接連結された第1ポート及び第2資源連結を通じて前記第2スイッチと直接連結される第2ポートを含み、前記第2コンピューティング資源セットの各々は第3資源連結を通じて前記第1スイッチと直接連結される第3ポート及び第4資源連結を通じて前記第2スイッチと直接連結される第4ポートを含む。
前記第1スイッチは前記第2スイッチの故障を検出し、前記第1クロス接続を通じて前記第1コンピューティング資源セット及び前記第2コンピューティング資源セットへのアクセスを提供するように構成される。
前記予備資源連結ファブリックは第3資源連結を通じて前記第1スイッチと直接連結され、第4資源連結を通じて前記第2スイッチと直接連結される第4スイッチをさらに含む。
前記予備資源連結ファブリックは第5資源連結を通じて前記第3スイッチと直接連結され、第6資源連結を通じて前記第4スイッチと直接連結される第3コンピューティング資源セットをさらに含む。
前記予備資源連結ファブリックは第7資源連結を通じて前記第3スイッチと直接連結され、第8資源連結を通じて前記第4スイッチと直接連結される第4コンピューティング資源セットをさらに含む。
本発明に係るインターフェイス及びコンピューティング資源の間に位置した適応的ファブリック(adaptive fabric)は、故障状況においてコンピューティング資源へのアクセスを維持し、一部の実施形態において、故障状況において資源への最大限のパフォーマンスアクセス(full performance access)を維持する。したがって、向上した性能を有する高可用性及び負荷均等のためのコンピューティングシステム及び予備資源連結ファブリックが提供される。
詳細な説明と共に、添付した図面は本発明の例示的な実施形態を示し、説明と共に本発明の原理を説明する。
本発明の一実施形態に係る適応的多重経路ファブリック(adaptive multipath fabric)を含むデータ格納システムを示すブロック図である。 本発明の一実施形態に係る適応的多重経路ファブリックを含むデータ格納システムを示すブロック図である。 本発明の一実施形態に係るスイッチの故障及びデータ伝送トラフィックのリバランシング(rebalancing)を示すブロック図である。 本発明の一実施形態に係る、サーバーノードの故障及びデータ伝送のリバランシングを示すブロック図である。 本発明の一実施形態に係るサーバーノードを連結する補助ファブリックをさらに含むシステムのブロック図である。 本発明の一実施形態に係る2つのサーバーノード及び1つのデータ格納装置セットを含む小さい高可用性構成(small high availability configuration)を示すブロック図である。 本発明の一実施形態に係る追加的なデータ格納装置セットを含む図6に図示された構成からの拡張を示す。 本発明の一実施形態に係る追加的なサーバーノードを含む図6に図示された構成からの拡張を示す。 本発明の一実施形態に係る、192GB/sの全体処理量のために8個のスイッチを通じて48個のデータ格納装置に連結された8個のサーバーノードを含むシステムを示すブロック図である。
以下の詳細な説明において、説明を簡易にするために本発明の特定例示的な実施形態のみを説明する。当業者は、本発明が多様な他の形態に具現されるので、例示的な実施形態に限定されると理解されてはならない。詳細な説明の全体において、類似の参照番号は類似の構成要素を示す。
本発明の実施形態は、インターフェイスのセットを通じてコンピューティング資源への高可用性アクセス(high availability access)を提供するシステム及び方法と一般的に連関される。インターフェイス及びコンピューティング資源の間に位置した適応的ファブリック(adaptive fabric)は故障状況においてもコンピューティング資源へのアクセスを維持し、実施形態において、故障状況においてコンピューティング資源への最大限のパフォーマンスアクセス(full performance access)を維持する。
例えば、コンピューティング資源への高可用性アクセス(high−availability access)を提供するデータ格納コンピューティングシステムは複数のインターフェイスと、複数のコンピューティング資源セットと、少なくとも3つのスイッチと、を含む。コンピューティング資源セットの各々は複数のコンピューティング資源を含む。スイッチの各々はホストリンクを通じてインターフェイスの中の対応する1つと連結され、資源連結(resource connection)を通じてコンピューティング資源セットの中の対応する1つと連結される。スイッチの各々はスイッチの中の1つが故障の場合、スイッチ間の複数のクロス接続(cross−connections)を通じてデータトラフィックがスイッチの中の残るスイッチに分散されるように構成される。
さらに具体的に、SAN(storage area network)システムのようなデータ格納システムは1つ以上のサーバーノードと連結されたデータ格納装置を含む。例えば、データ格納装置はPCIe(peripheral component interconnect express)バスのようなバスを通じてサーバーノードと連結されたSSD(solid state drive)又はHDD(hard disk drive)である。例えば、各サーバーノードは中央処理ユニット、メモリ、及びデータ格納装置に格納されたデータへの遠隔アクセスを提供するネットワークインターフェイスを含む。この時、データ格納装置はサーバーノードにマッピングされる。しかし、1つのサーバーノード(single server node)が故障の場合(例えば、ネットワークインターフェイス、バス、又はCPUが故障の場合)、データ格納装置に格納されたデータへのアクセスが損失されるので、1つのサーバーノードのみを使用するネットワークストレージシステムは高可用性(HA)を提供できない。
このように、本発明の実施形態は、コンピューティング資源への高可用性アクセスを提供する適応的ファブリック(adaptive fabric)に係る。一実施形態において、コンピューティング資源の各々は複数のスイッチと連結され、スイッチの各々は適応的ファブリックのクロス接続を通じて少なくとも1つの他のスイッチと連結される。スイッチの各々はコンピューティング資源の使用者との通信のためのインターフェイス(例えば、ネットワークインターフェイス)と連結される。インターフェイスの故障又はスイッチの故障が発生した場合、適応的ファブリックは他のインターフェイスのクロス接続を通じてデータへの経路を再設定(reroute)する。
一実施形態において、インターフェイスはホストサーバーノードの構成要素である。この時、サーバーノードはプロセッサ(CPU)及びメモリを含むコンピュータシステムである。サーバーノードは、サーバーノードのメモリに格納され、サーバーノードのプロセッサによって実行され、駆動されるアプリケーションを通じて使用者にコンピューティング資源と連関されたサービスへのアクセスを提供する。例えば、コンピューティング資源はデータ格納装置セットであり、この場合、アプリケーションはネットワークファイルサーバー、ウェブサーバー、データベースサーバー等である。他の例として、コンピューティング資源はローレイテンシキャッシュ(low latency caches)を提供する動的メモリ(dynamic memory)である。その他の例として、コンピューティング資源はグラフィック処理ユニット(GPU;graphical processing unit)であり、この場合、アプリケーションは、例えば3次元レンダリングエンジン、マシンラーニングトレーニングプラットフォーム(例えば、トレーニングニューラルネットワーク)、暗号通貨マイナー(crypto currency miner)(例えば、ビットコイン)等である。
本発明の実施形態は、データ格納装置のようなコンピューティング資源への充分な帯域幅(伝送速度)の提供と関連する。サーバーノードにあまりにも多くのデータ格納装置が連結された場合、データ格納装置に最大限のパフォーマンス(full performance)を可能にする、サーバーノード及びデータ格納装置の間の可用である帯域幅が十分でないこともあり得る。さらに具体的に、1つのサーバーノードシステムにおいて、8個のSSDがPCIeスイッチと連結され、各SSDがPCIeスイッチへの4レーンリンク(X4)を飽和させ、サーバーノードがPICeスイッチへの32レーンリンク(X32)を含む場合、8個のSSDだけでサーバーノードへの連結を飽和させるのに十分である。追加的なデータ格納装置がシステムに追加される場合、サーバーノード及びPCIeスイッチの間の連結がシステムにおいて隘路現象(bottleneck)として作用するので、データ格納装置の全体を最大限のパフォーマンスにより動作させるのに帯域幅が十分ではないことがあり得る。一部の状況において、サーバーノード及びネットワークアダプターの間の連結がシステムにおける隘路現象に類似して作用する。
一部のデータ格納装置は冗長性(redundancy)を提供する2つの連結ポート(two connection ports)を含む。例えば、デュアルPCIeポートを含むデータ格納装置は第1サーバーノードと連結された第1ポート及び第2サーバーノードと連結された第2ポートを含む。このような方式により、サーバーノードの中の1つが故障の場合、データ格納装置は他のサーバーノードを通じて相変わらずアクセスされる。
しかし、このような方式において、サーバーノードの故障は帯域幅制限(bandwidth limitations)を悪化させる。上述した例を続いて参照すれば、2つのサーバーノードの全てが連結されたデータ格納装置に対する充分な帯域幅を提供できる反面、サーバーノードの中の1つが故障の場合、データ格納装置への/からのすべてのトラフィックが、生存サーバーノード(surviving server node)によって管理される。生存サーバーノードは追加的なトラフィックを管理するのに充分な帯域幅を有しないことがある。特に、データ格納装置の帯域幅要求が既にサーバーノードへの2つのリンクを飽和させた場合、サーバーノードの中の1つの故障は約50%のパフォーマンス減少を発生させる。
本発明の一部の実施形態は複数のサーバーノードを通じてデータ格納装置へのアクセスを提供するシステム及び方法に係る。この時、システム及び方法はサーバーノードの故障状況においてパフォーマンス低下無しにデータ格納装置の可能な最大限のパフォーマンス(full performance potential)を維持する。さらに詳細には、本発明の実施形態は、複数のスイッチを通じてサーバーノードと(マルチポートデータ格納装置のような)コンピューティング資源を連結する適応的多重経路ファブリック(adaptive multipath fabric)と関連する。この時、多重経路ファブリックはシステムの故障状況においてデータトラフィックに対する代替経路(alternate paths)を提供する。本発明の実施形態は、要求された特定のシステムパフォーマンスプロフィールを達成するために、多様な複数のサーバーノード及びコンピューティング資源(例えば、データ格納装置)のセットに適用される。本発明の実施形態は、ノード故障状況においても、特定のパフォーマンスプロフィールを維持する一方で、初期構成に対してデータ格納装置又はサーバーノードをさらに追加することによって、コンピューティング資源(例えば、データ格納容量)及び一般コンピューティング能力の双方の増大(scaling)を可能にする。
説明を簡易にするために、本発明の実施形態は、以下において、PCIeスイッチ及びPCIeファブリックを通じてホストサーバーノードと連結されたNVMe(non−volatile memory express)インターフェイスを含むソリッドステートドライブを参照して説明する。しかし、本発明の実施形態はこれに限定されず、ファブリックの基本構造(underlying architecture)はイーサーネット(登録商標)(Ethernet(登録商標))、IB(Infiniband(登録商標))、ファイバチャンネル(Fibre Channel)、SCSI(small computer system interface)、SAS(serially attached SCSI)等の他のインターフェイスに適用される。追加的に、本発明の実施形態はハードディスクドライブ、テープドライブ、DRAM(dynamic random access memory)のような揮発性メモリの他の形態の資源、及びベクトルプロセッサ、グラフィック処理ユニット(GPUs)、デジタル信号プロセッサ(DSPs;digital signal processors)、及びFPGA(field programmable gate array)のような演算ユニットに高可用性を提供するのに適用される。
<多重経路ファブリック構造(Multipath fabric structure)>
本発明の実施形態は、コンピューティング資源がデュアルポートデータ格納装置セットであり、連結及びスイッチがPCIe連結及びスイッチであり、インターフェイスがネットワークインターフェイスであるデータ格納システムの特定事例を参照して以下に説明する。しかし、本発明の実施形態はこれに限定されず、他の形態のコンピューティング資源、連結プロトコル、及びインターフェイスに適用できる。
図1は本発明の一実施形態に係る適応的多重経路ファブリックを含むデータ格納システム100を示すブロック図である。図1の実施形態はサーバーノード20をデュアルポートデータ格納装置セット30と連結するファブリック10を含む。ファブリック10は印刷回路基板上のパターン(trace)、複数の電気配線(例えば、リボンケーブル、mini−SAS HDケーブル、OCuLinkケーブル等)、及びそれらの組合せのような多様な方式により具現される。ファブリック10はスイッチ40の間のクロス接続12AC、12BC、12BD、12ADを含む。ノード故障の場合に帯域幅バランシング(balancing)の提供のために追加的に、クロス接続12AC、12BC、12BD、12ADはエンドポイント再割当及び帯域幅バランシングに使用されて入力/出力(I/O)負荷及び非平衡ノードCPU使用をカウンティングするだけでなく、データ格納装置セット30の間のピアツーピア通信(例えば、サーバーノード20からの干渉無しに、第1データ格納装置セット30A及び第2データ格納装置セット30Bの間の直接メモリアクセス伝送(direct memory access transfers))を提供する。
デュアルポートデータ格納装置セット30の各々は1つ以上のデュアルポートデータ格納装置32を含む。各デュアルポートデータ格納装置32は資源リンク16を通じて2つの他のスイッチと連結される。本文に使用する‘‘スイッチ(switch)’’の用語は通信のためにスイッチと連結された装置に対して複数の通信経路を提供する電気的な構成要素を示す。スイッチは装置の間のトラフィックの経路を設定し、スイッチと連結された通信装置の間の連結を設定する。
図1に図示したように、各サーバーノード20は1つ以上のプロセッサ24(例えば、Intel(登録商標) Xeon(登録商標)プロセッサ)を含む。1つ以上のプロセッサ24はPCIe連結を通じてネットワークインターフェイスカード(NIC)26(例えば、イーサーネット(登録商標)NIC)と連結され、ホストリンク14(例えば、他のPCIe連結又は複数のPCIe連結)を通じて対応するスイッチ40と連結される。各サーバーノード20は高可用性ピア(HA peer;high availability peer)と指称される他の1つのサーバーノード20とペアをなす。例えば、サーバーノード20A、20BはHAピアであり、ペア22ABを形成する。共通HAピアのペア22はファブリック10を通じて2つの予備経路(redundant paths)により1つ以上のデータ格納装置セット30をアクセスする。例えば、HAペア22ABはデータ格納装置セット30A、30Bへアクセスする。HAピアノードの他のペア22は他のデータ格納装置セット30に他の予備経路によりアクセスする。例えば、HAペア22CDはデータ格納装置セット(30C、30D)へアクセスする。
ファブリック10は複数のHAピアのペア22を連結して、1つのサーバーノード故障状況において、データ格納装置32及びすべてのノードにわたった均衡ある帯域幅のための連結を提供する。N個のサーバーノード20(又はN個のスイッチ40)を具備するシステムにおいて、1つのスイッチ40から他の(N−2)個のスイッチ40の各々への追加的なクロス接続帯域幅の量は正常、非故障モードの動作において各サーバーノード20によって支援される帯域幅(正常帯域幅‘‘normal bandwidth’’)の1/(N−1)倍である。結果的に、1つのノードの故障による帯域幅の損失は残る(N−1)個のノードによって減少される。
さらに詳細には、図1は4つのサーバーノード20(N=4)を示す。説明を簡易にするために、図1は帯域幅ユニットBで表した帯域幅を示し、この時、Bはデータ格納装置32の中の1つの帯域幅要求を示す。図1において、データ格納装置セット30の各々は6個のデータ格納装置32を含む。したがって、データ格納装置セット30の各々は6Bの帯域幅(各データ格納装置32当たり1B)を必要とする。図1に図示したように、4つのサーバーノード20はシステムにおいて24個のデータ格納装置32に総24Bの処理量(ノード当たり6B)を提供する。
サーバーノード20及びそれに対応するスイッチ40の間の各連結の実際帯域幅容量は8Bであるので、データ格納装置セット30の各々において要求される6Bの帯域幅容量を2Bぐらい超過する。また、図1の実施形態において、ホストプロセッサ24及びネットワークインターフェイス26の間の連結はホストプロセッサ24及びスイッチ40の間の帯域幅、例えば8Bと少なくとも同一の帯域幅を有する。
図1に図示した実施形態において、各ノードから非HAピアノードの各々へのクロス接続帯域幅は6B/3=2Bである。例えば、第1サーバーノード20Aと対応する第1スイッチ40A及びその非HAピアノード20C、20Dのスイッチ40C、40Dの間のクロス接続12AC、12ADの各々のクロス接続帯域幅は2Bである。同様に、第2サーバーノード20Bと対応する第2スイッチ40B及びそれの非HAピアノード20C、20Dのスイッチ40C、40Dの間のクロス接続12BC、12BDの各々のクロス接続帯域幅は2Bである。図1に図示したように、クロス接続12はスイッチ40の間に形成される。しかし、本発明の実施形態がこれに限定されず、上述したように、クロス接続12の各々の最小帯域幅は正常、非故障モードの動作において各サーバーノード20によって支援される帯域幅をサーバーの個数(N)から1を差し引いた値により割った帯域幅に設定される。その他の実施形態において、システムが複数のサーバーノード20の故障を許容するように設計された場合、クロス接続20の各々の最小帯域幅は正常、非故障モードの動作において各サーバーノード20によって支援される帯域幅をサーバーの個数(N)から許容される故障の個数を差し引いた値により割った帯域幅に設定される。
図2は本発明の一実施形態に係る適応的多重経路ファブリックを含むデータ格納システムを示すブロック図であり、B=X4(例えば、4レーンPCIeリンクの帯域幅)である場合の適応的多重経路を含むデータ格納システム100を示すブロック図である。PCIe3.0の場合、X4リンクは約4GB/sの最大帯域幅又は処理量を提供する。類似の構成に図1と同様の参照番号が付与され、このような構成に対する説明は省略する。
図2に図示した実施形態において、ノード当たり64個のPCIe3.0レーンを具備する4つのサーバーノード20は各々セット当たり6個のドライブを含む4つのセットに配置された24個のデュアルポートNVMe SSDと連結される。24個のデュアルポートNVMe SSDの各々は2つのエンドポイント(即ち、2つのSSDエンドポイント)を含む。この時、各エンドポイントはサーバーノードの中のいずれか1つに割当される。例えば、第1データ格納装置セット30AにおいてSSDのエンドポイントの各々は第1サーバーノード20Aに割当される。PCIe3.0を使用する場合、図2に図示したシステムは96GB/s使用者データ処理量(PCIe3.0帯域幅の96レーン)のエンドツーエンドシステムパフォーマンスプロフィール及び高可用性(1つのサーバーノード故障の状況においてすべてのSSDへの最大限のパフォーマンスアクセスが維持されること)を保障する。
図2の例示的な実施形態において、全負荷により動作中である場合、NVMe SSD32の各々は、約4GB/sによりデータを伝送し単一X4リンクによって提供される。また、デュアルポードNVMe SSDの2つのポートの各々はX4リンクを提供する。結果的に、NVMe SSDの2つのポートの中の1つの故障はデータ格納装置が相変わらず最大限のパフォーマンスにて動作できるようにする。NVMe SSDの各々が4つのPCIeレーンの帯域幅を要求するので、データ格納装置の全体セット30の最大限のパフォーマンスを維持するために、6個のデュアルポートNVMe SSDのセットの各々は6X4=X24すなわち24レーンの帯域幅を必要とする。
図2に図示したように、データ格納装置セット30はPCIeスイッチ40と連結される。各スイッチ40はPCIe連結を通じて対応するホストサーバーノード20と連結される。図2の実施形態において、PCIeスイッチとサーバーノード20のホストプロセッサ24との間にX32リンクが存在する。
図2に図示した構成において、サーバーノード20A、20Bは12個のSSD00乃至11(第1データ格納装置セット30A、第2データ格納装置セット30Bに該当する2個のSSDセット)にデュアルポートアクセスを提供するHAピアノードである。同様に、サーバーノード20C、20Dは他の12個のSSD12乃至23(2個のデータ格納装置セット30C、30Dに該当する2個のSSDセット)にデュアルポートアクセスを提供するHAピアノードである。
図2に図示したPCIeファブリック10はホストリンク14をさらに含む。ホストリンク14はスイッチ40及び資源(データ格納装置32)の間の資源連結16に追加的に、4つのサーバーノード20からスイッチ40への総128個のPCIe3.0レーン(各ノード当たり32レーン)を連結する。ホストリンク14の各々は複数の連結を含む。例えば、デュアル−プロセッササーバーノードの場合、各サーバーノードからの32個のレーンはサーバーノードの第1CPUソケットと連結された16個のレーン及びサーバーノードの第2CPUソケットと連結された16個のレーンを含む。また、サーバーノード20の各々はサーバーノードを複数のスイッチ40と連結する複数のホストリンク14を含む。図2の実施形態に図示したように、資源連結16は24個のデュアルポートNVMeSSDにわたった総192個のレーンを含む。この時、各SSDはX4レーンの帯域幅(最大4GB/s)の処理容量を有する。各SSDは処理容量(SSD当たりX4レーン)に比べて2倍多いポート連結(SSD当たり2X4レーン)を含む。24個のドライブにわたった総96個のレーンに対するSSD当たりX4レーンの全処理量(full throughput)を達成するために、各サーバーノード20はX32レーンの処理容量の中のX24レーンの帯域幅を提供する。
一部の状況において、デュアルポートNVMeSSDの各ポートはSSDの全処理容量(full throughput capability)より低い帯域幅を有する。例えば、一部デュアルポートNVMeSSDは2つのX2ポートのみを含み、これは各ポートはX2レーンのみを支援することを意味する。結果的に、SSDの最大処理量はX4レーンであると仮定すれば、ポートの中の1つが故障であるか、又はポートの中の1つと連結されたスイッチが故障の場合、SSDはX2レーン(即ち、SSDの処理容量の半分)のみの連結が可能である。
1つのサーバーノードが故障の状況において、96GB/sの持続可能な帯域幅を支援するために、ファブリック10のクロス接続12はノード20A、20C、ノード20A、20D、ノード20B、20C、及びノード20B、20Dの各々の間に24GB/s/(N−1)=8GB/sのクロス接続帯域幅(cross−connection bandwidth)を提供する。
PCIeスイッチ40によって提供されるレーンの最小個数は連結された構成要素、即ち2つのデータ格納装置セット30(例えば、第1PCIeスイッチ40Aは第1データ格納装置セット30Aのデータ格納装置及び第2データ格納装置セット30Bのデータ格納装置と連結される)、ホストプロセッサ24、及びファブリック10のクロス接続12の必要条件に依存する。図2に図示した実施形態において、全体24+24+32+8+8=96レーンに対して、データ格納装置セット30の各々は24レーンを必要とし、ホストプロセッサ24は32レーンを必要とし、ファブリック10への2つのクロス接続12の各々は8レーンを必要とする。図2に図示した実施形態において、PCIeスイッチ40の各々はX96スイッチすなわち96レーンスイッチである。しかし、本発明の実施形態がこれに限定されることはなく、スイッチは連結された構成が必要とする数より多いレーンを含む。このような特定実施形態において、PCIeスイッチは96レーン以上を含む。
<ノード故障における帯域幅リバランシング(Rebalancing bandwidth under node failure)>
図3は本発明の一実施形態に係るスイッチの故障及びデータ伝送トラフィックのリバランシング(rebalancing)を示すブロック図である。サーバーノード及びスイッチの間の予備連結(redundant connections)がないので、スイッチ40の故障状況において、スイッチ40と連関されたサーバーノード20はシステムの残りの部分との連結が切断される。したがって、本発明の一部の実施形態において、スイッチ40の故障はそれと連関されたサーバーノードの損失を実質的に発生させる。しかし、本発明の実施形態がこれに限定されることはなく、一部の実施形態において、サーバーノードは複数のスイッチと連結される。
図3の実施形態において、故障のスイッチ40Bと連結されたサーバーノード20Bはデータ格納システム100から連結が切断され、それによって、スイッチ40B及びサーバーノード20Bによって管理される作業負荷又はデータトラフィックが残りの(N−1)個のスイッチ40A、40C、40D及び(N−1)個のサーバーノード20A、20C、20Dに分散される。故障のスイッチ又はノード20Bと連結されたデータ格納装置セット30に/からのデータ伝送は重複して連結されたスイッチ40Aを経由する。このような作業負荷のリバランシングはシステムの24個SSD全体の処理量(SSD当たりX4リンク)を維持する。
システムに内装された超過容量により、故障のスイッチと連結されたドライブセットに/からのデータ伝送のパフォーマンスが維持される。特に、帯域幅の一部はHAペアの生存メンバーに直接連結されたサーバーノードからもたらされ、帯域幅の残る部分はファブリック10を通じて連結された他のサーバーノード(例えば、20A、20C、20D)によって提供される。また、残りの(N−1)個のサーバーノード(例えば、20A、20C、20D)は追加的な負荷を収容するように、各々のスイッチ(例えば、40A、40C、40Dとの連結により充分な帯域幅を有する。
本発明の一部の実施形態において、適応的多重経路ファブリック10のスイッチ40はこのようなノード故障を自動的に検出し、続いてSSDエンドポイントをサーバーノード20に自動的に再割当し、生存サーバーノードを通じて帯域幅をリバランシングするようにプログラムされる。言い換えれば、スイッチ40はスイッチの現在の構成に基づいて各SSDにどのように連結されるかに対する情報を維持し、エラー条件に対して物理及びリンク階層により他のスイッチ40、データ格納装置セット30、及びサーバーノード20の間の連結をモニターリングし、このようなエラーを管理システム(例えば、サーバーノード20の中の1つ又は他の専用管理プロセッサ)に報告する。管理システムは報告されたエラーに基づいてリンク又はサーバーノードが故障であるか否かを判別し、SSDのSSDエンドポイントをサーバーノード20の中の到達できるノードに再割当するようにスイッチ40を再構成する。図3に図示した1つのノード故障による帯域幅の低下はないが、ノードの間のクロス接続12はPCIeスイッチの1つの追加的なレベルを経由し、これによって追加的な遅延が発生する。しかし、PCIeスイッチを通じた遅延はSSDに/からのデータアクセスの全体遅延と比較して一般的に小さく、無視できる。
図4は本発明の一実施形態に係るサーバーノードの故障及びデータ伝送のリバランシング(rebalancing)を示すブロック図である。図4を参照すれば、サーバーノード20Bが故障であるが、対応するスイッチ40Bは生存した状況であって、データは機能スイッチ40Bを通じて相変わらず、経由できるが、3つの生存サーバーノード20A、20C、20Dのみを通じてアクセスされる。このような状況において、適応的多重経路ファブリックの管理システム(例えば、サーバーノード20の中の1つ又は他の専用管理プロセッサ)はサーバーノード20Bの故障を自動的に検出するようにプログラムされ、図3に図示した実施形態のように、SSDエンドポイントを生存エンドポイント(surviving endpoints)に自動的に再割当する。本発明の他の実施形態において、エラーの検出及びスイッチ40の自動的再構成はスイッチ自体により(例えば、スイッチ40に集積された処理ユニットによって)具現される。
本発明の一部の実施形態において、個別のスイッチは2個のデータ格納装置セット30が最大限のパフォーマンス(full performance)にて動作するのに充分な帯域幅を提供しなくともよい。例えば、スイッチ40Bが故障の場合、データ格納装置セット30A、30Bへの唯一の経路は生存スイッチ40Aを通じる経路である。生存スイッチ40AがX96レーンより小さいレーンを含む場合、データ格納装置セット30A、30Bは最大限のパフォーマンスにて動作するのに充分な帯域幅を有さない。しかし、スイッチ40Bが故障ではなく、連関されたサーバーノード20Bのみが故障の場合、スイッチ40Bが正常サーバーノード20A、20C、20Dにデータを再ルーティングすることに参加できる。このような一部の実施形態において、データ格納装置セット30の全部が最大限のパフォーマンスにて続いて動作できる充分な帯域幅が提供される。
<ノード間通信(Inter−node communication)>
本発明の一部の実施形態において、補助ファブリック50(secondary fabric)がサーバーノード20の間の通信のために含まれる。図5は本発明の一実施形態に係るサーバーノード20を連結する補助ファブリック50をさらに含むシステムのブロック図である。補助ファブリック50は補助スイッチ54(例えば、54A、54B、54C、及び54D)を他の1つに連結する相互連結52(inter−connections)(例えば、52AB、52AC、52AD、52BC、及び52BD)を含む。この時、補助スイッチ54の各々は対応する1つのサーバーノード20と直接連結される。例えば、補助スイッチ54Aはサーバーノード20Aと直接連結される。ファブリック10と同様に、補助ファブリック50は印刷回路基板上のパターン(trace)、複数の電気配線(例えば、リボンケーブル、mini−SASHDケーブル、OCuLinkケーブル等)、及びそれらの組合せのような多様な方式により具現される。本発明の一実施形態によれば、補助ファブリック50はサーバーノードCPU NTB(non−transparent bridge)ポートと連結される。補助ファブリック50はサーバーノード20の間のメタデータを同期化するのに使用され、サーバーノード20の間の低遅延内部通信(low−latency internal communication)を提供する。
<ファブリックの漸進的な拡張(Incrementally expanding the fbric)>
図1、図2、図3、図4、及び図5は4つのデータ格納装置セットへの高可用性及び高性能アクセスを提供するサーバーノード20の2つのペア22を具備するシステムを示しているが、本発明の実施形態がこれに限定されることではない。
本発明の実施形態は特定アプリケーションの作業負荷の必要条件によってデータ格納装置、スイッチ、及びサーバーノードの構成を含む。
図6は本発明の一実施形態に係る1つのデータ格納装置セット30A及び2つのサーバーノード20A、20Bを含む小さい高可用性構成を示すブロック図である。図6の構成は1つのデータ格納装置セット30Aのデータ格納容量が現在作業負荷に対して充分な場合、及び予備サーバーノードを通じた高可用性が適切な場合に有用である。
図6を参照すれば、1つのデータ格納装置セット30Aは第1スイッチ40A及び第2スイッチ40Bの両方と連結される。図1の実施形態と同様に、第1スイッチ40Aは第1サーバーノード20Aと連結され、第2スイッチ40Bは第2サーバーノード20Bと連結される。第1サーバーノード20A又は第2サーバーノード20Bの中のいずれか1つが故障の場合、データ格納装置セット30Aは生存ノードを通じてアクセスを維持する。
データ格納需要が増加する場合、追加的なデータ格納装置セットが図6のシステムに追加できる。例えば、第1スイッチ40A及び第2スイッチ40Bの全てに追加データ格納装置を連結することによって、追加的な1つのデータ格納装置セットが追加されて、他のスイッチへの相互連結無しに、第1サーバーノード20A、第2サーバーノード20B、第1スイッチ40A、第2スイッチ40B、第1データ格納装置セット30A、及び第2データ格納装置セット30Bと実質的に類似に構成される。前述のように、サーバーノード20A、20Bの中の1つ又はスイッチ40A、40Bの中の1つが故障の場合、第1及び第2データ格納装置セット30A、30Bの全てはアクセス可能であるように維持される。
図7は本発明の一実施形態に係る追加的なデータ格納装置セットを含む図6に図示した構成からの拡張を示す。図7に図示したように、第2データ格納装置セット30Bは第1スイッチ40A及び第2スイッチ40Bと連結される。図7の構成は追加的なサーバーノードの代わりに第3スイッチ40C及び第4スイッチ40Dの追加的なクロス接続をさらに含む。第3データ格納装置セット30Cは第3及び第4スイッチ40C、40Dと連結され、第4データ格納装置セット30Dは第3及び第4スイッチ40C、40Dと連結される。クロス接続12AC、12BCは第3スイッチ40Cを第1及び第2スイッチ40A、40Bと連結し、クロス接続12AD、12BDは第4スイッチ40Dを第1及び第2スイッチ40A、40Bと連結する。結果的に、第1及び第2サーバーノード20A、20Bは第3及び第4スイッチ40C、40Dを通じて第3及び第4データ格納装置セット30C、30Dをアクセスする。
図7に図示した構成において、サーバーノード20A、20Bの中の1つが故障の場合、又は4つのスイッチ40A、40B、40C、40Dの中のいずれかが故障の場合において、データ格納装置の全部がアクセス可能であるように維持される。しかし、第3及び第4データ格納装置セット30C、30Dのデータ処理パフォーマンス(data throughput performance)はクロス接続12の帯域幅によって制限され、サーバーノード20及びその対応するスイッチ40の間のホストリンク14によって制限される。特に、図7の配列において、2つのサーバーノード20は4つのデータ格納装置セット30の全部に総16Bの帯域幅(各サーバーノード20毎に8B)を提供し、これはクロス接続12AC、12AD、12BD、12BDのみを通じて連結されるデータ格納装置セット30C、30Dへの可用である最大帯域幅と対応する、データ格納装置セット当たり4Bを意味する。言い換えれば、クロス接続当たり2Bであり、4つのクロス接続は2つのドライブセットと共有される総8B(ドライブセット当たり4B)を提供する。また、サーバーノードの中の一部又はスイッチの中の一部の故障はシステムのデータ処理量に追加的な影響を及ぼす。このような意味において図7の構成は、例えば充分な帯域幅が総格納容量より重要でない場合にさらに適合する。
追加的な帯域幅が要求される場合、図7の構成はサーバーノードを第3及び第4スイッチ40C、40Dに連結するように拡張され、これにしたがって図2に図示したのと実質的に同一な構造になる。このような意味において、本発明の実施形態は使用者の増加する要求条件を対応するために必要に応じてシステムの漸進的な拡張を許容する。
本発明のその他の実施形態において、使用者によって要求される作業負荷はデータ集中(data−intensive)より演算集中(compute−intensive)による。図8は本発明の一実施形態に係る追加的なサーバーノードを含む図6に図示した構成からの拡張を示す。
図6に図示したように6個のデータ格納装置の1つのセット30A及び2つのサーバーノードの基本構成に、第3サーバーノード20Cがクロス接続12AC、12BCを通じて第1及び第2スイッチ40A、40Bと連結された第3スイッチ40Cと共に追加される。又は、第3サーバーノード20Cは追加的なスイッチの代わりにパッシブ相互連結ボード(passive interconnect board)(例えば、サーバーノード20C及びスイッチ40A、40Bの間の効率的な直接連結)を通じて第1及び第2スイッチ40A、40Bと連結される。これは同一のデータ格納装置セットへのアクセスを維持しながら、システムの演算能力を向上させる。演算要求がさらに増加する場合、第4ノード20Dが第4スイッチ40D又はパッシブ連結ボードの中の1つを通じて第1及び第2スイッチ40A、40Bと連結される。
本願の使用事例は、2つのサーバーノード20A、20B上において駆動するソフトウェアスタックがデータ格納装置32への最高帯域幅を達成する能力に影響を及ぼす隘路現象である場合であり、この場合、さらに多くのサーバーノードの追加がさらに多くのサーバー演算能力を提供する。追加的なストレージが要求される場合、追加的なデータ格納装置セットが図7に図示したのと類似な方式により漸進的に追加されて図2に図示したように24個のデータ格納装置及び4つのサーバーノードの構造が達成される。
説明を簡易にするために、本発明の実施形態が4個以下のスイッチを含む構造により説明した。しかし、本発明の範囲がこれに限定されることではない。例えば、本発明の一部の実施形態は4個以上のスイッチを含む。
類似の方式を使用する場合、本発明の実施形態に係る適応的多重経路ファブリックを含むデータ格納システム100の変形は、例えば、144GB/sの全体処理量に対して、6個のスイッチを通じて36個のデータ装置と連結された6個のノードを含む。他の例として、図9は本発明の一実施形態に係る192GB/sの全体処理量(各々約4GB/sを有するデータ格納装置に対する上述した仮定に基づく)のために8個のスイッチ40A、40B、40C、40D、40E、40F、40G、40Hを通じて48個のデータ格納装置と連結された8個のサーバーノード20A、20B、20C、20D、20E、20F、20G、20Hを含むシステムを示すブロック図である。
このように、本発明の実施形態に係る適応的多重経路ファブリック構造はサーバーノードのグループ及び高性能マルチポートNVMe SSDのグループを使用して均衡を成し、構成可能なエンドツーエンドシステムパフォーマンスプロフィール(balanced and configurable end−to−end system performance profile)を提供する。パフォーマンスはサーバーノード及びエンドポイントを通じて均衡を成し、パフォーマンスは1つのノードが故障しても維持され、均衡をなす。
データ格納システムは、例えばイーサーネット(登録商標)連結を通じてSANを提供し、多重経路ファブリックはサーバーノードへの基本ドライブの間のパフォーマンスに相応しいイーサーネット(登録商標)を通じてネットワークストレージパフォーマンスを提供する。
例えば、システムパフォーマンスプロフィールは100GB/s使用者データ処理量と、サーバーノードの間のローレイテンシ内部通信と、エンドポイント上のデータへの高可用性アクセスとの中の1つ以上の組合せである。
本発明の実施形態は適応的多重経路ファブリック構造を提供する。適応的多重経路ファブリック構造はサーバーノードのグループ(PCIeルート−コンプレックス)をマルチポートSSDのグループと連結し、
サーバーノードの個数、SSDの個数、エンドツーエンドパフォーマンス規定(end−to−end performance specification)に関して柔軟性(flexibility)を提供し、
サーバーノード及びSSDを通じてエンドツーエンド負荷均衡を支援し、SSDのマルチポートを通じて一対のサーバーノード(HA−peers)からSSDのセットへの予備アクセスを提供し、
様々なペアのHAピアノードの間のクロス接続帯域幅を提供して故障復旧及び負荷均等化シナリオによりすべてのサーバーノードに帯域幅をリバランシングし、すべての生存ノードによって帯域幅をリバランシングすることによってエンドツーエンドシステムパフォーマンスの低下無しに1つのノード故障に耐え、自動故障検出及びその後のサーバーノードへのSSDエンドポイントの再割当及び帯域幅のリバランシングに転じる能力を提供する。
本発明の実施形態は、柔軟な拡張可能な方式によりサーバーノードのようなPCIeルート−コンプレックスをデュアルポートNVMeSSDのようなマルチポートPCIeエンドポイントと連結する機能と、
1つのルート−コンプレックス故障(HA)の状況においてパフォーマンス低下を制限しながら、すべてのPCIeエンドポイントを継続的にアクセスする機能と、ルート−コンプレックス及びエンドポイントの間の帯域幅の割当を調整する機能と、
故障復旧又は負荷バランシングシナリオにより、PCIeエンドポイントをルートコンプレックスに動的に再割当する機能と、
ホストルート−コンプレックス上のオーバーヘッド無しにエンドポイントの間のピアツーピアデータ伝送を遂行する機能と、HAピアサーバーノードの間のローレイテンシの高い処理量通信を遂行する機能を可能とする。
本発明を特定例示的な実施形態と関連して説明したが、本発明が記載した実施形態に限定されず、特許請求範囲の範囲及びその思想内に含まれる同等の配列及び多様な変形及びそれらの均等物を含むと意図する。
例えば、本発明の実施形態はPCIeスイッチを通じてサーバーノードに連結されるPCIeポートを含むソリッドステートドライブとしてコンピューティング資源に関して説明したが、本発明の実施形態はこれに限定されない。例えば、本発明の実施形態において、ソリッドステートドライブは2以上のポートを含むが、代わりに多様な複数のエンドポイントポート(例えば、2以上のポート)を含むSSDの使用も含む。また、本発明の一部の実施形態において、サーバーノードは複数のポートを通じてファブリックに連結される。例えば、サーバーノードは多数のホストリンクを通じて1つ以上のスイッチと連結され、それによって、ホストリンク又はスイッチが故障の状況において、サーバーノード及びコンピューティング資源の間の予備連結を提供する。ホストリンク及びスイッチの帯域幅に応じて、このような予備連結は、故障状態においても、サーバーノードが最高帯域幅にて動作するようにする。
一部の実施形態によれば、ソリッドステートドライブはイーサーネット(登録商標)、IB(Infiniband(登録商標))、FC(Fibre Channel)、SAS(serially attached SCSI)等の他のインターフェイスを使用する。例えば、イーサーネット(登録商標)インターフェイスの場合に、PCIeスイッチはネットワーク(イーサーネット(登録商標))スイッチに交替される。
一部の実施形態によれば、適応的多重経路ファブリックを使用して連結された資源はハードディスクドライブ、テープドライブ、DRAMのような揮発性メモリの他の形態のコンピューティング資源、及びベクトルプロセッサ、GPU、DSP、FPGAのようなコンピューティングユニットである。
本発明のその他の実施形態において、個別的なコンピューティング資源の各々は複数のポートを含むことを必要としない。例えば、各コンピューティング資源セットは個別的なコンピューティング資源の各々へのリンク及び2つの連結されたスイッチ40にリンクを提供するアダプター又はスイッチを含む。さらに詳細な例として、データ格納装置32の各々は各データ格納装置32がデータ格納ストレージ装置のセットと連関されたアダプターと連結される単一ポートデータ格納装置である。アダプターは2つのスイッチ40と連結される。このような方式により、個別的なデータ格納装置の各々が単一ポート装置であっても、データ格納装置セット30は複数のスイッチ40に相変わらず連結される。このような技法は上述したように他の形態のコンピューティング資源に適用できる。
説明を簡易にするために、インターフェイスの相対的な帯域幅は図示した実施形態において同一であるが(例えば、データ格納装置の各セットに対して6B、各サーバーノード及び対応するスイッチの間の連結に対して8B、及びスイッチの間の各クロス接続に対して2B)、本発明の実施形態がこれに限定されることはなく、本発明の実施形態は他の帯域幅(例えば、インターフェイスと連関されたコンピューティング資源の処理量と対応する帯域幅)を提供するインターフェイスを含む実施形態をさらに含む。1つのサーバーノードの故障状況において、適応的多重経路ファブリックと連結された資源の最大限のパフォーマンスを維持するように設計された本発明の一部の実施形態において、クロス接続の全体帯域幅(又はクロス接続帯域幅)は1つのノードによって一般的に提供される帯域幅と少なくとも同一であって十分である。本発明の一部の実施形態が本文において、クロス接続の全部が同一の帯域幅を有し、HAペアが外部のすべてのスイッチに連結されると説明したが、本発明の実施形態がこれに限定されることではない。例えば、一部の実施形態において、クロス接続は他の帯域幅を有し、一部の実施形態において、クロス接続は他のスイッチの全部より少ない数にて形成される。
説明を簡易にするために、8個以下のホストを含む実施形態を説明したが、本発明の実施形態がこれに限定されることはなく、類似な概念が多様な数のホストにより具現される。
同様に、本発明の実施形態が正確に6個のデータ格納装置のセットに限定されることはなく、各セットにおいて多数のSSD(例えば、各セットにおいて同一の数又は各セットにおいて多様な数)を含む実施形態をさらに含む。
本発明の実施形態は、ファブリック故障検出及び再構成機能を使用してストレージ管理ツールと通信してストレージ基盤施設管理を向上させる。
10 ファブリック
12 クロス接続
14 ホストリンク
16 資源リンク
20 サーバーノード
22 ペア
24 ホストプロセッサ
26 ネットワークインターフェイス
30 データ格納装置セット
32 データ格納装置
40 スイッチ
50 補助ファブリック
52 相互連結
54 補助スイッチ
100 データ格納システム

Claims (23)

  1. コンピューティング資源への高可用性アクセスを提供するコンピューティングシステムにおいて、
    複数のインターフェイスと、
    複数のコンピューティング資源セットと、
    少なくとも3つのスイッチと、を含み、
    前記複数のコンピューティング資源セットの各々は、複数のコンピューティング資源を含み、
    前記少なくとも3つのスイッチの各々は、ホストリンクを通じて前記インターフェイスの中の対応する1つと連結され、複数の資源連結を通じて前記複数のコンピューティング資源セットの中の対応する1つと連結され、前記スイッチの中の1つが故障の場合、前記スイッチの間の複数のクロス接続を通じて前記スイッチの中の残されているスイッチにデータトラフィックが分散されるように構成されることを特徴とするコンピューティングシステム。
  2. 前記少なくとも3つのスイッチは、
    第1スイッチと、
    第2スイッチと、
    第1クロス接続を通じて前記第1スイッチと直接連結され、第2クロス接続を通じて前記第2スイッチと直接連結される第3スイッチと、を含むことを特徴とする請求項1に記載のコンピューティングシステム。
  3. 第1ホストリンクを通じて前記第1スイッチと連結され、前記複数のインターフェイスの中の第1インターフェイスを含む第1サーバーノードと、
    第2ホストリンクを通じて前記第2スイッチと連結され、前記複数のインターフェイスの中の第2インターフェイスを含む第2サーバーノードと、をさらに含むことを特徴とする請求項2に記載のコンピューティングシステム。
  4. 第3ホストリンクを通じて前記第3スイッチと連結される第3サーバーノードをさらに含むことを特徴とする請求項3に記載のコンピューティングシステム。
  5. 前記第1サーバーノードと直接連結される第1補助スイッチと、
    前記第2サーバーノードと直接連結される第2補助スイッチと、
    前記第3サーバーノードと直接連結される第3補助スイッチと、
    前記第1補助スイッチを前記第2補助スイッチと直接連結する第1クロス接続と、
    前記第1補助スイッチを前記第3補助スイッチと直接連結する第2クロス接続と、
    前記第2補助スイッチを前記第3補助スイッチと直接連結する第3クロス接続と、をさらに含むことを特徴とする請求項4に記載のコンピューティングシステム。
  6. 前記複数のコンピューティング資源セットの中の第1コンピューティング資源セットは、第1データ格納装置セットを含み、
    前記第1データ格納装置セットのデータ格納装置の各々は、前記複数の資源連結の中の第1資源連結を通じて前記第1スイッチと直接連結された第1ポート及び前記複数の資源連結の中の第2資源連結を通じて前記第2スイッチと直接連結された第2ポートを含み、
    前記複数のコンピューティング資源セットの中の第2コンピューティング資源セットは、第2データ格納装置セットを含み、
    前記第2データ格納装置セットのデータ格納装置の各々は、前記複数の資源連結の中の第3資源連結を通じて前記第1スイッチと直接連結された第3ポート及び前記複数の資源連結の中の第4資源連結を通じて前記第2スイッチと直接連結される第4ポートを含むことを特徴とする請求項3に記載のコンピューティングシステム。
  7. 第3クロス接続を通じて前記第1スイッチと直接連結され、第4クロス接続を通じて前記第2スイッチと直接連結される第4スイッチをさらに含むことを特徴とする請求項6に記載のコンピューティングシステム。
  8. 第3データ格納装置セットをさらに含み、
    前記第3データ格納装置セットのデータ格納装置の各々は、第5資源連結を通じて前記第3スイッチと直接連結される第5ポート及び第6資源連結を通じて前記第4スイッチと直接連結される第6ポートを含むことを特徴とする請求項7に記載のコンピューティングシステム。
  9. 第4ホストリンクを通じて前記第4スイッチと直接連結された第4サーバーノードをさらに含むことを特徴とする請求項8に記載のコンピューティングシステム。
  10. 第4データ格納装置セットをさらに含み、
    前記第4データ格納装置セットのデータ格納装置の各々は、第7資源連結を通じて前記第3スイッチと直接連結される第7ポート及び第8資源連結を通じて前記第4スイッチと直接連結される第8ポートを含むことを特徴とする請求項9に記載のコンピューティングシステム。
  11. 前記スイッチの各々は、他のスイッチの故障を検出し、前記スイッチに対応する前記クロス接続及び前記ホストリンクを通じて前記第1データ格納装置セットのデータ格納装置及び前記第2データ格納装置セットのデータ格納装置へのアクセスを提供するように構成されることを特徴とする請求項6に記載のコンピューティングシステム。
  12. 前記コンピューティングシステムはN個(但し、Nは自然数)のインターフェイスを含み、
    帯域幅ユニットB(但し、Bは正数)は、前記コンピューティング資源セットのコンピューティング資源の中の1つが最高帯域幅(full bandwidth)にて動作するのに要求される帯域幅の量を示し、
    前記複数の資源連結の各々は、少なくとも1XBの帯域幅を含み、
    前記複数のコンピューティング資源セットの各々は、K(但し、Kは自然数)個以下のコンピューティング資源を含み、
    前記複数のインターフェイスの各々のホストリンクの各々は、KXBの正常トラフィック帯域幅及びKXB以上の最大トラフィック帯域幅を支援し、
    前記複数のクロス接続の各々は、少なくともKXB/(N−1)の帯域幅を含むことを特徴とする請求項1に記載のコンピューティングシステム。
  13. 少なくとも2つの高可用性ペア(high−availability pairs)を含み、
    前記高可用性ペアの各々は、
    第1スイッチと、
    第2スイッチと、
    第1ホストリンクを通じて前記第1スイッチと連結される第1インターフェイスと、
    第2ホストリンクを通じて前記第2スイッチと連結される第2インターフェイスと、
    第1資源連結を通じて前記第1スイッチと連結され、第2資源連結を通じて前記第2スイッチと連結される第1コンピューティング資源セットと、
    第3資源連結を通じて前記第1スイッチと連結され、第4資源連結を通じて前記第2スイッチと連結される第2コンピューティング資源セットと、
    複数の第1クロス接続と、
    複数の第2クロス接続と、を含み、
    前記複数の第1クロス接続の各々は、前記第1スイッチを他の高可用性ペアの各スイッチに直接連結し、前記第2クロス接続の各々は、前記第2スイッチを前記他の高可用性ペアの各スイッチに直接連結することを特徴とするコンピューティングシステム。
  14. 前記第1コンピューティング資源セットは、第1データ格納装置セットを含み、前記第1データ格納装置セットのデータ格納装置の各々は、前記第1資源連結を通じて前記第1スイッチと直接連結される第1ポート及び前記第2資源連結を通じて前記第2スイッチと直接連結される第2ポートを含み、
    前記第2コンピューティング資源セットは、第2データ格納装置セットを含み、前記第2データ格納装置セットのデータ格納装置の各々は、前記第3資源連結を通じて前記第1スイッチと直接連結される第3ポート及び前記第4資源連結を通じて前記第2スイッチと直接連結される第4ポートを含むことを特徴とする請求項13に記載のコンピューティングシステム。
  15. 前記第1スイッチは、前記第2スイッチの故障を検出し、前記第1ホストリンク及び前記第1クロス接続を通じて前記第1データ格納装置セットのデータ格納装置及び前記第2データ格納装置セットのデータ格納装置へのアクセスを提供するように構成されることを特徴とする請求項14に記載のコンピューティングシステム。
  16. 前記コンピューティングシステムは、N個(但し、Nは自然数)のサーバーノードを含み、
    帯域幅ユニットB(但し、Bは正数)はコンピューティング資源の中の1つが最高帯域幅(full bandwidth)にて動作するのに要求される帯域幅の量であり、
    資源連結の各々は、少なくとも1XBの帯域幅を含み、
    コンピューティング資源セットの各々は、K(但し、Kは自然数)個以下のコンピューティング資源を含み、
    前記サーバーノードの各々は、KXBの正常帯域幅を支援し、KXB以上の最大帯域幅を支援し、
    クロス接続の各々は、少なくともKXB/(N−1)の帯域幅を含むことを特徴とする請求項13に記載のコンピューティングシステム。
  17. スイッチは、PCIe(Peripheral Component Interconnect Express)スイッチであり、
    ホストリンク及び前記資源連結は、PCIeバスリンクであることを特徴とする請求項1又は13に記載のコンピューティングシステム。
  18. 前記少なくとも2つの高可用性ペアは、
    第1高可用性ペアと、
    第2高可用性ペアと、
    第3高可用性ペアと、
    第4高可用性ペアと、を含むことを特徴とする請求項13に記載のコンピューティングシステム。
  19. 第1スイッチと、
    第2スイッチと、
    第1クロス接続を通じて前記第1スイッチと直接連結され、第2クロス接続を通じて前記第2スイッチと直接連結される第3スイッチと、
    第1コンピューティング資源セットと、
    第2コンピューティング資源セットと、を含み、
    前記第1コンピューティング資源セットの各々は、第1資源連結を通じて前記第1スイッチと直接連結された第1ポート及び第2資源連結を通じて前記第2スイッチと直接連結される第2ポートを含み、
    前記第2コンピューティング資源セットの各々は、第3資源連結を通じて前記第1スイッチと直接連結される第3ポート及び第4資源連結を通じて前記第2スイッチと直接連結される第4ポートを含むことを特徴とする予備資源連結ファブリック。
  20. 前記第1スイッチは、前記第2スイッチの故障を検出し、前記第1クロス接続を通じて前記第1コンピューティング資源セット及び前記第2コンピューティング資源セットへのアクセスを提供するように構成されることを特徴とする請求項19に記載の予備資源連結ファブリック。
  21. 第3資源連結を通じて前記第1スイッチと直接連結され、第4資源連結を通じて前記第2スイッチと直接連結される第4スイッチをさらに含むことを特徴とする請求項19に記載の予備資源連結ファブリック。
  22. 第5資源連結を通じて前記第3スイッチと直接連結され、第6資源連結を通じて前記第4スイッチと直接連結される第3コンピューティング資源セットをさらに含むことを特徴とする請求項21に記載の予備資源連結ファブリック。
  23. 第7資源連結を通じて前記第3スイッチと直接連結され、第8資源連結を通じて前記第4スイッチと直接連結される第4コンピューティング資源セットをさらに含むことを特徴とする請求項22に記載の予備資源連結ファブリック。
JP2017156664A 2016-08-19 2017-08-14 コンピューティング資源への高可用性アクセスを提供するコンピューティングシステム及び予備資源連結ファブリック Active JP7043201B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662377487P 2016-08-19 2016-08-19
US62/377487 2016-08-19
US15/344,438 US10365981B2 (en) 2016-08-19 2016-11-04 Adaptive multipath fabric for balanced performance and high availability
US15/344438 2016-11-04

Publications (3)

Publication Number Publication Date
JP2018029337A true JP2018029337A (ja) 2018-02-22
JP2018029337A5 JP2018029337A5 (ja) 2020-09-24
JP7043201B2 JP7043201B2 (ja) 2022-03-29

Family

ID=61191712

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017156664A Active JP7043201B2 (ja) 2016-08-19 2017-08-14 コンピューティング資源への高可用性アクセスを提供するコンピューティングシステム及び予備資源連結ファブリック

Country Status (5)

Country Link
US (3) US10365981B2 (ja)
JP (1) JP7043201B2 (ja)
KR (1) KR102191242B1 (ja)
CN (1) CN107769956B (ja)
TW (1) TWI704459B (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11983138B2 (en) 2015-07-26 2024-05-14 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
US10372659B2 (en) 2016-07-26 2019-08-06 Samsung Electronics Co., Ltd. Multi-mode NMVE over fabrics devices
US11144496B2 (en) 2016-07-26 2021-10-12 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
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
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
US11461258B2 (en) 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
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
US10365981B2 (en) * 2016-08-19 2019-07-30 Samsung Electronics Co., Ltd. Adaptive multipath fabric for balanced performance and high availability
WO2018193352A1 (en) * 2017-04-17 2018-10-25 Cerebras Systems Inc. Dataflow triggered tasks for accelerated deep learning
US11102294B2 (en) * 2017-06-09 2021-08-24 Samsung Electronics Co., Ltd. System and method for supporting energy and time efficient content distribution and delivery
US10476816B2 (en) 2017-09-15 2019-11-12 Facebook, Inc. Lite network switch architecture
US10235625B1 (en) 2018-02-09 2019-03-19 Capital One Services, Llc Automatically scaling neural networks based on load
TWI679861B (zh) 2018-09-06 2019-12-11 財團法人工業技術研究院 控制器、調整封包通信規則的方法及網路通信系統
CN109408451B (zh) * 2018-11-05 2022-06-14 英业达科技有限公司 一种图形处理器系统
US11513699B2 (en) * 2019-08-01 2022-11-29 EMP IP Holding Company, LLC System and method for caching data in persistent memory of a non-volatile memory express storage array enclosure
US11515538B2 (en) * 2019-10-11 2022-11-29 GM Global Technology Operations LLC In-situ polymerization to protect lithium metal electrodes
TWI719741B (zh) 2019-12-04 2021-02-21 財團法人工業技術研究院 改變冗餘處理節點的處理器及其方法
CN114930312A (zh) * 2020-03-25 2022-08-19 华为技术有限公司 一种通信方法及相关装置
CN111639008B (zh) * 2020-05-29 2023-08-25 杭州海康威视系统技术有限公司 基于双端口ssd的文件系统状态监测方法、装置及电子设备
US11720413B2 (en) * 2020-06-08 2023-08-08 Samsung Electronics Co., Ltd. Systems and methods for virtualizing fabric-attached storage devices
TWI802268B (zh) * 2022-02-14 2023-05-11 神雲科技股份有限公司 伺服系統
EP4387196A1 (en) * 2022-12-13 2024-06-19 Barcelona Supercomputing Center-Centro Nacional de Supercomputación System and method for connecting complete interconnection networks for high-performance computers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204743A1 (en) * 2008-02-08 2009-08-13 Tetsuya Inoue Storage subsystem and control method therefof

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5922077A (en) * 1996-11-14 1999-07-13 Data General Corporation Fail-over switching system
US6219753B1 (en) 1999-06-04 2001-04-17 International Business Machines Corporation Fiber channel topological structure and method including structure and method for raid devices and controllers
US6330642B1 (en) * 2000-06-29 2001-12-11 Bull Hn Informatin Systems Inc. Three interconnected raid disk controller data processing system architecture
US6658478B1 (en) * 2000-08-04 2003-12-02 3Pardata, Inc. Data storage system
US6952734B1 (en) * 2000-08-21 2005-10-04 Hewlett-Packard Development Company, L.P. Method for recovery of paths between storage area network nodes with probationary period and desperation repair
US7307948B2 (en) * 2002-10-21 2007-12-11 Emulex Design & Manufacturing Corporation System with multiple path fail over, fail back and load balancing
US7505401B2 (en) 2005-01-31 2009-03-17 International Business Machines Corporation Method, apparatus and program storage device for providing mutual failover and load-balancing between interfaces in a network
JP3890063B2 (ja) * 2005-03-03 2007-03-07 シャープ株式会社 排水処理装置および排水処理方法
US7903556B2 (en) * 2005-11-03 2011-03-08 Hewlett-Packard Development Company, L.P. Method of controlling data transfers between nodes in a computer system
US8296534B1 (en) 2007-06-29 2012-10-23 Emc Corporation Techniques for using flash-based memory in recovery processing
US8296782B2 (en) 2008-04-22 2012-10-23 Lsi Corporation System eliminating hardware duplication during application testing of an internal storage array across different operating systems
CN102165427A (zh) 2008-09-25 2011-08-24 Lsi公司 在外部存储阵列中验证带外管理应用的方法和/或装置
CN101727399B (zh) * 2008-10-30 2012-10-10 鸿富锦精密工业(深圳)有限公司 存储装置及使用该存储装置的数据交换系统
US9047351B2 (en) 2010-04-12 2015-06-02 Sandisk Enterprise Ip Llc Cluster of processing nodes with distributed global flash memory using commodity server technology
US8688926B2 (en) 2010-10-10 2014-04-01 Liqid Inc. Systems and methods for optimizing data storage among a plurality of solid state memory subsystems
US8468385B1 (en) * 2010-10-27 2013-06-18 Netapp, Inc. Method and system for handling error events
US8521941B2 (en) 2010-12-28 2013-08-27 Plx Technology, Inc. Multi-root sharing of single-root input/output virtualization
CN102394923A (zh) * 2011-10-27 2012-03-28 周诗琦 一种基于n×n陈列结构的云系统平台
US9158540B1 (en) 2011-11-14 2015-10-13 Emc Corporation Method and apparatus for offloading compute resources to a flash co-processing appliance
US9110813B2 (en) 2013-02-14 2015-08-18 Avago Technologies General Ip (Singapore) Pte Ltd Cache load balancing in storage controllers
US9003090B1 (en) * 2014-03-25 2015-04-07 DSSD, Inc. PCI express fabric routing for a fully-connected mesh topology
US9785520B2 (en) * 2014-04-04 2017-10-10 Hitachi, Ltd. Computer system, storage apparatus and control method
US9921989B2 (en) 2014-07-14 2018-03-20 Intel Corporation Method, apparatus and system for modular on-die coherent interconnect for packetized communication
US9507678B2 (en) * 2014-11-13 2016-11-29 Netapp, Inc. Non-disruptive controller replacement in a cross-cluster redundancy configuration
CN104965677B (zh) * 2015-06-26 2018-04-13 北京百度网讯科技有限公司 存储系统
US10334334B2 (en) * 2016-07-22 2019-06-25 Intel Corporation Storage sled and techniques for a data center
US10365981B2 (en) * 2016-08-19 2019-07-30 Samsung Electronics Co., Ltd. Adaptive multipath fabric for balanced performance and high availability

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204743A1 (en) * 2008-02-08 2009-08-13 Tetsuya Inoue Storage subsystem and control method therefof

Also Published As

Publication number Publication date
US20190294513A1 (en) 2019-09-26
US11693747B2 (en) 2023-07-04
KR20180020873A (ko) 2018-02-28
TW201807581A (zh) 2018-03-01
CN107769956B (zh) 2022-02-18
TWI704459B (zh) 2020-09-11
US10365981B2 (en) 2019-07-30
JP7043201B2 (ja) 2022-03-29
CN107769956A (zh) 2018-03-06
US20180052745A1 (en) 2018-02-22
KR102191242B1 (ko) 2020-12-15
US20230325288A1 (en) 2023-10-12

Similar Documents

Publication Publication Date Title
JP7043201B2 (ja) コンピューティング資源への高可用性アクセスを提供するコンピューティングシステム及び予備資源連結ファブリック
JP2018029337A5 (ja)
JP5176039B2 (ja) 冗長ストレージサブシステム間におけるsasraidコントローラデバイスチャネルの接続のためのシステム、及び方法
US9880972B2 (en) Computer subsystem and computer system with composite nodes in an interconnection structure
US20180341419A1 (en) Storage System
US6904556B2 (en) Systems and methods which utilize parity sets
TW201319824A (zh) 透過虛擬序列附接式小電腦系統介面擴展器分享的伺服器直接附接儲存器
US8788753B2 (en) Systems configured for improved storage system communication for N-way interconnectivity
US20050289386A1 (en) Redundant cluster network
WO2017167106A1 (zh) 存储系统
US11537443B2 (en) Reconfigurable computing pods using optical networks
JP4483168B2 (ja) ディスクアレイ制御装置
US8160061B2 (en) Redundant network shared switch
JP2003330626A (ja) 常時稼働コントローラ相互接続を介してのコントローラ通信
US7373546B2 (en) Cluster network with redundant communication paths
CN111684421B (zh) 服务器系统
US8554973B2 (en) Storage device and method for managing size of storage device
US20050050243A1 (en) Modified core-edge topology for a fibre channel network
US20060233164A1 (en) Method to separate fibre channel switch core functions and fabric management in a storage area network
US20200409885A1 (en) Redundant paths to single port storage devices
US20030061326A1 (en) Managing one or more domains in a system
JP6885237B2 (ja) ノード間通信装置、並列処理装置及びノード間通信経路制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200811

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200811

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200811

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210706

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220111

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220111

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220121

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20220125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220316

R150 Certificate of patent or registration of utility model

Ref document number: 7043201

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150