コリジョン(collision)とは、イーサネットや無線LANのフレームが衝突すること。衝突するとフレームを届けるための電気信号が乱れて、通信できない可能性がある。

 旧式のイーサネット規格では、1本の線を複数の端末で共有していた。そのため1台の端末が通信している間にほかの端末が通信を始めると、フレームの衝突が起こる。そこで衝突を避けるため、「CSMA/CD」(Carrier Sense Multiple Access/Collision Detection)という仕組みを用意した()。

図●キャリアセンス(CS)と衝突検知(CD)
図●キャリアセンス(CS)と衝突検知(CD)
[画像のクリックで拡大表示]

 CSMAの「CS」(キャリアセンス)とは、フレームを送信したい端末が、まずほかの端末がフレームを送信していないかを確かめること。誰もフレームを送信していないことを確かめてから、送信を始める。それでもたまたま同時に別の端末がフレームを送ると、衝突してしまう。そこで用意されたのが「CD」(衝突検知)だ。2台以上の端末が同時に電気信号を送ると、ケーブル上の電圧レベルが通常より高くなる。これを検出すると、衝突が発生したとみなす。衝突を検出すると全端末は通信を一定時間停止し、端末ごとにランダムな待ち時間を置いて再送する。

 現在のイーサネットでは、LANスイッチを経由して複数の端末が同時に送受信する「全二重通信」が一般的で、CSMA/CDは使わない。送受信を交互にする「半二重通信」では使うが、その場合もデータの送信/受信線が分かれたケーブルを使うので実際は衝突していない。送信中にほかの端末のフレームを受信したら衝突と見なしているだけだ。

 一方、無線LANでは「CSMA/CA」(Carrier Sense Multiple Access/Collision Avoidance)という仕組みで衝突を防ぐ。有線と違い、無線では衝突が起こったかどうかを簡単には把握できない。そこですべての無線LAN機器は、フレームを送る前にほかに通信中の機器がないかをチェックする。通信中であれば待機し、通信中でなければ待ち時間の後にデータを送信する。