コンピューターサイエンス:アルゴリズム / OS / ネットワーク / DB
ルーター・スイッチ・ハブ
4 台つないだだけで、他人の通信まで見えてしまう
一番素朴な中継機がハブです。ハブは、あるポートから入ってきた電気信号を、残り全部のポートにそのまま流します。宛先を見ていないからです。
4 台つないだハブで A が B に送ると、その信号は C にも D にも届きます。関係のない機器が他人の通信を丸ごと受け取れてしまいますし、全員の通信が同じ道を奪い合うので速度も出ません。いまのネットワークでハブがまず使われないのはこのためです。
宛先を覚えれば、余計な相手に流さずに済む
代わりに使われるのがスイッチです。スイッチは「どのポートの先に、どの機器がいるか」を表にして持っています。B 宛のフレームが来たら、B がいるポートにだけ流します。
賢そうに見えますが、最初は何も知りません。フレームを受け取るたびに「この差出人は、このポートから来た」と 1 行ずつ書き足していきます。表にない宛先が来たときだけ、ハブと同じように全ポートへ流します。返事が返ってくればその相手も表に載るので、使うほど無駄が減っていく仕組みです。
この表には有効期限があります。しばらく通信のなかった相手は消され、次に来たときにまた全ポートへ流されます。機器を別のポートに挿し替えた直後だけ通信が不安定になることがあるのは、古い記録がまだ残っているためです。
速度の面でも差が出ます。ハブでは全員が同じ道を奪い合うので、台数が増えるほど 1 台あたりの取り分が減ります。スイッチでは関係のない組み合わせが同時に通信でき、道を分け合わずに済みます。
別の網へ渡すには、もう 1 段上を見る必要がある
スイッチが見ているのは、隣り合った機器を指す MAC アドレスだけです。これは同じ網の中でしか通用しません。別の網へ出すには、IP アドレスを見て中継する機器が要ります。それがルーターです。
住所が 2 種類ある理由も、ここではっきりします。IP アドレスは最終的な宛先を指しますが、目の前の 1 歩をどこへ渡すかまでは指しません。隣へ手渡すための宛先が MAC アドレスです。荷物に最終の届け先を書きつつ、いま手渡す相手は目の前の配達員、という二重構造になっています。
| 機器 | 見ているもの | やること |
|---|---|---|
| ハブ | 何も見ない | 入った信号を全ポートへ流す |
| スイッチ | MAC アドレス | 同じ網の中で、宛先のポートへだけ流す |
| ルーター | IP アドレス | 別の網へ橋渡しする |
家の Wi-Fi ルーターは、家の中の網とプロバイダ側の網という 2 つをまたいでいます。外向けのデータは、家のルーターからプロバイダのルーターへ、さらに大きなルーターへと、何十台も渡り歩いて目的地に着きます。ルーターを 1 台通過するごとに 1 ホップと数え、この数が経路の長さの目安になります。
なお家庭用の「ルーター」という箱は、実際にはルーターとスイッチと無線の親機が 1 つに詰まった製品です。言葉の指す範囲が業務用の機器と違うので、構成を話すときは「どの機能のことか」を分けて考えてください。「ルーターの調子が悪い」と言われたとき、疑うべき機能がまるで違ってきます。
復習ミニクイズ
スイッチが転送判断に使うアドレスはどれですか