連載
» 2016年06月23日 07時00分 公開

SYSTEM DESIGN JOURNAL:データセンターのイーサネット、パイプが太ければ十分か? (2/4)

[Ron Wilson,(Editor-in-chief,Altera),MONOist]

クイック・ツアー

 問題の解決を探るためには、10Gbps(もしくはそれ以上)イーサネットインタフェースの内部を確認する必要があります。ブロックごとに見ていきましょう(図 2)。

図 2. 10Gbpsイーサネットインタフェースのバックエンドには、ごくわずかなファンクションブロックしかありません

 アプリケーションからのメッセージが、イーサネットのデータ長に対応したデータブロックに分割するポイントから始めることにしましょう。

 分割されたデータブロックは、宛先アドレスと恐らくは何らかの制御情報とともに、メディアアクセスコントローラー(MAC)と呼ばれる、イーサネットインタフェースの機能に渡されます。

 この転送は、TCP/IP(Transmission Control Protocol and Internet Protocol)またはUDP(User Datagram Protocol)によって、メッセージがそれぞれ固有の要件に合わせて形成された後、さらにPTP(Precision Time Protocol:時刻同期用プロトコル)のような機能がそれぞれ固有の特殊なメッセージを作成します。MACはデータブロックを受け取り、移動させるだけです。

 具体的に言えばMACの仕事は、各ブロックに同期信号を付加すること、イーサネット内の他のどこかにある別のMACアドレスを含むヘッダを追加すること、そしてTypeコードに組み込むことです。さらに、MACはCRC(Cyclic Redundancy Check)コードを計算して付加します。これは送信方向についての説明ですので、当然、受信側では逆の説明になります。

 これはごく単純な話に聞こえますが、それも速度についての考察を始めるまでのことです。

 速度が問題でない場合、MAC機能は全てソフトウェアで実装可能ですが、10Gbpsでは約100ミリ秒ごとに短いパケットが着信する可能性があります。このレートで処理できればよいのですが、さもなければバッファが必要になり、そのために追加のレイテンシや消費電力が発生します。

 レーンあたり25Gbpsまたは50Gbpsでは、比例して時間が短くなります。さらに高速なイーサネットリンク、例えば100ギガビットイーサネット(GbE)ならば10本の10Gbpsレーンというように、複数レーンとして実装されます。そのため、MACに対する負荷は上昇し続けます。

 セキュリティの一側面により、MACレイヤーはさらに複雑化します。MACsecはプリアンブルを含めてパケット全体(フレーム)を暗号化する規格で、データセンターのように、中間者攻撃が大きな脅威となる状況において特に役立ちます。このアルゴリズムは、多数の乗算および探索操作が必要であり、計算を極めて多用するため、ハードウェアアクセラレーションが欠かせず、それはレイテンシの追加につながります。

Copyright © ITmedia, Inc. All Rights Reserved.