Chapter 5 Data Link Layer A note on the use of these ppt slides: We’re making these slides freely available to all (faculty, students, readers). They’re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. Computer Networking: A Top Down Approach Featuring the Internet, 2nd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2002. Thanks and enjoy! JFK/KWR All material copyright 1996-2002 J.F Kurose and K.W. Ross, All Rights Reserved 5: DataLink Layer 5a-1 Chapter 5: データリンク層 目標: データリンク層サービスの背景にある原理の理解: 誤り検出,訂正 ブロードキャストチャネルの共有:多重アクセス リンク層アドレッシング 高信頼データ転送,フロー制御: 完了! さまざまなリンク層技術の実例と実装 5: DataLink Layer 5a-2 Chapter 5 内容 5.1 イントロダクションとサ ービス 5.2 誤り検出と訂正 5.3 多重アクセスプロトコ ル 5.4 LAN アドレスとARP 5.5 イーサーネット 5.6 ハブ,ブリッジ,スイッ チ 5.7 無線リンク,LAN 5.8 PPP 5.9 ATM 5.10 フレームリレー 5: DataLink Layer 5a-3 Link Layer: イントロダクション Some terminology: “link” ノード:ホスト,ルータ(ブリッジ,ス イッチも) リンク:通信パスに沿って隣接ノー ドを接続する通信チャネル 有線リンク 無線リンク LANs フレーム:2層PDU,データグラムを カプセル化 データリンク層は,データグラムをノードから その隣接ノードへリンクを介して転送する責 任がある 5: DataLink Layer 5a-4 リンク層:状況 データグラムは,異なるリン クを介した,異なるリンクプ ロトコルによって転送される: 例,最初にEthernet,中継リ ンクはフレームリレー,最後に 802.11 各リンクプロトコルは異なる サービスを提供 例,リンク上で高信頼性データ 転送を提供するか,そうでな いか 交通機関との類似性 Princeton から Lausanne への旅 行 リムジン: Princeton から JFK 飛行機: JFK から Geneva 鉄道: Geneva から Lausanne 旅行者 = データグラム 交通機関区間 = 通信リンク 交通機関種別 = リンク層プ ロトコル 旅行代理店 = 経路制御アル ゴリズム 5: DataLink Layer 5a-5 リンク層サービス フレーミング,リンクアクセス: ヘッダ・トレイラを追加し,データグラムをフレームにカプセル化 共有媒体の場合,チャネルアクセス 始点と終点の識別に‘物理アドレス’を使用 • IPアドレスとは違う! 隣接ノード間の高信頼転送 3章で学習済み! 低誤り率リンクではあまり使われない(光ファイバ,いくつかのよ り対線) 無線リンク:高誤り率 • 質問:リンクレベルとエンド間の信頼性の両方が必要なわけ 5: DataLink Layer 5a-6 リンク層サービス(つづき) フロー制御: 誤り検出: 信号劣化,ノイズによる誤り 受信端末は誤りの存在を検出: • 送信側に再送を要求するかフレームを廃棄する 誤り訂正: 隣接する送受信ノード間で速度調整 受信側は,ビット誤りを同定し,再送を要求することなく訂正する 半二重,全二重 半二重では,リンク両端のノード双方が通信できるが,同時には できない 5: DataLink Layer 5a-7 アダプタ間通信 データグラム 送信ノード frame frame アダプタ アダプタ リンク層は“アダプタ”内に 実装(NIC) 受信ノード リンク層プロトコル Ethernet card, PCMCI card, 802.11 card 送信側: データグラムをフレームにカ プセル化 エラーチェックビット,信頼性 ,フロー制御などを追加 受信側 エラー,高信頼性制御,フロ ー制御などをチェック アダプタは半自動 リンク&物理層 5: DataLink Layer 5a-8 Chapter 5 内容 5.1 イントロダクションとサ ービス 5.2 誤り検出と訂正 5.3 多重アクセスプロトコ ル 5.4 LAN アドレスとARP 5.5 イーサーネット 5.6 ハブ,ブリッジ,スイッ チ 5.7 無線リンク,LAN 5.8 PPP 5.9 ATM 5.10 フレームリレー 5: DataLink Layer 5a-9 誤り検出 EDC= Error Detection(検出) and Correction(訂正) bits (冗長ビット) D = エラーチェックにより保護されるデータ部(ヘッダ部を含む場合がある) •誤り検出は 100% 信頼できるわけではない! • プロトコルはエラーを見逃しうるが,それはまれ • EDC フィールドが大きいほど,誤り検出,訂正能力は向上する 5: DataLink Layer 5a-10 パリティチェック 1ビットパリティ: 1ビット誤りを検出 2次元ビットパリティ: 1ビット誤りを検出訂正 0 0 5: DataLink Layer 5a-11 インターネットチェックサム 目標: 伝送セグメント内の誤り検出 (例,ビット反転) (注意: トランスポート層のみで用いられる) 送信側: 受信側: セグメントの内容を 16ビ 受信セグメントのチェックサム和 ット整数列として扱う チェックサム:セグメント 内容の16ビット整数の 1の補数和 チェックサム値をUDP, TCPチェックサムフィー ルドに記入 を計算 計算結果がチェックサムフィール ドと同じかどうかをチェック: NO – 誤り検出 YES – 誤り未検出. 誤りはあ るかもしれない… 5: DataLink Layer 5a-12 チェックサム:巡回剰余チェック データビットDを二進数とみなす r+1 ビットパターン(生成多項式),G,を求める 目標: CRC ビット(r ビット) R を計算する <D,R> が G で割り切れる(モジュロ 2 演算) 受信側はGは既知,Gで<D,R>を除算.剰余が非ゼロなら誤り検出! r+1 ビット以下のバーストエラーを検出可能 広く利用されている (ATM, HDCL) 5: DataLink Layer 5a-13 CRC の例 欲しいもの: D.2r XOR R = nG 等価: D.2r = nG XOR R 等価: D.2r を Gで除算した余 り R が必要 R = remainder[ D.2r G ] 5: DataLink Layer 5a-14 Chapter 5 内容 5.1 イントロダクションとサ ービス 5.2 誤り検出と訂正 5.3 多重アクセスプロトコ ル 5.4 LAN アドレスとARP 5.5 イーサーネット 5.6 ハブ,ブリッジ,スイッ チ 5.7 無線リンク,LAN 5.8 PPP 5.9 ATM 5.10 フレームリレー 5: DataLink Layer 5a-15 多重アクセスリンク・プロトコル “リンク”は2種類ある: 1対1型 ダイアルアップ接続のためのPPP スイッチとホスト間のポイント・ツー・ポイントリンク 放送型 (共有線・媒体) 旧型イーサネット HFC上りチャネル(下りもそうだが競合はない) 802.11 無線 LAN 5: DataLink Layer 5a-16 多重アクセスプロトコル 単一共有放送チャネル 複数ノードによる同時転送:干渉 同時には一つのノードのみが送信成功できる 多重アクセスプロトコル どのようにノードがチャネルを共有するか,つまり,い つノードが送信できるかを決定するための分散アル ゴリズム チャネル共有のための通信はチャネル自身を用いな ければならない! 5: DataLink Layer 5a-17 理想的多重アクセスプロトコル レート R bps のブロードキャストチャネル 1. あるノードが転送する場合は レート R で送信できる. 2. M ノードが転送したい場合,各ノードは平均レート R/M で転送する. 3. 完全分散化: 転送を調停するための特殊ノードなし. クロック,スロットの同期なし 4. 簡単 5: DataLink Layer 5a-18 MAC プロトコル: 分類 3種類に大別: チャネル分割型 チャネルを分割(時間スロット,周波数,コード) 各ノードに排他的に分割チャネルを割当 ランダムアクセス型 チャネルは分割されない,コリジョン(衝突)が発生しうる コリジョンからの回復機能 送信権巡回型 コリジョン回避のために共有アクセスを厳密に管理 5: DataLink Layer 5a-19 チャネル分割 MAC プロトコル: TDMA TDMA: time division multiple access (時分割多重アクセス) 各局は,順番にチャネルにアクセスし,固定長スロットを 得る(スロット長 = パケット送信時間) 未使用スロットはアイドルのまま 例:6局LANで,局1,2,3がパケット送信する場合,スロ ット2,5,6は未使用(アイドル) 5: DataLink Layer 5a-20 チャネル分割 MAC プロトコル: FDMA FDMA: frequency division multiple access (周波数分割アクセス) チャネル帯域を複数の周波数帯に分割 各局に固定周波数帯を割当て 周波数帯での未使用伝送時間はアイドルのまま 例:6局LANで,局1,2,3がパケット送信する場合,周波数 frequency bands 帯2,5,6は未使用(アイドル) 5: DataLink Layer 5a-21 チャネル分割 MAC プロトコル: CDMA CDMA (Code Division Multiple Access) (符号分割多重アクセス) ユーザごとに一意のコードを割当:すなわちコード集合分 割 たいていの無線放送チャネルで使用(セルラ,衛星,など) 全ユーザが同一周波数を共有するが,各ユーザはデータ を符号化するために自身の拡散系列(符号)を使用 符号化信号 = (元データ) X (拡散符号) 復号化: 符号化信号と拡散係数の内積 複数ユーザが同時に最小の干渉で同時に送信できる (コ ードが直交していれば) 5: DataLink Layer 5a-22 CDMA 符号化/復号化 5: DataLink Layer 5a-23 CDMA: 2送信局間の干渉 5: DataLink Layer 5a-24 ランダムアクセスプロトコル ノードが送信すべきパケットを有する場合 フルチャネルデータレート R で送信 ノード間での事前協調はなし 複数ノードの同時送信→コリジョン ランダムアクセス MAC プロトコルは以下を記述: コリジョンをどのように検出するか コリジョンからどのように回復するか(例,再送) ランダムアクセス MAC プロトコルの例: Slotted ALOHA ALOHA CSMA, CSMA/CD, CSMA/CA 5: DataLink Layer 5a-25 Slotted ALOHA 仮定 全フレームは同一サイズ 時間を同一サイズスロット( 1フレーム送信に要する時 間)に分割 ノードはスロット開始時に のみフレーム送信開始 ノードは同期している スロット内に複数ノードが 送信した場合,全ノードが 衝突を検出 動作 ノードは送信すべきフレーム を受け取ると,次するっとで送 信 衝突しなかった場合,ノードは 次スロットで新規フレームを 送信可能 衝突した場合,成功するまで 続く各スロットで確率 p で再 送 5: DataLink Layer 5a-26 Slotted ALOHA 利点 単一のアクティブなノード は,フルチャネルレートで 連続して送信可能 高い分散性: スロットが 同期している必要がある のみ 単純 欠点 衝突によるスロットの浪費 アイドルなスロットが生じうる ノードはパケット送信時間よ り小さい時間で衝突を検出 5: DataLink Layer 5a-27 Slotted ALOHA の効率 効率: 送信すべきフレームを有す る多数のノードがある場合の,スロ ットが送信成功に利用されている 時間割合 Nノードは,送信すべきフ レームを常に有し,確率 p で各スロットで送信する 効率 Np(1-p)N-1 が最大 となる確率 p* を見出す 多数のノードに対し,N を 無限にしたときのNp*(1p*)N-1 の極限をとる 1/e = .37 を得る 第1ノードがあるスロット で送信成功する確率 = p(1-p)N-1 チャネルが有効な転送に用い られている割合は高々37%! 任意のノードが送信成功 する確率 = Np(1-p)N-1 5: DataLink Layer 5a-28 Pure (unslotted) ALOHA unslotted ALOHA: より単純,非同期 フレームが到着すると 即時送信 衝突確率は増加: 時刻 t0 に送信されたフレームは [t0-1,t0+1] に送信された他のフレー ムと衝突する 5: DataLink Layer 5a-29 Pure ALOHA の効率 P(success by given node) = P(node transmits) . P(no other node transmits in [t0-1,t0] . P(no other node transmits in [t0, t0-1] = p . (1-p)N-1 . (1-p)N-1 = p . (1-p)2(N-1) … 最適なpを選択して,nを無限大にすれば... = 1/(2e) = .18 さらに悪い ! 5: DataLink Layer 5a-30 CSMA (Carrier Sense Multiple Access) CSMA: 送信前に聞く: もしチャネルがアイドルなら,全フレームを送信 もしチャネルがビジーなら,送信を延期 人との類似点:他人の会話を邪魔しない! 5: DataLink Layer 5a-31 CSMA 衝突 ノードの空間的レイアウト それでも衝突は起こりうる: 伝播遅延によって二つのノードは 互いの送信を聞くことができない かもしれない 衝突: 全パケットの送信は時間の無駄 注意: 距離と伝播遅延が衝突確率の決定 に影響を与える 5: DataLink Layer 5a-32 CSMA/CD (Collision Detection) CSMA/CD: キャリアセンスと送信延期はCSMAと同じ 衝突を短時間に検出 衝突した転送は中止することでチャネル浪費を減少 衝突検出: 有線 LAN では容易:信号強度を計測し,送受信信号を 比較する 無線 LAN では困難:送信中は受信機はオフ 人との類似:礼儀正しい座談家 5: DataLink Layer 5a-33 CSMA/CD 衝突検出 5: DataLink Layer 5a-34 送信権巡回 MAC protocols チャネル分割 MAC プロトコル: 高負荷では,チャネルを効率よく,公平に共有 低負荷では非効率:チャネルアクセスにおける遅延大 ,アクティブノードがひとつでも 1/N の帯域が割当て られる ランダムアクセス MAC プロトコル 低負荷では効率がよい:ひとつのノードがチャネルを 完全に利用できる 高負荷:コリジョンオーバヘッド大 送信権巡回プロトコル 両者の利点を追求 5: DataLink Layer 5a-35 送信権巡回 MAC プロトコル ポーリング: トークンパッシング: 主局は,順番に従局に ノードからノードへ順番にわたさ れるトークンを制御 トークンメッセージ ポーリングオーバヘッド 問題: 送信を問い合わせ 問題: 遅延 単一故障点(主局) トークンオーバヘッド 遅延 単一故障点(トークン) 5: DataLink Layer 5a-36 MAC プロトコルのまとめ 共有媒体をどのように扱うか? チャネル分割:時間,周波数,符号 • 時分割,周波数分割,符号分割 ランダム分割(動的) • ALOHA, S-ALOHA, CSMA, CSMA/CD • 衝突検出: 有線では容易,無線では困難 • CSMA/CD は Ethernet で使用されている 送信権巡回 • 中央局からのポーリング(問い合わせ) • トークンパッシング 5: DataLink Layer 5a-37 LAN 技術 データリンク層(これまで): サービス,誤り検出/訂正,多重アクセス つぎ: LAN 技術 アドレッシング Ethernet ハブ,ブリッジ,スイッチ 802.11 PPP ATM 5: DataLink Layer 5a-38 LAN アドレスと ARP 32-bit IP アドレス: ネットワーク層アドレス 終点IPネットワークにデータグラムを運ぶために利用 (IPネットワークの定義を思い出そう) LAN (or MAC or physical or Ethernet) アドレス: データグラムを,あるインタフェースから物理的に接続された インタフェースに運ぶために利用 (同一ネットワーク) 48 bit MAC アドレス (ほとんどLANで使用) アダプタの ROM に焼付けられている 5: DataLink Layer 5a-39 LAN アドレスと ARP LAN 上の各アダプタは,ユニークな LAN アドレスを有する 5: DataLink Layer 5a-40 LAN アドレス(もっと) MAC アドレス割当ては IEEE によって管理 製造業者は,MACアドレス空間の一部を買う(一意性を 保証するために) 類似性: (a) MAC address: 社会保障番号(SSN)に類似 (b) IP address: 郵便アドレス 非階層 MAC アドレス => 移植性 カードを LAN から LAN に移動できる IP 階層アドレスはポータブルではない ノードが接続された IP ネットワークに依存 5: DataLink Layer 5a-41 ルーティングについて思い出そう ノード A から B に向けられたIP データグラム: A 223.1.1.1 223.1.2.1 B のネットワークアドレスを調べ,B が A と同一ネットワークにあるとわ かる 223.1.1.2 223.1.1.4 223.1.2.9 B リンク層はリンク層フレームにデー 223.1.1.3 タグラムをカプセル化して B に送信 フレーム始点 終点アドレス B’s MAC A’s MAC addr addr 223.1.3.27 223.1.3.1 223.1.2.2 E 223.1.3.2 データグラム始点 終点アドレス A’s IP addr B’s IP addr IP payload datagram frame 5: DataLink Layer 5a-42 ARP: Address Resolution Protocol 疑問: B の IP アドレスを知っているとして, どうやって B の MAC アドレスを知るか LAN 上の各 IP ノード(ノ ード,ルータ)は,ARPテー ブルをもつ ARPテーブル: 同一 LAN ノードにおける IP/MAC アドレスマッピング < IP address; MAC address; TTL> TTL (Time To Live): アド レスマッピングを忘れるまで の時間(通常,20分) 5: DataLink Layer 5a-43 ARP プロトコル A は B にデータグラムを転送 したい,A は B の IP アドレス を知っている B のマックアドレスが A の ARP テーブルにないと仮定し よう A は,B の IP アドレスを含む ARP クエリパケットをブロード キャストする LAN 上の全マシンは ARP クエリを受信 B は ARP パケットを受信する と,自身(B)の MAC アドレス を A に応答する A は情報が古くなるまで(タイ ムアウトするまで) IP-toMAC アドレス対をARPテーブ ルにキャッシュ(セーブ)する ソフトステート: リフレッシュ されなければタイムアウト する情報 ARP は “plug-and- play”: ノードは ARP テーブルを, ネットワーク管理者が介在 することなく生成 A の MAC アドレスに送信さ れる(ユニキャスト) 5: DataLink Layer 5a-44 他の LAN へのルーティング 段階的説明: AからBへRを介してデータグラムを送信 AはBのIPアドレスを知っていると仮定 A R B ルータ R は二つのARPテーブルをもつ,各 IP ネットワー ク(LAN)に対して一つもつ 5: DataLink Layer 5a-45 A は,始点A,終点Bのデータグラムを生成 A はARPを使って111.111.111.110に対するRのMAC アドレスを入手 A はRのMACアドレスを終点とするリンク層フレームを生成する.フ レームはAからBへのIPデータグラムを含む A のデータリンク層はフレームを送信 R のデータリンク層はフレームを受信 R はEthernetフレームからIPデータグラムを抽出し,これがB向け であることを知る R はBのMACアドレスを得るためにARPを使用する R は,RからBへのフレーム(中身はAからBへのIPデータグラム)を 生成し,Bに送信する A R B 5: DataLink Layer 5a-46 Ethernet 最も普及している LAN 技術: 100Mbsでも$20と安い! トークンLANやATMよりも原理が簡単で安い 速度競争でも負けていない: 10, 100, 1000 Mbps Metcalfe’s Ethernet sketch 5: DataLink Layer 5a-47 Ethernet フレーム構造 送信アダプタは IPデータグラム(または他のネットワーク層 プロトコル)をEthernetフレームにカプセル化 プリアンブル: パターン10101010が7バイト続き,その後,パターン 10101011が1バイト続く 送受信側のクロックレートを同期させるために利用 5: DataLink Layer 5a-48 Ethernet フレーム構造(つづき) Address: 6 bytes アダプタが終点アドレスと自身のMACアドレスと一致するフレー ムあるいはブロードキャストアドレス(例えば,ARPパケット)を受 信すると,フレームをネットワーク層プロトコルに渡す そうでなければ,アダプタはフレームを廃棄する Type: 上位層プロトコルを示す.たいていの場合 IPプロ トコル.Novell IPX and AppleTalkなどもサポート. CRC: 受信局でチェック,誤り検出の場合,フレーム廃棄 5: DataLink Layer 5a-49 低信頼,コネクションレスサービス コネクションレス: 送受信アダプタ間でハンドシェイクなし 低信頼: 受信アダプタは送信アダプタに ACK や NACK を返信しない ネットワーク層にわたされるデータグラムストリームには(フレー ム廃棄による)ギャップ(抜け)がありうる アプリがTCPを使用していればギャップを埋めることができる そうでなければ,アプリにはギャップがそのまま伝わる 5: DataLink Layer 5a-50 Ethernet における CSMA/CD スロットなし アダプタは,他のアダプタの 送信を検出(carrier sense) すれば,送信をおこなわない 再送を試みる前に,ランダ ム時間まつ,すなわちラン ダムアクセス(random access) 送信中のアダプタが他のア ダプタの送信を検出すれば, 送信を中止する(collision detection) 5: DataLink Layer 5a-51 Ethernet CSMA/CD アルゴリズム 1. アダプタはデータグラムを上 4. もしアダプタがフレーム送信 位層から受け取るとフレーム 中に他のフレーム送信を検出 を生成 すれば,送信を中止し,ジャ ム信号を送信 2. アダプタがチャネルがアイド ルであることを検出すると,フ 5. 送信中止後,アダプタは,指 数バックオフ(exponential レーム送信を開始.チャネル backoff)をおこなう: m 回目 がビジーであることを検出す の衝突の直後,アダプタは値 ると,アイドルになるまで待っ てから送信 K をランダムに{0,1,2,…,2m-1} から選択.アダプタは, 3. アダプタが他のフレーム送信 K*512 ビットタイム(ビット送 を検出することなくフレーム全 信時間)待ち,ステップ2に戻 体を送信すれば,フレーム送 る 信を終了 5: DataLink Layer 5a-52 Ethernet’s CSMA/CD (つづき) ジャム信号: 他の全てのアダプタ に衝突の発生を確実に知らせ る;48 bits; ビットタイム: 10 Mbps Ethernet では 0.1 microsec; K=1023 の場合,約50 msec 待つ 指数バックオフ: 目的: アダプタは,現在のトラ ヒック負荷を推測しながら再送 をおこなう 高負荷時:ランダム待ち時間 は長くなる 最初の衝突: K は{0,1}から選 ぶ;遅延は K x 512ビット送信 時間 2回目の衝突以降: K を{0, 1, 2, 3} から選ぶ 10回目の衝突以降,K を {0,1,2,3,4,…,1023} から選ぶ 5: DataLink Layer 5a-53 CSMA/CD の効率 Tprop = LANにおける2ノード間最大伝播遅延 ttrans = 最大サイズフレーム送信時間 efficiency 1 1 5t prop / ttrans 効率は,tprop が 0 に近づくと,1 に近づく ttrans が無限大になれば 1 に近づく ALOHA よりずっと効率が良く,また分散型で,簡単,安 い 5: DataLink Layer 5a-54 Ethernet 技術: 10Base2 10: 10Mbps; 2: 最大ケーブル長 200 meters バストポロジ,細い同軸ケーブル(thin coaxial cable) 複数のセグメントを接続するためにリピータを使用 リピータは一方にインタフェースで聞こえた信号を他方のイ ンタフェースに増幅して送信:物理層デバイスのみ もはや古い技術になった 5: DataLink Layer 5a-55 10BaseT and 100BaseT 10/100 Mbps rate; 後に “fast ethernet” と呼ばれる T は Twisted Pair (より対線)をあらわす ノードはハブに接続される: “スター型トポロジ”; ノード・ ハブ間の最大距離は 100 m nodes hub ハブは,本質的には物理層リピータ(馬鹿ハブのこと) あるリンクからきたビット列を他のリンクに流す フレームバッファリングなし ハブはCSMA/CDをおこなわない:アダプタがコリジョ ンを検出する ネットワーク管理機能を提供する 5: DataLink Layer 5a-56 Manchester 符号 10BaseT, 10Base2で使用される 各ビットが遷移をもつ 送受信ノードが互いにクロック同期することを可能にする クロック同期をノード間で分散して実現できる ただしこれは物理層の内容 5: DataLink Layer 5a-57 Gbit Ethernet Ethernet frame フォーマットを使用 ポイント・ツー・ポイントリンク,共有ブロードキャストチャ ネルでの使用が可能 共有モードでは,CSMA/CD を使用,効率をあげるため にはノード間距離を短くする “Buffered Distributors”と呼ばれるハブを使用する ポイント・ツー・ポイント接続では 1 Gbps 全二重 現在では 10 Gbps 5: DataLink Layer 5a-58 Chapter 5 内容 5.1 イントロダクションとサ ービス 5.2 誤り検出と訂正 5.3 多重アクセスプロトコ ル 5.4 LAN アドレスとARP 5.5 イーサーネット 5.6 ハブ,ブリッジ,スイッ チ 5.7 無線リンク,LAN 5.8 PPP 5.9 ATM 5.10 フレームリレー 5: DataLink Layer 5a-59 LAN セグメント間接続 ハブ ブリッジ スイッチ 注意: スイッチは本質的にはマルチポートブリッジ ブリッジに関することはスイッチにもあてはまる 5: DataLink Layer 5a-60 ハブによる接続(いわゆるバカハブ) バックボーンハブは LAN セグメントを相互接続 ノード間の最大距離を拡張 各セグメントのコリジョンドメインは統合され一つの大きなコリジ ョンドメインになる CS 内のノードと EE 内のノードが同時送信した場合:衝突 10BaseT と 100BaseT は相互接続できない 5: DataLink Layer 5a-61 ブリッジ リンク層デバイス イーサネットフレームを蓄積,転送 フレームヘッダの MAC 終点アドレスにもとづいて選 択的にフレームを転送 フレームをフォワードする必要があるときは, CSMA/CD によりセグメントにアクセス 透過性 ホストはブリッジの存在には気づかない プラグ・アンド・プレイ,自己学習 ブリッジを設定する必要はない 5: DataLink Layer 5a-62 ブリッジ:トラヒックの分離 LAN を複数の LAN セグメントに分割できる ブリッジはパケットをフィルタリングできる: 始点,終点 MAC アドレスが同じ LAN セグメントにあ るフレームは,他のセグメントにフォワードされない セグメントは,分離されたコリジョンドメインになる collision domain collision domain bridge LAN segment = hub = host LAN segment LAN (IP network) 5: DataLink Layer 5a-63 フォワーディング どの LAN セグメントにフレームをフォワードすべきかをど のように決定するのか? 5: DataLink Layer 5a-64 自己学習 ブリッジはブリッジテーブルをもつ ブリッジテーブルの内容: (Node LAN Address, Bridge Interface, Time Stamp) 古いエントリは廃棄(TTL は 60 minなどに設定) ブリッジはどのホストがどのインタフェースから到達可能かを 学習する フレームを受信した際に,送信の場所(フレームがやってき た LAN セグメント)を学習する 送信(アドレス)/位置(インタフェース)ペアをブリッジテー ブルに記録 5: DataLink Layer 5a-65 フィルタリング/フォワーディング When bridge receives a frame: index bridge table using MAC dest address if entry found for destination then{ if dest on segment from which frame arrived then drop the frame else forward the frame on interface indicated } else flood forward on all but the interface on which the frame arrived 5: DataLink Layer 5a-66 ブリッジ学習の例 C が D にフレーム送信し,D が C に応答する場合を考える ブリッジは C からのフレームを受信 ブリッジテーブル内に C がインタフェース1側にいると記録 D はテーブルにないため,ブリッジはインタフェース2,3にフレー ムをフォワード D がフレームを受信 5: DataLink Layer 5a-67 ブリッジ学習の例 D は C へのフレームを生成し,C へ送信 ブリッジはフレーム受信 ブリッジテーブルに D がインタフェース2側にいることを記録 ブリッジは C がインタフェース1側にいることを知っているので, 選択的にインタフェース1にフレームをフォワーディング 5: DataLink Layer 5a-68 バックボーンのない相互接続例 二つの理由からお勧めではない: - コンピュータ学科のハブが故障するだめ - EE と SE 間の全トラヒックが CS セグメントを通過する 5: DataLink Layer 5a-69 バックボーン構成 5: DataLink Layer 5a-70 ブリッジ スパニングツリー 信頼性をあげるために,始点から終点までの冗長・予備 パスをもつことが望ましい マルチパスについては,ループが発生しうる- ブリッジが bridges may multiply and forward frame forever 解:インタフェースの部分集合を無効化することでスパニ ング木を構成する Disabled 5: DataLink Layer 5a-71 ブリッジの特徴 コリジョンドメインの分割は,トータルの最大スループット を増加させる ノード数や地理的カバーエリアの制約がなくなる 異なる Ethernet を接続できる 透過的 (“plug-and-play”): 設定の必要なし 5: DataLink Layer 5a-72 ブリッジかルータか どちらも蓄積・転送デバイス ルータ: ネットワーク層デバイス(ネットワーク層ヘッダを調べる) ブリッジはリンク層デバイス ルータはルーティングテーブルをもち,経路制御アルゴリ ズムを実装 ブリッジはブリッジテーブルをもち,フィルタリング,自己学 習,スパニング木アルゴリズムを実装 5: DataLink Layer 5a-73 ルータかブリッジか ブリッジの + と + ブリッジ動作はパケット処理よりもずっと簡単 + ブリッジテーブルは自己学習 - 別経路の帯域が空いていたとしても全トラヒックがスパニ ング木で制約される - ブリッジは,ブロードキャストストーム(ブロードキャストの 嵐)から守ってくれない 5: DataLink Layer 5a-74 ルータかブリッジか ルータの + と + 任意のトポロジを想定可能で,パケットの巡回は TTL カウン タ(あるいは良い経路制御)で制限可能 + ブロードキャストストームからの保護 - IPアドレスの設定が必要(プラグアンドプレイじゃない) - より高い負荷のパケット処理が必要 ブリッジは小さなネットワーク向け(数百ホスト),ルータは大 規模ネットワーク向け(数千ホスト) 5: DataLink Layer 5a-75 イーサネットスイッチ 本質的にはマルチインタフェー スブリッジ レイヤ2(フレーム)フォワーディ ング,LANアドレスによるフィル タリング スイッチング: AからA’,BからB’ への同時送信可能,衝突なし 多数のインタフェース 一般的に,個々のホストはスイ ッチにスター接続 Ethernetだけど衝突なし 5: DataLink Layer 5a-76 Ethernet スイッチ カットスルースイッチ: 全フレームの到着をまたず に入力ポートから出力ポートにフレームをフォワ ーディング 若干遅延を改善 10/100/1000 Mbps インタフェースの共有/専 用の組み合わせ可能 5: DataLink Layer 5a-77 一般的 LAN 構成 (IP network) Dedicated Shared 5: DataLink Layer 5a-78 まとめと比較 hubs bridges routers switches traffic isolation no yes yes yes plug & play yes yes no yes optimal routing cut through no no yes no yes no no yes 5: DataLink Layer 5a-79 Chapter 5 内容 5.1 イントロダクションとサ ービス 5.2 誤り検出と訂正 5.3 多重アクセスプロトコ ル 5.4 LAN アドレスとARP 5.5 イーサーネット 5.6 ハブ,ブリッジ,スイッ チ 5.7 無線リンク,LAN 5.8 PPP 5.9 ATM 5.10 フレームリレー 5: DataLink Layer 5a-80 IEEE 802.11 無線 LAN 802.11b 2.4-5 GHz unlicensed radio spectrum 最大 11 Mbps 物理層:direct sequence spread spectrum (DSSS) • 全ホストは同じ拡散符 号を使用 広く普及 ベースステーションを使用 802.11a 5-6 GHz range 最大 54 Mbps 802.11g 2.4-5 GHz range 最大 54 Mbps 多重アクセスに CSMA/CA を使用 全て,ベースステーション モードとアドホックモード がある 5: DataLink Layer 5a-81 ベースステーション型 無線ホストはベースステーションと通信 base station = access point (AP) Basic Service Set (BSS) (“cell”) は以下から構成: wireless hosts access point (AP): base station BSSs を接続し,分散システム(distribution system: DS )を構築 5: DataLink Layer 5a-82 アドホックネットワーク型 AP (ベースステーション)なし 無線ホストは互いに通信 ホストAからBにパケットを届けるためにはホストX, Y, Z を経由しなければならないかもしれない アプリケーション: 会議室における“laptop”ミーティング パーソナルデバイスの相互接続 戦場 IETF MANET (Mobile Ad hoc Networks) working group 5: DataLink Layer 5a-83 IEEE 802.11: 多重アクセス 複数ノードが同時転送すると衝突発生 CSMA は意味がある: 送信時は全帯域を使用 他の送信を検出したときは送信すべきではない 衝突検出はうまく機能しない: 隠れ端末問題(hidden terminal problem) 5: DataLink Layer 5a-84 IEEE 802.11 MAC プロトコル: CSMA/CA 802.11 CSMA: 送信局 - DIFS sec. 間チャネルがアイド ルと検出すれば全フレームを送 信(衝突非検出) - チャネルビジーを検出すると,バ イナリバックオフ 802.11 CSMA 受信局 - 受信成功なら SIFS後にACK返信 (隠れ端末問題のためにACKが 必要) 5: DataLink Layer 5a-85 衝突回避メカニズム 問題: 互いに隠れ端末関係にある二つのノードがベースステーションに 同時送信 長期間帯域を浪費! 解決方法: 小さな予約パケットを使用 各ノードは,内部の “network allocation vector” (NAV)により予約期間を管理 5: DataLink Layer 5a-86 衝突回避: RTS-CTS交換 送信局は短いRTS (request to send) パケッ トを送信: 送信間隔が含ま れている 受信局は,短いCTS (clear to send) パケットでもって 応答 周囲のノード(送信端末から みて隠れ端末の可能性のあ る)にこれからデータパケット を受信することを通知 隠れ端末は,ある一定の間 (NAV)送信しない 5: DataLink Layer 5a-87 衝突回避: RTS-CTS 交換 RTS と CTS は短い: 短時間なので衝突が発生し にくい 結果として衝突検出と同様 の効果がある IEEE 802.11は以下が可能: CSMA CSMA/CA: reservations polling from AP 5: DataLink Layer 5a-88 Bluetooth について 小電力短距離無線技術 10-100 meters 無指向 赤外線通信ではない(見通 せないとだめ) 装置間接続 無線 LAN,ディジタルコー ドレス電話,電子レンジとの 干渉: 周波数ホッピング MAC プロトコルは以下を サポート: 2.4-2.5 GHz 特定小電力 無線(免許不要) 最大 721 kbps 誤り訂正 ARQ 各ノードは12-bitアドレスを もつ 5: DataLink Layer 5a-89 Chapter 5 outline 5.1 Introduction and 5.6 Hubs, bridges, and services 5.2 Error detection and correction 5.3Multiple access protocols 5.4 LAN addresses and ARP 5.5 Ethernet switches 5.7 Wireless links and LANs 5.8 PPP 5.9 ATM 5.10 Frame Relay 5: DataLink Layer 5a-90 Point to Point Data Link Control one sender, one receiver, one link: easier than broadcast link: no Media Access Control no need for explicit MAC addressing e.g., dialup link, ISDN line popular point-to-point DLC protocols: PPP (point-to-point protocol) HDLC: High level data link control (Data link used to be considered “high layer” in protocol stack! 5: DataLink Layer 5a-91 PPP Design Requirements [RFC 1557] packet framing: encapsulation of network-layer datagram in data link frame carry network layer data of any network layer protocol (not just IP) at same time ability to demultiplex upwards bit transparency: must carry any bit pattern in the data field error detection (no correction) connection liveness: detect, signal link failure to network layer network layer address negotiation: endpoint can learn/configure each other’s network address 5: DataLink Layer 5a-92 PPP non-requirements no error correction/recovery no flow control out of order delivery OK no need to support multipoint links (e.g., polling) Error recovery, flow control, data re-ordering all relegated to higher layers! 5: DataLink Layer 5a-93 PPP Data Frame Flag: delimiter (framing) Address: does nothing (only one option) Control: does nothing; in the future possible multiple control fields Protocol: upper layer protocol to which frame delivered (eg, PPP-LCP, IP, IPCP, etc) 5: DataLink Layer 5a-94 PPP Data Frame info: upper layer data being carried check: cyclic redundancy check for error detection 5: DataLink Layer 5a-95 Byte Stuffing “data transparency” requirement: data field must be allowed to include flag pattern <01111110> Q: is received <01111110> data or flag? Sender: adds (“stuffs”) extra < 01111110> byte after each < 01111110> data byte Receiver: two 01111110 bytes in a row: discard first byte, continue data reception single 01111110: flag byte 5: DataLink Layer 5a-96 Byte Stuffing flag byte pattern in data to send flag byte pattern plus stuffed byte in transmitted data 5: DataLink Layer 5a-97 PPP Data Control Protocol Before exchanging networklayer data, data link peers must configure PPP link (max. frame length, authentication) learn/configure network layer information for IP: carry IP Control Protocol (IPCP) msgs (protocol field: 8021) to configure/learn IP address 5: DataLink Layer 5a-98 Chapter 5 outline 5.1 Introduction and 5.6 Hubs, bridges, and services 5.2 Error detection and correction 5.3Multiple access protocols 5.4 LAN addresses and ARP 5.5 Ethernet switches 5.7 Wireless links and LANs 5.8 PPP 5.9 ATM 5.10 Frame Relay 5: DataLink Layer 5a-99 Asynchronous Transfer Mode: ATM 1990’s/00 standard for high-speed (155Mbps to 622 Mbps and higher) Broadband Integrated Service Digital Network architecture Goal: integrated, end-end transport of carry voice, video, data meeting timing/QoS requirements of voice, video (versus Internet best-effort model) “next generation” telephony: technical roots in telephone world packet-switching (fixed length packets, called “cells”) using virtual circuits 5: DataLink Layer 5a100 ATM architecture adaptation layer: only at edge of ATM network data segmentation/reassembly roughly analogous to Internet transport layer ATM layer: “network” layer cell switching, routing physical layer 5: DataLink Layer 5a101 ATM: network or link layer? Vision: end-to-end transport: “ATM from desktop to desktop” ATM is a network technology Reality: used to connect IP backbone routers “IP over ATM” ATM as switched link layer, connecting IP routers 5: DataLink Layer 5a102 ATM Adaptation Layer (AAL) ATM Adaptation Layer (AAL): “adapts” upper layers (IP or native ATM applications) to ATM layer below AAL present only in end systems, not in switches AAL layer segment (header/trailer fields, data) fragmented across multiple ATM cells analogy: TCP segment in many IP packets 5: DataLink Layer 5a103 ATM Adaptation Layer (AAL) [more] Different versions of AAL layers, depending on ATM service class: AAL1: for CBR (Constant Bit Rate) services, e.g. circuit emulation AAL2: for VBR (Variable Bit Rate) services, e.g., MPEG video AAL5: for data (e.g., IP datagrams) User data AAL PDU ATM cell 5: DataLink Layer 5a104 AAL5 - Simple And Efficient AL (SEAL) AAL5: low overhead AAL used to carry IP datagrams 4 byte cyclic redundancy check PAD ensures payload multiple of 48bytes large AAL5 data unit to be fragmented into 48byte ATM cells 5: DataLink Layer 5a105 ATM Layer Service: transport cells across ATM network analogous to IP network layer very different services than IP network layer Network Architecture Internet Service Model Guarantees ? Congestion Bandwidth Loss Order Timing feedback best effort none ATM CBR ATM VBR ATM ABR ATM UBR constant rate guaranteed rate guaranteed minimum none no no no yes yes yes yes yes yes no yes no no (inferred via loss) no congestion no congestion yes no yes no no 5: DataLink Layer 5a106 ATM Layer: Virtual Circuits VC transport: cells carried on VC from source to dest call setup, teardown for each call before data can flow each packet carries VC identifier (not destination ID) every switch on source-dest path maintain “state” for each passing connection link,switch resources (bandwidth, buffers) may be allocated to VC: to get circuit-like perf. Permanent VCs (PVCs) long lasting connections typically: “permanent” route between to IP routers Switched VCs (SVC): dynamically set up on per-call basis 5: DataLink Layer 5a107 ATM VCs Advantages of ATM VC approach: QoS performance guarantee for connection mapped to VC (bandwidth, delay, delay jitter) Drawbacks of ATM VC approach: Inefficient support of datagram traffic one PVC between each source/dest pair) does not scale (N*2 connections needed) SVC introduces call setup latency, processing overhead for short lived connections 5: DataLink Layer 5a108 ATM Layer: ATM cell 5-byte ATM cell header 48-byte payload Why?: small payload -> short cell-creation delay for digitized voice halfway between 32 and 64 (compromise!) Cell header Cell format 5: DataLink Layer 5a109 ATM cell header VCI: virtual channel ID will change from link to link thru net PT: Payload type (e.g. RM cell versus data cell) CLP: Cell Loss Priority bit CLP = 1 implies low priority cell, can be discarded if congestion HEC: Header Error Checksum cyclic redundancy check 5: DataLink Layer 5a-110 ATM Physical Layer (more) Two pieces (sublayers) of physical layer: Transmission Convergence Sublayer (TCS): adapts ATM layer above to PMD sublayer below Physical Medium Dependent: depends on physical medium being used TCS Functions: Header checksum generation: 8 bits CRC Cell delineation With “unstructured” PMD sublayer, transmission of idle cells when no data cells to send 5: DataLink Layer 5a-111 ATM Physical Layer Physical Medium Dependent (PMD) sublayer SONET/SDH: transmission frame structure (like a container carrying bits); bit synchronization; bandwidth partitions (TDM); several speeds: OC3 = 155.52 Mbps; OC12 = 622.08 Mbps; OC48 = 2.45 Gbps, OC192 = 9.6 Gbps TI/T3: transmission frame structure (old telephone hierarchy): 1.5 Mbps/ 45 Mbps unstructured: just cells (busy/idle) 5: DataLink Layer 5a-112 IP-Over-ATM Classic IP only 3 “networks” (e.g., LAN segments) MAC (802.3) and IP addresses IP over ATM replace “network” (e.g., LAN segment) with ATM network ATM addresses, IP addresses ATM network Ethernet LANs Ethernet LANs 5: DataLink Layer 5a-113 IP-Over-ATM Issues: IP datagrams into ATM AAL5 PDUs from IP addresses to ATM addresses just like IP addresses to 802.3 MAC addresses! ATM network Ethernet LANs 5: DataLink Layer 5a-114 Datagram Journey in IP-over-ATM Network at Source Host: IP layer maps between IP, ATM dest address (using ARP) passes datagram to AAL5 AAL5 encapsulates data, segments cells, passes to ATM layer ATM network: moves cell along VC to destination at Destination Host: AAL5 reassembles cells into original datagram if CRC OK, datagram is passed to IP 5: DataLink Layer 5a-115 Chapter 5 outline 5.1 Introduction and 5.6 Hubs, bridges, and services 5.2 Error detection and correction 5.3Multiple access protocols 5.4 LAN addresses and ARP 5.5 Ethernet switches 5.7 Wireless links and LANs 5.8 PPP 5.9 ATM 5.10 Frame Relay 5: DataLink Layer 5a-116 Frame Relay Like ATM: wide area network technologies Virtual-circuit oriented origins in telephony world can be used to carry IP datagrams can thus be viewed as link layers by IP protocol 5: DataLink Layer 5a-117 Frame Relay Designed in late ‘80s, widely deployed in the ‘90s Frame relay service: no error control end-to-end congestion control 5: DataLink Layer 5a-118 Frame Relay (more) Designed to interconnect corporate customer LANs typically permanent VC’s: “pipe” carrying aggregate traffic between two routers switched VC’s: as in ATM corporate customer leases FR service from public Frame Relay network (e.g., Sprint, ATT) 5: DataLink Layer 5a-119 Frame Relay (more) flags address data CRC flags Flag bits, 01111110, delimit frame address: 10 bit VC ID field 3 congestion control bits • FECN: forward explicit congestion notification (frame experienced congestion on path) • BECN: congestion on reverse path • DE: discard eligibility 5: DataLink Layer 5a120 Frame Relay -VC Rate Control Committed Information Rate (CIR) defined, “guaranteed” for each VC negotiated at VC set up time customer pays based on CIR DE bit: Discard Eligibility bit Edge FR switch measures traffic rate for each VC; marks DE bit DE = 0: high priority, rate compliant frame; deliver at “all costs” DE = 1: low priority, eligible for congestion discard 5: DataLink Layer 5a121 Frame Relay - CIR & Frame Marking Access Rate: rate R of the access link between source router (customer) and edge FR switch (provider); 64Kbps < R < 1,544Kbps Typically, many VCs (one per destination router) multiplexed on the same access trunk; each VC has own CIR Edge FR switch measures traffic rate for each VC; it marks (i.e. DE = 1) frames which exceed CIR (these may be later dropped) Internet’s more recent differentiated service uses similar ideas 5: DataLink Layer 5a122 Chapter 5: Summary principles behind data link layer services: error detection, correction sharing a broadcast channel: multiple access link layer addressing, ARP link layer technologies: Ethernet, hubs, bridges, switches,IEEE 802.11 LANs, PPP, ATM, Frame Relay journey down the protocol stack now OVER! next stops: multimedia, security, network management 5: DataLink Layer 5a123
© Copyright 2024 ExpyDoc