序文
スイッチド LANでは、すべてのサイトがスイッチング ハブまたは LAN スイッチに接続されます。スイッチングハブやLANスイッチはスイッチング機能を備えており、ワークステーション同士が通信する必要がある場合、多数のポートを同時に接続し、各ワークステーションを調整して、各ポートのペアが競合することなくデータを送信できるようにします。専用のコミュニケーションメディア。
リンク層アドレッシングとARP
マック
ホスト、ルーター、およびルーターにはリンク層アドレスがあることがわかっています。実際、リンク層アドレスを持つのはそのアダプターです。したがって、複数のネットワーク インターフェイスを持つホストまたはルーターには、それに対応する複数のリンク層アドレスがあります。しかし、リンク層スイッチは
、スイッチのタスクは、ホストとルータの間でデータグラムを運び、ホストやルータが明示的にアドレス指定することなく、このタスクを透過的に実行することであるため、それらのインターフェイスに対応するリンク層アドレスを持っていません。スイッチには当然リンク層アドレス属性は必要ありません。
リンク層アドレスを参照するには、LAN アドレス、物理アドレス、 MAC アドレスなど、さまざまな方法があります。その中で、MAC アドレスが最も一般的です。MAC アドレスは
6 バイトの長さで、合計2 48 個の MAC アドレスが可能です。アドレスは通常 16 進数表記で表現され、各バイトは 16 進数のペアとして表されます。MAC アドレスは永続的になるように設計されていますが、ソフトウェアを使用してアダプタの MAC アドレスを変更することができます。
MAC アドレスのいくつかのプロパティ
- 同じ MAC アドレスを持つアダプターは 2 つなく、IEEE はこの特性を確保するために MAC アドレス空間を管理します。企業がアダプターを製造したい場合は、24 個のアドレスで構成されるアドレス空間を購入する必要があり、その後、企業自体がアダプターごとに最後の 24 ビットの一意の組み合わせを生成します。
- MAC アドレスはフラット構造 (階層構造ではなく) を持ち、アダプタがどこで使用されても変わりません。たとえば、イーサネット インターフェイスを備えたラップトップは、コンピュータがどこに配置されていても、常に同じ MAC アドレスを持ちます。 。これに対し、IPアドレスはネットワーク部+ホスト部という階層構造になっており、ホストが移動するとIPアドレス、つまり接続先のネットワークを変更する必要があります。
フレームの送受信
アダプタが何らかの宛先アダプタにフレームを送信したい場合、送信アダプタは宛先アダプタの MAC アドレスをフレームに挿入し、フレームを LAN に送信します。
スイッチは受信フレームをすべてのインターフェイスにブロードキャストすることがあるため、アダプタはアダプタ宛てではないフレームを受信する可能性があります。したがって、アダプターがフレームを受信すると、フレーム内の宛先 MAC アドレスが自分の MAC アドレスと一致するかどうかを確認し、一致する場合はカプセル化されたデータグラムを抽出してプロトコル スタックに渡します。一致しない場合は、フレームを破棄します
送信側アダプタが、送信しようとしているフレームを LAN 上の他のすべてのアダプタに受信して処理してもらいたい場合は、特別な MAC ブロードキャスト アドレス (FF-FF-FF-FF- FF ) をフレームの宛先フィールドに挿入します。 -FF)
ホストとルーターのインターフェイスには、ネットワーク層アドレスに加えて MAC アドレスがあるのはなぜですか?
- まず、LAN は IP やインターネットだけでなく、あらゆるネットワーク プロトコル向けに設計されており、アダプターに IP アドレスのみが割り当てられ、「中立」MAC アドレスが割り当てられていない場合、アダプターは他のネットワーク層プロトコルを簡単にはサポートできません。
- 第 2 に、アダプターが MAC アドレスの代わりにネットワーク層アドレスを使用する場合、そのネットワーク層アドレスをアダプターの RAM に保存し、アダプターを移動するたびに再構成する必要があります。もう 1 つのオプションは、アダプター内のアドレスを使用しないことです。アダプターが受信したすべてのデータグラムを渡し、ネットワーク層にネットワーク アドレスが一致するかどうかをチェックさせると、たとえ宛先が同じブロードキャスト LAN 上にあったとしても、ホストは LAN 上で送信されるすべてのフレームによって中断されることになります。のノード
- つまり、この仕様では、ネットワーク アーキテクチャ内の各層が極めて独立した構成要素となるためには、異なる層が独自のアドレス指定スキームを持つ必要があると規定しています。
アドレス解決プロトコル ARP
アドレス解決プロトコル (アドレス解決プロトコル アドレス\解決\プロトコルアドレス解決プロトコル (ARP) タスクは、IP アドレスなどのネットワーク層アドレスと MAC アドレスであるリンク層アドレスの間で変換を行うことです。
同じサブネット内で、送信元ホストが宛先ホストにデータグラムを送信したい場合、送信元は IP データグラムだけでなく宛先ホストの MAC アドレスもアダプターに提供する必要があり、その後、送信アダプターはパケットを構築できます。送信先ホストの ARP モジュールは、宛先ホストの MAC アドレスを含むリンク層フレームを作成し、それを LAN に送信します。
したがって、ここでの問題は、宛先ホストの MAC アドレスを決定する方法です。送信元ホストの ARP モジュールは、ホスト上の任意の IP アドレスを入力として受け取ります。具体的には、各ホストまたはルーターは、このテーブルには IP アドレスから MAC アドレスへのマッピング関係が含まれていますARP テーブル
メモリ内に これら 2 つのフィールドに加えて、テーブル内の各レコードには、各マッピングがテーブルから削除される時刻を示す存続期間 TTL 値も含まれています。テーブル エントリの通常の有効期限は、テーブル エントリが配置されてから 20 分です。 ARPテーブル。
ホストがこのサブネット内の別のホストまたはルーターにデータグラムを送信する必要がある場合、指定された IP アドレスを持つ宛先ホストの MAC アドレスを取得する必要があります。送信者の ARP テーブルに宛先ノードに対応するエントリがある場合
、この MAC アドレスの値は直接取得できます
。テーブルに対応するエントリがない場合、この場合、送信者は ARP プロトコルを使用してアドレスを解決します。
- まず、送信者はARP パケットと呼ばれる特別なパケットを構築します。ARP パケットには、送信ホストと受信ホストの IP アドレスや MAC アドレスなどのいくつかのフィールドがあり、ARP クエリ パケットと応答パケットは同じ形式です。
- 次に、送信側は ARP クエリ パケットをアダプタに渡し、アダプタがMACブロードキャスト アドレスを使用してパケットを送信する必要があることを示します。
- したがって、アダプターはこの ARP パケットをリンク層でカプセル化し、ブロードキャスト アドレスをフレームの宛先アドレスとして使用し、フレームをサブネットに送信します。
- ARP クエリを含むフレームは、サブネット上の他のすべてのアダプタで受信できます。受信は受信を意味するわけではありませんが、ブロードキャスト アドレスの役割により、各アダプタはフレーム内の ARP パケットを受信し、上向きの ARP モジュールに渡します。 。
- 各 ARP モジュールは、その IP アドレスが ARP パケット内の宛先 IP アドレスと一致するかどうかを確認します。一致したものは、必要なマッピングを含む ARP 応答パケットをクエリ元のホストに送り返します。
- クエリを実行しているホストは、ARP テーブルを更新し、マッピングに基づいてデータグラムを送信できます。
データグラムをサブネット外に送信する
異なるサブネット内の宛先アドレスを持つデータグラムを送信するには、まずデータグラムをファーストホップルーターに送信し、ARP プロトコルを通じてルーターの IP に対応する MAC アドレスを見つけてから、データグラムを含むフレームを送信する必要があります。ルーターに。
ルーターは、転送テーブルに問い合わせることによってデータグラムを転送するインターフェイスを見つけ、1 つ以上の転送を通じて宛先サブネットのルーターにデータグラムを送信します。ルーターは、ARP を通じてデータグラムの宛先 IP アドレスの MAC アドレスを見つけます。 IPホストで十分です
イーサネット
イーサネット テクノロジは、ネットワーク層にコネクションレスで信頼性の低いサービスを提供します。フレームの CRC チェックのみを実行し、フレームがチェックに合格した場合に確認応答フレームを送信しません。フレームがチェックに失敗した場合、否定応答は発生しません。フレーム、単に破棄します。フレーム。したがって、送信アダプタは、送信したフレームが受信アダプタに到達したかどうか、および CRC チェックに合格したかどうかを知りません。
データの信頼性の高い配信は、TCP プロトコルを使用するトランスポート層などの上位層プロトコルによってのみ保証されます。この場合、欠落または破棄されたデータが受信側アダプターに再び到着することになります。この意味で、イーサネットはデータを再送信します。ただし、まったく新しいデータグラムを送信しているのか、少なくとも 1 回送信されたデータグラムを送信しているのかはわかりません。
フレーム構造
フレームのライフ コースは大まかに次のとおりです: フレームを送信するホストのアダプターは IP データグラムをイーサネット フレームにカプセル化し、そのフレームを物理層に渡します。受信アダプターは物理層からフレームを受信して、 IP データをレポートし、IP データグラムをネットワーク層に渡します。
-
データ: このフィールドの長さは 46 ~ 1500 バイトで、IP データグラムを伝送します。
イーサネットの最大伝送単位 MTU は 1500 バイトであるため、IP データグラムの最大長は 1500 バイトまでしかなく、1500 バイトを超える場合、ホストはデータグラムをフラグメント化する必要があります。
IP データグラムの長さが 46 バイト未満の場合は、46 バイトにパディングする必要があります。パディングが使用される場合、ネットワーク層に渡されるデータには IP データグラムとパディング部分が含まれます。ネットワーク層は IP データグラム ヘッダーを使用します。パディングを削除する長さフィールド
-
宛先アドレス: このフィールドは 6 バイトの長さで、宛先アダプターの MAC アドレスと、もちろんブロードキャスト アドレスが含まれます。受信アダプターが受信したフレームの宛先アドレスが自身の MAC アドレスまたはブロードキャスト アドレスの場合、フレームのデータ フィールドの内容をネットワーク層に渡します。それ以外の MAC アドレスの場合、フレームは捨てられる。
-
送信元アドレス: これも 6 バイト長で、内容は送信アダプターの MAC アドレスです。
-
タイプ: 長さ 2 バイト このフィールドにより、イーサネットは複数のネットワーク層プロトコルを多重化できます。ホストは複数のネットワーク層プロトコルをサポートできます。したがって、フレームが受信アダプターに到着すると、アダプターはフレームのデータ フィールドをどのネットワーク層プロトコルに渡すかを知る必要があります。IP およびその他のネットワーク層プロトコルには独自のプロトコルがあります。タイプ番号です。到着したフレームに ARP パケットが含まれている場合、つまり、タイプ フィールドの値が 16 進数の 0806 である場合、ARP パケットは ARP プロトコルに分解されます。
このタイプのフィールドは、ネットワーク層データグラムのプロトコル フィールドやトランスポート層セグメントのポート番号フィールドに似ており、これらはすべて、ある層の特定のプロトコルと次の層の特定のプロトコルを組み合わせるように設計されています。
-
CRC : 長さ 4 バイト 巡回冗長検出の目的は、受信アダプタがフレームにビット エラーが導入されているかどうかを検出できるようにすることです。
-
プリアンブル: イーサネット フレームは 8 バイトのプリアンブル フィールドで始まり、同期コードの最初の 7 バイトはすべて 10101010、最後のバイトは 10101011 です。
最初の 7 バイトは、受信アダプタを「ウェイクアップ」し、そのクロックを送信者のクロックと同期させるために使用されます。送信アダプタが正確な定格レートでフレームを送信することは難しいため、定格レートに対して常に多少のドリフトが発生します。ネットワーク上の他のアダプタは、このドリフトを事前に知る方法がありませんが、プリアンブルの最初の 7 バイト ビットをロックすることにより、受信アダプタは送信アダプタのクロックをロックできます。
同期コードの最後の 2 ビットは、「重要なコンテンツ」、つまり他のデータ部分が来ることを受信アダプターに伝えるために使用されます。
仮想LAN
スイッチド LAN の開発により、同じ LAN 内のすべてのホストが相互接続できるようになりました。利点は、どのホストも他のホストと直接通信できることです。欠点は、トラフィックの分離ができないことです。ホストのブロードキャストフレーム各ホストに対して、組織ネットワーク全体に送信する必要があります。これにより、大量のブロードキャスト トラフィックが発生し、LAN のパフォーマンスに影響します。さらに重要なのは、LAN のブロードキャスト トラフィックを制限するのは、セキュリティまたはプライバシーの目的です。また、ホスト間のランダムな通信を禁止します。
仮想 LAN はこの問題に対処でき、VLAN 対応スイッチを使用すると、単一の物理 LAN インフラストラクチャ上に複数の仮想 LAN を定義できます。VLAN 内のホストは相互に通信します
ポートベース VLAN では、スイッチ ポートがネットワーク管理者によってグループに分割され、各グループが VLAN を形成します。各 VLAN 内のポートはブロードキャスト ドメインを形成します。特定のポートからのブロードキャスト トラフィックはこのグループにのみ到達できます。他のポートでは、異なるグループ間で送信されるフレームは互いに分離されます。さらに、この場合、異なるグループのホストであっても、トラフィックが相互に拡散する心配なく同じスイッチに接続できるため、単一スイッチの使用率が向上します。
このようにグループ間で孤立している場合、異なるグループ間でどのようにコミュニケーションを図ることができるのでしょうか? 1 つの方法は、VLAN スイッチのポートを外部ルータに接続することです。あるグループが別のグループに送信したいデータグラムは、最初に独自の VLAN 経由でルータに到達し、次にルータは別のグループに VLAN を転送して別のグループに到達します。 . グループ内の宛先ホスト
もう 1 つの問題は、異なるスイッチ間で通信する方法です。この問題の解決策は、VLAN トランキング VLAN\ トランキングです。VLANトランキング) では、各スイッチの特別なポートがトランク ポートとして設定され、さまざまなスイッチがトランク ポートを使用してトランク ラインを相互接続します。このトランク ポートはすべての VLAN に属しており、任意の VLAN に送信されたフレームはトランク リンクを通じて他のスイッチに転送されます。