IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三星電子株式会社の特許一覧

特許7108426イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法
<>
  • 特許-イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法 図1
  • 特許-イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法 図2
  • 特許-イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法 図3
  • 特許-イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-20
(45)【発行日】2022-07-28
(54)【発明の名称】イーサネットソリッドステートドライブ格納システム及びそれに対する帯域幅サービス水準協約を制御する方法
(51)【国際特許分類】
   H04L 47/22 20220101AFI20220721BHJP
   H04L 47/50 20220101ALI20220721BHJP
   H04L 47/2425 20220101ALI20220721BHJP
   H04L 12/28 20060101ALI20220721BHJP
   G06F 13/10 20060101ALI20220721BHJP
   G06F 3/08 20060101ALI20220721BHJP
   G06F 3/06 20060101ALI20220721BHJP
【FI】
H04L47/22
H04L47/50
H04L47/2425
H04L12/28 200B
G06F13/10 340A
G06F3/08 H
G06F3/06 304N
【請求項の数】 20
(21)【出願番号】P 2018030016
(22)【出願日】2018-02-22
(65)【公開番号】P2018137749
(43)【公開日】2018-08-30
【審査請求日】2021-01-08
(31)【優先権主張番号】62/462,901
(32)【優先日】2017-02-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】15/487,431
(32)【優先日】2017-04-13
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390019839
【氏名又は名称】三星電子株式会社
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【住所又は居所原語表記】129,Samsung-ro,Yeongtong-gu,Suwon-si,Gyeonggi-do,Republic of Korea
(74)【代理人】
【識別番号】110000051
【氏名又は名称】特許業務法人共生国際特許事務所
(72)【発明者】
【氏名】カチャレ,ラムダス ピー
(72)【発明者】
【氏名】オラリグ,ソムポング ポール
(72)【発明者】
【氏名】ファム,ソン ティー
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特開2004-048124(JP,A)
【文献】特開2007-328604(JP,A)
【文献】特開2016-212745(JP,A)
【文献】特開2014-160527(JP,A)
【文献】国際公開第2009/011090(WO,A1)
【文献】特開2005-204092(JP,A)
【文献】Wael Noureddine et al.,NVMe over Fabrics,STORAGE DEVELOPER CONFERENCE,2015年12月31日,P.8,18,<URL> https://www.snia.org/sites/default/files/SDC15_presentations/networking/WaelNoureddine_Implementing_%20NVMe_revision.pdf
【文献】星野 智則,NVMeフラッシュストレージを用いた 高性能・高拡張・高可用なデータベースシステムの実現方法 ~ExpEther技術の活用~,2016年07月13日,P.1-23,<URL> https://pdfslide.net/reader/f/db-tech-showcase-tokyo-2016-d13-nvme
【文献】久保田 浩,New Face Software,日経NETWORK 第105号 ,日本,日経BP社 Nikkei Business Publications,Inc.,P.49
(58)【調査した分野】(Int.Cl.,DB名)
H04L 47/00-47/83
H04L 12/28
G06F 13/10
G06F 3/08
G06F 3/06
(57)【特許請求の範囲】
【請求項1】
少なくとも1つのイーサネットソリッドステートドライブ(Ethernet solid-state drive)と、
前記少なくとも1つのイーサネットソリッドステートドライブのイーサネットポートに結合されたイーサネットスイッチと、
前記少なくとも1つのイーサネットソリッドステートドライブ及び前記イーサネットスイッチ結合された制御器と、を備え
前記制御器は、
前記イーサネットソリッドステートドライブに対する帯域幅情報を政策表に格納し、
前記イーサネットスイッチを通じて使用者データの伝送を速度調節(rate limiting)することによって前記少なくとも1つのイーサネットソリッドステートドライブに1つ以上の帯域幅を提供するように前記イーサネットスイッチをプログラムするように構成され
前記イーサネットスイッチは、前記イーサネットスイッチを通じた前記イーサネットソリッドステートドライブへの使用者データの伝送を速度調節するように構成されることを特徴とするイーサネットソリッドステートドライブシステム。
【請求項2】
前記イーサネットソリッドステートドライブに対する前記1つ以上の帯域幅は、前記イーサネットソリッドステートドライブに対する予め定められた進入帯域幅及び予め定められた進出帯域幅を含むことを特徴とする請求項1に記載のイーサネットソリッドステートドライブシステム。
【請求項3】
前記1つ以上の帯域幅は、前記イーサネットソリッドステートドライブに関連付けられたサービス水準に基づくことを特徴とする請求項2に記載のイーサネットソリッドステートドライブシステム。
【請求項4】
前記1つ以上の帯域幅は、前記イーサネットソリッドステートドライブの動作パラメータに適応的に基づくことを特徴とする請求項3に記載のイーサネットソリッドステートドライブシステム。
【請求項5】
前記イーサネットソリッドステートドライブに対する前記1つ以上の帯域幅は、前記イーサネットソリッドステートドライブに関連付けられたビットエラー率に基づくことを特徴とする請求項1に記載のイーサネットソリッドステートドライブシステム。
【請求項6】
前記イーサネットソリッドステートドライブに対する前記1つ以上の帯域幅は、前記イーサネットソリッドステートドライブに関連付けられた動作温度に基づくことを特徴とする請求項1に記載のイーサネットソリッドステートドライブシステム。
【請求項7】
前記制御器は、ベースボード管理制御器を含むことを特徴とする請求項1に記載のイーサネットソリッドステートドライブシステム。
【請求項8】
イーサネットソリッドステートドライブ(Ethernet solid-state drive)システムに対する帯域幅を制御する方法であって、
制御器で複数のイーサネットソリッドステートドライブの中少なくとも1つのイーサネットソリッドステートドライブに対する帯域幅情報を受信する段階と、
前記制御器で、前記イーサネットソリッドステートドライブに対する前記受信された帯域幅情報を格納する段階と、
前記制御器によって、イーサネットソリッドステートドライブに対する帯域幅情報に基づいてイーサネットスイッチをプログラムすることによって前記イーサネットソリッドステートドライブに対する前記イーサネットスイッチの帯域幅容量を構成する段階と、
前記イーサネットソリッドステートドライブに対する帯域幅情報に基づいて前記イーサネットスイッチと前記イーサネットソリッドステートドライブとの間の使用者データの伝送を速度調節(rate limiting)する段階と、有し
前記イーサネットスイッチは、前記イーサネットソリッドステートドライブのイーサネットポートに結合され
前記速度調節は、前記イーサネットスイッチによって、少なくとも局所的に行われることを特徴とする方法。
【請求項9】
前記イーサネットソリッドステートドライブに対する前記帯域幅容量は、前記イーサネットソリッドステートドライブに対する予め定められた進入帯域幅及び予め定められた進出帯域幅を含むことを特徴とする請求項に記載の方法。
【請求項10】
前記帯域幅容量は、前記イーサネットソリッドステートドライブに関連付けられたサービス水準に基づくことを特徴とする請求項に記載の方法。
【請求項11】
前記帯域幅容量は、前記イーサネットソリッドステートドライブの動作パラメータに適応的に基づくことを特徴とする請求項10に記載の方法。
【請求項12】
前記イーサネットソリッドステートドライブに対する前記帯域幅容量は、前記イーサネットソリッドステートドライブに関連付けられたビットエラー率に基づくことを特徴とする請求項に記載の方法。
【請求項13】
前記イーサネットソリッドステートドライブに対する前記帯域幅容量は、前記イーサネットソリッドステートドライブに関連付けられた動作温度に基づくことを特徴とする請求項に記載の方法。
【請求項14】
イーサネットソリッドステートドライブ(Ethernet solid-state drive)に対する帯域幅を制御する方法であって、
前記イーサネットソリッドステートドライブのイーサネットポートに結合されたイーサネットスイッチを通じてホストと前記イーサネットソリッドステートドライブとの間でデータを伝送する段階と、
前記ホストと前記イーサネットソリッドステートドライブとの間の使用者データの伝送を速度調節(rate limiting)するように前記イーサネットスイッチを構成する段階と、を有し、
前記イーサネットスイッチは、制御器によって構成され、
前記速度調節は、前記イーサネットスイッチによって、少なくとも局所的に行われることを特徴とする方法。
【請求項15】
前記制御器は、管理者から受信した命令語(commands)に基づいて前記イーサネットスイッチを構成することを特徴とする請求項14に記載の方法。
【請求項16】
前記制御器は、管理者から前記イーサネットソリッドステートドライブに対する帯域幅情報を受信し、前記帯域幅情報に基づいて前記イーサネットスイッチを構成することを特徴とする請求項14に記載の方法。
【請求項17】
前記制御器は、前記イーサネットソリッドステートドライブの1つ以上の状態を監視し、前記1つ以上の状態に基づいて前記イーサネットスイッチを構成することを特徴とする請求項14に記載の方法。
【請求項18】
前記イーサネットスイッチは、待ち行列(Queuing)によって前記ホストと前記イーサネットソリッドステートドライブとの間の使用者データの伝送を速度調節するように構成されることを特徴とする請求項14に記載の方法。
【請求項19】
前記イーサネットスイッチは、日程管理(scheduling)によって前記ホストと前記イーサネットソリッドステートドライブとの間の使用者データの伝送を速度調節するように構成されることを特徴とする請求項14に記載の方法。
【請求項20】
前記イーサネットスイッチは、流れ制御(flow control)によって前記ホストと前記イーサネットソリッドステートドライブとの間の使用者データの伝送を速度調節するように構成されることを特徴とする請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
ここに記載された主題は一般的に格納システムに係り、さらに詳細には特に、「NVMe-oF」(ファブリックに亘る不揮発性メモリエクスプレス)の「eSSD」(イーサネット(登録商標)(Ethernet)ソリッドステートドライブ(Solid-State-Drive))システム、及び該システムと連関された帯域幅サービス水準協約(SLA(s)、Service Level Agreement(s))を管理する方法に係る。
【背景技術】
【0002】
イーサネットソリッドステートドライブ(eSSD(s))は1つ以上の遠隔サーバホストが遠隔直接連結ストレージ(remote Direct Attached Storage、rDAS)モードでイーサネットネットワークを通じてイーサネットソリッドステートドライブ(eSSD)に連結されることを許容する。しかし、通常的なイーサネットソリッドステートドライブ(eSSD)格納システムは多数のイーサネットソリッドステートドライブ(eSSD)を有する格納システムで特定イーサネットソリッドステートドライブ(eSSD)に適用される帯域幅サービス水準協約(SLA)を容易に許容しない。
【先行技術文献】
【特許文献】
【0003】
【文献】米国特許第9,363,315号公報
【文献】米国特許公開第2014-0195634号明細書
【文献】国際特許公開第WO2016/196766号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的はイーサネットソリッドステートドライブの帯域幅水準協約を制御するシステム及び方法を提供することにある。
【課題を解決するための手段】
【0005】
例示的な実施形態は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)、イーサネットスイッチ、及びベースボード管理制御器のような制御器を含むイーサネットソリッドステートドライブ(eSSD)システムを提供する。イーサネットスイッチは少なくとも1つのイーサネットソリッドステートドライブ(eSSD)と結合され、制御器は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)及びイーサネットスイッチと結合される。制御器は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)に予め定められた帯域幅を提供するようにイーサネットスイッチを制御する。予め定められた帯域幅は制御器の政策表に格納された少なくとも1つのイーサネットソリッドステートドライブ(eSSD)に対する帯域幅情報に基づく。
【0006】
一実施形態で、少なくとも1つのイーサネットソリッドステートドライブ(eSSD)に対する各々の予め定められた帯域幅は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)に対する予め定められた進入帯域幅及び予め定められた進出帯域幅を含むことができる。
一実施形態で、予め定められた進入帯域幅は予め定められた進出帯域幅と異なることができる。
他の実施形態で、予め定められた帯域幅は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)と連関されたサービス水準に基づくことができる。
その他の実施形態で、予め定められた帯域幅は少なくとも1つのイーサネットソリッドステートドライブ(eSSD)の動作パラメータに適応的に基づくことができる。
【0007】
例示的な実施形態はイーサネットソリッドステートドライブシステムに対する帯域幅を制御する方法を提供する。該方法は制御器で複数のイーサネットソリッドステートドライブの中で少なくとも1つのイーサネットソリッドステートドライブに対する帯域幅情報を受信する段階と、制御器で少なくとも1つのイーサネットソリッドステートドライブに対する受信された帯域幅情報を格納する段階と、制御器によって少なくとも1つのイーサネットソリッドステートドライブに対するイーサネットスイッチングの帯域幅容量を構成する段階と、を含み、イーサネットスイッチは少なくとも1つのイーサネットソリッドステートドライブと結合される。
【0008】
一実施形態で、少なくとも1つのイーサネットソリッドステートドライブに対する帯域幅容量は少なくとも1つのイーサネットソリッドステートドライブに対する予め定められた進入帯域幅及び予め定められた進出帯域幅を含むことができる。
一実施形態で、予め定められた進入帯域幅は予め定められた進出帯域幅と異なることができる。
一実施形態で、帯域幅容量は少なくとも1つのイーサネットソリッドステートドライブと連関されたサービス水準に基づくことができる。
他の実施形態で、帯域幅容量は少なくとも1つのイーサネットソリッドステートドライブの動作パラメータに適応的に基づくことができる。
【発明の効果】
【0009】
本発明によれば、イーサネットソリッドステートドライブのサービス水準協約に応じて、そして動作パラメータに応じて帯域幅が制御される。従って、向上された柔軟性を有するシステム及び方法が提供される。
【図面の簡単な説明】
【0010】
下のセクションで、ここに記載された主題の側面が図面に図示された例示的な実施形態を参照して説明される。
図1】本発明の実施形態に係るイーサネットソリッドステートドライブ制御プラットフォームを示す。
図2】(A)は、本発明の実施形態に係るイーサネット進入及び進出帯域幅を管理及び/又は実施するための例示的な政策表を示す。 (B)は、本発明の実施形態に係るイーサネット進入及び進出帯域幅を管理及び/又は実施するための例示的な政策表を示す。 (C)は、本発明の実施形態に係るイーサネット進入及び進出帯域幅を管理及び/又は実施するための例示的な政策表を示す。
図3】本発明の実施形態に係るサービス水準協約政策執行を初期化するためのプロセスの例示的な実施形態の順序図を示す。
図4】本発明の実施形態に係るイーサネットソリッドステートドライブの状態を監視し、そしてイーサネットソリッドステートドライブの状態に基づいて政策表を修正するためのプロセスの例示的な実施形態の順序図を示す。
【発明を実施するための形態】
【0011】
以下の詳細な記述(description)において、多数の具体的な詳細が本開示に対する充分な理解を提供するために提示される。しかし、本開示の諸様相がこのような具体的な詳細無しでも実施できることは、この分野に熟練した者(当業者)には理解されよう。他の例においては、広く公知された方法、手続、構成要素、及び回路はここに記載された主題を曖昧にしないために詳細には記述されない。
【0012】
この詳細な説明(explanation)にわたって“一実施形態”又は“実施形態”に対する参照は、該当実施形態と連結されて説明された特定な特性(feature)、構造(structure)、又は特徴(characteristic)がここに記載される少なくとも1つの実施形態に含まれることを意味する。従って、この詳細な説明にわたって多様な位置で登場する“一実施形態で”又は“実施形態で”又は“一実施形態に係る”文言(又は類似な意味を有する他の文言)は全て必然的に同一の実施形態を参照することではない。また、特定な特性(feature)、構造(structures)、又は特徴(characteristics)は1つ以上の実施形態において任意の適切な方法により組み合され得る。
この観点からは、ここで使用されるように、“例示的な(exemplary)”の単語は“例(example)、事例(instance)、又は実例(illustration)として機能する”ことを意味する。即ち、“例示的な”ものとしてここで記述される任意の実施形態は、他の実施形態より好ましい(preferred)とか、又は有利である(advantageous)とか、を必ずしも意味しない。また、そこでの文脈に依存して、単数形の用語は対応する複数形態を含み、そして複数形の用語は対応する単数形態を含み得る。ここに図示され、論議される多様な図面(構成要素ダイヤグラムを含む)は、実例説明のみを目的とし、縮尺は任意である(not_to_scale)。同様に、多様な波形及びタイミング図は実例説明のみを目的とする。例えば、要素の一部のサイズは明確性のために他の要素に対して強調される場合がある。また、適切であると看做されれば、参照番号は複数の図面中において繰り返し使われて、対応する及び/又は類似な要素を示す。
【0013】
ここに使用される用語は、特定の例示的な実施形態の記述のみ目的とし、構成要件の請求範囲を限定する意図はない。ここで使用されるように、単数形態は文脈上明確に単数と指定しない限り、複数形態もまた含むことと意図される。“含む”及び/又は“包含する”の用語はこの詳細な説明中において使用される時、言及された特性(features)、整数(integers)、段階(steps)、動作(operations)、要素(elements)、及び/又は構成要素(components)の存在を明示するが、1つ以上の特性、整数、段階、動作、要素、構成要素、及び/又はこれらのグループの追加又は存在を排除しないことと理解される。
ここで使用されるように、“第1”、“第2”等の用語はこれらが先行する名詞に対する単なるラベル(labels)として使用され、明示的に定義されない限り、任意のタイプの順序付け(ordering)(例えば、空間的(spatial)、時間的(temporal)、論理的(logical)等)を含意(imply)しない。また、同一の参照番号は2つ以上の図面にわたって使用されて同一又は類似な機能を有する部分、構成要素、ブロック、回路、ユニット、又はモジュールを参照できる。しかし、このような使用は記述の簡潔性及び論議の簡易化のみを目的とし、このような構成要素又はユニットの構成又は構造的詳細が全ての実施形態にわたって同一であることを含意せず、又はこのような共通に参照される部分/モジュールがここに記載された特定の実施形態の教示を具現する唯一の方法であることを含意しない。
【0014】
別途相異なって定義されない限り、ここで使用される全ての用語(技術的及び科学的用語を含んで)はこの主題が属する分野に通常的な技術を有する者によって通常的に理解される意味と同一の意味を有する。例えば、ここで使用されるように、“mod”は“法、モジュロ(modulo)”を意味する。通常的に使用される事前で定義されたように、用語は連関された分野の文脈のそれらの意味と一貫された意味を有することと解釈されなければならず、そこで明示的にそうと定義されない限り、理想化される(idealized)か、又は過度に形式的な(overly_formal)意味(sense)に解釈されてはならない。例えば、「直線」は必ずしも「幅の無い、微細な曲がりも無い、厳密に幾何学的な直線」を意味しない。
【0015】
ここで使用されるように、“モジュール”の用語はここでモジュールと連結されて説明される機能を提供するように構成されるソフトウェア、ファームウェア、及び/又は、ハードウェアの任意の組み合わせを指し示す。ここで説明される任意の実施例に適用されるように、“ソフトウェア”の用語は、ソフトウェアパッケージ、コード、及び/或いは、命令セット(instruction set)又は命令(instructions)として具現化(embodied)される。ここで説明される任意の実施例に適用されるように、“ハードウェア”の用語は、例えば単独又は任意の組み合わせでハードウェア回路、プログラム可能な回路、状態-機械(state_machine)回路、及び/又はプログラム可能な回路によって実行される命令を格納するファームウェアを含み得る。モジュールは総括的に又は個別的に、より大規模なシステムの部分を形成する、ソフトウェア、ファームウェア、及び/又は、ハードウェアとして具現化され、該大規模システムは、例えば集積回路(IC)、システムオンチップ(SoC)等であるが、しかしこれらに限定されない。
【0016】
ここに開示された(本発明に係る)構成要件(subject_matter)は、システムにおけるイーサネットソリッドステートドライブ(eSSD)の観点から非妨害(non-intrusive)方法により、イーサネットソリッドステートドライブ(eSSD)の制御プラットフォームによって1つ以上の帯域幅に関するサービス水準協約(SLA)を執行(enforce)するシステム及び技術を提供する。イーサネットソリッドステートドライブ(eSSD)の制御プラットフォームのベースボード(baseboard)管理制御器(BMC)装置は、制御プラットフォームに連結された1つ以上のイーサネットソリッドステートドライブ(eSSD)に対して多様な帯域幅政策を維持できる。ベースボード管理制御器(BMC)装置は制御プラットフォーム100のイーサネットスイッチ(Ethernet Switch)をプログラム又は構成して、ホストと連結されたアップリンクポート及び/又はイーサネットソリッドステートドライブ(eSSD)と連結されたダウンリンクポートを速度調節(rate limit)できる。
速度-調節(rate-limiting)構成は、各個別イーサネットソリッドステートドライブ(eSSD)に対して、進入方向(ingress direction)(ホスト書込み)と、進出方向(egress direction)(ホスト読出し)と、で異なり得る。イーサネットスイッチングの速度-調節構成は、
(i) 管理サーバの管理者(administrator)から受信される命令語(commands)及び/又は帯域幅情報に応答して、
(ii) ベースボード管理制御器(BMC)装置に含まれた1つ以上の政策(policy)を執行するベースボード管理制御器(BMC)装置に応答して、又は、
(iii) システムの1つ以上のイーサネットソリッドステートドライブ(eSSD)の現在の健康(health)、即ち現在の状態(status)に応答して、設定される。
ここで使用されるように、“帯域幅情報”の用語は、個別イーサネットソリッドステートドライブ(eSSD)、イーサネットソリッドステートドライブ(eSSD)のグループ及び/又は制御プラットフォームに結合されたイーサネットソリッドステートドライブ(eSSD)全体のプール(pool)に適用される進入及び/又は進出帯域幅と連関された情報を含む。
【0017】
ベースボード管理制御器(BMC)装置はシステムに存在するイーサネットソリッドステートドライブ(eSSD)の全てに対する可視性(visibility)を有し、これら各々のパラメータ及び動作状態を監視(monitor)する。従って、個別イーサネットソリッドステートドライブ(eSSD)、システムに連結されたイーサネットソリッドステートドライブ(eSSD)の全ての部分集合、及び/又はシステムに連結されたイーサネットソリッドステートドライブ(eSSD)の全てに対して最適である、知能的且つ複雑な政策が具現され、監視される。従って、ベースボード管理制御器(BMC)装置がイーサネットスイッチをプログラム又は構成することによってシステムのサービス水準協約(SLA)を執行してシステムのイーサネットソリッドステートドライブ(eSSD)から独立してサービス水準協約(SLA)帯域幅を管理するので、ベースボード管理制御器(BMC)装置はシステムで使用されている相異なる個々のソリッドステートドライブ(SSD)の多重個別専用(multiple_proprietary)メカニズムを管理する必要がない。ベースボード管理制御器(BMC)装置はまた格納管理サーバへの通信経路を含み、格納管理者はこれからシステムのサービス水準協約(SLA)を効率的に管理できる。
【0018】
図1は本発明の実施形態に係るイーサネットソリッドステートドライブ(eSSD)制御プラットフォーム100を示す。一実施形態で、イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100はイーサネットスイッチ101、ベースボード管理制御器(BMC)装置102、PCIe(Peripheral Component Interconnect Express)スイッチ103、ミッド-プレーン(mid-plane)104、及び1つ以上のイーサネットソリッドステートドライブ(eSSD)105を含む。図1でイーサネットソリッドステートドライブ(eSSD)制御プラットフォーム100の一部として1つのイーサネットスイッチ101及び1つのPCIeスイッチ103のみが図示されるが、多数のイーサネットスイッチ101及び多数のPCIeスイッチ103がイーサネットソリッドステートドライブ(eSSD)制御プラットフォーム100の一部であることが理解されるべきである。また、イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100を形成する構成要素は個別的な構成要素又は個別的なモジュールにより具現される。他の例として、イーサネットソリッドステートドライブ(eSSD)制御プラットフォーム100を形成する2つ以上の構成要素が互いに統合される。
【0019】
イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100はシャーシ(chasis)又はラック(rack)として物理的に具現される。1つ以上のイーサネットソリッドステートドライブ(eSSD)105は制御プラットフォーム100に対して局所的に(locally)配置される。1つ以上の追加的なイーサネットソリッドステートドライブ(eSSD)105は、また制御プラットフォーム100に対して離隔して配置される場合もある。
一実施形態で、制御プラットフォーム100は24個のイーサネットソリッドステートドライブ(eSSD)105を含む。他の実施形態として、イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100は48個のイーサネットソリッドステートドライブ(eSSD)105を含む。その他の実施形態として、イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100は任意の数のイーサネットソリッドステートドライブ(eSSD)105を含む場合もある。
【0020】
イーサネットスイッチ101は多数のアップリンクイーサネットポート106を含み、これらの中で1つのアップリンクポート106のみが図1に図示される。アップリンクポート106はイーサネットスイッチ101を1つ以上の遠隔ホスト150と連結し、図1では、これらの中で1つのホスト150のみが図示される。イーサネットスイッチ101はまた多数のダウンリンクポート107を含み、図1では、これらの中で1つのポート107のみが図1に図示される。ダウンリンクポート107はイーサネットスイッチ101を個別イーサネットソリッドステートドライブ(eSSD)105のイーサネットポート108にミッドプレーン104を通じて連結する。一実施形態で、各イーサネットソリッドステートドライブ(eSSD)150はイーサネットポート108を含む。
イーサネットスイッチ101はアップリンクイーサネットポート106及び/又はダウンリンクイーサネットポート107に対して速度調節(rate limiting)を遂行する。速度調節はパケット又はフレームキューイング(queueing)、日程管理(scheduling)、及び流れ及び混雑制御(flow and congestion control)の3つの構成要素を有する。均等化キューイング(WFQ、Weighted Fair Queuing、重み付け公平待ち行列)速度調節構成要素はキューイングサブシステム(sub-systems)を具現するのに使用される。日程管理速度調節構成要素の一部の例はウェイトラウンドロビン(WRR、Weighted Round Robin、重み付け総当たり)技術及び欠損ラウンドロビン(DRR、Deficit Round Robin、不完全総当たり)技術を含む。流れ及び混雑制御速度調節構成要素は、例えばテールドロップ(Tail Drop)技術及び/又は重み付けランダム早期廃棄(WRED、Weighted Random Early Discard)技術を利用して具現される。一部の実施形態で、早期混雑通知(ECN、Early Congestion Notification)技術が使用されてトラフィックの流れを制御する。イーサネットリンクに対して、ポーズフレーム(pause frames)及び優先順位流れ制御(PFC、Priority Flow Control)標準技術が使用される。
【0021】
一実施形態で、ベースボード管理制御器(BMC)装置102はイーサネットソリッドステートドライブ制御プラットフォーム100の一部であるメーンスイッチボードに配置される。他の実施形態で、ベースボード管理制御器(BMC)装置102及びイーサネットスイッチ101は互いに統合されることができる。
【0022】
ベースボード管理制御器(BMC)装置102はイーサネットソリッドステートドライブ(eSSD)105の各々の発見、構成、動作状態、及び健康監視のような管理機能を提供するように構成される。一実施形態で、ベースボード管理制御器(BMC)装置102はイーサネットソリッドステートドライブ(eSSD)105の各々の発見、構成、動作状態、及び健康監視、及び、これらに限定されない管理機能と連関される情報を含む1つ以上の政策表109を含む。ベースボード管理制御器(BMC)装置102は政策表109を利用してイーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100と連関された1つ以上のサービス水準協約(SLA)を管理及び/又は執行する。
一実施形態で、1つ以上のサービス水準協約(SLA)はベースボード管理制御器(BMC)装置102が執行する特定の帯域幅政策と連関される。一実施形態で、帯域幅政策は個別イーサネットソリッドステートドライブ(eSSD)105と連関される。他の実施形態で、帯域幅政策はイーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100に連結された全てのイーサネットソリッドステートドライブ(eSSD)105の部分集合を形成するイーサネットソリッドステートドライブ(eSSD)105のグループと連関される。その他の実施形態で、帯域幅政策はイーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100に連結された全てのイーサネットソリッドステートドライブ(eSSD)105と連関される。
【0023】
イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100の一実施形態において、ベースボード管理制御器(BMC)装置102とイーサネットソリッドステートドライブ(eSSD)105との間には、ベースボード管理制御器(BMC)装置102によって提供される管理機能と連関された情報を獲得するのに使用される3つの通信経路が存在する。
第1通信経路はイーサネットスイッチ101を通じたイーサネットネットワーク110の上にある。第2通信経路はPCIeスイッチ103及びミッド-プレーン104を通じたPCIeバス111の上にある。第3通信経路はベースボード管理制御器(BMC)装置102及びイーサネットソリッドステートドライブ(eSSD)105の間に連結されたシステム管理バス(SMBus、System Management Bus)112を通じる。
ベースボード管理制御器(BMC)装置102はまた、管理ポート113を具備し、これを通じて管理者(使用者)によって動作される管理サーバ160がベースボード管理制御器(BMC)装置102と通信し、制御する。ベースボード管理制御器(BMC)装置102は1つ以上の帯域幅政策を形成するのに使用される1つ以上のイーサネットソリッドステートドライブ(eSSD)105に対する帯域幅情報を受信する。管理サーバ160はイーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム110に近接して又は遠隔に配置される。
【0024】
遠隔ホスト150に連結されたイーサネットスイッチ101のアップリンクポート106は高帯域幅(high-bandwidth)リンクである。一実施形態で、イーサネットスイッチ101のアップリンクポート106は多重の40Gbit/s、及び/又は100Gbit/sリンクを含む。個別イーサネットソリッドステートドライブ(eSSD)は通常、10Gbit/s、及び/又は25Gbit/sイーサネットポート108を有する。イーサネットソリッドステートドライブ(eSSD)の制御プラットフォーム100の個別イーサネットソリッドステートドライブ(eSSD)105は、イーサネットスイッチ102のアップリンクポート106のより高い帯域幅に対してオーバサブスクライブ(oversubscribe、過剰予約)される。一般的にイーサネットソリッドステートドライブ(eSSD)105の全てが同時に活性化されないので、このような帯域幅のオーバサブスクライブは可能である。特定のイーサネットソリッドステートドライブ(eSSD)105によって消費されるイーサネット帯域幅の量は遠隔ホスト150によって当該イーサネットソリッドステートドライブ(eSSD)に提示された業務負荷に依存する。
【0025】
一実施形態で、遠隔ホスト150によって提示された業務負荷は、ファブリックに亘る不揮発性メモリエクスプレス(Non-Volatile Memory Express over Fabrics、NVMe over Fabrics、NVMeof)仕様に基づくプロトコルを利用して読出し/書込みIO命令語をイーサネットソリッドステートドライブ(eSSD)105に伝送される。従って、任意の時にイーサネットソリッドステートドライブ(eSSD)105によって消費される帯域幅の量は提示されたI/O命令語の数及びそのような命令語のデータ伝送サイズに依存する。ホスト書込み命令語に対して、イーサネットソリッドステートドライブ(eSSD)105は遠隔ホスト150からイーサネットソリッドステートドライブ(eSSD)105の局所的媒体(local media、eSSDの個別バッファ)に使用者データを伝送し、このようにしてイーサネット進入帯域幅を消費する。ホスト読出し命令語に対して、イーサネットソリッドステートドライブ(eSSD)105はイーサネットソリッドステートドライブ(eSSD)105の局所的媒体から遠隔ホスト150に使用者データを伝送し、従ってイーサネット進出帯域幅を消費する。
【0026】
各イーサネットソリッドステートドライブ(eSSD)105は予め定められた数の命令語提示待機列(SQ、submission queues)を含む。イーサネットソリッドステートドライブ(eSSD)105は待機列を支援するために仲裁(arbitration)を遂行する。提示待機列SQを選択した後に、イーサネットソリッドステートドライブ(eSSD)105は選択された提示待機列SQから実行のための次の命令語をフェッチ(fetch)する。命令語実行の一部として、イーサネットソリッドステートドライブ(eSSD)105は遠隔ホスト150への、又は、からの特定のデータ伝送を遂行する。データ伝送が完了されれば、イーサネットソリッドステートドライブ(eSSD)105は遠隔ホスト150に完了メッセージを伝送する。この時に、イーサネットソリッドステートドライブ(eSSD)105は提示待機列仲裁に戻って、以下同様に続行する。イーサネットソリッドステートドライブ(eSSD)105は提示待機列SQに係留中である命令語がある限り、提示待機列SQを仲裁する命令語実行ループを通じてサイクルを持続する。
【0027】
ベースボード管理制御器(BMC)装置102は1つ以上の政策表を利用して、イーサネットソリッドステートドライブeSSDの制御プラットフォーム100と連関された1つ以上のサービス水準協約(SLA)を管理及び/又は執行する。サービス水準協約(SLA)は制御プラットフォーム100で1つ以上のイーサネットソリッドステートドライブ(eSSD)105に適用される特定の帯域幅政策と連関される。帯域幅政策は時間的側面(時間帯、曜日、等)、イーサネットソリッドステートドライブ(eSSD)動作パラメータ、イーサネットソリッドステートドライブ(eSSD)電力消費、フラッシュ媒体技術、使用者加入(サブスクリプション(subscription))率、利用率の費用(即ち、週中日対休日又は週末)、及び/又はサービス提供者のプロモーションアレンジメント(promotional arrangement)のような、しかしこれらに限定されない1つ以上の側面に基づく。
仮想製品データ(VPD、Virtual Product Data)読出しによってイーサネットソリッドステートドライブ(eSSD)から獲得された情報は、ベースボード管理制御器(BMC)装置102に局所的に格納され、帯域幅サービス水準協約(SLA)を適応的に制御するのに使用される。一実施形態で、イーサネットソリッドステートドライブ(eSSD)105の状態及び/又はパラメータは、システム管理バスSMBus(112)及び/又はPCIeインタフェイス(111)に亘って実行される(run)、NVMe管理インタフェイス(NVMe-MI)基盤のプロトコルを利用してベースボード管理制御器(BMC)装置によって読み出される。
【0028】
図2(A)乃至図2(C)は本発明の実施形態に係るイーサネット進入及び進出帯域幅B/Wを管理及び/又は執行するための例示的な政策表を各々示す。
図2(A)は、イーサネット進入及び進出帯域幅B/Wサービス水準協約(SLA)がイーサネットソリッドステートドライブ(eSSD)の各々に対して同一である場合の、複数のイーサネットソリッドステートドライブ(eSSD)に対するイーサネット進入及び進出帯域幅(B/W)サービス水準協約(SLA)に対する例示的な政策表109aを示す。具体的に、各イーサネットソリッドステートドライブ(eSSD)は5Gbpsの進入帯域幅(B/W)サービス水準協約(SLA)及び10Gbpsの進出帯域幅(B/W)サービス水準協約(SLA)を有する。
図2(B)は、イーサネット進入及び進出帯域幅(B/W)サービス水準協約(SLA)がイーサネットソリッドステートドライブ(eSSD)の各々に対して相異なる場合の、複数のイーサネットソリッドステートドライブ(eSSD)に対するイーサネット進入及び進出帯域幅(B/W)サービス水準協約(SLA)に対する例示的な政策表109bを示す。
図2(C)は表でイーサネット進入及び進出帯域幅(B/W)サービス水準協約(SLA)がイーサネットソリッドステートドライブ(eSSD)の相異なるグループに対して相異なる場合の、複数のイーサネットソリッドステートドライブ(eSSD)に対するイーサネット進入及び進出帯域幅(B/W)サービス水準協約(SLA)に対するその他の例示的な政策表109cを示す。特に、第1グループを為す第0及び第1イーサネットソリッドステートドライブeSSD-0、eSSD-1は全て5Gbpsの進入帯域幅(B/W)サービス水準協約(SLA)及び5Gbpsの進出帯域幅(B/W)サービス水準協約(SLA)を有するが、第2グループを為す第2乃至第nイーサネットソリッドステートドライブeSSD-2~eSSD-nは各々5Gbpsの進入帯域幅(B/W)サービス水準協約(SLA)及び10Gbpsの進出帯域幅(B/W)サービス水準協約(SLA)を有する。
【0029】
図3は本発明の実施形態に係ってサービス水準協約(SLA)政策執行を初期化するためのプロセス300の例示的な実施形態の順序図を示す。即ち、プロセス300はベースボード管理制御器(BMC)がパワーアップの際、又はシステムリセットの際に遂行してシステム内のイーサネットソリッドステートドライブ(eSSD)を識別し、1つ以上のサービス水準協約(SLA)を初期的に構成するプロセスである。301で、プロセスが開始する。302で、ベースボード管理制御器(BMC)はシステムの全てのイーサネットソリッドステートドライブ(eSSD)が識別されたか否かを判断する。
否の場合は、流れは303に進み、ベースボード管理制御器(BMC)はイーサネットソリッドステートドライブ(eSSD)のNVMe-MIを通じて仮想製品データ(VPD)を読み出す。仮想製品データ(VPD)は、共通ヘッダ、製品情報、多重記録(multirecord)情報、内部使用情報、シャーシ(chassis)情報領域及びボード特化情報を含むが、これらに限定されない。304で、ベースボード管理制御器(BMC)は仮想製品情報(VPD)に基づいてイーサネットソリッドステートドライブ(eSSD)を識別する。305で、ベースボード管理制御器(BMC)はイーサネットソリッドステートドライブ(eSSD)に対するイーサネットソリッドステートドライブ(eSSD)パラメータを局所的に格納した後、流れは302に戻って行く。
【0030】
302で、プラットフォームの全てのイーサネットソリッドステートドライブ(eSSD)が識別されたら、流れは306に進み、ベースボード管理制御器(BMC)は政策管理表からサービス水準協約(SLA)政策が追加されたか、修正されたか、又は削除されたかを判断する。サービス水準協約(SLA)政策が追加されれば、流れは307及び310に進み、政策が政策管理表に追加される。サービス水準協約(SLA)政策が修正されれば、流れは308及び310に進み、政策管理表で政策が修正される。サービス水準協約(SLA)政策が削除されれば、流れは309及び310に進み、政策管理表から政策が削除される。
システムパワーアップ又はシステムリセット時に政策変更を要する理由は、
(i) 1つ以上の新しいイーサネットソリッドステートドライブ(eSSD)が既存の複数のイーサネットソリッドステートドライブ(eSSD)105に追加されるか、
(ii) 複数のイーサネットソリッドステートドライブ(eSSD)105の内、以前に存在した1つ以上のイーサネットソリッドステートドライブ(eSSD)が除去されるか、及び/又は、
(iii) 複数のイーサネットソリッドステートドライブ(eSSD)105の内、以前に存在した1つ以上のイーサネットソリッドステートドライブ(eSSD)が動作不能になった可能性がある、ためである。
これに限定されないが、このような事件は以前と相異なる政策の活性化を誘発する場合がある。また、ビットエラー率BER、動作温度、格納容量等のようなイーサネットソリッドステートドライブ(eSSD)の特性は時間に応じて変化し、従って政策変更の必要を誘発する。また、1つ以上のイーサネットソリッドステートドライブ(eSSD)105は時間に応じて他のホスト及び/又は応用に再割当され、これも政策変更の必要を誘発する。政策変更を誘発するその他の例は、時間帯の変更、例えば昼間対夜間又は週中対週末に適用される多重の政策を含む。
【0031】
以後に流れは311に進み、イーサネットスイッチ101の構成が310の政策表の更新に基づいて更新される。流れは302に戻る。306で、サービス水準協約(SLA)政策が追加、修正、又は削除されなければ、流れは302に戻る(図示せず)。
【0032】
図4は本発明の実施形態に係って、イーサネットソリッドステートドライブ(eSSD)の状態を監視し、そしてイーサネットソリッドステートドライブ(eSSD)の状態に基づいて政策表を修正するためのプロセス400の例示的な実施形態の順序図を示す。プロセスは401で開始する。流れは402に進み、ベースボード管理制御器(BMC)はシステムの全てのイーサネットソリッドステートドライブ(eSSD)の(健康)状態がスキャンされたか否かを判断する。否の場合、流れは403に進み、スキャンされない第1番目のイーサネットソリッドステートドライブeSSDの(健康)状態が、例えばNVMe-MIの健康状態ポール(poll)を利用してスキャンされる。404で、ベースボード管理制御器(BMC)はイーサネットソリッドステートドライブ(eSSD)のスマート/健康(SMART/Health)情報ログを読み出す。405で、ベースボード管理制御器(BMC)はイーサネットソリッドステートドライブ(eSSD)の現在の健康状態を局所的に格納する。流れは402に戻る。
【0033】
402で、ベースボード管理制御器(BMC)がシステムの全てのイーサネットソリッドステートドライブ(eSSD)の健康状態がスキャンされている場合は、流れは406に進み、ベースボード管理制御器(BMC)はイーサネットソリッドステートドライブ(eSSD)の中で何れかに健康状態の変化があったか否かを判断する。ベースボード管理制御器(BMC)によって監視されるイーサネットソリッドステートドライブ(eSSD)の健康状態パラメータはこれに限定されないが、イーサネットソリッドステートドライブ(eSSD)内のデータ構造、動作温度、媒体無欠性(即ち、ビットエラー率BER)、残余寿命、可用予備容量、総容量、使用された容量、予め定められた時刻以降のデータ読出し/書込みの量、予め定められた時刻以降の応答したホスト命令語の数、1日当たりドライブ書込み(DWPD、drive writes per day)、イーサネットソリッドステートドライブ(eSSD)の制御器ビジー(busy)時間、そして任意の個別専用(proprietary)情報を含む。
【0034】
406で、イーサネットソリッドステートドライブ(eSSD)の中で何れも健康状態の変化が検出されず、変化が無いと判断されれば、流れは402に戻る。406で、イーサネットソリッドステートドライブ(eSSD)の中で何れかに健康状態の変化があったら、流れは407に進み、ベースボード管理制御器(BMC)は影響を受けたイーサネットソリッドステートドライブ(eSSD)の健康状態と連関された政策表にアクセスする。
406で政策変更が必要であると判断される他の理由は、1つ以上の新しいイーサネットソリッドステートドライブ(eSSD)が複数のイーサネットソリッドステートドライブ(eSSD)105に追加(即ち、ホットスワップ)されるか、複数のイーサネットソリッドステートドライブ(eSSD)105中に以前に存在した1つ以上のイーサネットソリッドステートドライブeSSDsが除去(即ち、ホットスワップ)されるか、及び/又は、複数のイーサネットソリッドステートドライブ(eSSD)105中に以前に存在した1つ以上のイーサネットソリッドステートドライブ(eSSD)が動作不能になった、場合である。
これに限定されないこのような事件等は他の政策が活性化されることを誘発する。また、ビットエラー率BER、動作温度、格納容量等のようなイーサネットソリッドステートドライブ(eSSD)の特徴は時間に応じて変化し、従って政策変更の必要を誘発する。また、1つ以上のイーサネットソリッドステートドライブ(eSSD)105は時間に応じて他のホスト及び/又は応用に再割当され、これも政策変更の必要を誘発する。406で政策変更を誘発するその他の例は異なる時間帯、例えば昼間対夜間又は週中対週末に適用される多重政策を含む。
【0035】
408で、イーサネットソリッドステートドライブ(eSSD)の健康状態の変更及びイーサネットソリッドステートドライブ(eSSD)の健康状態と連関された政策表の内容に基づいてイーサネットスイッチングを再構成する必要かあるか否かが判断される。否の場合、流れは402に戻る。イーサネットスイッチングが再構成する必要がある場合、流れは409に進み、ベースボード管理制御器(BMC)はイーサネットスイッチを更新された構成に再プログラムする。
【0036】
この分野に熟練された者に認識されるように、ここに説明された革新的な思想は広い応用範囲にわたって修正及び変更され得る。従って、特許請求の範囲に記載の主題の範囲は、上述した特定の例示的な教示の何れにも限定されるべきではなく、以下の特許請求の範囲によって定義される。
【符号の説明】
【0037】
100 イーサネットソリッドステートドライブ制御プラットフォーム
101 イーサネットスイッチ
102 ベースボード管理制御器(BMC)
103 PCIeスイッチ
104 ミッドプレーン
105a~105n イーサネットソリッドステートドライブ(eSSD)
106 アップリンクポート
107 ダウンリンクポート
108 イーサネットポート
109a、109b、109c 政策表
110 イーサネットネットワーク
111 PCIeバス 112 システム管理バス
113 管理ポート
150 遠隔ホスト
300 サービス水準協約(SLA)政策執行を初期化するためのプロセス
BMC ベースボード管理制御器
eSSD イーサネットソリッドステートドライブ
DRR 欠損ラウンドロビン(不完全総当たり)
ECN 早期混雑通知
NVMe-MI NVMe管理インタフェイス)
NVMeof ファブリックに亘る不揮発性メモリエクスプレス(Non-Volatile Memory Express over Fabrics)
SLA サービス水準協約
SMBus システム管理バス
SQ 待機列
WFQ ウェイトフェアキュー(均等化(重み付け公平)待ち行列)
WRR ウェイトラウンドロビン(重み付け総当たり)
PFC 優先順位流れ制御
VPD 仮想製品データ(Virtual Product Data)
図1
図2
図3
図4