期待のネット新技術

SDRの2.5GT/secに加え、DDRの5GT/secとQDRの10GT/secを2004年に追加サポート

【InfiniBandの現在】

 「InfiniBandの現在」では、規格としての歴史と現状、今後の動向をまとめて紹介している。大半の読者にとっては「InfiniBandって何?」というところだろうが、僚誌クラウドWatchをご覧になっておられる読者の中には「何で今さら」という方も居られるかもしれない。

 そう、InfiniBandという規格は、1999年に作業が始まり、2000年に最初の規格策定が行われたという「えらく古い」規格なのである。

x1構成でも単方向2対の信号線で双方向2Gbpsの帯域を確保

 2000年に制定されたInfiniBandのスペックは、当初は特に何も形容詞もなく、“InfiniBand”とのみ呼ばれていた。

 これは1x構成の場合で、信号速度は2.5GT/sec、8b/10bのエンコード(8bitのデータにEmbedded Clockや制御信号を付加した10bitのシンボルとして送り出し、受け取った側は10bitのシンボルから8bitのデータを取り出す)を利用するため、実効速度は2Gbpsになるというものだった。

 信号そのものはUni Directional(単方向)だが、2対の信号線をペアとすることで、双方向で2Gbpsの帯域が確保された。このInfiniBandの信号を4ペア集めたものが「4x」、12ペアが「12x」とそれぞれ表記され、4xだと信号速度は10GT/secで実効データ速度は8Gbps、12xだと30GT/secで24Gbpsになる計算だ。

 さて、仕様面で言えば、2002年にリリースされたSpecification Release 1.1まで、Signalingは2.5GT/secのままだった。信号まわりはVolume 2で定義されているが、そのChapter 6には"High Speed Electrical Signaling - 2.5Gb/s"が、Chapter 8には"Fiber Attachment - 2.5Gb/s"がそれぞれ定義されている。前者が銅配線、後者が光ケーブル配線での定義となっている。

銅配線のx1/x4/x12におけるケーブルとコネクターの構造は?

8pinが片側に並ぶ構成。接点部の幅は8.68mm

 ちなみに、銅配線ではシャーシ内のバックプレーンとケーブル接続の双方が想定されており、電気的なパラメーターはそれぞれにあわせて異なっているものの、Differentialの信号である点に違いはない。

 コネクターについても紹介しておこう。右が銅配線を利用する1x向けの8pinコネクターである。信号としては送信と受信が1対2本づつ合計4本で、これを挟むように3本のSignal Ground、それとChassis Groundが1本の、計8本である。

 これが4xになると、左下のような16pinコネクターに切り替わる。こちらはSignal Groundが省かれており、4xということで送受信それぞれ4対づつ、計16本のSignalが全てのピンに配されるかたちとなる。そしてChassis Groundは、コネクター外側の金属部を利用して接続される。

 では12xは? というと、右下のように横長のコネクターが利用される。こちらは48pinコネクターで、4xと同様に送受信それぞれ12対づつ、合計48本のSignalが全てに割り当てられる。コネクター外側の金属部をChassis Groundとして使う点も、4xと同じだ。

8pinが上下に並び、合計16pin。接点部の幅は13.32mm
24pinが上下に並ぶ。接点部の幅は37.32mm

光ファイバー配線のx1/x4/x12におけるケーブルとコネクターの構造は?

銅配線と異なり、光ファイバーは1本で信号を送れるので、本数そのものは半減する

 一方、光ケーブルの配線は、当然片方向あたり1本の光信号というかたちになる。ただしこちらは、2~500mの到達距離をサポートするSX(光源波長850nm)と、最大10kmの到達距離をサポートするLX(光源波長1300nm)の2種類がある。

プラグの先端(またはレセプタクルの奥)に2つ並んだ〇の部分が光ファイバーとの接続部
4xは12本分のうち両端の8本を使い、送受信4対を収める
12xでは送信用と受信用で別々のコネクターが用意されるかたち

 LXはシングルモードファイバーの利用が必須(マルチモードはSXのみでサポート)となるほか、マルチモードの方も最大到達距離がファイバーの特性に応じて75~500mまで変化するなど、いろいろと面倒な点がある。

 光ケーブル配線における1xは先に挙げたような構造で、コネクター部の機械式形状は、2本の光ファイバーをまとめて接続できるようになっている。

 では4x/12xは? というと、12本をまとめて接続できるコネクターを使い、4xはコネクターが1つ、12xはコネクターが2つで、それぞれ実装されることになっている。

DDRの5GT/secとQDRの10GT/secを追加でサポート

 2.5GT/sどまりだったInfiniBandは、2004年10月にリリースされたRelease 1.2でいきなり5GT/secと10GT/secが追加でサポートされた。Chapter 6は"High Speed Electrical Signaling - 2.5, 5.0, & 10.0 Gb/s"に、Chapter 8は"Fiber Attachment - 2.5, 5.0, & 10.0 Gb/s"に、それぞれ改定されている。

 Chapter 6の冒頭では、"This section describes the signaling that allows for InfiniBand link operation at 2.5Gbits/s(SDR), 5.0 Gbits/s(DDR) and 10 Gbits/s(QDR)."と表記されており、ここで従来のInfiniBandが“InfiniBand SDR”と改称され、ついでに5GT/secの“InfiniBand DDR”と10GT/secの“InfiniBand QDR”が新たに追加されたことになるわけだ。このRelease 1.2では、4xと12xの間を埋めるものとして、8xの構成も追加でサポートされた。

 余談であるが、通常DDRやQDRといった表記が使われる場合、基準となるのはクロック信号である。例えばDDR SDRAMの場合、クロック信号の立ち上がりと立ち下がりのタイミングでデータの送受信を行うから"Double" Data Rateだし、DDR2 SDRAMの場合、まず基準となるクロックの倍速の信号を作り、この倍速の信号の立ち上がり/立ち下がりタイミングでデータの送受信を行うので、元のクロック信号と比較した場合に"Quad" Data Rateと表現される。

 ところがInfiniBandの場合、基準となるクロック信号そのものも2倍または4倍速になる(でないとEmbedded Clockのかたちで埋め込めない)から、その意味ではDDR/QDRという表記はそぐわないことになる。ただし、InfiniBandに限って言えば、基準となるInfiniBand SDRのデータ転送速度に対する速度をDDR/QDRという表記で示している。

 ちなみにDDR/QDRでは、まず銅配線の場合は送信パラメーターやチャネルパラメーターがより厳しくなり、ノイズバジェットが20dB→15dBに減少する。このためSDRではオプション扱いのプリエンファシスと、受信側のイコライゼーションが新たに必須となるなど、やや難しくなっている。

 これは光ファイバーを利用した場合も同じだ。利用する光源波長は同じながら、到達距離がはSXでDDRで最大65~150m、QDRで最大33~82mへと短くなっている。またRelease 1.2では、4x/8x/12xのInfiniBand QDRの仕様が未定義のままであり、現実問題として、Release 1.2の段階で実装できるのはInfiniBand DDRまでとなっていた。

 なお、銅配線の場合は、特に到達距離などは定義されていないが、これはタイミングパラメーターなどによっても決まるからで、逆に言えばタイミングパラメーターに合致していれば、どれだけ伸ばしても問題ない、という話ではある。とはいえ、光ファイバーを利用した場合に比べて当然短くなる。目安として、Mellanox販売の「LinkX」というInfiniBand向けケーブルの一覧を見ると、Infiniband QDR用のパッシブケーブルで最長7mになっていて、おそらくDDRでも15mは行かず、SDRでも20m台前半に収まると思われる。

 実際、MellanoxのConnectX IB(Infiniband DDR 4x対応HCA)の説明では"20m+(10Gb/s) or 10m+(20Gb/s) of copper cable"という曖昧な表現がされている。つまり、SDR 4xの場合なら20mまで、DDR 4xなら10mまでは可能で、その先の+αは場合によって、という程度と考えられる。

 もっともこのままだと、既存のSDRを銅配線で利用していた顧客が、DDRやQDRへ移行できなくなるケースも考えられる。これをカバーするため、Release 1.2ではChapter 7.8としてActive Cableの仕様が追加された。要するに、配線内部にブースターアンプを追加することで、長距離接続でも信号品質を保とうというもので、これに向けて電源供給のラインなども、信号ピン定義に追加されている。

 ちなみに、QDRの詳細が未定義な件であるが、2004~2005年頃と言えば、IntelとTSMCが相次いで90nmプロセスでの量産をスタートしたころだ。このため、5GT/sの信号を扱うことはそれほど苦ではない(PCI Expresss Gen2がまさにこれであった)が、10GT/sの信号を扱うのは、不可能ではないにせよエリアサイズおよび発熱の点で当時はかなり厳しい状況だった。特に発熱は結構シビアな問題で、これを先送りとし、当面は5G/sをターゲットとしたインプリメントが行われたのは妥当と思われる。

大原 雄介

フリーのテクニカルライター。CPUやメモリ、チップセットから通信関係、OS、データベース、医療関係まで得意分野は多岐に渡る。ホームページはhttp://www.yusuke-ohara.com/