(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6378841
(24)【登録日】2018年8月3日
(45)【発行日】2018年8月22日
(54)【発明の名称】制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法
(51)【国際特許分類】
H04L 12/717 20130101AFI20180813BHJP
【FI】
H04L12/717
【請求項の数】4
【全頁数】8
(21)【出願番号】特願2017-526917(P2017-526917)
(86)(22)【出願日】2015年3月12日
(65)【公表番号】特表2017-536766(P2017-536766A)
(43)【公表日】2017年12月7日
(86)【国際出願番号】CN2015074086
(87)【国際公開番号】WO2016078260
(87)【国際公開日】20160526
【審査請求日】2017年7月14日
(31)【優先権主張番号】201410665938.5
(32)【優先日】2014年11月19日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】510268565
【氏名又は名称】中国科学院声学研究所
【氏名又は名称原語表記】INSTITUTE OF ACOUSTICS, CHINESE ACADEMY OF SCIENCES
(73)【特許権者】
【識別番号】514227690
【氏名又は名称】北京中科智網科技有限公司
【氏名又は名称原語表記】BEIJING INTELLIX TECHNOLOGY COMPANY LIMITED
(74)【代理人】
【識別番号】100129425
【弁理士】
【氏名又は名称】小川 護晃
(74)【代理人】
【識別番号】100099623
【弁理士】
【氏名又は名称】奥山 尚一
(74)【代理人】
【識別番号】100087505
【弁理士】
【氏名又は名称】西山 春之
(74)【代理人】
【識別番号】100168642
【弁理士】
【氏名又は名称】関谷 充司
(74)【代理人】
【識別番号】100096769
【弁理士】
【氏名又は名称】有原 幸一
(74)【代理人】
【識別番号】100107319
【弁理士】
【氏名又は名称】松島 鉄男
(72)【発明者】
【氏名】ワン,リンフェン
(72)【発明者】
【氏名】ワン,チンリン
(72)【発明者】
【氏名】チー,ウェンイン
【審査官】
宮島 郁美
(56)【参考文献】
【文献】
特表2014−526809(JP,A)
【文献】
米国特許出願公開第2014/0247751(US,A1)
【文献】
国際公開第2012/086816(WO,A1)
【文献】
米国特許出願公開第2013/0263214(US,A1)
【文献】
中国特許出願公開第103283190(CN,A)
【文献】
特表2014−529959(JP,A)
【文献】
特開2013−038660(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00−12/26,12/50−12/955
(57)【特許請求の範囲】
【請求項1】
制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法であって、
ステップ(1) 制御モジュールが、認可されたエンティティ及び認可された操作の情報をスイッチに送信し、前記スイッチが、これらの認可された情報を受信した後に記憶するステップと、
ステップ(2) 前記スイッチが、ファイルI/O操作指令を受信して、該指令及び前記ステップ(1)で得られて認可された情報に基づいて、操作エンティティが該ファイルI/O操作指令の権限を有するか否かを確定するステップと、
ステップ(3) 前記ファイルI/O操作指令の権限を有する操作エンティティに対して、前記スイッチが、前記ファイルI/O操作指令からコマンドインデックス及びパラメータを抽出して、ファイルI/O操作を実行するステップと、
を含むことを特徴とする制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法。
【請求項2】
前記ステップ(1)において、前記認可されたエンティティ及び認可された操作の情報は、認可された操作リストの方式によって前記スイッチに送信され、前記認可された操作リストは、POSIX.1に定義されたファイルを操作する集合によって実現される、ことを特徴とする請求項1に記載の制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法。
【請求項3】
前記ステップ(2)は、
前記スイッチが、前記ファイルI/O操作指令を受信した後に、該指令から操作エンティティ及びファイルI/O操作のコマンドインデックスを抽出して、該指令から抽出された情報と前記ステップ(1)におけるスイッチに記憶されて認可された情報とを比較し、操作エンティティが該ファイルI/O操作指令の権限を有するか否かを判断して、前記権限を有する場合は、前記ステップ(3)を実行し、前記権限を有しない場合は、操作を拒絶して、且つ、拒絶メッセージを生成し、前記ファイルI/O操作指令の送信側に返すことを更に含む、
ことを特徴とする請求項1に記載の制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法。
【請求項4】
前記ステップ(3)は、
前記スイッチが、受信されたファイルI/O操作指令からファイルI/O操作のコマンドインデックス及びパラメータを抽出して、抽出された結果に基づいて対応するローカルファイルI/O操作指令を呼び出し、対応する操作結果を生成し、最終的に、操作結果をメッセージにパッケージした後に呼び出し側に返すことを更に含む、
ことを特徴とする請求項1に記載の制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク技術分野に関し、特に制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法に関する。
【背景技術】
【0002】
2008年以降、ネットワーク業界において、SDN(ソフトウェア定義ネットワーク)周りの研究が展開され、新しい革新的なブームが始まった。SDNの提案は、最も早い出発点がネットワーク障害又はネットワーク攻撃に対応するためであり、インターネットの分散型ルーティングアーキテクチャでは、ネットワーク障害又はネットワーク攻撃が発生した後に、1つの点からネットワークの全体を起動しにくく、且つ、ルーティングの交換が中心によって制御されなく、ルーティングの収束時間が分単位のレベルであり、これは迅速な応答を遥かに満たすことができない。このため、研究者により1つの中心制御点からルーティング交換装置への制御戦略及びルーティングを伝達する見方が提案され、これがSDNである。
【0003】
SDNが提案された後において、実際の装置/プロトコル/ネットワーク/アプリケーションを検証する必要があり、この場合に、ONFのOpenFlowが出現した。OpenFlowは、コントローラ、スイッチの2種のエンティティに関する。OpenFlowは、コントローラのサウスバウンドインターフェイスであり、スイッチと通信して、制御情報、データ及び状態等を伝達する。
最初に、OpenFlowは、キャンパスネットワーク、企業ネットワーク、データ中心ネットワークに用いられ、その制御過程及びデータフローパスを最適化して、管理制御を強化する。その後、そのネットワーク制御の柔軟性のため、ネットワークの研究者は、それを使用して将来のネットワークアーキテクチャとプロトコルの研究を行い、その結果、華為会社のプロトコル忘却型フォワーディング(POF)及び米国のNick Mckeownに先導されたP4言語が出現した。
OpenFlowを中心に展開する研究は、コントローラ、ワイヤプロトコル及びスイッチの3つの方面に関し、コントローラは制御プレーンを体現し、スイッチはデータプレーンであり、ワイヤプロトコルは両者を連絡するブリッジである。OpenFlowの核心となる重点は、ネットワークのプログラマブルであり、初期の頃、強調されたのは制御プレーンのプログラマブルであり、今やデータプレーンのプログラマブルである。
【0004】
データプレーンのプログラマブルにおいて、注目点はスイッチの計算リソース、ネットワークリソースの利用面であり、リソース記憶面の有効な方法に欠ける。従来の技術におけるスイッチは、記憶リソース制御の問題を解決することができなく、効果的に制御プレーンとデータプレーンからスイッチの外部メモリへアクセスすることができない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、従来の技術において制御プレーン及びデータプレーンからスイッチの外部メモリへ効果的にアクセスすることができない欠点を克服し、それにより制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスすることができる方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記の目的を達成するために、本発明は、制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法を提供し、
ステップ(1) 制御モジュールが、認可されたエンティティ及び認可された操作の情報をスイッチに送信し、前記スイッチが、これらの認可された情報を受信した後に記憶するステップと、
ステップ(2) 前記スイッチが、ファイルI/O操作指令を受信して、該指令及び前記ステップ(1)で得られて認可された情報に基づいて、操作エンティティが該ファイルI/O操作指令の権限を有するか否かを確定するステップと、
ステップ(3) 前記ファイルI/O操作指令の権限を有する操作エンティティに対して、前記スイッチが、前記ファイルI/O操作指令からコマンドインデックス及びパラメータを抽出して、ファイルI/O操作を実行するステップと、を含む。
【0007】
上記の技術的解決手段において、ステップ(1)では、前記認可されたエンティティ及び認可された操作の情報は、認可された操作リストの方式によって前記スイッチに送信され、前記認可された操作リストは、POSIX.1に定義されたファイルを操作する集合によって実現される。
【0008】
上記の技術的解決手段において、前記ステップ(2)は、前記スイッチが、前記ファイルI/O操作指令を受信した後に、該指令から操作エンティティ及びファイルI/O操作のコマンドインデックスを抽出して、該指令から抽出された情報と前記ステップ(1)におけるスイッチに記憶されて認可された情報とを比較し、操作エンティティが該ファイルI/O操作指令の権限を有するか否かを判断して、前記権限を有する場合(YES)は、前記ステップ(3)を実行し、前記権限を有しない場合(NO)は、操作を拒絶して、且つ、拒絶メッセージを生成し、前記ファイルI/O操作指令の送信側に返すことを更に含む。
【0009】
上記の技術的解決手段において、前記ステップ(3)は、前記スイッチが、受信されたファイルI/O操作指令からファイルI/O操作のコマンドインデックス及びパラメータを抽出して、抽出された結果に基づいて対応するローカルファイルI/O操作指令を呼び出し、対応する操作結果を生成し、最終的に、操作結果をメッセージにパッケージした後に呼び出し側に返すことを更に含む。
【発明の効果】
【0010】
本発明の利点は、以下の通りであり、本発明は、従来の制御プレーン及びデータプレーンからプログラマブルスイッチの外部メモリへアクセスすることができない問題を解決する。
【図面の簡単な説明】
【0011】
【
図1】コントローラとスイッチ(外部メモリを含む)との接続関係を示す模式図である。
【
図2】スイッチ内部ファイルI/Oを示すモジュール図である。
【
図3】本発明の方法におけるアクセス認可処理を示す流れ図である。
【
図4】本発明の方法におけるファイルI/O操作の制御処理を示す流れ図である。
【
図5】本発明の方法におけるファイルI/O操作の実行処理を示す流れ図である。
【
図6】1つのNDNノードにおける転送処理を示す模式図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して本発明を更に説明する。
本発明の制御プレーン及びデータプレーンからスイッチの外部メモリ(メモリ)へアクセスする方法は、制御モジュール、スイッチ等のエンティティに関する。上記制御モジュールは、コントローラ又はアプリケーションであってよい。上記コントローラは、OpenFlowにおけるコントローラと機能的に近似し、OpenFlowのコントローラの役割に加えて、スイッチの外部メモリへのアクセス認可制御を担当し、特定のプロトコルでスイッチの外部メモリへのアクセスを定義する機能を有する。
上記スイッチは、OpenFlowのスイッチと機能的に近似し、外部メモリの機器(デバイス)を備え、OpenFlowのスイッチの役割に加えて、外部メモリの機器へのアクセス動作を実施する機能を有する。
図1に示すように、コントローラ(制御モジュール)とスイッチとは、ワイヤプロトコルによって通信する。
【0013】
スイッチと外部メモリの機器とは、IDE、SATA、ファイバチャネル、SCSI等のバス方式によって互いに通信することができる。
図2に示すように、ローカルアクセスは、VFS/ファイルシステム/デバイス識別/デバイスドライバを使用するスイッチのオペレーティングシステムで、又は、VFSをデバイスドライバに直接マッピングすることによって実現される。スイッチと外部メモリの機器との間で如何に通信するかは、本発明の内容を限定するものではなく、ここでは、詳細な説明を省略する。
【0014】
本発明の制御プレーン及びデータプレーンからスイッチの外部メモリへアクセスする方法は、以下のステップを含む。
【0015】
ステップ(1)
図3を参照すると、制御モジュールは、認可されたエンティティ及び認可された操作の情報をスイッチに送信し、スイッチは、これらの認可された情報を受信した後に記憶する。
【0016】
このステップに関して認可されたエンティティは、スイッチに実行されたあるアプリケーションプログラム又はプロトコルであってよく、認可された操作は、読み込み、書き込み、削除等の操作が含まれる複数の操作を含む。ある選択的な実現方式として、上記認可されたエンティティ、認可された操作の情報は、認可された操作リストの方式によってスイッチに送信される。
認可された操作リストはPOSIX.1に定義された又は自己定義したファイルを操作する集合によって実現されることができ、そのサブ集合又は全集合であってよく、バイナリマッピングテーブルの方式で示され、対応するビットが1であると、認可を示し、0であると、認可されないことを示し、これは制御モジュールがスイッチに認可された操作リストを送信する規模を大幅に低下させる。認可された操作リストもテキスト文字列の方法を採用することもできるが、これは、オーバーヘッドを増加してしまう。
【0017】
ステップ(2)
図4を参照すると、スイッチが、ファイルI/O操作指令を受信した後に、該指令から操作エンティティ及びファイルI/O操作のコマンドインデックスを抽出して(インデックスは指令に対応するバイナリマッピングコードである。)、該指令から抽出された情報と、ステップ(1)におけるスイッチに記憶されている認可された情報とを比較し、操作エンティティが該ファイルI/O操作指令の権限を有するか否かを判断して、権限を有する場合(YES)は、次のステップを実行し、前記権限を有しない場合(NO)は、操作を拒絶して、且つ、拒絶メッセージを生成し、ファイルI/O操作指令の送信側に返す。
【0018】
ステップ(3)
図5を参照すると、スイッチが、受信されたファイルI/O操作指令からファイルI/O操作のコマンドインデックス及びパラメータを抽出して、抽出された結果に基づいて対応するローカルファイルI/O操作指令を呼び出し、対応する操作結果を生成し、最終的に、操作結果をメッセージにパッケージした後に呼び出し側に返す。
【0019】
理解を容易にするため、以下の実施例において、1つの具体的な実例によって、本発明の方法を詳細に説明する。
【0020】
図6に示すように、データネットワーキングを名前付きNDNノードにおいて、Content Store表におけるデータ部分は、外部メモリの機器のサポートを必要とし、仮にデータがファイル方式で記憶されることとする。このシナリオにおいて、仮にSDNの方法によってNDNプロトコルを開発し、且つ、スイッチにイーサネット(登録商標)メッセージを採用したとすると、イーサネット(登録商標)メッセージにおいてNDNに対応するタイプフィールドEthertypeは、0x8099(説明のみを目的とする)である。以下、このようなシナリオを参照して本発明の方法を説明する。
【0021】
制御モジュールは、認可されたエンティティ(即ちEthertype=0x8099)をアクセスしてそのディレクトリでのファイルの読み込み、書き込み、削除操作(その他の操作の禁止をデフォルトする)を認可する(仮にマッピングテーブルが32ビットであることを認可すると、各ビットが1つの操作に対応し、且つ、この3つの操作が最も高いバイトであると、対応する16進数が0xe0000000である)。制御モジュールは、認可情報「Ethertype=0x8099、PermittedOperation=0xe0000000」を認可された操作リストの方式で安全チャンネルによってスイッチに伝達し、スイッチは、認可されたエンティティのマークEthertype=0x8099と許可された操作コードPermittedOperation=0xe0000000を記憶する。
【0022】
仮にスイッチがEthertypea=0x8099のメッセージ、即ち、NDNのメッセージを受信したとすると、それと同時に、マッチングアクションテーブル(SDNサウスバウンドインターフェイスプロトコルOpenFlowにおけるテーブルは、フィールド名、値、動作(action)等の情報を含む。)では、該メッセージのペイロード部分をローカルファイルに書き込むことを要求する。
スイッチは、ファイルの書き込み操作を受け付けると、操作エンティティ(即ち、NDN)、ファイル書き込み操作のコマンドインデックスを抽出して、認可されたリストを検査して、NDNのファイル読み込み操作指令が許可されると、ファイルI/O操作を実行する。
【0023】
スイッチは、ファイル書き込み操作のコマンドインデックスとメッセージペイロードを抽出して、ローカルファイル書き込み操作指令を呼び出して書き込み操作を実行し、且つ、操作結果をメッセージにパッケージし、マッチングアクションテーブルにおける動作の呼び出し側に返す。
【0024】
動作要求においては、ディレクトリ作成操作であると、スイッチは、ディレクトリ作成操作を受信する際に、操作エンティティ(即ちNDN)、ディレクトリ操作のコマンドインデックスを抽出して、認可されたリストを検査して、NDNのディレクトリ作成操作指令が禁止することを発見すると、操作を拒絶し、且つ、拒絶メッセージを生成し、マッチングアクションテーブルにおける動作の呼び出し側に返す。
【0025】
最後に説明すべきことは、以上の実施例は本発明の技術的解決手段を説明するためのものだけであり、限定するためのものではない。実施例を参照して本発明を詳細に説明したが、当業者は、本発明の技術的解決手段に対する修正や等価の置換が、本発明の技術的解決手段の精神及び範囲を逸脱しなく、本発明の請求項の範囲に含まれることを理解すべきである。