♣第2回はデータリンク層からおさえておきたいベスト3!♣
♦第1位 スイッチの動作 (スイッチング)
データリンク層のネットワーク機器といえばスイッチ (L2スイッチ) です。スイッチはデータリンク層ヘッダ内にあるMACアドレスを確認して、単一の方向へとデータを転送することができます。これを”スイッチング”といいます。
スイッチングをどのように実現しているかについて、少し説明いたします。
スイッチはMACアドレステーブルというものを所持しています。これは、自身のインターフェイス番号とそこに接続された機器のMACアドレスとを対応づけたものです。
実際に転送されてきた通信と、自身の持っているMACアドレステーブルとを比較して、一致したインターフェイスから転送を行っています。
ただし、これはMACアドレステーブルに情報が登録されていること前提でのお話です。情報が登録されていなかったとしたらどうなるのでしょうか?
スイッチは宛先を知らない通信が届くと、届いたインターフェイス以外のすべてのインターフェイスから通信を転送します。このスイッチの動作のことを”フラッディング”といいます。
次回以降、もう少し詳しく見ていくことになると思いますので、今回はここまでおさえておいてください。
♦第2位 コリジョンドメイン・ブロードキャストドメイン
まずは全二重通信・半二重通信についておさえておきましょう。
・全二重通信 送信用の伝送路と受信用の伝送路がそれぞれ用意されている通信形態
・半二重通信 送受信をひとつの伝送路で行う通信形態
私は地方の出身なのですが、現在は東京近郊で暮らしています。
毎日電車通勤をしているのですが、都会の線路は全二重ですね。なぜなら上りと下りの電車がすれ違うからです。
地元ではそうはいきません。駅で上り (下り) の待ち合わせを行います。駅以外は線路が一本しか敷設されていないのですれ違えないわけです。これは半二重に相当します。
社会 (地図記号) 的に言えば、
複線 全二重
単線 半二重
です。身近なものに例えることが知識の定着への第一歩です。皆さんも周りの全二重・半二重を探してみてください。
※余談ですが、JRの地図記号は上図の様になっているようです。上が複線以上、下が単線を表しています。
さて、前提知識の確認が済んだところで本題です。
・コリジョンドメイン 通信の衝突が起こりうる範囲
・ブロードキャストドメイン ブロードキャスト通信の届く範囲
まずは各ネットワーク機器の特性を見てみましょう。
表.コリジョンドメイン・ブロードキャストドメインの分割
機器 | コリジョンドメイン | ブロードキャストドメイン |
---|---|---|
ハブ | × | × |
スイッチ | ○ | × |
ルータ | ○ | ○ |
試験の知識としては上述の内容が頭に入っていれば問題ありません。
ではなぜコリジョンドメイン・ブロードキャストドメインを分割する必要があるのか少しだけ詳しく見ていきましょう。
コリジョンドメインは通信の衝突が起こりうる範囲のことを指します。衝突が起こらないようにすることがネットワークの品質向上へとつながりますので、コリジョンドメインの分割を行う機器は衝突検知をして、衝突を事前に防ぐ必要性が出てきます。衝突検知を行う範囲が狭まればそれだけパフォーマンスが向上しますので、スイッチやルータではコリジョンドメインを分割するのです。
ブロードキャストドメインはブロードキャスト通信の届く範囲のことを指します。宛先を指定して行う通信の前準備として、ブロードキャスト通信が使用されます。同一のブロードキャストドメイン内に機器が多くなればなるほど、無駄なブロードキャストが回線上を流れることになります。逆に言えば、ブロードキャストドメインをコンパクトにしておくことで無駄なトラフィックを減少させることができます。
以上の理由から、ネットワーク機器は各ドメインの分割を行っています。
♦第3位 フロー制御
回線上には複数の通信が飛び交っています。受け取ったネットワーク機器がそのまま何も考えずにデータをすぐさま転送してしまうと、伝送路上でコリジョンが発生してしまいます。そこで、ネットワーク機器には送られてきた通信を一時貯めておくバッファと呼ばれるものを持っています。このバッファに貯めた通信を処理していくのですが、処理のスピードを送られてくるデータの量が上回ってしまう場合があります。そこでバッファの閾値を決めておいて、貯めている通信の量が閾値を超えないようにフローを制御する仕組みがとられています。
例えば、あなたとあなたの友人が蛇口 (送信元) からホースを使ってバケツ (バッファ) に水 (データ) を貯めているとします。あなたはバケツからコップで水をすくって草花に水遣りをする係です。コップで頑張ってすくっても、友人が蛇口を開けすぎてバケツから水が溢れてしまいそうです。バケツから水を溢れさせないためにはどうしたら良いでしょうか?
答えは簡単ですね。友人に蛇口を締めてもらえば良いのではないでしょうか。
通信の世界でも同じことが行われています。データが溢れそうと機器が判断したら、送信元に通信を中断してもらうのです。これをフロー制御といいます。
バックプレッシャーとIEEE802.3x
フロー制御の方式は半二重通信と全二重通信とで異なります。半二重はバックプレッシャー方式、全二重はIEEE802.3xとなっています。閾値を超えた際の動作が少し違っています。
・バックプレッシャー方式
閾値を超えると、送信元にジャム信号を送信。ランダムな時間送信を停止してもらう。
・IEEE802.3x
閾値を超えると、PAUSEフレームという特殊なフレームを送信。一定の時間送信を停止してもらう。
覚えておきましょう。
⇒第3回はネットワーク層編です。
※注釈
※1 このランキングは完全に独断と偏見によって作成されています。あくまで参考として捉えて戴きたく存じます。一切の責任は負いかねますのであしからず。
※2 技術者として成長するためにはどれも欠かせないものばかりです。資格取得レベルにてランキングを作成しています。
新課程対応のCCNA対策講座 連載リンク
ネットワーク学習の登竜門・・
ゼロからのCCNA独学講座