(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-16
(45)【発行日】2024-12-24
(54)【発明の名称】差別化されたストレージサービス提供方法及びイーサネットSSD
(51)【国際特許分類】
G06F 13/10 20060101AFI20241217BHJP
G06F 3/06 20060101ALI20241217BHJP
G06F 3/08 20060101ALI20241217BHJP
G06F 13/12 20060101ALI20241217BHJP
H04L 45/50 20220101ALI20241217BHJP
【FI】
G06F13/10 310E
G06F13/10 340B
G06F3/06 301Z
G06F3/08 H
G06F13/12 330Z
H04L45/50
(21)【出願番号】P 2018221123
(22)【出願日】2018-11-27
【審査請求日】2021-09-07
【審判番号】
【審判請求日】2023-05-24
(32)【優先日】2017-11-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-01-23
(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)【発明者】
【氏名】アジャイ サンダー ラジ
(72)【発明者】
【氏名】フレッド ワーレイ
【合議体】
【審判長】林 毅
【審判官】大塚 俊範
【審判官】吉田 美彦
(56)【参考文献】
【文献】特開2005-266933(JP,A)
【文献】特開2010-123084(JP,A)
【文献】特開2007-286709(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/10
G06F 3/06
G06F 13/12
H04L 45/50
(57)【特許請求の範囲】
【請求項1】
差別化されたストレージサービスを提供する方法であって、
イーサネット(登録商標:以下、記載省略)SSD(ethernet Solid State Drive:eSSD)で、イーサネット接続装置を用いて、ネットワークに接続され、前記ネットワークに含まれるマルチプロトコルラベルスイッチング(MultiProtocol Label Switching:以下、MPLSと記す)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信するステップと、
前記イーサネットSSDにより、前記少なくとも1つのパラメータに基づいて、入出力サービス要請をラベル交換パス(Label Switched Path:以下、LSPと記す)に適合させるステップと、
前記イーサネットSSDにより、前記MPLSネットワークを介して前記LSPに従い、前記遠隔ホストを前記イーサネットSSDに接続するストレージトラフィックストリームを開始するステップと、を有し、
前記入出力サービス要請は、他の要請と区別するための前記少なくとも1つのパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、
前記イーサネットSSDにより、前記入出力サービス要請をラベル交換パス(LSP)に適合させるステップは、前記イーサネットSSD内のメモリ上に格納されたラベルルックアップテーブル(LLT)を使用し、前記少なくとも1つのパラメータを用いて前記入出力(I/O)サービス要請を前記LSPに適合させ、
前記イーサネットSSDは、MPLSラベルエッジルータ(LER)として機能でき、
前記イーサネットSSDは
、非MPLSネットワークを通過する(traversing)ための適切なヘッダー情報
を含む従来のデータパケットをMPLSパケットにカプセル化するステップをさらに有し、
前記ストレージトラフィックストリームは、少なくとも前記MPLSパケットを含み、
前記MPLSパケットは、前記LSPと関連したラベルスタックを有するMPLSヘッダーを含み、
前記MPLSヘッダーは、1つ以上のラベルをさらに含み、
前記ラベルは、前記ラベルルックアップテーブル(LLT)で提供されることを特徴とする差別化されたストレージサービス提供方法。
【請求項2】
前記少なくとも1つのパラメータは、少なくとも1つのストレージパラメータを含むことを特徴とする請求項1に記載の差別化されたストレージサービス提供方法。
【請求項3】
前記少なくとも1つのストレージパラメータは、QPID(Queue Pair ID:キューペアID)、SQID(Submission Queue ID:サブミッションキューID)、CQID(Completion Queue ID:コンプリーションキューID)、NVMe Controller ID (CNTID)、ネームスペースID(NSID)、<スタートLBA>から<終了LBA>のLBA範囲、NVMeストリームID、ホストID、NVMeサブシステム(NQN)ID、時間ベースID、日付ベースID、NVM Set IDの内の少なくとも1つを含むことを特徴とする請求項2に記載の差別化されたストレージサービス提供方法。
【請求項4】
前記少なくとも1つのパラメータは、少なくとも1つのネットワークパラメータを含むことを特徴とする請求項1に記載の差別化されたストレージサービス提供方法。
【請求項5】
イーサネットSSD(ethernet Solid State Drive:eSSD)本体
であって、
イーサネット接続装置と、
少なくとも1つのイーサネットSSDと、を有し、
前記少なくとも1つのイーサネットSSDは、前記イーサネット接続装置を用いて、ネットワークに接続され、前記ネットワークに含まれるマルチプロトコルラベルスイッチング(MPLS)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信
し、
前記少なくとも1つのパラメータに基づいて、入出力(I/O)サービス要請をラベル交換パス(Label Switched Path:以下、LSP)に適合させ、
前記イーサネット接続装置を用いて
、前記MPLSネットワークを介して、前記LSPに従い
、前記遠隔ホストを前記イーサネットSSDに接続するストレージトラフィックストリームを開始させ、
前記入出力サービス要請は、他の要請と区別するための前記少なくとも1つのパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、
前記入出力サービス要請は、
前記イーサネットSSDのメモリ上に格納されたラベルルックアップテーブル(LLT)を使用し、前記少なくとも1つのパラメータを用いて前記LSPに適合させ、
前記イーサネットSSDは、MPLSラベルエッジルータ(LER)として機能でき、
前記イーサネットSSDは
、非MPLSネットワークを通過する(traversing)ための適切なヘッダー情報
を含む従来のデータパケットをMPLSパケットにカプセル化するステップをさらに有し、
前記ストレージトラフィックストリームは、少なくとも前記MPLSパケットを含み、
前記MPLSパケットは、前記LSPと関連したラベルスタックを有するMPLSヘッダーを含み、
前記MPLSヘッダーは、1つ以上のラベルをさらに含み、
前記ラベルは、前記ラベルルックアップテーブル(LLT)で提供されることを特徴とする
イーサネットSSD本体。
【請求項6】
前記
従来のデータパケットは、遠隔直接メモリアクセス(RDMA)パケット、コンバージドイーサネットRDMAパケット(RoCE)、インターネット広域RDMAパケット、又はNVMe-over-TCPパケットの内の1つを含むことを特徴とする請求項5に記載の
イーサネットSSD本体。
【請求項7】
前記少なくとも1つのパラメータは、少なくとも1つのストレージパラメータを含むことを特徴とする請求項5に記載の
イーサネットSSD本体。
【請求項8】
前記少なくとも1つのストレージパラメータは、QPID(Queue Pair ID:キューペアID)、SQID(Submission Queue ID:サブミッションキューID)、CQID(Completion Queue ID:コンプリーションキューID)、NVMe Controller ID (CNTID)、ネームスペースID(NSID)、<スタートLBA>から<終了LBA>のLBA範囲、NVMeストリームID、ホストID、NVMeサブシステム(NQN)ID、時間ベースID、日付ベースID、NVM Set IDの内の少なくとも1つを含むことを特徴とする請求項7に記載の
イーサネットSSD本体。
【請求項9】
前記少なくとも1つのパラメータは、少なくとも1つのネットワークパラメータを含むことを特徴とする請求項5に記載の
イーサネットSSD本体。
【請求項10】
差別化されたストレージサービスを提供する方法であって、
イーサネットSSDで、イーサネット接続装置を用いて、ネットワークに接続され、前記ネットワークに含まれるマルチプロトコルラベルスイッチング(MPLS)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信するステップと、
前記イーサネットSSDにより、上記少なくとも1つのパラメータに基づいて前記入出力サービス要請をラベル交換パス(LSP)に適合させるステップ
と、
前記イーサネットSSDにより、前記MPLSネットワークを介して前記LSPに従い前記イーサネットSSDから前記遠隔ホストにMPLSパケットを伝送するストレージトラフィックストリームを開始するステップと、を有
し、
前記入出力サービス要請は、他の要請と区別するための前記少なくとも1つのパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、
前記イーサネットSSDにより、前記入出力サービス要請をラベル交換パス(LSP)に適合させるステップは、前記イーサネットSSD内のメモリ上に格納されたラベルルックアップテーブル(label-lookup table)を使用し、
前記少なくとも1つのパラメータを用いて前記入出力(I/O)サービス要請を前記LSPに適合させ、
前記イーサネットSSDは、MPLSラベルエッジルータ(LER)として機能でき、
前記イーサネットSSDは
、非MPLSネットワークを通過する(traversing)ための適切なヘッダー情報
を含む従来のデータパケットをMPLSパケットにカプセル化するステップをさらに有し、
前記ストレージトラフィックストリームは、少なくとも前記MPLSパケットを含み、
前記MPLSパケットは、前記LSPと関連したラベルスタックを有するMPLSヘッダーを含み、
前記MPLSヘッダーは、1つ以上のラベルを含み、
前記ラベルは、前記ラベルルックアップテーブルで提供されることを特徴とする差別化されたストレージサービス提供方法。
【請求項11】
前記少なくとも1つのパラメータは、QPID(Queue Pair ID:キューペアID)、SQID(Submission Queue ID:サブミッションキューID)、CQID(Completion Queue ID:コンプリーションキューID)、NVMe Controller ID (CNTID)、ネームスペースID(NSID)、<スタートLBA>から<終了LBA>のLBA範囲、NVMeストリームID、ホストID、NVMeサブシステム(NQN)ID、時間ベースID、日付ベースID、NVM Set IDの内の少なくとも1つを含むことを特徴とする請求項10に記載の差別化されたストレージサービス提供方法。
【請求項12】
前記従来のデータパケットは、遠隔直接メモリアクセス(RDMA)パケット、コンバージドイーサネットRDMAパケット(RDMA over Converged Ethernet:RoCE)、インターネット広域RDMAパケット又はNVMe-over-TCPパケットの内の1つを含むことを特徴とする請求項1又は10に記載の差別化されたストレージサービス提供方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークストレージ装置に関し、特に、イーサネット(登録商標:以下省略)ソリッドステートドライブ(ethernet(登録商標:以下省略) Solid State Drive:eSSD)に関する。
【背景技術】
【0002】
不揮発性メモリエクスプレスオーバーファブリックス(NVMe-oF)は、ホストコンピュータがネットワークを介してSSDと直接入出力(I/O)動作を遂行することを許容する。
「NVMe-oF」SSDを使用すれば、分離された遠隔直接接続ストレージを最小限の遅延時間で使用できる。
【0003】
SSDと通信する一般的な方法には、遠隔直接メモリアクセス(RDMA)、RDMAオーバーコンバージドイーサネット(RDMA over Converged Ethernet:RoCE)、iWARP(Internet Wide Area RDMA Protocol:インターネット広域RDMAプロトコル)及び「NVMe-over-TCP」(NVMe-overトランスミッションコントロールプロトコル)がある。
【0004】
既存のストレージトラフィック方式は、ストレージトラフィックと非ストレージトラフィックを区別する手段が不足する。
ストレージトラフィックと非ストレージトラフィックとを区別できないため、入出力(Input/Output)に対し保証されたサービス品質(QoS)を具現するのが難しいという問題があった。
なお、スイッチとルータは、バッファリングに制限されており、ネットワーク混雑に起因して、予測できない方法で入出力がさらに遅くなる可能性がある。
従って、改善されたネットワーキングシステムが要求されている。
【先行技術文献】
【特許文献】
【0005】
【文献】米国特許第6205488号明細書
【文献】米国特許第7535917号明細書
【文献】米国特許第7599360号明細書
【文献】米国特許第9059912号明細書
【文献】米国特許第9210075号明細書
【文献】米国特許第9419892号明細書
【文献】米国特許第9450864号明細書
【文献】米国特許第9588901号明細書
【文献】米国特許第9608908号明細書
【文献】米国特許出願公開第2013/0290361号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は上記従来のネットワークストレージ装置における問題点に鑑みてなされたものであって、本発明の目的は、ストレージトラフィックを識別して入出力要請に対し保証されたサービス品質(QoS)を提供するネットワークストレージ装置であるイーサネットSSD及びその差別化されたストレージサービス提供方法を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するためになされた本発明による差別化されたストレージサービス提供方法は、差別化されたストレージサービスを提供する方法であって、イーサネット(登録商標:以下、記載省略)SSD(ethernet Solid State Drive:eSSD)で、マルチプロトコルラベルスイッチング(MultiProtocol Label Switching:以下、MPLSと記す)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信するステップと、前記イーサネットSSDにより、前記少なくとも1つのパラメータに基づいて、入出力サービス要請をラベル交換パス(Label Switched Path:以下、LSPと記す)にマッチングさせるステップと、前記イーサネットSSDにより、前記MPLSネットワークを介して前記LSPに従い、前記遠隔ホストを前記イーサネットSSDに接続するストレージトラフィックストリームを開始するステップと、を有し、前記入出力サービス要請は、他の要請と区別するための他のパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、前記イーサネットSSDにより、前記入出力サービス要請をラベル交換パス(LSP)にマッチングさせるステップは、前記イーサネットSSD内のメモリ上に格納されたラベルルックアップテーブル(LLT)を使用し、前記少なくとも1つのパラメータを用いて前記入出力(I/O)サービス要請を前記LSPにマッチングさせ、前記ラベルルックアップテーブル(LLT)は、前記イーサネットSSDに対するMPLSラベルのマッピングに関する情報を含むことを特徴とする。
【0008】
前記LLTは、前記イーサネットSSDに格納されることが好ましい。
前記ストレージトラフィックストリームは、少なくともMPLSパケットを含むことが好ましい。
前記イーサネットSSDにより、第1データパケットをMPLSパケットにカプセル化するステップをさらに有し、前記MPLSパケットは、前記LSPと関連したラベルスタックを有するMPLSヘッダーを含むことが好ましい。
前記第1データパケットは、遠隔直接メモリアクセス(RDMA)パケット、コンバージドイーサネットRDMAパケット(RDMA over Converged Ethernet:RoCE)、インターネット広域RDMAパケット又はNVMe-over-TCPパケットの内の1つを含むことが好ましい。
前記少なくとも1つのパラメータは、少なくとも1つのストレージパラメータを含むことが好ましい。
前記少なくとも1つのストレージパラメータは、QPID(Queue Pair ID:キューペアID)、SQID(Submission Queue ID:サブミッションキューID)、CQID(Completion Queue ID:コンプリーションキューID)、NVMe Controller ID (CNTID)、ネームスペースID(NSID)、<スタートLBA>から<終了LBA>のLBA範囲、NVMeストリームID、ホストID、NVMeサブシステム(NQN)ID、時間ベースID、日付ベースID、NVM Set IDの内の少なくとも1つを含むことが好ましい。
前記少なくとも1つのパラメータは、少なくとも1つのネットワークパラメータを含むことが好ましい。
【0009】
上記目的を達成するためになされた本発明によるイーサネットSSDは、イーサネットSSD(ethernet Solid State Drive:eSSD)において、イーサネット接続装置と、メモリと、前記メモリからの複数のコマンドを実行するように構成されるプロセッサと、を有し、前記複数のコマンドは、前記プロセッサによって実行されるとき、前記プロセッサに、前記イーサネット接続装置を用いて、マルチプロトコルラベルスイッチング(MPLS)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信させ、前記プロセッサにより、前記少なくとも1つのパラメータに基づいて、入出力(I/O)サービス要請をラベル交換パス(Label Switched Path:以下、LSP)にマッチングさせ、イーサネット接続装置を用いて前記MPLSネットワークを介して、前記LSPに従い前記遠隔ホストを前記イーサネットSSDに接続するストレージトラフィックストリームを開始させ、前記入出力サービス要請は、他の要請と区別するための他のパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、前記入出力サービス要請は、前記メモリ上に格納されたラベルルックアップテーブル(LLT)を使用し、前記少なくとも1つのパラメータを用いて前記LSPにマッチングさせ、前記ラベルルックアップテーブル(LLT)は、前記イーサネットSSDに対するMPLSラベルのマッピングに関する情報を含むことを特徴とする。
【0010】
また、上記目的を達成するためになされた本発明による差別化されたストレージサービス提供方法は、差別化されたストレージサービスを提供する方法であって、イーサネットSSDで、マルチプロトコルラベルスイッチング(MPLS)ネットワークを介して遠隔ホストからの少なくとも1つのパラメータを含む入出力(I/O)サービス要請を受信するステップと、前記イーサネットSSDにより、上記少なくとも1つのパラメータに基づいて前記入出力サービス要請をラベル交換パス(LSP)にマッチングさせるステップと、前記イーサネットSSDにより、第1データパケットをMPLSパケットにカプセル化するステップと、前記イーサネットSSDにより、前記MPLSネットワークを介して前記LSPに従い前記イーサネットSSDから前記遠隔ホストにMPLSパケットを伝送するストレージトラフィックストリームを開始するステップと、を有し、前記入出力サービス要請は、ラベルルックアップテーブル(label-lookup table)を使用し、前記LSPに少なくとも1つのパラメータを用いてマッチングされ、前記MPLSパケットは、前記LSPと関連したラベルスタックを有するMPLSヘッダーを含み、前記入出力サービス要請は、他の要請と区別するための他のパラメータである入出力に対する高速QoS要求条件又は低速QoS要求条件を含み、前記ラベルルックアップテーブルは、前記イーサネットSSDに対するMPLSラベルのマッピングに関する情報を含むことを特徴とする。
【発明の効果】
【0011】
本発明に係る差別化されたストレージサービス提供方法及びイーサネットSSDによれば、ストレージトラフィックを識別して、入出力要求に対して保証されたサービス品質(QoS)を提供するネットワークストレージ装置を提供することができる。
【図面の簡単な説明】
【0012】
【
図1】本発明の一実施形態による「NVMe-oF」イーサネットSSDシステムにおいて、可能なMPLSの例示するブロック図である。
【
図2】本発明の一実施形態による例示的なMPLSパケットを示す図である。
【
図3】本発明の一実施形態による例示的なMPLSを使用してストレージサービスを区別する方法を説明するためのフローチャートである。
【
図4】本発明の一実施形態による開始ホスト(Initiating Host)がMPLSネットワークドメインの一部であるeSSD MPLSネットワークを例示的に示す図である。
【
図5】本発明の一実施形態による開始ホストがMPLSネットワークドメインの外部に存在するeSSD MPLSネットワークを例示的に示す図である。
【発明を実施するための形態】
【0013】
次に、本発明に係る差別化されたストレージサービス提供方法及びイーサネットSSDを実施するための形態の具体例を図面を参照しながら説明する。
【0014】
本発明の特徴及びそれを達成する方法は、実施形態の詳細な説明と添付された図面を参照すれば明確になるであろう。以下、例示的な実施形態は、類似した参照番号は類似した構成要素を示す添付図面を参照して、詳細に説明される。
しかし、本発明は、多様な形態で具現することができ、本明細書で単に例示された実施例に限定されるものではない。むしろ、斯かる実施形態は、この開示が徹底かつ完全になるための例として提供され、当業者に本発明の特徴及び機能を完全に伝達するはずである。したがって、本発明の技術分野における通常の知識を有する者が、本発明の特徴及び機能を完全に理解するために必要ではないプロセスは、要素、および技術は説明されない可能性がある。
特に言及されない限り、類似した参照番号は添付された図面及び書いてある説明で類似した構成要素を示し、従ってそれに対する説明は反復されないだろう。図面で、構成要素、層および領域の相対的な大きさは、明確性のために誇張され得る。
【0015】
以下の説明では、説明の目的のために、様々な特定の実施例が多様な実施例の完全な理解を提供するために説明される。しかしながら、これらの特定の細部事項なしに、又はは1つ以上の等価の構成なしに、様々な実施形態を実施できるのは明らかである。他の例では、周知の構造およびデバイスは、様々な実施例を不必要に不明瞭にすることを避けるために、ブロック図の形態で図示される。
【0016】
要素、層、領域、又は成分が、他の要素、層、領域又は成分「に」、「に接続された」、「結合された」ことと言及されるとき、それは、他の要素、層、領域、又は成分「に直接的に」、「に直接的に接続された」、「に直接的に結合された」ことであり得たり、1つ又はそれ以上の間の要素、層、領域、又は成分が存在したりすることができる。しかし、「直接接続(directly connected/ directly coupled)」は、中間構成要素なしに、他の構成要素を直接接続したり、結合したりする1つの構成要素を示す。一方、「間」、「すぐに間」又は「隣接する」及び「すぐに隣接する」のような構成要素間の関係を説明する他の表現も同様に解釈されることができる。なお、要素または層が2つの要素又は層の間に言及されるときは、それは、但し要素又は層が2つの要素又は層の間に有り得たり、又は1つ以上の間の要素又は層が、なお存在したりすることができる。
【0017】
本明細書で使用された用語は、単に特定の実施例を説明するためのものであり、本発明を制限しようとするものとして意図されていなかった。本明細書で使用されたように、文脈上明らかに別の意味を示さない限り、単数形「1つ」は、複数形も含むものとして意図される。「構成される」、「構成されている」、「所有する」、「所有している」、「含む」、そして「含んでいる」という用語が、本明細書で使用されるとき、斯かる用語は、定められた特徴、整数、ステップ、動作、要素、及び/又は成分の存在を明示するものの、一つまたはそれ以上の他の特徴、整数、ステップ、動作、要素、成分、及び/又はそれらのグループの追加又は存在を不可能にしない。本明細書で使用されたように、「及び/又は」という用語は、一つ又はそれ以上の列挙された項目と関連されている任意かつすべての組み合わせを包含する。
【0018】
本明細書で使用する、用語の「実質的に」、「約」、「概略的に」及びこれに類似した用語は、近似の用語として使用されて程度の用語として使用されず、測定されたり、計算されたりする値の固有の偏差を説明するためのものであることは当業者によく理解されるだろう。本明細書で使用された「約(about)」又は「大略(approximately)」は、問題となった測定及び特定の量の測定に関連された誤差(つまり、測定システムの限界)を考慮して、当該分野の当業者によって決定された特定値に対する許容可能な偏差の範囲内の言及された値を含む。例えば、「約(about)」は、一つ以上の標準偏差内で、又は明示された値の±30%、20%、10%、5%以内を意味することができる。なお、本発明の実施形態を記述するとき、「~することができる」を使用することは、「本発明の一つ以上の実施形態」を言及する。本明細書で使用されたように、用語の「使用する」、「使用する~」及び「使用される~」は、用語の「活用する」、「活用する~」及び「活用される~」とそれぞれ同義語と見なされることができる。なお、「例示的な」という用語は、例又は説明を意味する。
【0019】
特定の実施形態は、異なるように具現することのできる場合には、特定のプロセスの順序は、説明した順序と異なるように遂行することもできる。例えば、説明された連続的な2つのプロセッサは、実質的に同時に実行されたり、説明した順序と逆の順序で遂行されたりすることもできる。
【0020】
様々な実施形態が実施形態及び/又は中間構造の概略図である断面図を参照して、ここに説明する。このように、例えば、製造技術及び/又は許容誤差のような結果としてのイラストレーションの形状からの変形が予想されなければならない。なお、ここに開示した特定の構造的又は機能的説明は、本発明の概念による実施形態を説明する目的でのみ説明されたものである。従って、本出願に開示された実施形態は、図示された特定の領域の形状に限定されると解釈されてはならず、例えば、製造のような形状の偏差を含むべきである。例えば、長方形で図示されている注入領域は、典型的には、注入された領域から注入されていない領域への2値変化であるよりは、丸い又は湾曲した特徴及び/又はそのエッジに注入濃度の勾配を有する。同様に、注入によって形成された埋め込み領域は、埋め立込み領域と注入が行われる表面との間の領域に若干の注入をもたらすことができる。したがって、図面に図示された領域は、本質的に概略的であり、その形状はデバイスの領域の実際の形状を例示するものではなく、制限しようとするものではない。
【0021】
本発明の実施形態による、ここで説明されている電子又は電気デバイス及び/又は他の関連されたデバイス又は構成は、適切なハードウェア、ファームウェア(例えば、ASIC)、ソフトウェア、又はソフトウェア、ファームウェア及びハードウェアの組み合わせを使用して具現することができる。例えば、これらのデバイスの様々な構成は、単一の集積回路(IC)チップ上に、又は分離された集積回路チップに形成されることができる。なお、これらのデバイスの様々な構成は、フレキシブルプリント回路フィルム上に、テープキャリアパッケージ(TCP)、プリント回路基板(PCB)、又は1つの基板上に形成することができる。さらに言えば、これらのデバイスの様々な構成は、一つ又はそれ以上のコンピュータデバイス内に装着された一つ又はそれ以上のコンピュータプロセッサ(マイクロプロセッサのような)で駆動され、コンピュータプログラムの命令を実行し、ここに開示されている様々な機能を遂行するための他のシステム構成と相互作用するプロセスやスレッドであり得る。コンピュータプログラムの命令は、ランダムアクセスメモリ(RAM)のような標準メモリデバイスを使用するコンピューティングデバイス内に装着されたメモリに格納することができる。コンピュータプログラムの命令は、また、他の非一時的な(non-transitory)なコンピュータ読み取り可能な媒体(例えば、CD-ROM、フラッシュドライブなど)に格納することができる。さらに、この分野における当業者は、本発明の思想及び範囲を逸脱せず、様々なコンピューティングデバイスの機能が一つのコンピュータデバイスに組み合わせられたり、又は集積されたりして、特定のコンピューティングデバイスの機能が一つ又はそれ以上のコンピューティングデバイスに分散されることができることをよく理解すべきである。
【0022】
別の意味で定義されていない限り、すべての用語(技術や科学用語を含む)は、本発明が属する分野における当業者に通常的に理解される、同一な意味を有する。加えて、辞書の意味で定義された用語は、関連技術及び/又は本発明の説明の状況に応じて解釈されるべきであり、そのように定義されない限り、理想的に理解されたり、過度に形式的な意味で理解されたりしてはならない。
【0023】
本発明による実施形態では、MPLS(Multiprotocol Label Switching)を使用する「NVMe-oF」イーサネットSSDで差別化されたストレージサービスのためのシステム及び方法を含む。
MPLSは、ルーティングテーブルと関連した、従来の長いネットワークアドレスの代わりにノード間のパスを識別するラベルを使用できるようにする。
本発明による一実施形態で、MPLS可能なeSSDは、MPLSラベルエッジルータ(LER)として機能できる能力で構成することができる。
従って、eSSDは、既存のeSSD入出力パケットを受信トラフィックに対するラベルスタックを含むMPLSパケットにカプセル化することができるだけでなく、受信トラフィックでMPLSパケットを除去できる。
ストレージ及びネットワークパラメータは、eSSDで/にトラフィックの分類に使用され、ルーティングのためのMPLSラベルを決定するのに使用される。
従って、MPLSラベルは、ストレージ及びネットワークパラメータと関連したサービス品質により選択することができる。
【0024】
図1は、本発明の一実施形態による「NVMe-oF」イーサネットSSDシステムにおいて、可能なMPLSの例示するブロック図である。
図1を参照すると、本発明の一実施形態において、イーサネットSSDシャーシ(本体)100は、イーサネットスイッチ110、BMC(Base Management Controller)120、PCIeスイッチ130、及び複数のeSSD(140、141、142)を含む。
【0025】
eSSD(140~142)は、イーサネットスイッチ110を介してネットワーク150に接続される。
eSSD(140~142)は、またPCIeスイッチ130を介してBMC120に接続される。
一実施形態において、BMC120は、eSSD(140~142)に対する管理作業を遂行するように構成される。
例えば、BMC120は、各eSSD(140~142)に対するラベルルックアップテーブル(LLT)でMPLSラベルのマッピングを維持するように構成され得る。
遠隔ホストで動作するアプリケーション160は、オペレーティングシステム(OS)/ファイルシステム170及び「NVMe-oF」ドライバ180を介して入出力用eSSD(140~142)を利用することができる。
【0026】
例えば、一実施形態において、アプリケーション160は、サービス品質(QoS)の要求条件を有することができ、ネットワーク150は、MPLSネットワークを含む。
サービス品質(QoS)の要求条件に基づいて、「NVMe-oF」ドライバ180は、入出力コマンドをカプセル化するMPLSパケットを生成し、アプリケーション160のQoS要求条件に応じて入出力をルーティングするためのラベル/ラベルスタックを含む。
MPLS入出力コマンドは、MPLSラベルエッジルータ(LER)として動作できるeSSD(140~142)で受信され、MPLSパケットから入出力コマンドを除去し、指定された入出力機能を遂行する。
eSSDは、MPLSパケットを使用して、コマンド実行の一部として必要なホストから/ホストへのすべてのデータ伝送を行える。
リターン命令の完了は、eSSD(140~142)によってQoS要求条件に応じて選択されたリターン入出力パスを記述するラベルを有するMPLSパケットにカプセル化される。
【0027】
図2は、本発明の一実施形態による例示的なMPLSパケットを示す図であり、
図3は、本発明の一実施形態による例示的なMPLSを使用してストレージサービスを区別する方法を説明するためのフローチャートである。
図2を参照すると、本発明の一実施形態による、eSSD(140~142)は、MPLSネットワークに対するLERとして機能するように構成される。
【0028】
LERとして、eSSD(140~142)は、入出力ストリームに対するラベル交換パス(LSP)及び非MPLSネットワーク(例えば、従来のネットワーク)と任意のデータペイロードを横断するための適切なヘッダー情報を含み、従来のデータパケットに対する他のMPLSデータフィールドを含み、ラベルスタック210を含むMPLSヘッダを追加することにより、データパケットをMPLSパケット200でカプセル化するように構成される。
【0029】
図3を参照すると、本発明の一実施形態において、eSSD(140~142)は、MPLSネットワークを介して遠隔ホストから入出力サービス要請を受信する(ステップS300)。
一実施形態で、入出力サービス要請は、要請された入出力サービス要請を他の要請と区別するためのストレージ及び他のパラメータを含み得る。
例えば、相異なるストレージトラフィックストリームは、ネットワーク条件及び入出力に対するQoS要求条件に基づいて、ネットワークによって差別化(例えば、別の方法で扱う)することができる。
例えば、高速QoS要件を有する入出力について、もっと短いパス(たとえば、より速いパス)を使用することができ、低速QoS要求条件を有する入出力については、より長いパス(たとえば、低速パス)を使用することができる。
【0030】
入出力サービス要請を受信すると、eSSD(140~142)は、MPLSラベルスタックを除去し、提供されたパラメータに基づいて、入出力サービス要請をLSPとマッチングさせる(ステップS310)。
一実施形態で、入出力サービス要請をマッチングすることは、LLT(Label-Lookup Table)を使用して要請をマッチングすることを含む。
例えば、多様なストレージのパラメータがストレージトラフィックストリームをLSPにマッピングするのに使用することができる。
【0031】
ストレージパラメータは、QPID(Queue Pair ID:キューペアID)、SQID(Submission Queue ID:サブミッションキューID)、CQID(Completion Queue ID:コンプリーションキューID)、NVMe Controller ID (CNTID)、ネームスペースID(NSID)、<スタートLBA>から<終了LBA>のLBA範囲、NVMeストリームID、ホストID、NVMeサブシステム(NQN)ID、時間ベースID、日付ベースID、NVM Set ID、又は他のストレージパラメータを含み得る。
【0032】
なお、一部の実施形態において、ネットワークヘッダーフィールドのような非ストレージパラメータがストレージトラフィックストリームをLSPにマッピングするのに使用することができる。
ストレージ管理者は、1つ以上のストレージパラメータが各LSPにマッピングされる方法をプログラミングすることができる。
例えば、ストレージ管理者は、BMC120を使用してLLTをプログラムすることができる。
BMC120は、PCIeスイッチ130及びPCIeバスを介してLLTを、接続されているeSSD(140~142)のそれぞれに分配する。
各eSSD(140~142)は、LLTを利用して、入出力要求に対するLSPを割り当てられる。
【0033】
一実施形態において、同一のLLTがそれぞれのeSSD(140~142)に割り当てられる一方、他の実施形態では、固有のLLTが1つ以上のeSSD(140~142)に割り当てられる。
入出力サービス要請がLSPとマッチングされると、ストレージトラフィックストリームが開始される(ステップS320)。
出力パケットは、選択されたLSPを定義するラベルスタックを含むMPLSパケットにeSSD(140~142)によってカプセル化される(ステップS330)。
【0034】
一実施形態において、データペイロードを運んで、また、従来のネットワークでパケットをルーティングするための任意の必要な情報を含んでいる従来のデータパケット220は、ペイロードとしてMPLSパケット200にカプセル化される。
例えば、一実施形態で、従来のパケットは、RDMA、RoCE、RoCE v2、iWARP、又はNVMe-over-TCPパケットを含み得る。
従来のデータパケット220は、MPLSヘッダーを追加することにより、カプセル化される。
【0035】
一実施形態において、MPLSヘッダは、ラベルスタック210、TTLフィールド211、スタック下部フィールド(S)212、トラフィッククラス(TC)フィールド213、及び1つ以上のラベルに(214、215、216)を含み得る。
一実施形態で、TCフィールド213は、QoSの目的のために使用することができる。
前述したように、各ラベル(214~216)は、LSPを構成するためにMPLSネットワーク(150)内のノード間の経路内のレッグ(leg)を識別するために使用される。
ラベルは、上記で説明した通りに、LLTで提供することができる。
【0036】
図4は、本発明の一実施形態による開始ホスト(Initiating Host)がMPLSネットワークドメインの一部であるeSSD MPLSネットワークを例示的に示す図である。
図4を参照すると、一実施形態において、遠隔ホスト400は、MPLSネットワーク420の一部である。
【0037】
このような実施形態において、遠隔ホスト400は、出力されるトラフィックに対してホストからの入出力をカプセル化し、入力された入出力に対するMPLSパケット情報を除去するLER410に接続されるように構成される。
MPLSネットワーク420は、複数のラベル交換経路(LSP)を形成するのに使用できるデータをルーティングするための複数のノードを含む。
MPLS通信のために構成されたeSSD430は、また、MPLSネットワーク420に接続され、遠隔ホスト400から入出力要請を受信する。
【0038】
一実施形態において、遠隔ホスト400は、多重ストレージトラフィックストリームを含み得る。
例えば、
図4は、第1ストレージトラフィックストリーム「J」及び第2ストレージトラフィックストリーム「M」を示している。
一実施形態において、それぞれのストレージトラフィックストリームは、LSPに従ってMPLSネットワーク420を介して移動できる。
図に示した実施形態で、第1ストレージトラフィックストリーム「J」は、「K」番目のLSPが割り当てられ、第2ストレージトラフィックストリーム「M」は、「N」番目のLSPが割り当てられる。
【0039】
図5は、本発明の一実施形態による開始ホストが、MPLSネットワークドメインの外部に存在するeSSD MPLSネットワークを例示的に示す図である。
図5に示すように、一実施形態において、遠隔ホスト500は、MPLSネットワーク520に直接接続されていない可能性がある。
【0040】
かかる実施形態では、遠隔ホスト500は、従来の非MPLSネットワーク540を介して、従来のパケットフォーマットを使用してeSSD530に接続されたMPLSネットワーク520にデータを伝送することができる。
それぞれのストレージトラフィックデータストリームは、データがLER510でMPLSネットワーク520に到達するまで非MPLSネットワーク540を介して、非制御共有ネットワークパス上で移動することができる。
LER510は、入力されるデータをMPLSパケットにカプセル化して、出力されるデータ(例えば、非MPLSネットワーク540に出力されるデータ)からMPLSパケットを除去する。
【0041】
例えば、ストレージトラフィックストリーム「J」は、MPLSネットワーク520を介した「K」のLSP及び非MPLSネットワーク540を介した、制御されていない共有ネットワークパスを介して遠隔ホスト500をeSSD530に接続することができる。
同様に、ストレージトラフィックストリーム「M」は、MPLSネットワーク520を介して「N」番目のLSP及び非MPLSネットワーク540を介した、制御されていない共有ネットワークパスを介して遠隔ホスト500をeSSD530に接続することができる。
この例で、ストレージトラフィックストリームは、互いに及び他のネットワークトラフィックに対して部分的に差別化することができる。
【0042】
従って、本発明の説明で開示した実施形態においては、MPLSを使用する「NVMe-oF」イーサネットSSDで差別化されたストレージサービスのためのシステム及び方法を提供する。
MPLSネットワークを使用するとき、システムは多様なストレージ及びその他のパラメータによりLSPを割り当てることができる。
各LSPは、多様なレベルのサービスを許容し、ネットワークを介してトラフィックを差別化する方法を提供する。
【0043】
尚、本発明は、上述の実施形態に限られるものではない。本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
【産業上の利用可能性】
【0044】
本発明は、ホストコンピュータがネットワークを介してSSDと直接入出力動作を遂行するようなネットワークストレージ装置に好適に使用される。
【符号の説明】
【0045】
100 イーサネットSSDシャーシ(本体)
110 イーサネットスイッチ
120 BMC
130 PCIeスイッチ
140、141、142、430、530 eSSD
150 ネットワーク
160 アプリケーション
170 オペレーティングシステム(OS)/ファイルシステム
180 「NVMe-of」ドライバ
200 MPLSパケット
210 ラベルスタック
211 TTLフィールド
212 スタック下部フィールド(S)
213 トラフィッククラス(TC)フィールド
214、215、216 ラベル
220 データパケット
400、500 遠隔ホスト
410、510 LER
420、520 MPLSネットワーク
540 非MPLSネットワーク