説明

ネットワークシステム及びフレーム通信方法

【課題】ネットワークの柔軟性と拡張性を向上させること。
【解決手段】ネットワークシステムは、FCoEに基づいてフレーム通信を行うノードと、フレームの転送を行うネットワークと、ノード及びネットワークの管理を行うコントローラと、ノードに対して設けられたゲートウェイと、を備える。フレームは、制御フレームとデータフレームとに分類される。ゲートウェイは、ノードから受け取ったフレームが制御フレームかデータフレームかを判定し、制御フレームをコントローラに転送し、データフレームをネットワークに転送する。コントローラは、ゲートウェイから受け取った制御フレームに基づいて管理を行う。ネットワークは、ゲートウェイから受け取ったデータフレームを、コントローラを介することなく、送信先ノードに転送する。ノードは、データフレームに対して再送制御・順序制御処理を実施する再送制御・順序制御部を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フレーム通信を行うネットワークシステムに関する。
【背景技術】
【0002】
ネットワーク上で通信を行うための技術の一つに、「データのカプセル化」がある。具体的には、次の通りである。
【0003】
ネットワーク間で転送されるデータは、転送時に使用される通信方式に従って、その形を構成する。ネットワーク上では、OSI参照モデルやTCP/IPスタックに代表されるように、複数の階層を経由して通信が行われる。そのため、データの形は各階層の仕様に対応可能である必要がある。一般的には、データはヘッダーとペイロードで構成される。ヘッダーには、特定の階層において制御データとなる内容が含まれており、そのヘッダーの内容をその階層の通信規格が解釈することによって、他層へペイロードが転送される。各階層において、ヘッダーは、送信の際はペイロードの頭に付加され、受信の際は除去される。そのため、ペイロードには、より上位の層においてヘッダーとなりうる内容が含まれている。データ通信を開始する際、データは通信方式の最上位の階層より生成される。データは次々に下位層を通過し、最下層を通過後、ネットワーク上に出力される。最下位の階層に到達するまで、各階層に対応したヘッダーがデータに追加され、上層でヘッダーであった部分はペイロードとして扱われる。ここで行われるヘッダーの追加が、データのカプセル化と呼ばれている。
【0004】
データのカプセル化は、特定の通信方式に対応したヘッダーを付加することにより、以前まで通信不可能であった機種との通信を可能にする技術として見なせる。この技術の応用によって、データのセキュリティーの向上や、既存の複数の通信方式に対応可能となる新しい通信方式の生成が可能である。
【0005】
このような技術を利用した新しい通信方式が、非特許文献1に記載されている。非特許文献1によれば、近年のデータセンター向けの技術の一つとして、「Fibre Channel Over Ethernet(FCoE)」が提案されている。
【0006】
現在のデータセンターでは、Fibre Channel(FC)に代表されるStorage Area Network(SAN)と、Ethernet(登録商標)に代表されるLocal Area Network(LAN)が混在したネットワーク構成で運営がなされている。別々のネットワークが混在しているため、管理コスト及び機器コストの高騰が問題となっている。
【0007】
そのような問題を受けて、FCoEが提案された。FCoEは、FCのデータを、Ethernetのヘッダーと新規に定義されたFCoEのヘッダーを用いてカプセル化する。これにより、Ethernet形式に通信方式を統合し、SANとLANが統合したネットワーク構成を実現することが可能となる。統合ネットワーク上では管理および使用機器の一括化が実現されるため、問題解決の技術として有力視されている。
【0008】
しかし、現在のFCoEによる通信は、「FCoE Forwarder(FCF)」と呼ばれるFCoE通信用のスイッチを、必ず経由する必要がある。このことは、ネットワークの柔軟性と拡張性の制限となり、多量の通信機器を用いるデータセンターの構成には対応が出来ない。
【先行技術文献】
【特許文献】
【0009】
【非特許文献1】INCITS TC T11, Fibre Channel Backbone−5,http://www.fcoe.com/09−056v5.pdf
【発明の概要】
【発明が解決しようとする課題】
【0010】
非特許文献1に記載された通信方式では、通信の際に必ず経由する機器が存在する。このことは、ネットワークの柔軟性と拡張性の低下につながる。
【0011】
本発明の目的は、ネットワークの柔軟性と拡張性を向上させることができる技術を提供することにある。
【課題を解決するための手段】
【0012】
本発明の1つの観点において、ネットワークシステムが提供される。そのネットワークシステムは、FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、フレームの転送を行うネットワークと、ノード及びネットワークの管理を行うコントローラと、ノードに対して設けられたゲートウェイと、を備える。フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類される。ゲートウェイは、ノードから受け取ったフレームが制御フレームかデータフレームかを判定し、制御フレームをコントローラに転送し、データフレームをネットワークに転送する。コントローラは、ゲートウェイから受け取った制御フレームに基づいて管理を行う。ネットワークは、ゲートウェイから受け取ったデータフレームを、コントローラを介することなく、送信先ノードに転送する。ノードは、データフレームに対して再送制御・順序制御処理を実施する再送制御・順序制御部を備える。
【0013】
本発明の他の観点において、ネットワークシステムにおけるフレーム通信方法が提供される。そのネットワークシステムは、FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、フレームの転送を行うネットワークと、ノード及びネットワークの管理を行うコントローラと、を備える。フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類される。本発明に係るフレーム通信方法は、(A)ノードから送信されるフレームが制御フレームかデータフレームかを判定するステップと、(B)制御フレームをコントローラに転送し、コントローラにおいて、制御フレームに基づいて管理を行うステップと、(C)データフレームをネットワークに転送し、コントローラを介することなく、送信先ノードに伝送するステップと、(D)ノードにおいて、データフレームに対して再送制御・順序制御処理を実施するステップと、を含む。
【発明の効果】
【0014】
本発明によれば、ノードから送られるフレームが、制御フレームとデータフレームとに分離される。そして、制御フレームに比べて情報量が膨大であるデータフレームは、特定の経路を経由することなく伝送される。つまり、本発明の通信方式は、ネットワークの性能に大きく関わるデータフレームが必ず経由する機器が存在するという制約から解放される。従って、ネットワークの柔軟性と拡張性を高めることが可能となる。
【0015】
更に、ノードに再送制御・順序制御機能が搭載されるため、フレームロスレスネットワークが実現される。
【図面の簡単な説明】
【0016】
【図1】図1は、本発明の実施の形態に係るネットワークシステムの構成を示すブロック図である。
【図2】図2は、本発明の実施の形態に係るコントローラの構成を示すブロック図である。
【図3】図3は、本発明の実施の形態に係るゲートウェイの構成を示すブロック図である。
【図4】図4は、本発明の実施の形態に係るコントローラの動作を示すフローチャートである。
【図5】図5は、本発明の実施の形態に係るネットワークシステムの変形例を示すブロック図である。
【図6】図6は、本発明の実施の形態に係るコントローラのハードウェア構成例を示すブロック図である。
【図7】図7は、一般的なFCoE通信ネットワークの構成を示すブロック図である。
【図8】図8は、一般的なFCoE通信において使用されるフレームの分類図である。
【図9】図9は、一般的なFCoE通信におけるSCSI−FCPフレームの構造を示す概念図である。
【図10】図10は、FCoE通信に本発明を適用した場合のコントローラの構成を示すブロック図である。
【図11】図11は、FCoE通信に本発明を適用した場合のフレームの分類図である。
【図12】図12は、本発明の実施の形態に係るプロトコルスタックを示す概念図である。
【図13】図13は、本発明の実施の形態の第1の例におけるノードの構成を示すブロック図である。
【図14】図14は、本発明の実施の形態の第1の例におけるネットワークシステムの構成を示すブロック図である。
【図15】図15は、本発明の実施の形態の第2の例におけるネットワークシステムの構成を示すブロック図である。
【図16】図16は、本発明の実施の形態の第2の例におけるノードの構成を示すブロック図である。
【図17】図17は、本発明の実施の形態の第2の例におけるコントローラの構成を示すブロック図である。
【図18】図18は、本発明の実施の形態の第2の例における処理を示すフローチャートである。
【図19A】図19Aは、本発明の実施の形態の第2の例における処理を示すシーケンス図である。
【図19B】図19Bは、本発明の実施の形態の第2の例における処理を示すシーケンス図である。
【図20】図20は、本発明の実施の形態の第3の例におけるネットワークシステムの構成を示すブロック図である。
【発明を実施するための形態】
【0017】
添付図面を参照して、本発明の実施の形態を説明する。
【0018】
1.U/C分離機能
本特許出願の出願人は、未公開の先願(特願2010−208048)において、上記課題を解決するための手段として「U/C分離機能」を記述している。U/C分離機能によれば、ノードから送られるフレームが、データフレーム(ユーザデータフレーム)と制御フレームとに分離される。そして、制御フレームに比べて情報量が膨大であるデータフレームは、特定の経路を経由することなく伝送される。つまり、U/C分離機能によれば、ネットワークの性能に大きく関わるデータフレームが必ず経由する機器が存在するという制約から解放される。従って、ネットワークの柔軟性と拡張性を高めることが可能となる。
【0019】
以下、U/C分離機能について詳しく説明する。尚、未公開の特願2010−208048に記載されている内容は、参照により本明細書に組み込まれる。
【0020】
1−1.構成
図1は、本発明の実施の形態に係るネットワークシステムの構成を示すブロック図である。本実施の形態に係るネットワークシステムは、ノード1、コントローラ2、ゲートウェイ3、及びネットワーク4を備えている。ノード1は、ゲートウェイ3に接続されている。ゲートウェイ3は、ノード1とネットワーク4との間に接続されている。コントローラ2は、各ゲートウェイ3に接続されている。
【0021】
ノード1は、フレーム10の送受信を行う通信装置である。そのフレーム10は、制御フレーム11とデータフレーム12とに分類される。制御フレーム11は、通信に必要な制御情報をやりとりするためのフレーム10である。例えば、制御フレーム11は、通信ネットワークへのアクセスや機器へのログイン、また、そのための情報交換を行うために用いられる。一方、データフレーム12は、ノード1同士でデータの送受信を行うためのフレーム10である。データフレーム12の情報量は、制御フレーム11のそれに比べ膨大であることに留意されたい。制御フレーム11とデータフレーム12とは、フレーム10のフレームタイプにより識別可能である。
【0022】
ネットワーク4は、ノード1の間で送受信されるフレーム10を転送する。ネットワーク4は、フレームの中継を行うスイッチ等の接続機器と、接続機器を繋ぐネットワークケーブルの組み合わせで構成される。
【0023】
ゲートウェイ3は、ノード1と1組で構成される。ゲートウェイ3は、ノード1から送信されるフレーム10を受け取り、受け取ったフレーム10が制御フレーム11かデータフレーム12かを判定する。そして、ゲートウェイ3は、制御フレーム11をコントローラ2に転送し、データフレーム12をネットワーク4へ転送する。すなわち、情報量が膨大なデータフレーム12は、コントローラ2を経由することなく、ネットワーク4によって送信先に転送される。また、ゲートウェイ3は、コントローラ2及びネットワーク4からフレーム10(制御フレーム11、データフレーム12)を受け取り、受け取ったフレーム10をノード1に転送する。尚、ゲートウェイ3は、フレーム10の転送を行う際、送信先の機器がフレーム10を正しく扱えるように、必要に応じてフレーム10の情報を変更する。詳細は後述する。
【0024】
コントローラ2は、ゲートウェイ3から制御フレーム11を受け取り、その制御フレーム11を処理する。具体的には、コントローラ2は、受け取った制御フレーム11の内容に基づいて、ノード1やネットワーク4に関する情報の管理を行う。また、必要に応じて、コントローラ2は、ノード1やゲートウェイ3に対してフレーム10を送信または転送する。
【0025】
以下、コントローラ2の構成を詳細に説明する。図2は、コントローラ2の構成を示すブロック図である。コントローラ2は、受信部20、処理部21、ノード情報テーブル22、及び送信部23を備えている。
【0026】
ノード情報テーブル22は、ノード1やゲートウェイ3、ネットワーク4上の接続機器に関する管理情報を示す。受信部20は、ゲートウェイ3から制御フレーム11を受け取り、その制御フレーム11を処理部21に転送する。処理部21は、受け取った制御フレーム11の内容に応じた処理を行う。例えば、処理部21は、制御フレーム11の内容に応じてノード情報テーブル22を更新する。また、処理部21は、ノード情報テーブル22を参照して返信用の制御フレーム11を生成し、その返信用の制御フレーム11を送信部23へ出力する。また、処理部21は、受け取った制御フレーム11をそのまま送信部23に転送する。送信部23は、処理部21から受け取った制御フレーム11を、対象のゲートウェイ3へ送信する。
【0027】
以下、ゲートウェイ3の構成を詳細に説明する。図3は、ゲートウェイ3の構成を示すブロック図である。ゲートウェイ3は、分離部30、アドレス変換部31、及び多重化部32を備えている。
【0028】
分離部30は、ノード1からフレーム10を受け取る。そして、分離部30は、受け取ったフレーム10の解析を行い、当該フレーム10が制御フレーム11かデータフレーム12かを判定する。そして、分離部30は、制御フレーム11をコントローラ2に転送し、データフレーム12をアドレス変換部31へ転送する。アドレス変換部31は、分離部30から受け取ったデータフレーム12の送信先MACアドレスの変換を行い、その後、当該データフレーム12をネットワーク4に転送する。また、アドレス変換部31は、ネットワーク4からデータフレーム12を受け取ると、受け取ったデータフレーム12の送信元MACアドレスの変換を行い、その後、当該データフレーム12を多重化部32に出力する。多重化部32は、コントローラ2から入力される制御フレーム11、及びアドレス変換部31から入力されるデータフレーム12を、ノード1へ出力する。
【0029】
このように、本実施の形態によれば、ノード1から送られるフレーム10が、制御フレーム11とデータフレーム12とに分離される。そして、制御フレーム11に比べて情報量が膨大であるデータフレーム12は、特定の経路(コントローラ2)を経由することなく伝送される。つまり、本実施の形態の通信方式は、ネットワークの性能に大きく関わるデータフレーム12が必ず経由する機器が存在するという制約から解放される。従って、ネットワークの柔軟性と拡張性を高めることが可能となる。
【0030】
1−2.コントローラ2の動作フロー
図4は、本実施の形態に係るコントローラ2の動作を示すフローチャートである。以下、図2及び図4を参照して、コントローラ2の動作フローを説明する。
【0031】
ステップS100:
処理部21は、受信部20からフレーム10(制御フレーム11)の入力を待つ。
【0032】
ステップS101:
処理部21は、受信部20から受け取ったフレーム10のヘッダー及びペイロードを参照し、当該フレーム10の宛先(終端先)がコントローラ2であるか、送信元と対向するノード1であるかを判定する。宛先がコントローラ2の場合、処理はステップS102に進む。一方、宛先がノード1の場合、処理はステップS106に進む。
【0033】
ステップS102:
処理部21は、当該フレーム10の種別を判定する。具体的には、処理部21は、当該フレーム10が、送信元であるノード1の情報を登録するためのもの(情報登録フレーム)か、他のノード1もしくはコントローラ2の情報を取得するためのもの(情報取得フレーム)か、を判定する。情報登録フレームの場合、処理はステップS103に進む。一方、情報取得フレームの場合、処理はステップS104に進む。
【0034】
ステップS103:
処理部21は、情報登録フレームに基づいて、送信元のノード1の情報をノード情報テーブル22に登録する。その後、処理はステップS105に進む。
【0035】
ステップS104:
処理部21は、情報取得フレームが要求する内容に対応した情報を、ノード情報テーブル22から取得する。その後、処理はステップS105に進む。
【0036】
ステップS105:
処理部21は、返信用のフレーム10(制御フレーム11)を作成する。上記ステップS104が実施された場合、処理部21は、ノード情報テーブル22から取得した情報を、返信用のフレーム10に含める。そして、処理部21は、返信用のフレーム10を送信部23に出力する。送信部23は、返信用のフレーム10を、送信元のノード1側のゲートウェイ3に送信する。
【0037】
ステップS106:
一方、宛先がノード1の場合、処理部21は、ノード情報テーブル22を参照して当該フレーム10の送信先MACアドレスを変更する。そして、処理部21は、当該フレーム10を送信部23に出力する。
【0038】
ステップS107:
送信部23は、当該フレーム10を、送信先のノード1側のゲートウェイ3に送信する。
【0039】
1−3.変形例
図5は、本実施の形態に係るネットワークシステムの変形例を示すブロック図である。本変形例では、ゲートウェイ3は、ノード1内のネットワーク装置に組み込まれる。より詳細には、ノード1はネットワークカード40を備えており、ゲートウェイ3はそのネットワークカード40内に設置される。図5におけるゲートウェイ3は、設置個所が異なる点を除けば、図1におけるゲートウェイ3と同じである。本変形例によれば、ノード1に機能が集約されるため、ネットワークの柔軟性が更に高まることが期待される。
【0040】
図6は、本実施の形態に係るコントローラ2のハードウェア構成例を示すブロック図である。コントローラ2の機能は、1台のサーバ90に実装される。サーバ90は、ネットワークインタフェースカード(NIC)100、処理装置(CPU)101、及びメモリ102を備えている。コントローラ2の機能は、これらハードウェアとコンピュータプログラムとの協働によって実現される。より詳細には、フレーム10の送受信を行うネットワークインタフェースカード100は、上述の受信部20及び送信部23として機能する。フレーム処理を行う処理装置101は、上述の処理部21として機能する。メモリ102には、上述のノード情報テーブル22が格納される。尚、コントローラ2の機能を実現するコンピュータプログラムは、コンピュータ読み取り可能な記録媒体に記録されていてもよい。
【0041】
1−4.FCoEへの応用
次に、本実施の形態をFCoEに適用することを考える。
【0042】
図7は、一般的なFCoE通信ネットワークの構成を示すブロック図である。FCoEに基づいてフレーム通信を行うノード1は、FCoEに対応したリンクで構成されたネットワーク4を通して、FCF(FCoE Forwarder)50に接続される。FCF50は、FCoE通信用のスイッチである。現在、FCoEによる通信は必ず、このFCF50を経由する必要がある。
【0043】
図8は、一般的なFCoE通信において使用されるフレームの分類図である。各フレームを順番に説明する。
【0044】
1.DCBX(LLDP):FCoE通信を行うための、Ethetnet通信網に使用される拡張機能についての情報をリンク間で交換する。
【0045】
2.FIP VLAN Discovery:ノードがFCFから、FCoE通信に使用するVLAN IDを取得する。
【0046】
3.FIP Discovery:ノードがFCFから、FCoE通信に使用するFCFのMACアドレスを取得する。
【0047】
4.FIP FLOGI:ノードがFCFへアクセスし、FCoE通信に使用する自身のMACアドレスを取得する。
【0048】
5.PLOGI:ノードがFCFを介して、FCFおよび送信先のノードとFCoE通信のための情報交換を行う。
【0049】
6.PRLI:ノードがFCFを介して、送信先のノードとデータをやり取りするための情報交換を行う。
【0050】
7.SCSI−FCP:ノードがFCFを介して、送信先のノードとデータをやり取りする。
【0051】
8.PRLO:ノードがFCFを介して、ノード同士の接続を切断する(情報を削除する)。
【0052】
9.LOGO:ノードがFCFへアクセスし、FCFとノードの接続を切断する(情報を削除する)。
【0053】
上述のうち、“SCSI−FCPフレーム”がデータフレーム12に相当し、その情報量は他の種類のフレームと比較して非常に大きい。図7で示された一般的なFCoE通信ネットワークの場合、このSCSI−FCPフレームも含めて全てのフレームがFCF50を経由する。そのため、SCSI−FCPフレームの転送時間が、ネットワークの性能に大きな影響を与えてしまう。
【0054】
本実施の形態がFCoEに適用される場合の動作は、次の通りである。
【0055】
まず、ゲートウェイ3の動作を説明する。ゲートウェイ3は、受け取ったフレーム10が制御フレーム11かデータフレーム12かを判定する。制御フレーム11は、送信先のノード1にアクセスするための情報交換を行うためのフレームである。一方、データフレーム12は、ノード1同士でデータの送受信を行うためのフレームである。図8に示されたフレームの中では、“SCSI−FCP”がデータフレーム12と判定され、その他のフレームは制御フレーム11と判定される。
【0056】
ゲートウェイ3は、例えば次の方法により、フレーム種類を判定することができる。図9は、SCSI−FCPフレームの構造を示す概念図である。図9を参照すると、FCoE Fieldの中にあるFC Fieldに、“FC Type:FCP”という要素がある。SCSI−FCPフレームをその他のフレームから明確に区別できる点は、この“FC Type”である。従って、ゲートウェイ3は、受け取ったフレーム10の“FC Type”を参照することによって、当該フレーム10が制御フレーム11かデータフレーム12かを判定することができる。
【0057】
また、ゲートウェイ3は、必要に応じて、フレーム10の送信先MACアドレスを変更する。その理由は、次の通りである。従来のFCoE通信では、制御フレームとデータフレームの双方がFCF50を経由する。そのため、送信先MACアドレスが不明であっても、とりあえず送信先MACアドレスをFCF50のMACアドレスとしておけば、FCF50が送信先MACアドレスの変換を行ってくれていた。しかし、本実施の形態によれば、データフレーム12はコントローラ2を経由しない。ノード1は送信フレーム10の送信先MACアドレスをコントローラ2のMACアドレスに設定するため、ゲートウェイ3において送信先MACアドレスの変換が行われない限り、ネットワーク4は送信先のノード1へデータフレーム12を転送することができない。そのため、ゲートウェイ3は、データフレーム12が正しい送信先へ転送されるように、データフレーム12の送信先MACアドレスを送信先のノード1のMACアドレスに変換し、その後、当該データフレーム12をネットワーク4に出力する。
【0058】
ここで、従来のFCoE通信で使用されるMACアドレスは、ノード1が元々保持しているMACアドレスとは異なり、FCF50がFCoE通信用に配布するものである。この配布されるMACアドレスの割付には規定があり、MACアドレス6バイトのうち上位3バイトを固定値、下位3バイトが可変としている。そして、下位3バイトの値はFCoEフレームにカプセル化されたFCフレームにおける、通信機器のアドレスとして使用される。そして、従来のFCoE通信では、ノード1が送信先のノード1へフレーム10を送信する場合は、MACアドレスはFCF50のMACアドレスであるが、FCフレームの送信先アドレスには送信先のノード1のアドレスを指定する。よって、ゲートウェイ3においてデータフレーム12と判定されたフレーム10に関しては、カプセル化されたFCフレームの送信先アドレスを解析することによって、上記の法則に従い送信先のノード1のMACアドレスを取得することができる。
【0059】
このようにして、データフレーム12は、ネットワーク4を経由して、コントローラ2を経由することなく、送信先のノード1へ転送される。
【0060】
次に、コントローラ2の動作を説明する。コントローラ2は、従来のFCF50が行っていた制御フレーム11(つまり、データフレーム12であるSCSI−FCP以外)に対する処理を担当する。
【0061】
図10は、FCoE通信に本実施の形態を適用した場合のコントローラ2の構成を示すブロック図である。図10に示されるように、コントローラ2は、調定部60、ネットワーク情報管理部61、及びFCoE情報管理部62を備えている。
【0062】
調定部60は、コントローラ2に到着したフレーム種別を判別し、各情報管理部(61,62)にフレームを転送する。また、調定部60は、各情報管理部(61,62)から送信フレーム用の構築情報を取得し、ゲートウェイ3へフレームを生成・送信する。
【0063】
ネットワーク情報管理部61は、スイッチ間トポロジー管理部70、経路情報管理部71、及びVLAN ID管理部72を備えている。
【0064】
スイッチ間トポロジー管理部70は、ネットワーク4中の各スイッチのポートの接続情報を識別、管理する。
【0065】
経路情報管理部71は、スイッチ間トポロジー管理部70で判明しているノード1間の経路を管理する。また、経路情報管理部71は、FCoE情報管理部62から新規のノード1間の設定要求を受け取った場合、各スイッチに経路情報を展開する。
【0066】
VLAN ID管理部72は、スイッチのポートへのVLAN ID付与を管理する。また、VLAN ID管理部72は、FCoE情報管理部62からの検索要求に応じて、VLAN IDを検索・応答する。
【0067】
FCoE情報管理部62は、コントローラMAC80、ノード/VLAN ID管理部81、ログインサーバ82、ディレクトリサーバ83、及びファブリック管理部84を備えている。
【0068】
コントローラMAC80は、FCoE情報管理部62宛の通信用MACアドレスを管理する。コントローラMAC80は、ノード1からのFIP Discoveryに対して、コントローラ2のMACアドレスを返答する。
【0069】
ノード/VLAN ID管理部81は、ノード1が所属するVLAN IDを管理する。ノード/VLAN ID管理部81は、ノード1からのFIP VLAN Discoveryに対して、当FCoEのネットワークが所属するVLAN IDを返答する。
【0070】
ログインサーバ82は、ノード1の管理を目的として、FLOGIにて通知されるノード1の物理MACアドレスを管理する。
【0071】
ディレクトリサーバ83は、FLOGI済のノード1の各ポートの情報であるWWPN (World Wide Port Name)、WWNN(World Wide Node Name)、サポート可能なFCのサービスクラスを管理する。また、ディレクトリサーバ83は、dNSによってノード1からの問い合わせに対して応答する。
【0072】
ファブリック管理部84は、ノード1のポート状態を管理し、状態変更(ポートの有効/無効、ポートのFabricへの参加/離脱)があった場合に、他ノードに通知する(RSCN/SCR)。
【0073】
図11は、FCoE通信に本実施の形態を適用した場合のフレームの分類図である。各フレームを順番に説明する。
【0074】
1.DCBX(LLDP):FCoE通信を行うための、Ethernet通信網に使用される拡張機能についての情報をリンク間で交換する。
【0075】
2.FIP VLAN Discovery:ノード1がコントローラ2から、FCoE通信に使用するVLAN IDを取得する。
【0076】
3.FIP Discovery:ノード1がコントローラ2から、FCoE通信に使用するコントローラ2のMACアドレスを取得する。
【0077】
4.FIP FLOGI:ノード1がコントローラ2へアクセスし、FCoE通信に使用する自身のMACアドレスを取得する。
【0078】
5.PLOGI:ノード1がコントローラ2を介して、コントローラ2および送信先のノード1とFCoE通信のための情報交換を行う。
【0079】
6.PRLI:ノード1がコントローラ2を介して、送信先のノード1とデータをやり取りするための情報交換を行う。
【0080】
7.SCSI−FCP:ノード1が、ネットワーク4を通して送信先のノード1とデータをやり取りする。
【0081】
8.PRLO:ノード1がコントローラ2を介して、ノード1同士の接続を切断する(情報を削除する)。
【0082】
9.LOGO:ノード1がコントローラ2へアクセスし、コントローラ2とノード1の接続を切断する(情報を削除する)。
【0083】
以上に説明されたように、本実施の形態がFCoE通信に適用された場合、データフレーム12であるSCSI−FCPフレームは、その他のフレームから分離される。そして、そのSCSI−FCPフレームは、FCFを介することなく、Ethernetネットワーク4のみで転送される。ネットワークの性能に大きく影響するSCSI−FCPフレームが特定の経路を通る必要が無くなるため、ネットワークの性能が高まる。また、従来のEthernetで使用する通信機器が流用可能であるため、ネットワークの統合がより容易となる。
【0084】
2.再送制御・順序制御機能
第1節で説明されたU/C分離機能によれば、FCFの制約から逃れることができるため、ネットワーク4において従来のEthernetスイッチを使用することも可能になる。
【0085】
その一方で、FCoEでは、フレームロスが発生しないことが要求される。もし、フレームロスが発生すると、長時間のシステムアクセス停止が引き起こされるからである。従来のFCoEでは、フレームロスレスネットワークを実現するための方式として、IEEE802.1 DCB(Data Center Bridging)が規定されていた。このDCB規格は、パケット廃棄が発生しないようにネットワークを構築するという手法であり、ノード及びスイッチの両方に特殊機能を追加する必要がある。スイッチに特殊機能を追加する必要があるため、ネットワーク4において従来のEthernetスイッチを使用することはできない。すなわち、DCB規格によってフレームロスレスネットワークを実現しようとすれば、第1節で説明されたU/C分離機能による利点が損なわれてしまう。
【0086】
そこで、DCB規格の代わりに、スイッチに機能を追加することなくフレームロスレスネットワークを実現することが望まれる。その目的のため、本実施の形態によれば、ノード1に、再送制御(retransmission control)・順序制御(reordering)機能が搭載される。以下、ノード1が再送制御・順序制御機能を備える場合の構成及び処理を説明する。尚、第1節と重複する構成及び処理の説明は適宜省略される。
【0087】
2−1.第1の例
図12は、本実施の形態に係るプロトコルスタックを示す概念図である。一般的なFCoEプロトコルスタックは、FCに対応するFC4層〜FC2層、FCoEマッピング層、及びEthernetに対応するMAC層及び物理層から構成される。本実施の形態によれば、図12に示されるように、FCoEマッピング層とMAC層との間の層(いわゆるL2.5層)に、再送制御・順序制御機能が搭載される。
【0088】
再送制御機能は、例えば、B. Atikoglu et al., “R2D2: RAPID AND RELIABLE DATA DELIVERY IN DATA CENTERS”, Stanford University(http://forum.stanford.edu/events/posterslides/R2D2RapidandReliableDataDeliveryinDataCenters.pdf)に記載されているR2D2によって実現可能である。
【0089】
尚、図5で示されたようにU/C分離機能(ゲートウェイ3)がノード1のネットワークカード40に組み込まれる場合、当該U/C分離機能もL2.5層に搭載される。但し、U/C分離機能は、必ずしもノード1のネットワークカード40に組み込まれる必要はない。図1で示されたように、U/C分離機能は、ノード1とは別に設けられたゲートウェイ3に搭載されてもよい。いずれの場合であっても、再送制御・順序制御機能は、ネットワークエッジであるノード1に搭載される。
【0090】
再送制御・順序制御機能を備えるノード1は、以下「ノード1A」と参照される。図13は、本例に係るノード1Aの構成を示すブロック図である。ノード1Aは、上位プロトコル処理部200、再送制御・順序制御部210、及び送受信部220を備えている。再送制御・順序制御部210及び送受信部220は、ネットワークカード40に組み込まれている。
【0091】
上位プロトコル処理部200は、図12で示されたFC4〜FC2層及びFCoEマッピング層の機能を有する。上位プロトコル処理部200は、ネットワークカード40に送信フレームを出力し、また、ネットワークカード40から受信フレームを受け取る。
【0092】
再送制御・順序制御部210は、上位プロトコル処理部200から送信フレームを受け取り、その送信フレームを送受信部220に出力する。また、再送制御・順序制御部210は、送受信部220から受信フレームを受け取り、その受信フレームを上位プロトコル処理部200に出力する。更に、再送制御・順序制御部210は、上述の再送制御・順序制御機能を提供する。つまり、送受信処理において、再送制御・順序制御部210は、対象フレームに対して再送制御・順序制御処理を実施する。本実施の形態では、その対象フレームとして、ノード1A間で通信されるデータフレーム12が挙げられる。すなわち、再送制御・順序制御部210は、ノード1A間で通信されるデータフレーム12に対して、再送制御・順序制御処理を実施する。
【0093】
送受信部220は、送信フレームをネットワーク4やコントローラ2に送信する。また、送受信部220は、ネットワーク4やコントローラ2から受信フレームを受信する。U/C分離機能は、例えば、この送受信部220に搭載される。
【0094】
図14は、本実施の形態に係るノード1Aを用いたネットワークシステムの構成例を示している。尚、FCoEでは、サーバ及びストレージを合わせて、FCoEノード(あるいはEnode)と呼ぶ場合もある。
【0095】
本実施の形態によれば、上述のU/C分離機能により、データフレーム12(SCSI−FCPフレーム)は、コントローラ2を介することなく、ネットワーク4だけを介して、ノード1A間で通信される。更に、ノード1Aがそのデータフレーム12に対して再送制御・順序制御処理を実施するため、フレームロスレスネットワークが実現される。ここで、従来のDCB規格の場合と異なり、ネットワーク4中のスイッチには特殊機能を追加する必要がないことに留意されたい。すなわち、ノード1Aの再送制御・順序制御機能により、スイッチに特殊機能を追加することなく、フレームロスレスネットワークが実現される。上述のU/C分離機能によりFCFの制約からも解放されているため、図14に示されるように、ネットワーク4において従来のEthernetスイッチ5を利用することが可能となる。その結果、ネットワークの統合がより容易になる。
【0096】
2−2.第2の例
ネットワークシステム中の一部のノードが再送制御・順序制御機能をサポートしていない状況も考えられる。図15は、そのような状況の一例を示している。ノード1B(ノード番号:#1、#2、#4)は、再送制御・順序制御機能(再送制御・順序制御部210)を備えている。一方、ノード1(ノード番号:#3)は、再送制御・順序制御機能(再送制御・順序制御部210)を備えていない。
【0097】
再送制御・順序制御処理は、送信元ノードと送信先ノードの両方が当該機能を有している場合にはじめて意味をなす。送信元ノード及び送信先ノードの少なくとも一方が再送制御・順序制御機能を有していない場合、再送制御・順序制御処理を無効化する必要がある。しかしながら、一般的には、双方が再送制御・順序制御機能を有しているかどうかは、End−to−End通信が開始されるまで分からない。End−to−End通信の開始後、再送制御・順序制御処理を無効化する必要があることが判明した場合、それまでの通信処理の一部が無駄となる。
【0098】
そのような無駄な通信処理の発生を未然に防ぐために、第2の例では、再送制御・順序制御機能の保有状況が、通信開始前に事前にチェックされる。送信元ノード及び送信先ノードの少なくとも一方が再送制御・順序制御機能を有していない場合、当該機能は、通信開始前に事前に無効化される。送信元ノード及び送信先ノードの両方が再送制御・順序制御機能を有している場合にのみ、当該機能は有効化される。
【0099】
図16は、本例に係るノード1Bの構成を示すブロック図である。ノード1Bは、図13で示されたノード1Aの構成に加えて、機能管理部230及び相手ノード機能テーブル240を備えている。これら機能管理部230及び相手ノード機能テーブル240は、ネットワークカード40に組み込まれる。
【0100】
機能管理部230は、自ノードの再送制御・順序制御機能の管理を行う。具体的には、機能管理部230は、自ノードが再送制御・順序制御機能(再送制御・順序制御部210)を備えていることを示す機能通知NTFを、送受信部220を通してコントローラ2Bに送信する。また、機能管理部230は、再送制御・順序制御機能(再送制御・順序制御部210)を有効化/無効化する指示INSを、送受信部220を通してコントローラ2Bから受け取る。そして、機能管理部230は、受け取った指示INSに応じて、自ノードの再送制御・順序制御機能(再送制御・順序制御部210)を有効化あるいは無効化する。具体的には、機能管理部230は、受け取った指示INSに応じて、相手ノード機能テーブル240を更新する。
【0101】
相手ノード機能テーブル240は、送信先ノード(相手ノード)が再送制御・順序制御機能を備えているか否かを示す。例えば、図16に示される例において、ノード1B(ノード番号:#1)の相手ノード機能テーブル240は、ノード1B(ノード番号:#2、#4)が当該機能を備えていること、及び、ノード1(ノード番号:#3)が当該機能を備えていないことを示している。機能管理部230は、コントローラ2Bから、ノード1B(ノード番号:#2、#4)に関する有効化指示INSを受け取り、また、ノード1(ノード番号:#3)に関する無効化指示INSを受け取る。受け取った有効化/無効化指示INSに応じて、機能管理部230は、相手ノード機能テーブル240を図16に示されるように設定する。
【0102】
再送制御・順序制御部210は、相手ノード機能テーブル240を参照することによって、再送制御・順序制御処理を実施するか否かを決定する。相手ノードが再送制御・順序制御機能を備えている場合、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12に対して、再送制御・順序制御処理を実施する。これは、再送制御・順序制御部210が有効化されていることに相当する。一方、相手ノードが再送制御・順序制御機能を備えていない場合、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12に対して、再送制御・順序制御処理を実施しない。すなわち、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12を、再送制御・順序制御の対象から外す。これは、再送制御・順序制御部210が無効化されていることに相当する。
【0103】
図17は、本例に係るコントローラ2Bの構成を示すブロック図である。コントローラ2Bは、図2で示されたコントローラ2の処理部21に代えて処理部21Bを備え、更に、ノード機能テーブル27及びコネクションテーブル28を備えている。ノード機能テーブル27及びコネクションテーブル28は、メモリ102(図6参照)に格納される。
【0104】
ノード機能テーブル27は、再生制御・順序制御機能(再送制御・順序制御部210)を備えているか否かをノード毎に示す。図17に示される例では、ノード1B(ノード番号:#1、#2、#4)が当該機能を備えていること、及び、ノード1(ノード番号:#3)が当該機能を備えていないことを示している。
【0105】
コネクションテーブル28は、ノードペア毎に、再送制御・順序制御機能を有効化するか無効化するかを示している。ノードペアは、送信元ノードと送信先ノードの組み合わせである。図17に示される例では、ノード1(ノード番号:#3)を含むノードペアに関して、再送制御・順序制御機能が無効化される。それ以外のノードペアに関して、再送制御・順序制御機能は有効化される。
【0106】
処理部21Bは、登録部24、判定部25及び指示部26を備えている。
【0107】
登録部24は、各ノードから送られてくる機能通知NTFを受け取り、受け取った機能通知NTFに基いてノード機能テーブル27を更新する。具体的には、あるノードから再送制御・順序制御機能を備えている旨を示す機能通知NTFを受け取ると、登録部24は、ノード機能テーブル27中の当該ノードのエントリを“機能:Yes”に設定する。
【0108】
判定部25は、ある送信元ノードとある送信先ノードとの間の通信開始前に、当該ノードペアに関して再送制御・順序制御処理を有効化するか無効化するか判定する。具体的には、送信元ノードから送信先ノードへの通信開始要求を受け取ると、判定部25は、ノード機能テーブル27を参照して、送信元ノードと送信先ノードの両方が再送制御・順序制御機能を備えているか否かをチェックする。それら両方が再送制御・順序制御機能を備えている場合、判定部25は、「有効化」と判定する。一方、それらのうち少なくとも一方が再送制御・順序制御機能を備えていない場合、判定部25は、「無効化」と判定する。そして、判定部25は、その判定結果をコネクションテーブル28に書き込む。
【0109】
「有効化」判定の場合、指示部26は、有効化指示INSを、送信元ノードと送信先ノードの両方に送信する。その結果、送信元ノードと送信先ノードの両方の再送制御・順序制御部210が有効化される。一方、「無効化」判定の場合、指示部26は、無効化指示INSを、少なくとも再送制御・順序制御機能を備えるノード1Bに送信する。その結果、当該ノード1Bの再送制御・順序制御部210が無効化される。
【0110】
図18は、本例における処理を示すフローチャートである。図19A及び図19Bは、本例における処理を示すシーケンス図である。図19A及び図19Bに示される各フレームの内容については、既出の図11を参照されたい。尚、「Enode Initiator」は送信元ノードを表し、「Enode Target」は送信先ノードを表す。また、「SCR」は、自ノードが状態変更通知対象ノードとなるようにコントローラ2に登録するフレームである。「RSCN」は、コントローラ2から登録済みのノードに対して状態変更を通知するフレームである。「ACC」は確認応答を表す。
【0111】
事前登録ステップ(ステップS100):
送信先ノードとの通信開始前に、ノード1Bの機能管理部230は、自ノードが再送制御・順序制御機能(再送制御・順序制御部210)を備えていることを示す機能通知NTFを、コントローラ2Bに送信する(ステップS110)。コントローラ2Bの登録部24は、その機能通知NTFに基いて、ノード機能テーブル27に機能情報を登録する(ステップS120)。
【0112】
例えば、この事前登録ステップ(ステップS100)は、図19Aに示されるように、FCoEの機能登録フェーズであるPLOGI(register)フェーズ(図11参照)において実施される。ノード1Bは、“FCoE通信可能”だけでなく“再送制御・順序制御可能”をもコントローラ2Bに通知・登録する。
【0113】
通信準備ステップ(ステップS200):
送信元ノードは、送信先ノードへの通信開始要求を、コントローラ2Bに送信する(ステップS210)。このとき、送信元ノードは、自ノード及び送信先ノードのノード番号もコントローラ2Bに送信する。コントローラ2Bの判定部25は、ノード機能テーブル27を参照して、送信元ノードと送信先ノードの両方が再送制御・順序制御機能を備えているか否かをチェックする(ステップS220)。
【0114】
送信元ノードと送信先ノードの両方が再送制御・順序制御機能を備えている場合(ステップS230;Yes)、判定部25は、「有効化」と判定し、その判定結果をコネクションテーブル28に書き込む。そして、指示部26は、有効化指示INSを、送信元ノードと送信先ノードの両方に送信する(ステップS240)。有効化指示INSを受け取ったノード1Bの機能管理部230は、再送制御・順序制御機能を有効化する、すなわち、相手ノード機能テーブル240中の相手ノードのエントリを「Yes」に設定する(ステップS260)。
【0115】
一方、送信元ノードと送信先ノードのうち少なくとも一方が再送制御・順序制御機能を備えていない場合(ステップS230;No)、判定部25は、「無効化」と判定し、その判定結果をコネクションテーブル28に書き込む。そして、指示部26は、無効化指示INSを、必要なノード1Bに送信する(ステップS250)。無効化指示INSを受け取ったノード1Bの機能管理部230は、再送制御・順序制御機能を無効化する、すなわち、相手ノード機能テーブル240中の相手ノードのエントリを「No」に設定する(ステップS260)。
【0116】
例えば、この通信準備ステップ(ステップS200)は、図19Bに示されるように、End−to−End通信のログインフェーズであるPLOGIフェーズ(図11参照)において実施される。
【0117】
ステップS300:通信開始
その後、送信元ノードと送信先ノードとの間でEnd−to−End通信が開始する。これは、データ送信フェーズであるSCSI−FCPフェーズに相当する。ノード1Bの再送制御・順序制御部210は、相手ノード機能テーブル240を参照することによって、再送制御・順序制御処理を実施するか否かを決定する。相手ノードが再送制御・順序制御機能を備えている場合、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12に対して、再送制御・順序制御処理を実施する。一方、相手ノードが再送制御・順序制御機能を備えていない場合、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12に対して、再送制御・順序制御処理を実施しない。すなわち、再送制御・順序制御部210は、当該相手ノードとの間で通信されるデータフレーム12を、再送制御・順序制御の対象から外す。
【0118】
このように、第2の例によれば、再送制御・順序制御機能の保有状況が、通信開始前に事前にチェックされる。送信元ノード及び送信先ノードの少なくとも一方が再送制御・順序制御機能を有していない場合、当該機能は、通信開始前に事前に無効化される。その結果、無駄な通信処理の発生が未然に防止される。
【0119】
2−3.第3の例
ネットワークにおけるパケット転送経路を、負荷変動等に応じて、動的に切り替える動的経路切替技術が知られている。例えば、「オープンフロー(OpenFlow)」という技術によれば、フロー単位で経路制御、障害回復、負荷分散、最適化が行われる(参考文献:Nick McKeown et al., “OpenFlow: Enabling Innovation in Campus Networks”, ACM SIGCOMM Computer Communication Review, Vol. 38, No. 2, 2008. (http://www.openflowswitch.org//documents/openflow−wp−latest.pdf)。
【0120】
但し、動的経路切替が実施される場合、一時的なパケット廃棄、パケットの順序入れ替え、瞬間的なループ発生によるパケット複製、等が発生する可能性がある。しかしながら、上述の通り、FCoEは、Ethernetレイヤにおけるパケットの消失や順序入れ替わりを許容しない。また、FCoEが前提とするDCB規格は、Link−by−Linkベースなので、動的経路切替によるパケット廃棄等を救えない。
【0121】
一方、本実施の形態によれば、ノード1A(あるいはノード1B)に再送制御・順序制御機能が搭載されており、それにより、フレームロスレスネットワークが実現されている。従って、本実施の形態においては、動的経路切替を問題無く実施することが可能である。
【0122】
図20は、動的経路切替が実施される場合の例を示している。本例において、コントローラ2Cは、既出のコントローラ2(あるいはコントローラ2B)の機能に加えて、経路管理部29を備えている。経路管理部29は、ネットワーク4におけるデータフレーム12の転送経路を管理し、また、動的に変更する機能を有している。例えば、経路管理部29は、オープンフロー(OpenFlow)において用いられるオープンフローコントローラ(OFC:OpenFlow Controller)と同じ機能を有する。その場合、ネットワーク4におけるスイッチ5として、オープンフロースイッチ(OFS:OpenFlow Switch)が用いられる。
【0123】
このように、本例によれば、コントローラ2Cによって、ネットワーク4におけるデータフレーム12の転送経路が動的に切り替えられる。その動的経路切替によってデータフレーム12の廃棄や順序入れ替えが発生したとしても、ノード1A(あるいはノード1B)に搭載された再送制御・順序制御機能によって回復する。すなわち、システムの遅延・停止を引き起こすことなく、動的経路切替を実施することが可能である。
【0124】
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
【0125】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0126】
(付記1)
FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、
前記フレームの転送を行うネットワークと、
前記ノード及び前記ネットワークの管理を行うコントローラと、
前記ノードに対して設けられたゲートウェイと
を備え、
前記フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類され、
前記ゲートウェイは、前記ノードから受け取ったフレームが前記制御フレームか前記データフレームかを判定し、前記制御フレームを前記コントローラに転送し、前記データフレームを前記ネットワークに転送し、
前記コントローラは、前記ゲートウェイから受け取った前記制御フレームに基づいて前記管理を行い、
前記ネットワークは、前記ゲートウェイから受け取った前記データフレームを、前記コントローラを介することなく、送信先ノードに転送し、
前記ノードは、前記データフレームに対して再送制御・順序制御処理を実施する再送制御・順序制御部を備える
ネットワークシステム。
【0127】
(付記2)
付記1に記載のネットワークシステムであって、
前記コントローラは、前記再送制御・順序制御部を備えるか否かをノード毎に示すノード機能テーブルを保持し、
前記ノードが前記送信先ノードとの間で前記データフレームの通信を開始する前に、前記コントローラは、前記ノード機能テーブルを参照することによって、前記ノード及び前記送信先ノードの両方が前記再送制御・順序制御部を備えているか否かをチェックし、
前記ノード及び前記送信先ノードの両方が前記再送制御・順序制御部を備えている場合、前記コントローラは、前記ノード及び前記送信先ノードの両方の前記再送制御・順序制御部を有効化し、
前記送信先ノードが前記再送制御・順序制御部を備えていない場合、前記コントローラは、前記ノードの前記再送制御・順序制御部を無効化する
ネットワークシステム。
【0128】
(付記3)
付記2に記載のネットワークシステムであって、
前記再送制御・順序制御部を有効化する場合、前記コントローラは、有効化指示を前記ノードに送信し、
前記再送制御・順序制御部を無効化する場合、前記コントローラは、無効化指示を前記ノードに送信し、
前記ノードは、前記有効化指示に応答して前記再送制御・順序制御部を有効化し、前記無効化指示に応答して前記再送制御・順序制御部を無効化する
ネットワークシステム。
【0129】
(付記4)
付記3に記載のネットワークシステムであって、
前記ノードは、前記送信先ノードが前記再送制御・順序制御部を備えるか否かを示す相手ノード機能テーブルを保持し、
前記有効化指示及び前記無効化指示に応じて、前記ノードは、前記相手ノード機能テーブルを更新し、
前記ノードの前記再送制御・順序制御部は、前記相手ノード機能テーブルを参照することによって、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施するか否かを決定し、
前記有効化指示の場合、前記相手ノード機能テーブルは、前記送信先ノードが前記再送制御・順序制御部を備えることを示し、前記ノードの前記再送制御・順序制御部は、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施し、
前記無効化指示の場合、前記相手ノード機能テーブルは、前記送信先ノードが前記再送制御・順序制御部を備えていないことを示し、前記ノードの前記再送制御・順序制御部は、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施しない
ネットワークシステム。
【0130】
(付記5)
付記2乃至4のいずれか一項に記載のネットワークシステムであって、
前記再送制御・順序制御部を備えるノードは、前記再送制御・順序制御部を備えていることを示す機能通知を、通信開始前に前記コントローラに送信し、
前記コントローラは、前記機能通知に基いて前記ノード機能テーブルを更新する
ネットワークシステム。
【0131】
(付記6)
付記1乃至5のいずれか一項に記載のネットワークシステムであって、
前記再送制御・順序制御部は、前記ノードのネットワークカードに組み込まれている
ネットワークシステム。
【0132】
(付記7)
付記1乃至6のいずれか一項に記載のネットワークシステムであって、
前記ノードは、前記フレームの送信先MACアドレスを前記コントローラのMACアドレスに設定し、
前記ゲートウェイは、前記受け取ったフレームが前記データフレームの場合、前記データフレームの送信先MACアドレスを前記送信先ノードのMACアドレスに変換し、その後、前記データフレームを前記ネットワークに出力する
ネットワークシステム。
【0133】
(付記8)
付記1乃至7のいずれか一項に記載のネットワークシステムであって、
前記ゲートウェイは、FCPフレームを前記データフレームと判定し、それ以外のフレームを前記制御フレームと判定する
ネットワークシステム。
【0134】
(付記9)
付記1乃至8のいずれか一項に記載のネットワークシステムであって、
前記ゲートウェイは、前記ノードのネットワークカードに組み込まれている
ネットワークシステム。
【0135】
(付記10)
付記1乃至9のいずれか一項に記載のネットワークシステムであって、
前記コントローラは、前記ネットワークにおける前記データフレームの転送経路を動的に変更する機能を有する
ネットワークシステム。
【0136】
(付記11)
ネットワークシステムにおけるフレーム通信方法であって、
前記ネットワークシステムは、
FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、
前記フレームの転送を行うネットワークと、
前記ノード及び前記ネットワークの管理を行うコントローラと
を備え、
前記フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類され、
前記フレーム通信方法は、
前記ノードから送信されるフレームが前記制御フレームか前記データフレームかを判定するステップと、
前記制御フレームを前記コントローラに転送し、前記コントローラにおいて、前記制御フレームに基づいて前記管理を行うステップと、
前記データフレームを前記ネットワークに転送し、前記コントローラを介することなく、送信先ノードに伝送するステップと、
前記ノードにおいて、前記データフレームに対して再送制御・順序制御処理を実施するステップと
を含む
フレーム通信方法。
【符号の説明】
【0137】
1,1A,1B ノード
2,2B,2C コントローラ
3 ゲートウェイ
4 ネットワーク
5 Ethernetスイッチ
10 フレーム
11 制御フレーム
12 データフレーム
20 受信部
21,21B 処理部
22 ノード情報テーブル
23 送信部
24 登録部
25 判定部
26 指示部
27 ノード機能テーブル
28 コネクションテーブル
29 経路管理部
30 分離部
31 アドレス変換部
32 多重化部
40 ネットワークカード
50 FCF
60 調定部
61 ネットワーク情報管理部
62 FCoE情報管理部
70 スイッチ間トポロジー管理部
71 経路情報管理部
72 VLAN ID管理部
80 コントローラMAC
81 ノード/VLAN ID管理部
82 ログインサーバ
83 ディレクトリサーバ
84 ファブリック管理部
90 サーバ
100 NIC
101 CPU
102 メモリ
200 上位プロトコル処理部
210 再送制御・順序制御部
220 送受信部
230 機能管理部
240 相手ノード機能テーブル

【特許請求の範囲】
【請求項1】
FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、
前記フレームの転送を行うネットワークと、
前記ノード及び前記ネットワークの管理を行うコントローラと、
前記ノードに対して設けられたゲートウェイと
を備え、
前記フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類され、
前記ゲートウェイは、前記ノードから受け取ったフレームが前記制御フレームか前記データフレームかを判定し、前記制御フレームを前記コントローラに転送し、前記データフレームを前記ネットワークに転送し、
前記コントローラは、前記ゲートウェイから受け取った前記制御フレームに基づいて前記管理を行い、
前記ネットワークは、前記ゲートウェイから受け取った前記データフレームを、前記コントローラを介することなく、送信先ノードに転送し、
前記ノードは、前記データフレームに対して再送制御・順序制御処理を実施する再送制御・順序制御部を備える
ネットワークシステム。
【請求項2】
請求項1に記載のネットワークシステムであって、
前記コントローラは、前記再送制御・順序制御部を備えるか否かをノード毎に示すノード機能テーブルを保持し、
前記ノードが前記送信先ノードとの間で前記データフレームの通信を開始する前に、前記コントローラは、前記ノード機能テーブルを参照することによって、前記ノード及び前記送信先ノードの両方が前記再送制御・順序制御部を備えているか否かをチェックし、
前記ノード及び前記送信先ノードの両方が前記再送制御・順序制御部を備えている場合、前記コントローラは、前記ノード及び前記送信先ノードの両方の前記再送制御・順序制御部を有効化し、
前記送信先ノードが前記再送制御・順序制御部を備えていない場合、前記コントローラは、前記ノードの前記再送制御・順序制御部を無効化する
ネットワークシステム。
【請求項3】
請求項2に記載のネットワークシステムであって、
前記再送制御・順序制御部を有効化する場合、前記コントローラは、有効化指示を前記ノードに送信し、
前記再送制御・順序制御部を無効化する場合、前記コントローラは、無効化指示を前記ノードに送信し、
前記ノードは、前記有効化指示に応答して前記再送制御・順序制御部を有効化し、前記無効化指示に応答して前記再送制御・順序制御部を無効化する
ネットワークシステム。
【請求項4】
請求項3に記載のネットワークシステムであって、
前記ノードは、前記送信先ノードが前記再送制御・順序制御部を備えるか否かを示す相手ノード機能テーブルを保持し、
前記有効化指示及び前記無効化指示に応じて、前記ノードは、前記相手ノード機能テーブルを更新し、
前記ノードの前記再送制御・順序制御部は、前記相手ノード機能テーブルを参照することによって、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施するか否かを決定し、
前記有効化指示の場合、前記相手ノード機能テーブルは、前記送信先ノードが前記再送制御・順序制御部を備えることを示し、前記ノードの前記再送制御・順序制御部は、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施し、
前記無効化指示の場合、前記相手ノード機能テーブルは、前記送信先ノードが前記再送制御・順序制御部を備えていないことを示し、前記ノードの前記再送制御・順序制御部は、前記送信先ノードとの間で通信される前記データフレームに対して前記再送制御・順序制御処理を実施しない
ネットワークシステム。
【請求項5】
請求項2乃至4のいずれか一項に記載のネットワークシステムであって、
前記再送制御・順序制御部を備えるノードは、前記再送制御・順序制御部を備えていることを示す機能通知を、通信開始前に前記コントローラに送信し、
前記コントローラは、前記機能通知に基いて前記ノード機能テーブルを更新する
ネットワークシステム。
【請求項6】
請求項1乃至5のいずれか一項に記載のネットワークシステムであって、
前記再送制御・順序制御部は、前記ノードのネットワークカードに組み込まれている
ネットワークシステム。
【請求項7】
請求項1乃至6のいずれか一項に記載のネットワークシステムであって、
前記ノードは、前記フレームの送信先MACアドレスを前記コントローラのMACアドレスに設定し、
前記ゲートウェイは、前記受け取ったフレームが前記データフレームの場合、前記データフレームの送信先MACアドレスを前記送信先ノードのMACアドレスに変換し、その後、前記データフレームを前記ネットワークに出力する
ネットワークシステム。
【請求項8】
請求項1乃至7のいずれか一項に記載のネットワークシステムであって、
前記ゲートウェイは、FCPフレームを前記データフレームと判定し、それ以外のフレームを前記制御フレームと判定する
ネットワークシステム。
【請求項9】
請求項1乃至8のいずれか一項に記載のネットワークシステムであって、
前記ゲートウェイは、前記ノードのネットワークカードに組み込まれている
ネットワークシステム。
【請求項10】
請求項1乃至9のいずれか一項に記載のネットワークシステムであって、
前記コントローラは、前記ネットワークにおける前記データフレームの転送経路を動的に変更する機能を有する
ネットワークシステム。
【請求項11】
ネットワークシステムにおけるフレーム通信方法であって、
前記ネットワークシステムは、
FCoE(Fibre Channel Over Ethernet)に基づいてフレームの送受信を行うノードと、
前記フレームの転送を行うネットワークと、
前記ノード及び前記ネットワークの管理を行うコントローラと
を備え、
前記フレームは、通信に必要な制御情報をやりとりするための制御フレームと、ノード間でデータを送受信するためのデータフレームとに分類され、
前記フレーム通信方法は、
前記ノードから送信されるフレームが前記制御フレームか前記データフレームかを判定するステップと、
前記制御フレームを前記コントローラに転送し、前記コントローラにおいて、前記制御フレームに基づいて前記管理を行うステップと、
前記データフレームを前記ネットワークに転送し、前記コントローラを介することなく、送信先ノードに伝送するステップと、
前記ノードにおいて、前記データフレームに対して再送制御・順序制御処理を実施するステップと
を含む
フレーム通信方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19A】
image rotate

【図19B】
image rotate

【図20】
image rotate


【公開番号】特開2012−114894(P2012−114894A)
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願番号】特願2011−86151(P2011−86151)
【出願日】平成23年4月8日(2011.4.8)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ETHERNET
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成22年度 総務省、「グリーンネットワーク基盤技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】