ユビキタスネットワーク 其の二 20171016
Ethernetについて
データリンク層
多重アクセス制御が大事になってくる。この方法には二種類ある。
- メディアアクセス制御(MAC)
- 論理リンク制御(LLC)
この二種類の制御方法のことをサブレイヤと呼び、データリンク層にはMACとLLCのサブレイヤが入っている構造になっている。
MAC(メディアアクセス制御)
多重アクセス制御を行い、無線、優先などLANの種類によって使う領分が違う。
LLC(論理リンク制御)
作られた当初、何もしないタイプ1と、フレームの送信確認などの重装備を持ったタイプ2などのタイプがあった。しかし、今では何もしないタイプ1だけが生き残っている。
Ethernetの歴史
1980年に開発された。それまでの通信速度が300~9600bpsだったのに対して、いきなり10Mbpsをたたき出す。ここでは、主な構造について順を追って書いていく。
同軸ケーブル
今やTVのケーブルとして使われている同軸ケーブルが初期のEthernetに使われてた。この同軸ケーブル、内側と外側に電流がそれぞれ流れているので、互いの電流が磁場を打ち消し合います。そんな話はさておき、この同軸ケーブルを使って高周波信号を送っていたわけです。
仕組みとしては、一本の同軸ケーブルの合間にトランシーバと呼ばれるものを針で刺して接続。各端末に電流が通るようにします。同軸ケーブルの両端は無反射終端にして、電流が跳ね返ってくるのを防ぎます(これができてないと衝突が起こってしまう)。こうすることで、どこかの端末が信号を送れば、同軸ケーブル内を信号が走り、各端末に一回ずつ信号が伝播し、無反射終端で信号が消滅する。
フレームという概念
データを一気に送信しようとすると、ほかの作業に支障が出たりとあまりうれしくない。そこでフレームという単位に分けて、そのフレームごとに送信している。フレームの構成は次の通り。
- プリアンブル(7バイト)
- SFD(1バイト)
- 宛先アドレス(6バイト)
- 送信元アドレス(6バイト)
- データタイプ(2バイト)
- データ(46~1500バイト)
- SCF(4バイト)
プリアンブルとSFD
フレームの最初の8バイトには、プリアンブルとSFDと呼ばれるビット列が格納されている。これは、どこからデータの送信が始まるのかを宛先側に教えて準備をさせる役割を担っている。いきなりデータに来てもらわれては、宛先側もたまったもんじゃない。
具体的なビットパターンは
- プリアンブル:10101010
- SFD :10101011
となっている。プリアンブルは7バイト分あるので、このビットパターンを7回繰り返すことになる。
FCS
これは、誤り検出を可能にするものになっている。
フレームの送受信
フレームの送受信には、CSMA/CDという手法を用いていた。この手法は通信どうしが衝突しないために必要になってくる。他の端末が信号を送信していたら送信見送り。送信が終わるまで待ち、ランダム時間待ってから自分のデータを送信する。
プロセスは自分が流したデータと違うデータが流れていたら衝突とみなして処理中止というもの。ただ、この方法には、衝突を判断する前にフレームを送信しきってしまうという問題がある。この原因は大きく二つ。フレームが短い場合か、ケーブルが長い場合。このため、フレームの最小長は64バイトとなっており、データのサイズの最小値も46バイトと定められている。また、ケーブルの最大長も1kmと定められている。
ケーブルの種類は長さや直径によって変わり、
- Thick Coax:10BASE-5(500m)
- Thin Coax:10BASE-2(200m)
のような種類が存在する。
Star型ネットワークの登場
これまでの同時期ケーブルを使ったデータ通信はBus型と呼ばれるもの。これではすべての端末に一回一回信号が送信されてしまったりなどと無駄が多かった。そこで提案されたのが、一つのハブから各端末にケーブルが伸びるようなStar型ネットワーク。この方式が出てきてしばらくは、ハブの機能は同軸ケーブルと変わらなかった。
しかし、次第に「別の端末に信号送るの無駄じゃん?」って感じでスイッチングハブの提案がされた。
Ethernetの名称
二つ前のセクションにも出てきた「10BASE-2」「10BASE-5」とかいう表記法だが、これは三つのことを表している。
- 伝送レート
- ビット列の加工の有無
- メディア(ケーブル)に関係するもの
1.はそのままの意味です。伝送レートを表している。
2.の値が「BASEの」場合はビットの加工はしていない。他に「BROAD」という表記があるが、こちらはビットを加工しているものを表す。しかし、めったにない。
3.は同軸ケーブルか、何メートルのケーブルなのかなど、メディア関連のことを表現している。UTPケーブルを用いているときの表記は「-T」と決まっている。
したがって、伝送レート10Mbpsでビット加工なし、UTPケーブルを用いているEthernetの表記は「10BASE-T」ということになる。