[ネットワークメモ]
 情報処理技術者(テクニカルエンジニア:ネットワーク)
 を目指す初心者のためのネットワークメモ。
 今回はイーサネットのお話です。
▲IT関連情報へ戻る
直感的に理解するイーサネット(第2回) (2003/11/05 更新)
●衝突(コリジョン)
前回イーサネットは糸電話みたいなものだというお話をしました。だとすると次のような不都合が発生する可能性があります。

下の図を見てください。「おさげ」が「キャップ」に何か伝えようとしたら、同時に「バンダナ」も「ボウズ」に何か伝えようとしました。すると声と声がぶつかって何を言っているのかみんながわからなくなります。
しかたないので、「キャップ」か「ボウズ」あたりが「何言ってんだかわかんない!」と答えます。

  

「バンダナ」と「おさげ」は適当な時間を空けて、もう一度しゃべることになります。その時も重なってしまえば上のやり取りが何度も繰り返されます。何度かやっていれば、いずれ重ならない時がありますので、いずれ伝わります。

イーサネットでも同じような問題が発生します。2台以上のコンピュータが同時にデータを送信してしまうケースです。
下の図を見てください。
CompAからCompBにデータを送信するのと同時に、CompCからCompDにデータを送信しようとしました。するとデータが混ざってしまい各コンピュータに「変なデータ」が届いて、判断に困ります。この状態を「衝突(コリジョン)」と呼びます。
実際には「変なデータ」を処理することはしません。イーサネットのデータは通常時、0Vから-2Vの電圧で送られます。ところが2台以上のコンピュータが同時にデータを送ると電圧が-2V以下になります。各コンピュータはこの電圧を監視して「衝突(コリジョン)」を判断しています。「衝突(コリジョン)」を一番最初に検出したコンピュータは、全コンピュータに向けて「衝突(コリジョン)が起こった」と伝えるデータを流します。このデータを「ジャム信号」と言います。


衝突(コリジョン)が起こる。

一番最初に衝突(コリジョン)を「知った」コンピュータ(ここではComp B)が全コンピュータに向けてJAM信号を発信する。

「ジャム信号」を各コンピュータが受け取ると、各コンピュータは少しの間沈黙して、それぞれランダム時間経過後にデータ送信を開始します。それでもまた「衝突(コリジョン)」が起きると上記の繰り返しです。たまたま「衝突(コリジョン)」が起きずにデータを送信できれば、データが届きます。
つまり、「適当に投げてダメだったら、また送りゃいいじゃん」という仕組みなのです。実際のコンピュータの処理は高速なので、そう頻繁に「衝突(コリジョン)」は起こりません。何度か起こったところで、私たちは気付きもしないでしょう。そのためこの仕組みが成り立ちます。ところがコンピュータ台数が増加してくると同時に複数台のコンピュータが送信しようとする確率が上がってきます。「衝突(コリジョン)」が頻発して、再送を幾度も繰り返し、にっちもさっちもいかなくなってきます。その状態を「輻輳」と呼びます。「輻輳」状態になってどうにも仕事にならなくなったら、ネットワークを分断して、1つのネットワークのコンピュータ数を減らし、ネットワーク同士を「ルータ」や「ブリッジ」や「スイッチ」といった機器を利用してつなぎます。

■本日の疑問点
解説しておいて、疑問点もないものですが、こうしてまとめてみるとわからないところが出てくるのでメモしておきます。
1:「JAM信号」は「衝突(コリジョン)」を起こさないのか。「JAM信号」は「衝突(コリジョン)」時に発信されるのだから、必ずその「衝突(コリジョン)」の原因(まだ送信中)のコンピュータとまた「衝突(コリジョン)」するはず。それを検出したコンピュータがやはり「JAM信号」を送信するとすれば、いつまでも「衝突(コリジョン)」が解消しないのではないか。
と、いうように資格を取ったところで、わからないところはちっとも減りません。つまり資格取得は「完全理解」ではなくて、「わからないところが少ないと取得確率が上がる」程度のものです。少しでもその確率を上げるために、一緒にがんばりましょう。


講師プロフィール:里村俊一
1995年 慶應義塾大学経済学部卒
同年 千代田生命情報システム株式会社入社
1998年 千代田生命情報システム株式会社を退社し、株式会社知識計画に入社。
2001年 情報処理技術者(テクニカルエンジニア:ネットワーク)を取得。
今に至る。

ご意見・お問合せはinfo@satram.jpまで
Copyright 2003 Satellite RAMBLING. All rights reserved.