オートネゴシエーション
イーサネットでつながった2つの機器が、お互いに対応している通信速度と、全二重・半二重などの通信モードを伝え合い、両方が使える最もよい組合せに自動で合わせる機能。
イマシルちゃんの解説
はじめて会った人と話すとき、「日本語は話せますか?」「英語なら?」って、
お互いに使える言葉を確かめてから話し始めるよね。
機器どうしも、つないだ瞬間に「ぼくは1Gまで出せるよ」「こっちは100Mまでだよ」ってこっそり伝え合って、
2人とも使える、いちばんいい速さとやり方に決めるんだ。
より深い解説
定義
オートネゴシエーションは、IEEE 802.3で定められた、ツイストペアケーブルのイーサネットで、接続した機器どうしが、FLP(Fast Link Pulse)という信号で自分の能力を知らせ合い、通信の条件を自動で決める仕組みである。
決める内容
| 項目 | 内容 |
|---|---|
| 通信速度 | 10Mbit/s、100Mbit/s、1Gbit/s など |
| 通信モード | 全二重(送信と受信を同時に行う)、半二重(送信と受信を切り替えて行う) |
| フロー制御 | PAUSEフレームを使うか |
両方が対応している中で、優先順位が最も高い組合せ(速く、全二重のもの)が選ばれる。
全二重と半二重
| 全二重 | 半二重 | |
|---|---|---|
| 送受信 | 同時にできる | 交互に行う |
| 衝突 | 起きない | 起きる(CSMA/CDで制御) |
| 主な接続 | スイッチとの接続 | リピータハブとの接続 |
デュプレックスミスマッチ
一方をオートネゴシエーション、もう一方を速度と全二重に固定すると、オートネゴシエーション側は相手の能力を知る信号を受け取れない。このとき、速度は信号から判別できても、通信モードは半二重と判断してしまう。片側が全二重、もう片側が半二重の状態をデュプレックスミスマッチといい、リンクは上がるのに、衝突やエラーが多発して通信が極端に遅くなる。
設定は、両側をオートネゴシエーションにするか、両側を同じ値に固定するかのどちらかにそろえる。
1000BASE-T以上
1000BASE-Tでは、オートネゴシエーションは必須である。マスタとスレーブ(クロックの基準をどちらにするか)も、この仕組みで決める。