連載:FCoEプロトコル速解(2)
FCoEを支える拡張イーサネットの概要
ブロケードコミュニケーションズシステムズ株式会社
小今井 裕
2008/12/18
FCoEと呼ばれる技術が注目を集めるようになってきた、これは現在、独立したストレージ・エリア・ネットワーク(SAN)上でストレージへのアクセスのために利用されているファイバチャネル・プロトコルを、LANで広く使われているイーサネット上で動かすというものだ。今回はFCoEを実現するための重要な前提条件となる新たなイーサネット仕様について紹介する |
FCoEのカギは拡張イーサネットのCEE
- - PR -
前回はCEE/FCoEが必要とされている背景とともに、FCoEのプロトコルとしての特長を含め、FCoEが新しい10GbpsイーサネットであるCEEの上位レイヤに既存のファイバチャネルプロトコルをマッピングした技術であること、さらには現在SANで使用されているファイバチャネルがどのようなプロトコルであるかについて説明した。
現在キーワード的に注目されているのはCEEよりFCoEであるが、統合ネットワークを実現するための鍵を握っているのはむしろ、新たに拡張されたイーサネット「CEE」である。今回は、なぜ既存のイーサネットではなく、ネットワーク統合の前提として新しいイーサネット「CEE」が必要とされているのかに焦点を当てて説明していく。
前回の繰り返しになるが、ファイバチャネルの重要な特性は、フレームドロップを「しない」前提で、フレームの順序配信を前提とした高いデータ整合性、低遅延、高速・大容量データ転送が可能なことである。ファイバチャネルのフロー制御には、BB Credit (Buffer-to-Buffer Credit)という仕組みが使用されている。リンク確立時に、送信ポート・受信ポート間でネゴシエーションを行い、お互いが持ちうるバッファサイズ(1バッファーは1フレーム分)のどちらか小さい方のバッファサイズでリンクを確立する。これにより送信側は受信側が受信できるフレーム数を認識しているため、受信側で受信できない量のフレームを送信することはない。これにより、「フレームロスしない」データ転送を実現している(図1)。
図1 ファイバチャネルBB_Creditによるフロー制御 |
一方、既存のイーサネットのパケット転送の仕組みでは、いままでファイバチャネルで実現していたように、データ転送を保証することができない。また、CEEではフレームドロップを想定「しない」プロトコルを含む、複数のプロトコルを1つの物理リンクに通すことを想定している。この2つの理由から、既存10Gbpsイーサネットに新たな要件が必要とされている。 CEEに対応するために必要な、新たなプロトコルは、IEEE 802.1の「The Data Center Bridging (DCB) Task Group」とIETF により標準化が進められている。DCBではファイバチャネルやInfiniBandなど、現状データセンタ内のイーサネットと異なり高信頼、低遅延が必要とされるリンクレイヤプロトコルのためのIEEE 802.1に対する拡張を進めている。
「CEE対応」するためには下記の標準に準拠する必要があるが、これらのプロトコルはまだ標準化作業中である。
Congestion Notification (CN) - IEEE 802.1 [802.1Qau]
Priority-based Flow Control (PFC) - IEEE 802.1 [802.1Qbb]
Enhanced Transmission Selection (ETS) - IEEE 802.1 [802.1Qaz]
Data Center Bridging eXchange (DCBX) protocol - IEEE 802.1
TRansparent Interconnection of Lots of Links (TRILL) in the IETF
CEEを支える5つの主な標準
Congestion Notification (CN)
CNではCongestion Point(受信ポート)が受信キューをモニタし、輻輳をReaction Point(送信ポート)に通知する。通知を受けたReaction Pointはトラフィックシェーピングを行うことで、フレームロスが発生しないように転送量を調整する。CNの実装として、Backward Congestion Notification(BCN)、Quantized Congestion Notification(QCN)、Explicit Congestion Notification(ECN)という3つの方式がある。
CNのフレームとフレームヘッダは、CNを理解できるスイッチとエンドノードで構成されたドメイン内でのみ処理され、既存のエンドノードや将来の異なる技術を使用したシステムとの相互接続性や互換性の問題が生じないような実装が目指されている。TCPにはネイティブな輻輳(ふくそう)管理の仕組みがあるが、CEEのCNではTCPよりさらに下位の層で輻輳管理が行われ、より効率的な輻輳制御ができるので、上位のプロトコルとしてTCPを使用する場合にもメリットがある。
Priority-based Flow Control (PFC)
CEEが使用される環境では、遅延の影響を受けやすいIPC(プロセス間通信)や、フレームロスの影響を受けやすいストレージなど、ネットワークとして必要とされる特性が異なるプロトコルが同一物理リンク上を流れることが想定される。輻輳によるフレームロスをなくすためには、リンクレベルによるフロー制御が必須となるが、現在の802.3xによるPAUSEでは、仮に性質の異なるトラフィックが同一物理リンク上を流れていた場合、すべてのトラフィックが止められてしまう。
図2 Priority-based Flow Control(PFC)の動き |
PFCはCNを補完する機能であり、輻輳によるフレームロスを回避するために、同一物理リンクを通るトラフィックに対して、トラフィック毎にプライオリティ(優先度)を与え、プライオリティ毎にリンクを論理的に分離する。これにより、特定のプライオリティに対してのみPAUSEを送信することができ、トラフィック毎のフロー制御が可能となる。実際のプライオリティはVLANタグ(802.1Q tag )内の3-bitを使用して8つのプライオリティで定義されており、プライオリティ毎にPFCを有効・無効に設定することもできる。また、PFCはホップ単位で機能するため、経路上の他のリンクに自動的に転送されることはない。
Enhanced Transmission Selection (ETS)
ETSは各トラフィックに対して定義されたプライオリティをもとに、帯域制御を可能にするプロトコルである。ETSでは、まず各プライオリティを、プライオリティ・グループ(PG)に割り当てる。現状PGは8つのグループを持つことが可能であるが、必要とされるネットワーク特性が似たようなトラフィックに割り当てられている複数のプライオリティであれば、それら複数のプライオリティを1つのPGに割り当てることも可能である。帯域制御を受けないプライオリティが使用する残りの帯域を各PGで共有するが、各PGに対しての割り当てはあらかじめパーセンテージ(%)で定義される。また、仮にあるPGに割り当てられた帯域幅が使用されていない場合には、他のPGが未使用の帯域を使用でき、複数のトラフィックで共有されたリンクを効率的に使用できる仕組みになっている。
図3 Enhanced Transmission Selection(ETS)の動き |
上記のCN、PFC、ETSについては802.1Qとの互換性や混在が可能なように標準化が進められている。
1/2 |
Index | |
FCoEを支える拡張イーサネットの概要 | |
Page1 FCoEのカギは拡張イーサネットのCEE CEEを支える5つの主な標準 Congestion Notification (CN) Priority-based Flow Control (PFC) Enhanced Transmission Selection (ETS) |
|
Page2 Data Center Bridging eXchange (DCBX) protocol TRansparent Interconnection of Lots of Links (TRILL) CEEの機能とファイバチャネルの比較 |
- Windows 10の導入、それはWindows as a Serviceの始まり (2017/7/27)
本連載では、これからWindows 10への移行を本格的に進めようとしている企業/IT管理者向けに、移行計画、展開、管理、企業向けの注目の機能について解説していきます。今回は、「サービスとしてのWindows(Windows as a Service:WaaS)」の理解を深めましょう - Windows 10への移行計画を早急に進めるべき理由 (2017/7/21)
本連載では、これからWindows 10への移行を本格的に進めようとしている企業/IT管理者に向け、移行計画、展開、管理、企業向けの注目の機能を解説していきます。第1回目は、「Windows 10に移行すべき理由」を説明します - Azure仮想マシンの最新v3シリーズは、Broadwell世代でHyper-Vのネストにも対応 (2017/7/20)
AzureのIaaSで、Azure仮想マシンの第三世代となるDv3およびEv3シリーズが利用可能になりました。また、新たにWindows Server 2016仮想マシンでは「入れ子構造の仮想化」がサポートされ、Hyper-V仮想マシンやHyper-Vコンテナの実行が可能になります - 【 New-ADUser 】コマンドレット――Active Directoryのユーザーアカウントを作成する (2017/7/19)
本連載は、Windows PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「New-ADUser」コマンドレットです
|
|