図3 イーサネットの伝統的な通信方式
「CSMA/CD」はギガビット・イーサネットではそのまま使えない
図4 送信データは符号化されてケーブル上を送られる
100mの距離を1Gビット/秒もの伝送速度で通信しようとすればケーブル上を流れる信号は減衰などによる影響を強く受ける。このような影響をなるべく低く抑えるように符号化が行われる。

余分なデータを着せて距離を延ばす

 しかし,イーサネットが過去との互換性を保ちながら発展してきた以上,CSMA/CDをあっさりと捨て去るわけにもいかない。そこでギガビット・イーサネットでもCSMA/CDを実現できるように考え出された苦肉の策がキャリア・エクステンションというしくみである(図3[拡大表示])。これは,最小フレーム・サイズが64バイトでは足りないから,無理やりダミーのデータを付け足して512バイト(4096ビット)まで大きくし,距離を延ばしてしまえという強引なアイデアである。こうすることで,100Mイーサネットと同じ100mのケーブルでCSMA/CDをサポートできるのである。

 ただ,このキャリア・エクステンションでCSMA/CDを実現しても,余分なデータ分だけ無駄になる。そこで,1000BASE-Tではオプションでフレーム・バーストという技術を取り入れている(図3)。

符号化処理で伝送周波数を下げる

 次は,UTPケーブルを使う1000 BASE-Tで1Gビット/秒を実現する際に立ちはだかる限界とそれを克服する工夫について見ていこう。ここがギガビット・イーサネットの技術を知るうえで中核となる部分である。

 基礎編では,1000BASE-Tは,より対線を4対使うことで1対当たりのデータ伝送速度を250Mビット/秒に下げて送信すると説明した。しかし,実は250Mビット/秒をそのまま100Mイーサネットと同じ方式で送ろうとしても,まだケーブルを伝わる電気信号の周波数としては高すぎる。既存のUTPケーブルを使って,100Mイーサネットと同じ100mの距離を伝送するには,もっと周波数を下げる工夫が必要になる。

 そこで1000BASE-Tでは特別な符号化処理を行って,電気信号として流す周波数を下げる工夫をしている。

電圧の差で5値のデータを作り出す

 では,具体的に1000BASE-Tが採用した符号化方式である8B1Q4という方式について見ていこう(図4[拡大表示])。

 8B1Q4では,まず送信するデータ(MACマックフレーム)を8ビットごとに区切る。次にこのデータにエラー検出用のビットを加えて9ビットに変換する。さらに,この9ビット(0~511の512通り)のデータを4組の5値符号に割り当てるという処理を行う。ここが1000BASE-Tの符号化処理のキモとなる部分である。

 5値符号というのは一つの符号に五つの値を持たせること。つまり,1回に0か1かという二つの値を送るビットとは違い,5値データは1回に「+2,+1,0,-1,-2」というように五つの値を送るわけだ。この5値データを電気信号として送る際には,5段階の電圧差を用意する。1000BASE-Tの場合は,「+1.0V,+0.5V,0V,-0.5V,-1.0V」にそれぞれの値を割り当てる。

 1000BASE-Tでは,4対のより対線で別々にこの5値符号を送る。つまり,一度に送れる情報量は,5の4乗,つまり625通りのデータを伝送できることになる。ここに9ビット(512通り)のデータを乗せて送るのである。

 符号化処理によって8ビットの元データを1回でケーブル上に乗せていることになるので,一つの信号を作る処理速度,つまりシンボル・レートは1Gの8分の1の125MHzになる。さらに,電気信号としてケーブルに送り出されるときには,5値符号にした効果が出る。単純計算はできないが,電気信号の周波数は,結果的に約80MHzの帯域幅に収まる格好になる。この約80MHzという周波数は100Mイーサネットで利用するUTPケーブルの規格上,なんとか収まる周波数なのである。