JP6974218B2 - ストレージシステム及びその動作方法 - Google Patents

ストレージシステム及びその動作方法 Download PDF

Info

Publication number
JP6974218B2
JP6974218B2 JP2018038356A JP2018038356A JP6974218B2 JP 6974218 B2 JP6974218 B2 JP 6974218B2 JP 2018038356 A JP2018038356 A JP 2018038356A JP 2018038356 A JP2018038356 A JP 2018038356A JP 6974218 B2 JP6974218 B2 JP 6974218B2
Authority
JP
Japan
Prior art keywords
discovery
storage device
server
pod
log
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
Application number
JP2018038356A
Other languages
English (en)
Other versions
JP2018156645A (ja
JP2018156645A5 (ja
Inventor
チンナ クリシュナ バラプラム,
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 JP2018156645A publication Critical patent/JP2018156645A/ja
Publication of JP2018156645A5 publication Critical patent/JP2018156645A5/ja
Application granted granted Critical
Publication of JP6974218B2 publication Critical patent/JP6974218B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/12Discovery or management of network topologies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Description

本発明は、分散ストレージデバイス(distributed storage device)に関するもので、より詳細には、ハイパースケールデータセンター(hyperscale datacenter)環境で分散ストレージデバイスの自動発見を提供するストレージシステム及びその動作方法に関する。
データセンター内の各ラック(rack)は、コンピュート(compute)デバイス及びストレージ(storage)デバイスのために、スレッド(sled)及び/又はトレイ(tray)の組み合わせを含む。ハイパースケールデータセンターは、いくつかの最適化された性能のデータセンター(PODs:Performance Optimized Datacenters)を含み、各PODは、複数のラックと数々のコンピュート(compute)デバイス及び/又はストレージデバイスを含む。
不揮発性メモリエキスプレス(NVMe:Non−Volatile Memory express)は、ホスト(host)ソフトウェアがPCIe(Peripheral Component Interconnect express)バス(bus)を通じて、不揮発性メモリサブシステム(例えば、ソリッドステートドライブ(SSD:Solid−State Drive))と通信をするためのレジスターレベルインターフェース(register−level interface)を定義する。NVMeoF(NVMe over Fabrics)(又は略してNVMf)は、イーサネット(登録商標)(Ethernet(登録商標))、ファイバーチャネル(Fibre Channel)、インフィニバンド(InfiniBand)、伝送制御プロトコル(TCP)ネットワーク、及び他のネットワークファブリックス(fabrics)のような広い範囲のストレージネットワーキングファブリックスでNVMeブロック(block)のストレージプロトコルを支援する一般的なアーキテクチャ(architecture)を定義する。
NVMeoFに基づくストレージシステムにおいて、NVMeoFと互換可能なSSD又はイーサネット(登録商標)SSDに指称される各ストレージデバイスは、サブシステムNQN(NVMe Qualified Name)、IP(Internet Protocol)アドレス、ポートID、及び/又は制御器IDによって識別される。各PODマネージャーは、作業負荷を割り当て、スケジューリングするためにファブリックス(例えば、イーサネット(登録商標))上のストレージデバイスの状態及び利用可能性を知っておく必要がある。ストレージデバイスのうちの一部は、維持のために作動しないこともあり、作業負荷はこのようなストレージデバイスに任されないこともある。なお、ハイパースケールデータセンター環境でファブリックスに分散された数々のストレージデバイスからの発見情報の収集、維持、及びアップデートは単純作業ではない。
米国特許第9519578号明細書 米国特許第9384093号明細書 米国特許第8775486号明細書 米国特許出願公開第2016/0085718号明細書 米国特許出願公開第2016/0127468号明細書 米国特許出願公開第2014/0195634号明細書 米国特許出願公開第2016/0127492号明細書 米国特許出願公開第2015/0304423号明細書
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、ハイパースケールデータセンター環境におけるイーサネット(登録商標)ストレージの自動発見を提供するためのストレージシステム及びその動作方法を提供することにある。
上記目的を達成するためになされた本発明の一態様によるストレージシステムは、各々が動的ホスト構成プロトコル(DHCP)クライアント(client)を動作させる複数のストレージデバイスと、ホストコンピューターに発見ログページ(discovery log page)を提供する発見サーバと、を備え、前記複数のストレージデバイスの各々で動作する発見ログアップデータ(DLU:Discovery Log Updater)は、対応するストレージデバイスの発見ログエントリー(discovery log entry)を前記発見サーバに提供し、前記ホストコンピューターは、前記発見ログページに含まれるターゲットストレージデバイス(target storage device)の発見ログエントリーを用いて前記ターゲットストレージデバイスとの連結を構築し、入出力又はコンピュート(compute)作業負荷を前記ターゲットストレージデバイスに提供し、前記発見ログページは、一つ以上の発見ログエントリーを含む複数のストレージデバイスの発見情報(discovery information)を含み、前記一つ以上の発見ログエントリーの各々は、前記ホストコンピューターと前記対応するストレージデバイスとの間の通信を構築するために割り当てられた前記対応するストレージデバイスのアドレスを含む。
上記目的を達成するためになされた本発明の一態様によるストレージシステムの動作方法は、ストレージデバイス内の動的ホスト構成プロトコル(DHCP)クライアントを動作させる段階と、前記ストレージデバイスの発見ログエントリーを発見サーバに提供する段階と、前記発見サーバからホストコンピューターに発見ログページを提供する段階と、前記発見ログページに含まれるターゲットストレージデバイスの発見ログエントリーを用いて前記ホストコンピューターと前記ターゲットストレージデバイスとの間の連結を構築する段階と、前記ホストコンピューターから前記ターゲットストレージデバイスに入出力又はコンピュート作業負荷を提供する段階と、を有し、前記発見ログページは、一つ以上の発見ログエントリーを含む複数のストレージデバイスの発見情報を含み、前記一つ以上の発見ログエントリーの各々は、前記ホストコンピューターと前記対応するストレージデバイスとの間の通信を構築するために割り当てられた前記対応するストレージデバイスのアドレスを含む。
イベントの具現及び組み合わせの多様且つ新たな細部事項を含む上記特徴及び他の選好される特徴について、図面を参照してより詳細に説明する。本明細書で説明する特定システム及び方法は、説明のためのみに示すものであり、本発明はこれに制限されるものではない。当業者にとっては自明であるように、本明細書で説明する原理及び特徴は、本発明の思想から逸脱せずに多様且つ様々な実施形態に適用される。
本発明のストレージシステム及びその動作方法によれば、ハイパースケールデータセンター環境で数々のストレージデバイスを収容するスケーラブルなソリューションを提供することができる。
本発明の一実施形態による分散ストレージデバイスシステムの一例のブロック図である。 本発明の一実施形態による発見ログページの一例のデータ構造を示す図である。 本発明の一実施形態による発見ログページに含まれるログエントリーの一例のデータ構造を示す図である。 本発明の一実施形態による発見ログ情報を設定するための一例のフローチャートである。 本発明の一実施形態によるホストコンピューターとターゲットストレージデバイスとの間で通信を構築するための一例のフローチャートである。 本発明の一実施形態による自動発見の一例のプロセスを示す。
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。図面は、一般的に例示的な参照としての目的のために提示して多様な実施形態を説明するものであり、開示する実施形態のみを表わすものではなく、特許請求の範囲を制限するものではない。
本明細書で示す各特徴及び開示は、ハイパースケールデータセンター環境でイーサネット(登録商標)ストレージの自動発見を提供するストレージシステム及びその動作方法を提供するために、独立的に又は他の特徴及び開示と共に活用される。このような数々の追加の特徴及び開示を活用する代表的な例示を、独立的且つ結合して、図面を参照してより詳細に説明する。このような詳細な説明は、単に本明細書に開示する例示を実行するための細部的な内容を当業者に開示するものであり、特許請求の範囲を制限するものではない。従って、発明の詳細な説明で開示する特徴の組み合わせは、広い意味で開示を実行するために必要なものではなく、代わりに特別に本明細書で開示する代表的な例示を説明するために開示される。
以下では、説明するためのみの目的として、本発明の完全なる理解を提供するための具体的な命名法を記述するが、本発明の開示を実行するために、当業者にこのような具体的な細部事項が必要とされないことは自明である。
本明細書の詳細な説明のいくつかの部分は、アルゴリズム及びコンピューターメモリの中におけるデータビットに対する動作の象徴的表現に関して示される。このようなアルゴリズムの説明と表現は、他分野の通常の技術者に研究の要旨を効果的に伝達するためにデータプロセシング分野にある通常の技術者によって使用される。ここで、アルゴリズムは一般的に望む結果に導く段階の一貫性のある順番で理解される。段階は、物理量の物理的操作を必要とする。一般的に、必ずしも必要なものではないが、このような物理量は、格納され、伝達され、結合され、比較されるなどの操作される電気又は磁気信号の形態を有する。これは、時々このような信号をビット、価、要素、シンボル(symbol)、文字、用語、数字などとして指称するための一般的な用法であるとの理由で便利である。
しかし、このように全ての用語と類似な用語は、適切な物理量に関連して、単にこのような物理量に適用される便利なラベル(label)であることに留意すべきである。以下の内容と明白に異なる内容が具体的に記述されない場合、明細書の全般において、「プロセシング」、「コンピューティング」、「計算する」、「決定する」、「表示する」などのような用語を活用する部分は、コンピューターシステム又は類似の電子コンピューティング装置のプロセス及び措置を指すものと理解される。コンピューターシステム又は類似の電子コンピューティング装置は、コンピューターシステムのレジスター(register)及びメモリにおいて物理(電気)量で示されるデータをコンピューターシステムメモリ若しくはレジスター又は他の情報の記憶、伝送、又はディスプレイ装置において物理量で類似に示される他のデータに操作又は変形される。
なお、代表的な例示の様々な特徴と従属項は、本発明の追加的で且つ有用な実施形態を提供するために、具体的且つ明確に列挙されない方法で結合される。また、請求する発明の思想を制限しようとする目的のみならず、最初の開示の目的のために、全ての値の範囲又は個体グループの表示は、できる限り全て中間値又は中間個体を示す。また、図面に示す構成の面積と模様は、本発明をどのように具現するかを理解するために役に立つようにデザインされるが、例示として図示する面積と模様に限定されるものではない。
本明細書は、複数のデータストレージデバイスを含む分散データストレージシステムを説明する。本発明の分散データストレージシステムは、複数のデータストレージデバイスの動的発見情報を提供し、アップデートし、そして維持するための動的ホスト構成プロトコル(DHCP:Dynamic Host Configuration Protocol)サービスを用いる。分散データストレージシステムのサブシステムの間で通信のために支援される伝送プロトコルの例示はNVMeoFプロトコルであり、ファブリックはイーサネット(登録商標)である。サブシステムは、一つ以上のコンピュートノード(例えば、遠隔のホストコンピューター又は計算するノード)及び複数のストレージデバイス(例えば、イーサネット(登録商標)SSD)を含む。
発見制御器によって提供される発見ログページ(discovery log page)は、発見ログエントリー(discovery log entries)を含む。発見ログページに含まれる各発見ログエントリーは、ホストコンピューターがNVMe伝送プロトコルを通じてサブシステムに連結するために必要な情報を明示する。例えば、発見ログエントリーは、サブシステムのネームスペース(namespace)又は他の発見サービスに対する依頼(referral)を表すサブシステムを明示する。NVMeoF仕様によると、最大依頼の深さは8レベル又はそれ以下である。
図1は、本発明の一実施形態による分散ストレージデバイスシステムの一例のブロック図である。分散ストレージシステム100は、ホストコンピューター110、動的ホスト構成プロトコル(DHCP)サーバ130、発見サーバ150、ストレージデバイス160、並びに形成されたネットワークを通じてホストコンピューター110、DHCPサーバ130、発見サーバ150、及びストレージデバイス160との間の連結を提供するファブリック120を含む。ファブリック120の例はイーサネット(登録商標)である。
ホストコンピューター110は、分散ストレージシステム100の数々のホストコンピューターの中の一つを示し、ストレージデバイス160は、分散ストレージシステム100の数々のストレージデバイスの中の一つを示す。一実施例によると、ホストコンピューター110は、ストレージデバイスに作業負荷を与えるか、又は単純にストレージデバイス160を含む分散ストレージシステム100のストレージデバイスに格納されたデータに対する読み込み/書き込みのアクセスを行う分散ストレージシステム100のコンピューターノードを指す。
ストレージデバイス160は、ストレージデバイス制御器161、ポート162、DHCPクライアント163、ソリッドステートドライブ(SSD)のようなデータストレージ164、及び発見ログアップデータ(DLU)165を含む。一実施例において、DLU165は、ファブリック伝送プロトコル及びREST(Representational State Transfer)ful API又はGraphQL要請を使用するポートを用いて、発見サーバ150の発見ログエントリー152にストレージデバイス160の発見ログエントリーをアップデートするためのストレージデバイス160で動作するサービスである。例えば、DLU165は、発見サーバ150の発見ログエントリー152においてストレージデバイス160の発見ログエントリーをアップデートするために、TCP/IP又はUDP/IPとTCP/UDPポートを使用する。DHCPサーバ130は、要請DHCPクライアントに動的又は永久レンタルIPアドレスを提供する分散ストレージシステム100のサブシステムである。例えば、ストレージデバイス160のDHCPクライアント163は、DHCPサーバ130にDHCP要請126を送り、DHCPサーバ130は、DHCP要請126に応答してDHCPクライアント163にIPアドレス(動的IPアドレス又は永久IPアドレス)を割り当てる。
発見サーバ150は、発見サーバ150から発見ログ情報を獲得する要請ホストコンピューターに発見サービスを提供する。発見サーバ150は、本明細書で開示する内容に特に関連しないNVMeoF発見サーバ仕様で説明される通り、他の構成要素のみならず、発見制御器151及び発見ログエントリー152を含む。発見制御器151のIPアドレス又は伝送アドレスは、ホストコンピューター110を含む分散ストレージシステム100の一つ以上のホストコンピューターに公開される。なお、ホストは、発見サービスに対する連結命令としてよく知られている発見サービスNQN(例えば、nqn.2014−08.org.nvmexpress.dicovery)を使用する。
ホストコンピューター110は、分散ストレージシステム100の中の利用可能な一つ以上のストレージデバイスに連結するために、必要な情報を探し出すための発見サーバ150の発見サービスを用いる。ホストコンピューター110は、いくつかの方法で初期発見情報を獲得する。例えば、発見サーバ150のIPアドレスのない新たに追加されたホストコンピューターは、ローカルホスト構成ファイル(local host configuration file)又はホストコンピューターのオペレーティングシステム(OS)のハイパーバイザ(hypervisor)、或いはホストコンピューターに知らされている他のサブシステムから初期発見情報を獲得する。ホストコンピューター110は、発見サービスに対する連結命令内の発見サービスNQN(例えば、nqn.2014−08.org.nvmexpress.dicovery)アドレスを使用する。発見サービスに連結するために必要なNVMe伝送情報を獲得するために、ホストコンピューター110が使用する発見方法は、使用されるファブリックプロトコルに基づく。初期発見サービス情報は、発見サーバ150のIPアドレス又は発見サーバ150に対する情報を有する他のサブシステムを含む。
発見サーバ150のアイデンティティ(identity)が知らされると(例えば、発見サーバ150のIPアドレス)、ホストコンピューター110は、必要に応じて発見情報を獲得するために発見サーバ150に発見ログ要請121(例えば、NVMeoF仕様によるログページの獲得要請)を送る。これに応答して、発見サーバ150は、一つ以上の発見ログエントリー152を含む発見ログページ122を提供する。発見ログページ122に含まれる各発見ログエントリーは、ホストコンピューター110が対応する一つ以上のストレージデバイス160に連結するために必要な情報を明示する。例えば、各エントリーは、対応するストレージデバイス160の一つ以上の識別子及びストレージデバイス160に連結するために支援される伝送プロトコル情報を含む。発見ログエントリー152は、複数の伝送プロトコル及びアドレスタイプを支援する。
一実施例によると、発見サーバ150は、ホストコンピューター110に最近アップデートされた発見ログエントリー152を自発的に伝送する。例えば、発見サーバ150はホストコンピューターのリストを保管し、発見サーバは、一つの場合にPOD/PODマネージャーを担当し、一つ以上の発見ログエントリーがアップデートされる通りに、リストにあるホストコンピューターにアップデートされた発見ログページ122を伝送する。(又は、予め定められた間隔(例えば、毎日、毎週)で伝送)。この場合、発見ログページ122は、アップデートされた発見ログエントリーのみを含む格納された発見ログエントリー152の部分集合を含む。
発見ログエントリー及び発見ログページ122で識別されたストレージデバイス160に対応する伝送タイプに基づいて、ホストコンピューター110は、ターゲットストレージデバイス160のポートアドレス123を識別し、指示された支援伝送タイプ及び伝送プロトコルを使用するポートアドレス123を用いて、ターゲットストレージデバイス160との通信経路を構築する。ホストコンピューターとターゲットストレージデバイスとの間の連結を初期化するための全ての必要な情報は発見ログページ122から伝達される。ストレージデバイス160のストレージデバイス制御器161及びホストコンピューター110は、構築されたポート162を使用して互いに通信する。.
ストレージデバイス160で動作するDHCPクライアント163は、DHCPサーバ130に要請を送り、DHCPサーバ130は要請DHCPクライアント163にIPアドレス(又は対応するファブリックでのIPアドレスに対応する類似アドレス)を割り当てる。DLU165は、各ターゲットストレージデバイスで動作するか、又はターゲットストレージデバイスのグールプに対して作動する。例えば、シャーシ(chassis)/ラック内のストレージデバイス160の全て又は一部に対して、一つ又はいくつかのDHCPクライアント163が使用される。同様に、一つ又はいくつかのDLU165は一つのストレージデバイス160又はシャーシ/ラック内のストレージデバイス160のグループに対するログをアップデートする。DHCP及びDLUサービスは、一つ又はいくつかのストレージデバイス160、又は一般的な目的の中央処理装置(CPU)、或いはシャーシ/ラック内のベースボード管理制御器(BMC:Baseboard Management Controller)で動作する。DHCPクライアント163又はDLU165は、ストレージデバイス制御器161の割り当てられたIPアドレスを含む発見ログエントリー124を発見サーバ150に伝送する。一実施例によると、DHCPサーバ130及び発見サーバ150は同じサーバ内に配置される。いくつかの実施例では、DHCPサーバ130は、発見サーバ150と異なる分散ストレージシステム100の外部の他のシステムである。
発見サーバ150は、RESTful API又はGraphQL要請を使用するターゲットストレージデバイスの一つ以上のDLU165から受信された一つ以上の発見ログエントリー152を含む発見ログ情報を収集してアップデートする。発見サーバ150は、NVMeoFログ獲得ページ(Get Log Page)要請に対する応答として、要請ホストコンピューター110に発見ログページを提供する。DHCPクライアントによって割り当てられたIPアドレスを使用するターゲットストレージデバイスの各々又はグループで動作するDLUによる発見情報の自動アップデートは、本発明の分散ストレージシステムに属するターゲットストレージデバイスに連結するために必要な最近アップデートされた発見情報を有して、要請ホストコンピューターに絶え間ない発見サービスを提供する。
新たなストレージデバイスは追加され、そしていくつかのストレージデバイスは、新たなストレージデバイスの追加、既存のストレージデバイスの交替又は寿命完了によってデータセンター環境で日常的運用上のプロセスの一つの部分としてシャットダウンされる。レンタル中のストレージデバイス160の各DHCPクライアント163が自分の現在情報をアップデートするため、DHCPサーバ130は最新の発見ログ情報を維持する。各ストレージデバイス160で動作するシン(thin)DHCPクライアント163による発見ログ情報の自動アップデート技法を使用して、本発明の分散ストレージシステム100は、ハイパースケールデータセンター環境で数々のストレージデバイスを収容するスケーラブルな(scalable)ソリューションを提供する。
図2は、本発明の一実施形態による発見ログページ(discovery log page)の一例のデータ構造を示す図である。図2に示す発見ログページ200は、ジェネレーションカウンター(generation counter)、レコード(record)の個数、レコードフォーマット(format)、一つ以上の発見エントリー300を含み、これに制限されない発見情報に関する多様なパラメータ(parameter)を含む。図3は、本発明の一実施形態による図2の発見ログページ200に含まれるログエントリーの一例のデータ構造を示す図である。ログページエントリー300は、伝送タイプ(例えば、遠隔直接記憶アクセス装置(RDMA:Remote Direct Memory Access)、ファイバーチャンネル、TCPネットワーク)、アドレスファミリ(例えば、IPv4、IPv6、IB、FC)、サブシステムタイプ、伝送要求事項、ポートID、制御器ID、管理者の最大SQサイズ(admin max SQ size)、伝送サービス識別子、NVMサブシステム修飾名(NQN)、伝送アドレス(ストレージデバイスのIPアドレス)、伝送特定アドレス部分タイプを含み、これに制限されない特定ログエントリーに関する多様なパラメータを含む。図2に示す発見ログページ200は、一つ以上のログページエントリー300を含む。
ホストコンピューターは一つ以上の発見ログページを受信する。この場合、ホストコンピューターは、発見ログページの変更ヒストリー(revision history)を確認し、発見ログ情報に変更があるか否かを判別する。一実施例によると、ホストコンピューターは、一つ以上の発見サーバから複数の発見ログページを受信する。ホストコンピューターは、特定の順番(例えば、増加するログページオフセット値を有する)で受信された発見ログページを読み、ジェネレーションカウンターを数えられる。ジェネレーションカウンターは、0h値から始まる発見情報のバージョン(version)を示す。発見ログにおける各変更に対してジェネレーションカウンターは一つずつ増加する。最大カウントが超過すると、ジェネレーションカウンターは0hの初期値に戻る。ジェネレーションカウンターが前の読み込みログ情報にマッチしない場合、ホストコンピューターは、前の読み込みログページを捨ててログ情報をアップデートする。ログページ内容がログページを読む間に変更された場合、発見制御器は発見再起動を示す状態に戻る。発見制御器によって示されたような発見再起動により、ホストコンピューターは現在の発見プロセスを中止して新たな発見プロセスを再起動する。
発見サーバから最近アップデートされた発見ログエントリーを検索した後、ホストコンピューターは、対応するログエントリーに含まれるターゲットストレージデバイスのIPアドレスを用いてターゲットストレージデバイスと通信を行うために、キューペア(queue pairs)を初期化することで伝送レベル連結を準備する。そうしながら、ホストコンピューターは、ターゲットストレージデバイスとの伝送レベル連結を構築するために、制御器キュー(queues)を生成する連結命令を下す。連結命令は、ポートID、キューのタイプ(例えば、管理キュー(admin queues)又は入出力キュー)、提出キュー及び完了キューのサイズ、キューの属性、ホストNQN、NVMサブシステムNQN、ホスト識別子を含み、これに制限されない多様なパラメータを明示する。これに応答して、ターゲットストレージデバイスは、連結が成功的に構築されたか否かを示す連結応答をホストコンピューターに伝送する。連結応答は、ホストコンピューターとの通信のために割り当てられたストレージデバイス制御器IDを含む。
ハイパースケールデータセンター環境において、ホストコンピューターとターゲットストレージデバイスとの間に適切な連結を構築するために必要とされる情報は、伝送プロトコル(例えば、図1のファブリック120)によって支援されるファブリックを通じて交換される。ファブリック120は、ホストコンピューター110と発見サーバ150との間、ホストコンピューター110とストレージデバイス160との間、及びDHCPサーバ130とストレージデバイス160との間で異なることもあり、ホストコンピューター110、DHCPサーバ130、発見サーバ150、及びストレージデバイス160間で同じくする必要はない。例えば、本発明の分散ストレージシステムは、企業内ネットワーク(enterprise network)、データセンター、及び/又はインターネットに亘って分布する数々のホストコンピューター及びストレージデバイスを含む。本発明の分散ストレージシステムの他のサブシステムが第1タイプファブリックと異なる第2タイプファブリックを通じて連結される一方、本発明の分散ストレージシステムのいくつかのサブシステムは、第1タイプファブリックを通じて連結される。例えば、発見サーバは、共用ネットワーク(例えば、インターネット)であり、ホストコンピューター及びターゲットストレージデバイスは専用ネットワークを通じて連結される。
本発明のDHCPサービスを基にした発見サービスは、ホストコンピューター及びストレージデバイスの拡張及び規模の数として用いられる。一実施例によると、データセンターの各ラックは、自動的にアップデートされ、ラックに対する特有のストレージデバイスの発見情報を維持するラックレベル(rack−level)発見サーバを運営する。PODは複数のラックを含み、各ラックレベル発見サーバは、自動的にラックレベル発見情報をPODマネージャー上で動作するPODレベル発見サーバにアップデートする。PODレベル発見サーバは、PODマネージャーがPODレベル発見情報に基づいて作業負荷をスケジューリングする。
一実施例によると、分散ストレージシステムは、複数のPODマネージャーを含み、各PODのために一つのPODマネージャーが存在する。作業負荷は、PODマネージャーの間で交換されるシステムレベル発見情報に基づいて複数のPODマネージャーの間に分散される。他の実施例で、PODマネージャーは、DHCPサーバと通信し、作業負荷分散を行うために他のPODマネージャーと協力する。例えば、バックアップデータは、ターゲットストレージデバイスが作動しない時間の間に遠隔のストレージデバイスから用いられる。この場合、PODマネージャーは、システムレベル発見情報を用いてバックアップストレージデバイスに作業負荷を割り当てる。NVMeoF基盤のストレージシステムの場合、PODマネージャーは、一つ以上の発見サーバに連結し、ログ獲得命令を用いて利用可能なストレージデバイスのアップデートされた発見情報を検索する。先ず発見情報を用いて通信経路が構築されると、ターゲットストレージデバイスは、ホストコンピューターから受信された入出力要請を提供する。本発明の発見サービスは、受動アップデートを必要としないため、数々のラックとPODを含むハイパースケールデータセンターに対してスケーラブル(scalable)であり、ラックはその中に数々のコンピュートデバイス及び/又はストレージデバイスを含む。
図4は、本発明の一実施形態による発見ログ情報を設定するための一例のフローチャートである。ストレージデバイスは、起動すると直ぐにDHCPクライアントを動作させ、401段階で、IPアドレスをレンタルするためにDHCPサーバに要請を伝送する。402段階で、DHCPサーバはDHCPクライアントによる要請に応答して動的又は永久IPアドレスをストレージデバイスのストレージデバイス制御器に割り当てる。403段階で、ストレージデバイスで動作するDLUは、RESTful API又はGraphQL要請を用いて、IPアドレス及びストレージデバイス制御器のポートアドレスを含む発見ログエントリーを発見サーバに伝送する。404段階で、発見サーバは複数のストレージデバイスの一つ以上の発見ログエントリーを含む発見ログページを設定する。405段階で、発見サーバはホストコンピューターに発見ログページを伝送する。
図5は、本発明の一実施形態によるホストコンピューターとターゲットストレージデバイスとの間に通信を構築するための一例のフローチャートである。501段階で、ホストコンピューターは発見サーバに発見情報に対する要請を伝送する。発見サーバは、複数のストレージデバイスのDLUから受信された一つ以上の発見ログエントリーを格納する。502段階で、ホストコンピューターは発見サーバから一つ以上の発見ログエントリーを含む発見ログページを受信する。発見ログページで受信された一つ以上の発見ログページエントリーを用いて、503段階で、ホストコンピューターはターゲットストレージデバイスとの連結を構築し、504段階で、ターゲットストレージデバイスに作業負荷を割り当てる。
図6は、本発明の一実施形態による自動発見の一例のプロセスを示す。601段階で、ストレージデバイス660のDHCPクライアントは、IPアドレスを獲得するためにDHCPサーバ630に要請を伝送し、602段階で、DHCPサーバ630は、IPアドレスを割り当て、ストレージデバイス660のDHCPクライアントにIPアドレスを伝送する。603段階で、ストレージデバイス660のDLU(又は、DHCPサーバ630)は、RESTful API又はGraphQL要請を用いて、自動的にストレージデバイス660の発見ログエントリーを発見サーバ650に伝送する。発見サーバ650は、複数のストレージデバイスの各DLUから一つ以上の発見ログエントリーを収集して、一つ以上の発見ログエントリーを含む発見ログページを準備する。611段階で、ホストコンピューター610は発見サーバ650にログページ獲得命令を伝送し、応答として、612段階で、発見サーバ650はホストコンピューター610に発見ログページを伝送する。発見ログページに含まれる情報を用いて、613段階で、ホストコンピューター610はストレージデバイス660との連結を構築する。
本発明の一実施形態によるストレージシステムは、各々が動的ホスト構成プロトコル(DHCP)クライアントを動作させる複数のストレージデバイスと、ホストコンピューターに発見ログページを提供する発見サーバと、を備える。複数のストレージデバイスの各々で動作する発見ログアップデータ(DLU)は、対応するストレージデバイスの発見ログエントリーを発見サーバに提供する。ホストコンピューターは、発見ログページに含まれるターゲットストレージデバイスの発見ログエントリーを用いてターゲットストレージデバイスとの連結を構築し、入出力又はコンピュート作業負荷をターゲットストレージデバイスに提供する。発見ログページは、一つ以上の発見ログエントリーを含む複数のストレージデバイスの発見情報を含み、一つ以上の発見ログエントリー各々は、ホストコンピューターと対応するストレージデバイスとの間の通信を構築するために割り当てられた対応するストレージデバイスアドレスを含む。
DHCPサーバは、複数のストレージデバイスの各々に対するアドレスを割り当て、複数のストレージデバイスの各発見ログアップデータは、割り当てられたアドレスを含むそれぞれの発見ログエントリーを発見サーバに自動的に伝送するために割り当てられたアドレスを用いる。
発見ログエントリーは、ストレージデバイス制御器のポートアドレスを更に含む。
ポートアドレスは、NVMeoF(Non−Volatile Memory express over Fabrics)仕様によって割り当てられる。
発見サーバは、RESTful応用プログラムインタフェース(API)又はGraphQL要請を用いてホストコンピューターに発見ログページを伝送する。.
複数のストレージデバイスの中の少なくとも一つは、NVMeoFデバイスであり、ホストコンピューターは、発見ログページを受信するために発見サーバにログ獲得命令を伝送する。
発見サーバ及びDHCPサーバは、ストレージシステムの同じサーバ内に配置される。
複数のストレージデバイスは、ラックに取り付けられ、ラック内の発見サーバは、ラックに固有のラックレベル発見情報を収集する。
複数のストレージデバイスは、POD内の複数のラックの間に分散され、PODを担当する発見サーバは、PODに固有のPODレベル発見情報を収集する。
PODのPODマネージャーは、PODレベル発見情報に基づいて複数のストレージデバイスの間に作業負荷を割り当てる。
PODマネージャーは、ストレージシステムの他のPODマネージャーとPODレベル発見情報を交換する。
本発明の一実施例によるストレージシステムの動作方法は、ストレージデバイス内の動的ホスト構成プロトコル(DHCP)クライアントを動作させる段階と、ストレージデバイスの発見ログエントリーを発見サーバに提供する段階と、発見サーバからホストコンピューターに発見ログページを提供する段階と、発見ログページに含まれるターゲットストレージデバイスの発見ログエントリーを用いてホストコンピューターとターゲットストレージデバイスとの間の連結を構築する段階と、ホストコンピューターからターゲットストレージデバイスに入出力又はコンピュート作業負荷を提供する段階と、を有する。発見ログページは、一つ以上の発見ログエントリーを含む複数のストレージデバイスの発見情報を含み、一つ以上の発見ログエントリーの各々は、ホストコンピューターと対応するストレージデバイスとの間の通信を構築するために割り当てられた対応するストレージデバイスのアドレスを含む。
DHCPサーバは、複数のストレージデバイスの各々に対するアドレスを割り当て、複数のストレージデバイスの各発見ログアップデータは、割り当てられたアドレスを含むそれぞれの発見ログエントリーを発見サーバに自動的に伝送するために割り当てられたアドレスを用いる。
発見ログエントリーは、ストレージデバイス制御器のポートアドレスを更に含む。
ポートアドレスは、NVMeoF(non−volatile memory express over fabrics)仕様によって割り当でられる。
発見サーバは、RESTful応用プログラムインタフェース(API)又はGraphQL要請を用いてホストコンピューターに発見ログページを伝送する。
複数のストレージデバイスの中の少なくとも一つは、NVMeoFデバイスであり、ホストコンピューターは、発見ログページを受信するために発見サーバにログ獲得命令を伝送する。
発見サーバ及びDHCPサーバは、ストレージシステムの同じサーバ内に配置される。
複数のストレージデバイスは、ラックに取り付けられ、ラック内の発見サーバは、ラックに固有のラックレベル発見情報を収集する。
複数のストレージデバイスは、POD内の複数のラックの間に分散され、PODを担当する発見サーバは、PODに固有のPODレベル発見情報を収集する。
PODのPODマネージャーは、PODレベル発見情報に基づいて複数のストレージデバイスの間に作業負荷を割り当てる。
PODマネージャーは、ストレージシステムの他のPODマネージャーとPODレベル発見情報を交換する。
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
本発明は、分散ストレージデバイス(distributed storage device)のハイパースケールデータセンター(hyperscale datacenter)環境で分散ストレージデバイスの自動発見を提供するストレージシステム及びその動作方法の具現に有用である。
100 分散ストレージシステム
110、610 ホストコンピューター
120 ファブリック
121 発見ログ要請
122、200 発見ログページ
123 ポートアドレス
124 発見ログエントリー
126 DFCP要請/応答
130、630 動的ホスト構成プロトコル(DHCP)サーバ、
150、650 発見サーバ
151 発見制御器
152 発見ログエントリー
160、660 ストレージデバイス
161 ストレージデバイス制御器
162 ポート
163 DHCPクライアント
164 データストレージ
165 発見ログアップデータ(DLU)
300 ログページエントリー

Claims (22)

  1. 複数のストレージデバイスと、
    ホストコンピューターと、
    前記ホストコンピューターに発見ログページを提供する発見サーバと、を備え、
    前記複数のストレージデバイスの中の少なくとも一つのストレージデバイスは、動的ホスト構成プロトコル(DHCP)クライアントを動作させるように構成され、
    前記複数のストレージデバイスの中の前記少なくとも一つのストレージデバイスは、前記DHCPクライアントの要請で獲得された、対応するストレージデバイスのインターネットプロトコル(IP)アドレスの更新に基づいて、前記対応するストレージデバイスの発見ログエントリーを前記発見サーバに自動的に提供する発見ログアップデータ(DLU)を動作させ、
    前記ホストコンピューターは、前記発見ログページに含まれるターゲットストレージデバイスの発見ログエントリーを検索して前記ターゲットストレージデバイスのIPアドレスを用いて前記複数のストレージデバイスの中の前記ターゲットストレージデバイスとの連結を構築し、前記ターゲットストレージデバイスにデータの入出力を要請するかは作業負荷を割り当て
    前記発見ログページは、一つ以上の発見ログエントリーを含む前記複数のストレージデバイスの発見情報を含むことを特徴とするストレージシステム。
  2. DHCPサーバは、前記複数のストレージデバイスの中の前記少なくとも一つのストレージデバイスに対する前記IPアドレスを割り当て、
    前記複数のストレージデバイスの中の前記少なくとも一つのストレージデバイスの前記発見ログアップデータは、前記割り当てられたIPアドレスを含むそれぞれの発見ログエントリーを前記発見サーバに自動的に伝送するために前記割り当てられたIPアドレスを用いることを特徴とする請求項1に記載のストレージシステム。
  3. 前記発見ログエントリーは、ストレージデバイス制御器のポートアドレスを更に含むことを特徴とする請求項2に記載のストレージシステム。
  4. 前記ポートアドレスは、NVMeoF(Non−Volatile Memory express over Fabrics)仕様によって割り当てられることを特徴とする請求項3に記載のストレージシステム。
  5. 前記発見サーバは、RESTful応用プログラムインタフェース(API)又はGraphQL要請を用いて前記ホストコンピューターに前記発見ログページを伝送することを特徴とする請求項1に記載のストレージシステム。
  6. 前記複数のストレージデバイスの中の少なくとも一つは、NVMeoFデバイスであり、
    前記ホストコンピューターは、前記発見ログページを受信するために前記発見サーバにログ獲得命令を伝送することを特徴とする請求項1に記載のストレージシステム。
  7. 前記発見サーバ及び前記DHCPサーバは、前記ストレージシステムの同じサーバ内に配置されることを特徴とする請求項2に記載のストレージシステム。
  8. 前記複数のストレージデバイスは、ラックに取り付けられ、
    前記ラック内の発見サーバは、前記ラックに固有のラックレベル発見情報を収集することを特徴とする請求項1に記載のストレージシステム。
  9. 前記複数のストレージデバイスは、POD(Performance Optimized Datacenter)内の複数のラックの間に分散され、
    前記PODを担当する発見サーバは、前記PODに固有のPODレベル発見情報を収集することを特徴とする請求項8に記載のストレージシステム。
  10. 前記PODのPODマネージャーは、前記PODレベル発見情報に基づいて前記複数のストレージデバイスの間作業負荷割り当てを行うことを特徴とする請求項9に記載のストレージシステム。
  11. 前記PODマネージャーは、前記ストレージシステムの他のPODマネージャーと前記PODレベル発見情報を交換することを特徴とする請求項10に記載のストレージシステム。
  12. ストレージシステムの動作方法であって、
    ストレージデバイス内の動的ホスト構成プロトコル(DHCP)クライアントを動作させる段階と、
    前記DHCPクライアントの要請で獲得された前記ストレージデバイスのインターネットプロトコル(IP)アドレスの更新に基づいて、前記ストレージデバイスの発見ログエントリーを発見サーバに自動的に提供する段階と、
    前記発見サーバからホストコンピューターに発見ログページを提供する段階と、
    前記発見ログページに含まれるターゲットストレージデバイスの前記発見ログエントリーを検索して前記ターゲットストレージデバイスのIPアドレスを用いて前記ホストコンピューターと前記ターゲットストレージデバイスとの間の連結を構築する段階と、
    前記ホストコンピューターから前記ターゲットストレージデバイスにデータの入出力を要請するかは作業負荷を割り当てる段階と、を有し、
    前記発見ログページは、一つ以上の発見ログエントリーを含む複数のストレージデバイスの発見情報を含むことを特徴とする動作方法。
  13. DHCPサーバは、前記複数のストレージデバイスの中の少なくとも一つのストレージデバイスに対する前記IPアドレスを割り当て、
    前記複数のストレージデバイスの中の前記少なくとも一つのストレージデバイスの発見ログアップデータは、前記割り当てられたIPアドレスを含むそれぞれの発見ログエントリーを前記発見サーバに自動的に伝送するために前記割り当てられたIPアドレスを用いることを特徴とする請求項12に記載の動作方法。
  14. 前記発見ログエントリーは、ストレージデバイス制御器のポートアドレスを更に含むことを特徴とする請求項13に記載の動作方法。
  15. 前記ポートアドレスは、NVMeoF(Non−Volatile Memory express over Fabrics)仕様によって割り当てられることを特徴とする請求項14に記載の動作方法。
  16. 前記発見サーバは、RESTful応用プログラムインタフェース(API)又はGraphQL要請を用いて前記ホストコンピューターに前記発見ログページを伝送することを特徴とする請求項12に記載の動作方法。
  17. 前記複数のストレージデバイスの中の少なくとも一つは、NVMeoFデバイスであり、
    前記ホストコンピューターは、前記発見ログページを受信するために前記発見サーバにログ獲得命令を伝送することを特徴とする請求項12に記載の動作方法。
  18. 前記発見サーバ及び前記DHCPサーバは、前記ストレージシステムの同じサーバ内に配置されることを特徴とする請求項13に記載の動作方法。
  19. 前記複数のストレージデバイスは、ラックに取り付けられ、
    前記ラック内の発見サーバは、前記ラックに固有のラックレベル発見情報を収集することを特徴とする請求項12に記載の動作方法。
  20. 前記複数のストレージデバイスは、POD内の複数のラックの間に分散され、
    前記PODを担当する発見サーバは、前記PODに固有のPODレベル発見情報を収集することを特徴とする請求項19に記載の動作方法。
  21. 前記PODのPODマネージャーは、前記PODレベル発見情報に基づいて前記複数のストレージデバイスの間作業負荷割り当てを行うことを特徴とする請求項20に記載の動作方法。
  22. 前記PODマネージャーは、前記ストレージシステムの他のPODマネージャーと前記PODレベル発見情報を交換することを特徴とする請求項21に記載の動作方法。
JP2018038356A 2017-03-16 2018-03-05 ストレージシステム及びその動作方法 Active JP6974218B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762472379P 2017-03-16 2017-03-16
US62/472,379 2017-03-16
US15/615,508 US10771340B2 (en) 2017-03-16 2017-06-06 Automatic ethernet storage discovery in hyperscale datacenter environment
US15/615,508 2017-06-06

Publications (3)

Publication Number Publication Date
JP2018156645A JP2018156645A (ja) 2018-10-04
JP2018156645A5 JP2018156645A5 (ja) 2021-04-08
JP6974218B2 true JP6974218B2 (ja) 2021-12-01

Family

ID=63519692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018038356A Active JP6974218B2 (ja) 2017-03-16 2018-03-05 ストレージシステム及びその動作方法

Country Status (5)

Country Link
US (1) US10771340B2 (ja)
JP (1) JP6974218B2 (ja)
KR (1) KR102200934B1 (ja)
CN (1) CN108632338B (ja)
TW (1) TWI729256B (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109840232B (zh) * 2017-11-28 2022-05-13 华为技术有限公司 存储设备及存储设备的元件管理方法
US11307980B2 (en) * 2018-04-20 2022-04-19 Seagate Technology Llc Distributed data storage system with passthrough operations
US11109202B2 (en) * 2018-11-28 2021-08-31 Verizon Patent And Licensing Inc. Method and system for intelligent routing for mobile edge computing
US11132315B2 (en) * 2019-02-04 2021-09-28 American Megatrends International, Llc Secured and out-of-band (OOB) server san solution on a commodity storage box
US11113001B2 (en) * 2019-08-30 2021-09-07 Hewlett Packard Enterprise Development Lp Fabric driven non-volatile memory express subsystem zoning
US11489723B2 (en) 2020-03-16 2022-11-01 Dell Products L.P. Multicast domain name system (mDNS)-based pull registration
US11237997B2 (en) 2020-03-16 2022-02-01 Dell Products L.P. Target driven zoning for ethernet in non-volatile memory express over-fabrics (NVMe-oF) environments
US11301398B2 (en) 2020-03-16 2022-04-12 Dell Products L.P. Symbolic names for non-volatile memory express (NVMe™) elements in an NVMe™-over-fabrics (NVMe-oF™) system
US11163716B2 (en) * 2020-03-16 2021-11-02 Dell Products L.P. Discovery controller registration of non-volatile memory express (NVMe) elements in an NVMe-over-fabrics (NVMe-oF) system
US11240308B2 (en) * 2020-03-16 2022-02-01 Dell Products L.P. Implicit discovery controller registration of non-volatile memory express (NVMe) elements in an NVME-over-fabrics (NVMe-oF) system
US11489921B2 (en) 2020-03-16 2022-11-01 Dell Products L.P. Kickstart discovery controller connection command
US11675499B2 (en) * 2020-06-19 2023-06-13 Western Digital Technologies, Inc. Synchronous discovery logs in a fabric storage system
US11314447B2 (en) * 2020-07-21 2022-04-26 EMC IP Holding Company, LLC System and method for sustaining single NVMe subsystem by a federated storage array for NVMe-oF connectivity
US11805171B2 (en) 2021-03-04 2023-10-31 Dell Products L.P. Automated ethernet layer 3 (L3) connectivity between non-volatile memory express over fabric (NVMe-oF) hosts and NVM-oF subsystems using bind
US11818031B2 (en) * 2021-03-04 2023-11-14 Dell Products L.P. Automated internet protocol (IP) route update service for ethernet layer 3 (L3) IP storage area networks (SANs)
US11520518B2 (en) 2021-03-06 2022-12-06 Dell Products L.P. Non-volatile memory express over fabric (NVMe-oF) zone subsets for packet-by-packet enforcement
US11463521B2 (en) 2021-03-06 2022-10-04 Dell Products L.P. Dynamic connectivity management through zone groups
US11907530B2 (en) 2022-03-25 2024-02-20 Dell Products L.P. Scalable quality of service (QoS) for a nonvolatile memory express™ environment
US20240020056A1 (en) * 2022-07-12 2024-01-18 Dell Products L.P. Systems and methods for send log page commands for pull model devices
US20240020057A1 (en) * 2022-07-13 2024-01-18 Dell Products L.P. DISCOVERY LOG ENTRY IDENTIFIERS (DLEIDs) APPLICATIONS IN NON-VOLATILE MEMORY EXPRESS® ENVIRONMENTS

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6253240B1 (en) * 1997-10-31 2001-06-26 International Business Machines Corporation Method for producing a coherent view of storage network by a storage network manager using data storage device configuration obtained from data storage devices
US20010044879A1 (en) * 2000-02-18 2001-11-22 Moulton Gregory Hagan System and method for distributed management of data storage
US20020196744A1 (en) * 2001-06-26 2002-12-26 O'connor Michael A. Path discovery and mapping in a storage area network
US7958199B2 (en) * 2001-11-02 2011-06-07 Oracle America, Inc. Switching systems and methods for storage management in digital networks
US8909976B2 (en) * 2002-08-12 2014-12-09 Sheng Tai (Ted) Tsao Method and apparatus for web based storage on demand
US7379990B2 (en) * 2002-08-12 2008-05-27 Tsao Sheng Ted Tai Distributed virtual SAN
US8019849B1 (en) * 2002-09-13 2011-09-13 Symantec Operating Corporation Server-side storage area network management interface
US7243144B2 (en) * 2002-09-26 2007-07-10 Hitachi, Ltd. Integrated topology management method for storage and IP networks
JP4202709B2 (ja) * 2002-10-07 2008-12-24 株式会社日立製作所 ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法
US8005918B2 (en) * 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
US7649880B2 (en) * 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
US7720024B2 (en) * 2004-03-31 2010-05-18 Qualcomm Incorporated Method and apparatus for obtaining server information in a wireless network
JP4503413B2 (ja) * 2004-10-06 2010-07-14 株式会社日立製作所 ネットワークシステムにおける外部端末からの記憶装置の利用
JP4566874B2 (ja) * 2005-10-04 2010-10-20 株式会社日立製作所 Ipネットワークにおけるストレージアクセス管理機能及びシステム
US8166166B2 (en) * 2005-12-15 2012-04-24 International Business Machines Corporation Apparatus system and method for distributing configuration parameter
US8825806B2 (en) * 2006-07-26 2014-09-02 International Business Machines Corporation Selection and configuration of storage-area network storage device and computing device
JP4949804B2 (ja) * 2006-11-07 2012-06-13 株式会社日立製作所 統合管理計算機と記憶装置管理方法および計算機システム
JP4770749B2 (ja) * 2007-01-31 2011-09-14 富士通株式会社 サービス管理装置、サービス管理方法、およびサービス管理プログラム
US7908252B1 (en) * 2008-03-19 2011-03-15 Crossroads Systems, Inc. System and method for verifying paths to a database
US8868676B2 (en) * 2010-10-11 2014-10-21 International Business Machines Corporation Methods and systems for verifying server-storage device connectivity
JP5296769B2 (ja) * 2010-12-13 2013-09-25 日本電信電話株式会社 履歴管理方法、履歴管理装置及び履歴管理システム
US9141410B2 (en) * 2011-03-08 2015-09-22 Rackspace Us, Inc. Pluggable allocation in a cloud computing system
US8751456B2 (en) 2011-04-04 2014-06-10 Symantec Corporation Application wide name space for enterprise object store file system
JP5584186B2 (ja) * 2011-10-28 2014-09-03 株式会社ソニー・コンピュータエンタテインメント ストレージシステムおよびストレージ装置
US9229520B2 (en) * 2012-11-30 2016-01-05 Seagate Technology Llc Managing gateway access
US20140195634A1 (en) 2013-01-10 2014-07-10 Broadcom Corporation System and Method for Multiservice Input/Output
US9229854B1 (en) 2013-01-28 2016-01-05 Radian Memory Systems, LLC Multi-array operation support and related devices, systems and software
US20140289377A1 (en) * 2013-03-22 2014-09-25 Netapp Inc. Configuring network storage system over a network
US10063638B2 (en) 2013-06-26 2018-08-28 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over ethernet-type networks
US10372685B2 (en) * 2014-03-31 2019-08-06 Amazon Technologies, Inc. Scalable file storage service
JP6273353B2 (ja) 2014-04-21 2018-01-31 株式会社日立製作所 計算機システム
US9384093B1 (en) 2014-05-28 2016-07-05 Microsemi Storage Solutions (U.S.), Inc. Raid enabled NVME device
US20170102874A1 (en) * 2014-06-20 2017-04-13 Hitachi, Ltd. Computer system
US9853938B2 (en) * 2014-09-08 2017-12-26 Quanta Computer Inc. Automatic generation of server network topology
US9686143B2 (en) * 2014-09-24 2017-06-20 Intel Corporation Mechanism for management controllers to learn the control plane hierarchy in a data center environment
US9712619B2 (en) 2014-11-04 2017-07-18 Pavilion Data Systems, Inc. Virtual non-volatile memory express drive
US9565269B2 (en) * 2014-11-04 2017-02-07 Pavilion Data Systems, Inc. Non-volatile memory express over ethernet
WO2016139749A1 (ja) * 2015-03-03 2016-09-09 株式会社日立製作所 計算機システム、及び、記憶制御方法
EP3082319B1 (en) * 2015-04-16 2018-09-26 Alcatel Lucent Personalized access to storage device through a network
US10079730B2 (en) * 2015-09-30 2018-09-18 Amazon Technologies, Inc. Network based resource configuration discovery service
WO2017184139A1 (en) * 2016-04-21 2017-10-26 Wang, Ying Determining a persistent network identity of a networked device
US20180024964A1 (en) * 2016-07-19 2018-01-25 Pure Storage, Inc. Disaggregated compute resources and storage resources in a storage system
US11461258B2 (en) * 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
US10545861B2 (en) * 2016-10-04 2020-01-28 Pure Storage, Inc. Distributed integrated high-speed solid-state non-volatile random-access memory
US10007459B2 (en) * 2016-10-20 2018-06-26 Pure Storage, Inc. Performance tuning in a storage system that includes one or more storage devices
US10230544B1 (en) * 2016-11-23 2019-03-12 Pure Storage, Inc. Efficient data forwarding in a networked device
US10542089B2 (en) * 2017-03-10 2020-01-21 Toshiba Memory Corporation Large scale implementation of a plurality of open channel solid state drives

Also Published As

Publication number Publication date
CN108632338A (zh) 2018-10-09
TW201843980A (zh) 2018-12-16
JP2018156645A (ja) 2018-10-04
TWI729256B (zh) 2021-06-01
US10771340B2 (en) 2020-09-08
CN108632338B (zh) 2022-05-24
KR20180106822A (ko) 2018-10-01
KR102200934B1 (ko) 2021-01-11
US20180270119A1 (en) 2018-09-20

Similar Documents

Publication Publication Date Title
JP6974218B2 (ja) ストレージシステム及びその動作方法
US9853938B2 (en) Automatic generation of server network topology
US10177974B2 (en) Configuring managed server
US8370481B2 (en) Inventory management in a computing-on-demand system
US8244924B2 (en) Discovery and configuration of device configurations
US11082505B2 (en) Dynamic discovery of available storage servers
CN105993161B (zh) 用于解析地址的元件、方法、系统和计算机可读存储设备
US20150248315A1 (en) System and Method for Managing Multi-tenant Chassis Environment Using Virtual Private Chassis Management Controllers
US20140032753A1 (en) Computer system and node search method
US11294701B2 (en) Enhanced management of storage repository availability in a virtual environment
US7966394B1 (en) Information model registry and brokering in virtualized environments
US8819200B2 (en) Automated cluster node configuration
US11349721B2 (en) Discovering switch port locations and internet protocol addresses of compute nodes
US20110246600A1 (en) Memory sharing apparatus
US8762485B2 (en) Information system having computer and storage apparatus coupled to network
CN108696559A (zh) 流处理方法及装置
WO2017046830A1 (en) Method and system for managing instances in computer system including virtualized computing environment
JP6062809B2 (ja) 資産管理システム及び資産管理方法
US11546299B2 (en) Application based firewall rule service
US10445120B2 (en) Tiered application discovery
US9548940B2 (en) Master election among resource managers
JP6489978B2 (ja) 計算機システム及びデータ配布方法
CN109726013B (zh) 一种LBaaS管理多台LB设备的方法及装置
US20160006630A1 (en) Computer system evaluation method, computer system control method, and computer system
Lim et al. Self-provisioning and configuration system for heterogeneous diskless cluster system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210219

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210219

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210813

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: 20211026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211104

R150 Certificate of patent or registration of utility model

Ref document number: 6974218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150