増え続ける通信モード
現時点でUTPケーブルを使用するEthernetの規格には、10BASE-T/100BASE-TX/1000BASE-T/10GBASE-Tの4種類がある。このうち、10GBASE-T(全二重のみ)以外には半二重通信と全二重通信の2つがあるため、最大で7つの通信モードが存在することになる。そのため、これらの規格が混在した環境でも、1台のスイッチにすべての通信モードの機器を接続し、相互に通信できることが望ましい。これを実現するためには、スイッチにケーブルをつなぐだけで、機器の通信モードを自動的に検知し同調する機能は必須となった。
このような事情により、「オートネゴシエーション(Auto-Negotiation:自動調停)機能」が登場した。オートネゴシエーションは、複数の通信モードに対応する機器の間で情報をやり取りし、自動的に最適な通信モードを設定する仕組みだ。端末と自分の双方が対応する通信モードの中から、もっとも速いモードを選択する。
オートネゴシエーションでは、通信モードだけでなく、先ほど述べたPAUSEフレームによるフロー制御への対応の有無も設定する。また、100BASE-T2や1000BASE-Tにおいては、端末間のクロックを合わせるために一方の端末をクロックの基準(マスタ)、もう一方はマスタに同期するスレーブとして設定する。
続いてオートネゴシエーションの仕組みを解説する。オートネゴシエーションを実装したネットワーク機器は、「ファーストリンクパルス(FLP:First Link Pulse)バースト」と呼ばれる信号により、自分がサポートする通信モードを相手に通知する。2台の機器がそれぞれ複数の通信モードをサポートする場合、IEEE802.3規格で規定された優先順位に従って通信モードが決定される(表1)。同じ速度で複数の選択肢がある場合は、より低品質なケーブルで動作する(=もっともコストパフォーマンスのよい)通信モードを選択する。
また、10BASE-Tや100BASE-TXの規格はオートネゴシエーションが標準化されるより前から存在するため、古い機器はオートネゴシエーションに対応しない。こういった機器と接続した場合でも、スイッチの通信モードを正しく自動設定するために「パラレルディテクション(Parallel Detection:並列検出)機能」も規定されている(図5)。
パラレルディテクションを用いた場合、接続相手から10BASE-Tのリンクテストパルスまたは100BASE-TXのアイドル信号を受信すると、相手がオートネゴシエーションをサポートしない機器であると判断する。そして検出した信号により、通信モードを10BASE-Tまたは、100BASE-TXの半二重通信モードに設定する。
なお、端末がオートネゴシエーションをサポートしていない場合でも、スイッチの通信モードを手動で設定することで全二重通信が可能になることもある。
現在の企業では、数年前に導入したプリンタは10BASE-T対応、3年前のパソコンは100BASE-TX対応、今年導入したサーバは1000BASE-T対応という構成がよくある。この場合、スイッチの全ポートが10BASE-T/100BASE-TX/1000BASE-Tのオートネゴシエーションに対応していれば、保有する機器をスイッチのどのポートにつないでも、自動的に適切な通信モードに調節される。このように、オートネゴシエーションは企業向けスイッチには必要不可欠な機能である。
この連載の記事
-
第6回
ネットワーク
IEEE802.1で実現するいろいろなLAN -
第5回
ネットワーク
銅線の限界に挑む10GBASE-Tの仕組みとは? -
第4回
ネットワーク
1GbpsのEthernetの実現手段を知ろう -
第2回
ネットワーク
Ethernetのフレーム構造を理解しよう -
第1回
ネットワーク
Ethernetはどのように誕生したの? -
ネットワーク
入門Ethernet<目次> - この連載の一覧へ