記事ディレクトリ
- 序文
- 1. データリンク層の機能
- 2. フレーミング
- 3. エラー制御
- 4. 流量制御と確実な伝達機構
-
- 4.1. 流量制御、信頼性の高い伝達機構、スライディングウィンドウ機構
- 4.2. 停止待機プロトコル
- 4.3. バックワード N フレーム プロトコル (GBN プロトコル)
- 4.4. 再送プロトコル(SRプロトコル)の選択
- 4.5. メディアアクセス制御 (MAC)
-
- 4.5.1. データ送信に使用される 2 種類のリンク (ポイントツーポイント、ブロードキャスト)
- 4.5.2. メディアアクセス制御を理解する
- 4.5.3. チャネル分割メディアアクセス制御(静的チャネル分割)
- 4.5.4. 動的なチャネル割り当て
- MACプロトコルの概要
- 5.LAN
-
- 5.1. LANの基本概念とアーキテクチャ
- 5.2. イーサネット
- 5.3. 無線LAN
- 5.4. VLAN の基本概念と原則
- 6. 広域ネットワーク
- 7. リンク層装置
序文
現在、第24回大学院入試の準備中ですが、コンピュータ王24問のうち408問で学んだ知識をまとめて整理してみます。
Blogger ブログ記事ディレクトリ インデックス:ブログ ディレクトリ インデックス (継続的に更新)
この章のマップ:
1. データリンク層の機能
1.1. データリンク層の研究アイデア
処理: ホスト A はホスト B にデータを送信し、送信側は各層で対応する制御情報を付加してカプセル化して送信し、中間システムを通過する際にはカプセル化解除とカプセル化のプロセスを経て、最後に送信し、ホスト B に移動してブロックを解除してデータを取得します。
上の図から、データが上から下にカプセル化され、下から上にカプセル化解除されることがわかります。データ リンク層の問題のみを検討する場合、プロトコルの水平方向の各データ リンク層のみを考慮します。 stackは以下のようになります。 図の矢印に示すように、これが今回のリンク層研究における研究アイデアです。
1.2. データリンク層の基本概念
结点
:ホスト、ルーター。
- 隣接ノード: 線で接続された 2 つのノード。
链路
:ネットワーク内の 2 つのノード間の物理チャネル。リンクの伝送媒体には主にツイストペア、光ファイバー、マイクロ波が含まれ、有線リンクと無線リンクに分けられます。
数据链路
:ネットワーク内の 2 つのノード間の論理チャネル。制御データ送信プロトコルを実装するハードウェアとソフトウェアがリンクに追加されて、データ リンクを形成します。
- 簡単な説明: データ伝送プロトコルを制御するハードウェアおよびソフトウェア + リンク = データ リンク
帧
: ネットワーク層データグラムをカプセル化するリンク層プロトコル データ ユニット。
データリンク層は、あるノードからリンクを介して、別の物理リンクに直接接続されている隣接ノードにデータグラムを送信する役割を果たします。
主な責任: 上位ネットワーク層から配信されたデータグラムを、安全かつエラーなく隣接するノードに渡します。
1.3. データリンク層機能概要(5つの機能)
機能概要:データリンク層は、物理層のサービス向上をベースにネットワーク層にサービスを提供するもので、最も基本的なサービスは、ネットワーク層から隣接ノードのターゲットマシンのネットワーク層へデータを確実に送信することです。
主な機能: 元のビット ストリームを送信する物理層の機能を強化し、物理層によって提供されるエラーが発生しやすい物理接続を論理エラーのないデータ リンクに変換し、エラーのないリンクとして表示されるようにします。ネットワーク層。
経緯を説明してください: A 社の上司が秘書に 5 枚の書類を渡し、B 社に送ってほしいと頼みました。秘書は絶対に自分では持って行きません。この時、彼は愚か者に書類を運んでもらいました。心配して5枚の書類を送ったところ、バカは番号を受け取り、それをB社に持って行き、B社の秘書に渡しました。彼はその愚か者に書類を再送するように頼んだが、書類が再送され全て受け取られた後、B社の小さな秘書は偉い上司に引き渡された。
- 偉い人: ネットワーク層、小さな秘書: データリンク層、愚か者: 物理層。
- 物理層は比較的愚かで、データの送信のみを担当します。場合によってはデータが失われやすいため、データリンク層は、起こり得るエラーを事前に予測し、対応するエラー制御を実行するために事前に準備する必要があります。ネットワーク層に与えるのと同等エラーのないサービスを提供します。(つまり、データがネットワーク層に到達するとき、データは完全でエラーがない必要があります)
エラーのないデータリンクを実現するために、現時点では特定の機能が利用可能になります。
機能 1: ネットワーク層にサービスを提供する
未確認の非接続サービス、確認済みの無接続サービス、および確認済みの接続指向サービスが含まれます。
①无确认无连接服务
: 通常、ビット誤り率が比較的低い通信または通信チャネルを実装するために使用されます。つまり、元のホストは、データを送信するプロセス中に、事前に宛先ホストとのリンク接続を確立する必要はありません。ホストがデータリンク層を受信する 確認も必要ありません。
- 短所: データが実際に失われた場合、データリンク層はそれを再送信せず、処理のために上位層に直接渡しますが、これはあまり責任がありません。
- 目的: リアルタイム通信には、より高速な通信が必要です。
②有确认无连接服务
: 事前に接続を確立する必要はありません。宛先ホストはデータ受信時に確認を返信する必要があります。送信元ホストが確認信号を受信しなかった場合は、確認を受信していないフレームを再送信します。今回はOKです。データリンク層の信頼性を向上させます。
- 適切なシナリオ: ビット エラー レートが比較的高い通信チャネルに適しています。
③有确认面向连接服务
: まず接続を確立する必要があり、次に受信側がフレームを受信した後、次のフレームの送信を続ける前に確認フレームを返す必要があります。
- 利点: 最も安全で信頼性が高い。
注: 接続がある場合は確認が必要です。接続がある場合は確認する必要があるため、確認のない接続指向のサービスは存在しません。
機能 2: リンク管理、つまり接続の確立、維持、解放 (接続指向サービスの場合)。
機能 3: フレーミング。
機能 4: フロー制御。送信者の速度を制限するために受信者によって使用されます。
機能 5: エラー制御。
- エラーにはフレーム エラー/ビット エラーが含まれ、各エラーを制御するための対応する手段があります。
2. フレーミング
2.1. フレームのカプセル化とフレーム送信のプロセス(名詞の説明を含む)
ネットワーク層によって配信された IP データグラムを処理します。つまり、データグラムにヘッダーとテールを追加して、リンク層送信のデータ送信単位、つまりフレームを形成します。
封装成帧
(フレーム化、送信側のプロセス):送信側はデータの前後にヘッダーとトレーラーを追加して、フレームを形成します。物理層から渡されたビットストリームを受信した受信側は、受信したビットストリームからヘッダマークとテールマークに基づいてフレームの開始番号とセクション番号を識別することができます。
- 先頭と末尾にフィールドまたはバイトが追加され、このバイトは と呼ばれます
帧定界符
。
帧定界
: ヘッダーとトレーラーには多くの制御情報が含まれており、これはその 1 つです。その機能は、フレームの境界を決定することです。他の制御情報には、エラー制御、フロー制御、および一部の物理アドレス関連情報も含まれます。
フレームを送信するプロセス: フレームの先頭、つまりフレームのヘッダーから開始して、フレームの最後まで送信されるまでビットを 1 つずつ送信します。受信時には、受信側が次の情報に基づいて判断できます。フレームの終わりが受信されるまで、現時点でフレームが受信されているフレームヘッダー。
帧同步
(受信側の処理):受信側は、受信したバイナリ ビット ストリームからフレームの開始と終了を区別できる必要があります。
数据链路层的帧长
: フレームのデータ部分 + フレームヘッダ + フレーム末尾。- 注: フレームの伝送効率を向上させるには、フレームのデータ部分をできるだけ大きくする必要があります。つまり、フレームの大部分がデータ部分である必要があります。このとき、データ部分には最大伝送単位 MTUと呼ばれる制限値が設定されます。
最大传输单元MTU
: フレームのデータ部分の長さを記述するために使用されます。MTU の長さはプロトコルによって異なります。フレームを送信するときは、データ部分が MTU 最大送信単位以下である必要があります。
2.2. 透過的な伝送と 4 つのフレーミング方法の実装
2.2.1. 透過伝送とは何ですか?
つまり、本物だけど目には見えないということです。
透明传输
: 送信されるデータがどのようなビットの組み合わせであっても、リンク上で送信できる必要があることを意味します。したがって、リンク層はデータの伝送を妨げる「目に見えない」ものを指します。
- 転送されたデータの量を知る必要はなく、これらを相手側に直接送信するだけです。
送信データのビットの組み合わせが、ある制御情報と全く同じ場合には、受信側が何らかの制御情報と誤認しないように適切な措置を講じることによってのみ、通信を行うことができます。データリンク層が保証されていること、透過的であること。
フレームの 4 つの方法: 1. 文字数をカウントする方法。2. 文字(セクション)の塗りつぶし方法。3. ゼロビット埋め込み方式。4. 違法なコーディング法。
2.2.2. 方法1:文字数のカウント方法
規則: フレーム ヘッダーは、カウント フィールド (最初のバイト、8 ビット) を使用して、フレーム内の文字数を示します。
例: 最初のバイトを読み取ることで、送信されたフレームの合計長を知ることができます。たとえば、下の最初のバイトは 5 で、このフレームは 5 バイトであることを意味します。4 までは、3 番目のフレームの最初のバイトは 8 です。 、これは、このフレームには 6 バイトの終わりまで 8 バイトが含まれていることを意味します。
欠陥: 上の図の送信プロセス中に干渉があり、各フレームの最初のバイト番号 5 が他の番号に変わった場合、壊滅的な問題が発生し、後続のすべてのフレームが正常に解析されなくなることを想像してください。したがって、この方法は実際のアプリケーションではあまり一般的に使用されません。
2.2.3. 方法2:文字の塗りつぶし方法
規則: フレームの開始と終了を示すために、送信データの先頭と末尾にヘッダー コードとテール コードを追加します。
最初のエンコーディングを設定するだけでは十分ではなく、次の 2 つのシナリオが発生する可能性があります。
シナリオ 1 : 送信されるフレームはテキスト ファイルで構成されます (テキスト ファイル内の文字はすべてキーボードから入力された ASCII コードであるため)。そうすれば、キーボードからどのような文字が入力されても、フレームに入れて送信することができます(SOH や EOT エンコードとの重複がないため)、つまり透過送信が可能になります。
シナリオ 2 : 送信されたフレームが非テキスト ファイル (バイナリ プログラムや画像など) で構成されている場合、非常に多くの場合、SOH および EOT と同じバイナリ エンコーディングが表示される可能性があります。この時点で追加のルールが追加されていない場合、受信する場合がありますが、読み込み時に早く終了する場合がありますので、この場合は透過的な送信を実現するために文字埋め込み方式を使用する必要があります。
上記の繰り返しを次の図に示します。
解決策: 実際のデータ部分で繰り返される SOH および EOF コードの前に文字パディングを追加します。これは、先頭または末尾の単なるエスケープ文字ではないことを意味します。
解決例: 以下の元データでは、ヘッダーと末尾にEOT、SOH、ESCの同一コードが多数存在することがわかりますが、このとき、繰り返される各コードの前に文字パディングを追加し、受信側は実際にそれを読み取ります。バイトパディングに遭遇すると、次の文字がヘッダーの先頭または末尾ではないことがわかり、データコンテンツ文字として読み取られます。
2.2.4. 方法 3: ゼロビット埋め込み方法
ルール: データ部の先頭と末尾、つまり 1 0 の後に 1 が 6 個続き、その後 1 0 が続く統一コード 0111110 を追加します。
質問: 中間フレームのデータもエンコーディング 01111110 で表示される場合はどうすればよいですか? それを解決するにはどうすればよいですか?
解決策: 送信者がデータを送信する前にデータ部分で 5 つの連続する 1 に遭遇した場合、最後に 0 を直接追加して埋め込みを完了します。受信側がフレーム内のデータを読み取るときに 5 つの連続した 1 に遭遇した場合は、0 の場合、まず次の 1 を削除し、同じサイクルを繰り返します。
特長: 透過的な伝送が保証されており、フレーム境界の判定エラーを引き起こすことなく、伝送ビットストリーム内でビットの任意の組み合わせを伝送できます。
2.2.5. 方法 4: 不正なコーディング方法
物理層のビットエンコーディング中に透過的な伝送を実現する方法。
ルール: マンチェスター エンコードで 0 と 1 を表すルールは 2 つだけで、高-低または低-高です (質問の要件による)。高-高または低-低の状況は存在しないため、次のように使用できます。高-高および低-低は、境界フレームの開始と終了として機能します。
アプリケーション: ieee802.1 はこのエンコード方式を使用します。
2.2.6. 4 つの方法のまとめ
概要:
1. バイトカウント方式における Count フィールドの脆弱性について(最初の値に誤りがあると、それ以降のすべての読み取りに影響します)。
2. 文字の塗りつぶしの実装は比較的複雑で、互換性がありません。
3. 現在、より一般的に使用されているフレーム同期方法は、ビット スタッフィングと違法なエンコード方法です。
3. エラー制御
3.1. エラーはどこから発生するのでしょうか?
要約すると、伝送エラーはノイズによって引き起こされます。
全局性
:線路自体の電気的特性により発生するランダムノイズ(熱雑音)はチャネル固有のものであり、ランダムに存在します。
- 解決策:信号対ノイズ比を改善して、干渉 (センサーへの攻撃) を軽減または回避します。
- S/N 比を改善すると、ビット誤り率が低下し、エラーが減少します。ビット誤り率は、誤りビット数/総ビット数を指します。
局部性
:特定の一時的な外部要因によって発生する衝撃ノイズがエラーの主な原因です。
- 解決策: エンコード数を利用することで解決しました。
- 衝撃とは、通信中にデータが突然パンチされることを指し、衝撃ノイズの影響を受けます。
エラーには、ビット エラーとフレーム エラーの 2 種類があります。
位错
:ビットエラーを指し、1が0になり、0が1になります。帧错
:数ビットの組み合わせ、つまりフレーム単位でエラーが発生することを指し、フレームエラーの問題はフレーム番号の確認や再送などの仕組みを利用することで解決できます。
主に紛失、重複、無秩序の 3 つの状況が含まれます。
リンク層はネットワーク層にサービスを提供します。
- 良好な通信品質を得るには、確認なし、接続サービスなしの有線伝送リンクを選択してください。
- 通信品質が低い場合、ワイヤレス伝送リンクの選択: 確認済みのコネクションレス型サービス、確認済みのコネクション型サービス。
リンクごとに異なる信頼性の高い伝送メカニズムを使用できます。
3.2. データリンク層での誤り制御(検出符号化と誤り訂正符号化の紹介)
データリンク層はポイントツーポイントであるため、各ノードとその隣のノードは実際に送信者と受信者の間の関係を形成します。関係が確立されると、受信者は送信者のデータに応答する必要があります。データはエラー検出の対象となります。そして修正さえも。
誤りを検出したい場合は誤り検出符号化を使用し、誤りを訂正したい場合は誤り訂正符号化を使用します。
誤り検出符号化には、 という符号化が採用されています奇偶校验码
(現在循环冗余码
はこの検出方法が多く使われています)。
誤り訂正符号化に使用されるコードは次のとおりです海明码
。
3.3. コーディングVSコーディング(物理層とデータリンク層のコーディングの比較)
エンコーディング VS エンコーディング (物理層とデータリンク層のエンコーディングの比較) : データリンク層と物理層のデータのエンコーディングと変調が異なります。
- 物理層コーディングは単一ビットを対象としており、マンチェスターコーディングなどの送信中のビット同期などの問題を解決します。
- データリンク層のエンコードはビットのグループに対して行われ、冗長コードのカウントは、送信プロセス中にバイナリビットのグループでエラーが発生したかどうかを判断するために使用されます。
冗長コーディングとは何ですか?
- データが送信される前に、特定の冗長ビットが特定の関係に従って付加され、特定の規則に従うコードワードが形成されて送信されます。
- 送信される有効なデータが変化すると、対応する冗長ビットも変化するため、コードワードは同じ規則に従います。受信側は、受信したコードワードが元の規則に準拠しているかどうかに基づいて、エラーがあるかどうかを判断します。
3.4. 誤り検出符号化(2方式)
方法 1: パリティ チェック コード
組み合わせ: n-1 個の情報要素と 1 つのチェック要素で構成され、n-1 個の情報要素が実際に送信されるデータになります。n-1 ビットの前に 1 つのチェック要素を追加することで自分で行うことができます。追加、指定します。 1の数で奇数か偶数かがわかります。
パリティチェックコードの制限: 1 ビットが変化した場合は検出できますが、1 から 0、0 から 1 など 2 ビットが変化した場合は依然として検出できません。
例:文字Sがあり、ASCIIコードの下位から上位までが1100101で、奇数パリティを使用している場合、次の受信送信文字でエラーが検出できないものはどれですか?
分析: 指定された値は 1100101 なので、質問では奇数パリティを使用するように指示されています。したがって、指定された文字には偶数の 1 しかないため、前のチェック要素 1 (この時点では 6 桁) を追加して、次のようになります。 A、B、Cの数字はすべて偶数で、Dの1だけが奇数であることがわかります。このとき、ACに問題があるのは明らかです。ただし、 D では検出できません。ビットのうち 2 つが変更されているか、エラーがない可能性があるためです。
パリティチェックコードの特徴: 奇数個のビットエラーのみを検出でき、エラー検出能力は50%です。
方法 2: CRC 巡回冗長コード
CRC巡回冗長コードの簡易版コード例(10進数)
次の例は実際の CRC 巡回冗長符号とあまり変わりませんが、10 進数を使用するのに対し、CRC は 2 進数を除算します。
送信者: まず、送信したいデータ 5 と多項式 2 を与えます。次に、除算演算を実行し、余りが冗長コード 1 になります。次に、送信データと冗長コードを加算して、最終的な送信データ 5 を取得します。 . + 1 = 6。
受信側:伝送エラーの有無を検出するには、取得したデータ6を多項式にし、余りが0であればエラーが無いことを意味します。
実用的なCRC巡回冗長符号適用(バイナリ)
プロセスを標準化する
ステップ 1. 送信する有効なデータを準備します。
まず、送信するデータをビットの組み合わせに次々と切り分けます。
ステップ 2. 取得した冗長コードを各グループに追加してフレームを形成し、送信します。
- 実際の質問では、r+1 桁の生成多項式が得られます。
11011 に似た生成多項式が直接与えられない場合もありますが、11011 を形成する1x2 4 + 1x2 3 + 0x2 2 + 1x2 1 + 1x2 0である可能性があります。
- 数値の次数は、2 に対応する最上位ビットによって決まります。たとえば、11011 の場合、最大の多項式は 2 4であり、対応する次数は 4 になります。
次のように、まず送信するデータの後に r ビット 0 を追加します。
FCS フレーム チェック シーケンスの最終的な計算方法は次のとおりで、最終的に r ビットの残りを持つ FCS が得られます。これがフレーム検出コードです。
ステップ 3: 受信機の検査
最後に受信したデータを生成多項式で除算し、最後に剰余が 0 かどうかに基づいて破棄するかどうかを決定します。
特長:FCSの生成と受信側のCRCチェックはすべてハードウェアで実装されており、処理が非常に高速なため、データ伝送の遅延がありません。
実践例
トピック:
分析: 送信されたデータと生成多項式が与えられると、残りのフレーム検出シーケンスを計算できます。
ステップ 1: 送信する有効なデータを準備します。
送信するデータは1101011011、生成多項式は10011です。そして生成多項式の次数を求めます。
10011は多項式で表されます:x 4 + x 1 + x 0。このとき、次数は4であると判断できます。
ステップ 2: 取得した冗長コードを各グループに追加してフレームを形成し、送信します。
冗長コードを計算します。
- 0 の追加: 生成多項式 G(x) の次数を r と仮定して、r 個の 0 を追加します。
- モジュロ2除算:データを0を加算した多項式で除算し、余りを冗長コード/FCS/CRCチェックコードのビット列とします。(プロセスの元の減算。ここでは XOR です。0 と同じで 1 とは異なります)
まず、送信するデータの後に 4 桁の 0 を追加します (11010110110000)。
次に、除算演算を実行します。プロセスは 0 と同じであり、1 とは異なる必要があることに注意してください。
最後に、残りの FCS (冗長コードまたは FCS フレーム チェック シーケンス) が取得されます。
余りを取得したら、先ほど追加した0を全て余りに置き換えて送信しますが、このとき送信される値は11010110111110となります。
送信される最終データは次のとおりです。实际的数据+帧检测序列
ステップ 3: 受信機の検査
受信した各ビット フレームを同じ除数で除算し、その結果の剰余 R が 0 であるかどうかを確認します。
- 余りが0であれば、このフレームには誤りがないと判断して受信する。
- 剰余が0でない場合、フレームはエラーである(所定の位置にあると判断できない)と判断され、破棄される。
CRCの注意点(問題点:エラーのない受信が確実な送信かどうか)
1. CRC と FCS の違いを必ず区別してください。CRC はエンコードを検出する方法を指し、FCS はフレーム検出シーケンスを指します。
2. デフォルトでは、受信側がそれを受信している限り、フレームに問題がないことを意味します。ここで、エラーがない確率は 1 に近いです。
- 極端な場合には、最終剰余が 0 であっても、エラーが発生する可能性があります。
- データリンク層では、巡回冗長検査 CRC エラー検出を使用して奇数を検出することのみが、フレームのエラーなしの受信を達成することしかできません。つまり、「受信側のデータリンク層によって受け入れられたすべてのフレームについて、それらを検出できます」 1 に非常に近いため、これらのフレームの送信中にエラーが発生しなかった可能性があります。」受信側で廃棄されたフレームについて触れましたが、最終的にはエラーにより廃棄されました。
- 「受信側のデータ リンク層によって受け入れられたすべてのフレームにエラーはありません」 (これがデフォルトの信念です)。
3. 質問:エラーのない受信は、信頼性の高い送信を意味しますか?
- 「信頼性の高い伝送」とは、データリンク層の送信者が送信し、受信者が受信するものを指します。
- CRC チェックの場合、ビット エラーのない伝送のみが達成できますが、これはまだ信頼できる伝送ではありません。
- 理由の説明: このフレームが受信される限りビット エラーは発生しませんが、一部のフレームが破棄される (再送信される) ため、信頼性の高い送信とは言えません。これらのフレームを処理しないと、すべてのデータが失われます。送信者が意図的に送信したものを受信側がすべて受信するわけではないため、信頼性の高い送信はまだ実現されていません。
3.5. 誤り訂正符号化
3.5.1. ハミングコード
従来のパリティ コードではエラーの検出のみでしたが、ハミング コードではエラーの検出、位置の特定、エラーの修正が可能です。
ワークフローは次のとおりです。
- 2番目のステップは、このチェックコードをデータビット数に挿入することです. これは、前の2つの検出コードとは異なります. パリティチェックコードとCRC巡回冗長コードについては、最下位ビットが追加されるか、またはハミング符号では、このチェックコードを一定の規則に従ってデータビットに挿入する必要があります。
3.5.2. ハミング距離について
海明距离
: 2 つの法的コード (符号語) の対応するビット値が異なるビット数を 2 つの符号語のハミング距離と呼びます。
- 言い換えれば、有効なコードでは、任意の 2 つの正当なコード (コードワード) のハミング距離の最小値が、コード セットのハミング距離 (コード距離) と呼ばれます。
例:例えば、1000と1111のハミング距離は3桁、01と00の場合は1桁になります。
**コーディング システム内のコードの距離を調べたい場合はどうすればよいでしょうか? **つまり、任意の 2 つのコード間の最小距離 (異なる桁数) を取得します。
シナリオ 1: 符号化方式のコード距離が 1 の場合、1 ビットエラーは検出できません。
想像してみてください。送信中にエラーが発生し、000 が 001 に変わってしまったとします。その場合、正しいエンコード送信には 001 が含まれているため、エラーかどうか判断できません。
シナリオ 2: 符号化システムのコード距離が 2 の場合、1 ビットのエラーは検出できますが、訂正できません。
想像してみてください: 0000 のビットが間違っていて 0001 になった場合、この時点で間違っていることがわかります。これは、正しいエンコードにはコード距離 1 の同じエンコードが存在しないため、検出できます。
それは修正できますか? まだ機能しません。例を挙げてみましょう。0000 を使用してエラー ビットを送信すると、考えられるエラー状況は次のとおりです。
1000
0100
0010
0001
0010を送信すると、正しいエンコードに存在しないため誤りであることがわかりますが、このとき修正し、任意のビットを次のように修正します。
1010 命中
0110 命中
0000 命中
0011 命中
任意の 1 ビットを修正すると、すべての正しいビットと一致することがわかり、その場合は修正できないことが直接証明されます。
シナリオ 3: コードの距離が 3 の場合はどうなるでしょうか?
0000
0111
0000 の送信中に数値が変更された場合、それは 0010 になる可能性があるため、それを修正して間違ったビットを変更しようとします。
1010
0110
0000 命中
0011
1 つだけがヒットしていることがわかり、距離が 3 であれば 1 つのエラーを修正でき、1 つまたは 2 つのエラーを検出できると結論付けることができます。
最終的な結論: ハミング コードで d 個の転位を検出する必要がある場合、コード距離は d+1 であり、d 個の転位を修正する場合、コード距離は 2d+1 である必要があります。
3.5.3. Haiming コードのワークフロー (例と組み合わせた詳細なプロセスを含む)
ステップ 1: チェック コードの桁数を決定します。
データ/情報は m ビット、冗長コード/チェック コードは r ビットです。
このとき、mとrの関係( 海明不等式
)を式で表すと、 2 r >=m+r+1 となります。
- チェック コードを使用して 2 進数の 1 桁をフィルタリングできるため、フィルタ可能な範囲 (実際には最終範囲) を表すには2 rが必要です。
- 同時に、チェックコードとビット数は最終的にまとめられて送信されるため、m+r になります。
- 以前検出に使用した場合、d 個の転位を検出したい場合は、d+1 ビットが必要になります。
例:今回送信するデータはD=1100です。
このとき、mは4桁なので、式2にr >=m+r+1を代入すると最小のrは3桁となり、このときr=3となります。
最終的なハミング コードは合計 4 + 3 = 7 桁になります。
元データは4桁、チェックコードは3桁です。
ステップ 2: チェック コードとデータの場所を決定する
チェックコードは3桁ですが、右から左へ1、2、3、4、5、6、7の7桁で表します。
3 桁のチェック コードの場合、順序は 2 0、 2 1、および 2 2です。ここでは、ビットをそれぞれ x1、x2、および x4 としてマークします。
次に、指定された元のデータ 1100 を前から後ろにテーブルに入れます。
ステップ 3: チェック コードの値を確認する
このステップの重要な考え方はグループ化です。各シリアル番号の値を表すためにシリアル番号の上にバイナリが使用されていることがわかります。これは後でグループ化する必要があります。
x1、x2、および x4 については、それぞれ 001、010、および 100 を表します。実際には、1 桁が 3 桁の数値を表すことがわかります。次に、それぞれ、 、およびテーブル全体を照合する必要があります。* 全体は 0 を表すこと**1
ができ*1*
ます1**
または 1、それが一致する限り。
次に、偶数パリティを使用してこのグループをエンコードし、x1、x2、および x4 の値を取得します。
4号 x4 0 1 1 => x4=0
2号 x2 0 1 1 => x2=0
1号 x1 0 0 1 => x1=1
x1、x2、x4 の値を取得した後、それらの値をテーブルに入力します。
このとき得られたハミング符号を実際に送信することができる。
ステップ 4: 受信側でエラーの検出と訂正を実行する
この時点で、ハミング コードのシリアル番号 5 を直接変更して、間違った桁数を見つけて修正できるかどうかを確認します。
この時点で、受信側が受信した値 (間違った値) は 1110001 です。ここでも検証のために偶数パリティを使用します。
- x は 1 の数が奇数であることを示します。明らかに、対応するチェック コードはこの桁の指定エラーを検出します。
エラーの場所を特定するには 2 つの方法があります。
方法 1: 奇数/偶数チェックを満たさないグループの共通部分を見つけ、チェックを満たすグループとの差を取ります。
円を描いて指定した位置をフィルタリングすると、1 番と 4 番が間違っていることがわかり、次に円を描くと 5 番と 7 番のどちらかが間違っていることがわかります。
このとき、チェックコードNo.2(グループに対応するビットはすべて正しい)を使用し、最終的に5が間違っていることを除外し、5の位の1を0に変更してエラー訂正は完了です。
方法 2: 指定された奇数/偶数チェック (指定された) を使用してグループ化し、x1、x2、x4 の各桁を取得し、最後にそれらを組み合わせて位置を特定します。
x4 のグループ化は1**
、x2 のグループ化は*1*
、x1 のグループ化はである**1
ため、対応するマージ位置も同じになります。
最終的に、No.5 でエラーが発生したことが除外されました。
感想といくつかの質問と感想
質問 1 : 上記のハミング コードでは何桁まで検出できますか? 複数桁のエラーがある場合はどうすればよいですか?
結論: 標準のハミング コードは 1 ビットのエラーのみを検出できます。
- 標準のハミング コード (Hamming(7,4) コードなど) は、4 データ ビットごとに 3 つのチェック ディジットを追加し、合計 7 ビットになります。このハミング コードは、シングル ビット エラーを検出して修正するように設計されています。送信中に 2 ビットのエラーが発生した場合、エラー訂正機能ではこの状況をカバーできない可能性があります。
- 複数のビットエラーの場合、他のより複雑なエラー訂正コードスキームを使用する必要がある場合があります。エラー訂正コードの選択は、特定の要件と関連する送信エラー パターンに基づいて行う必要があります。
質問2:上記はデータビットのエラーの一例ですが、検出ビットにエラーが発生した場合も検出できますか?
**1
結論: それも検出できます. x1、x2、および x4 の機能は、それぞれ、 、*1*
および分割してグループ化することを表すだけです1**
. 実際の値自体は、エラーの検出と訂正には影響しません.エラーを検出して修正することもできます。
マインドマップの瞬間
4. 流量制御と確実な伝達機構
4.1. 流量制御、信頼性の高い伝達機構、スライディングウィンドウ機構
4.1.1. データリンク層のフロー制御を理解する(トランスポート層のフロー制御と比較)
なぜフロー制御なのか?
- 高い送信速度と低い受信能力の不一致は伝送エラーの原因となるため、フロー制御もデータリンク層の重要なタスクです。
- 現在の受信者がこれ以上リクエストを受信できなくなり、送信者が以前の速度で送信を続ける場合、受信者はオーバーフローします。この合計オーバーフローにより、送信メソッドによって送信されたデータが受信されなくなります。スペースとスペースの両方が無駄になります。リソースがあるため、フロー制御が必要です。
データリンク層でのフロー制御とトランスポート層でのフロー制御の違いは次のとおりです。
- データリンク層のフロー制御はポイントツーポイントであるのに対し、トランスポート層のフロー制御はエンドツーエンドです。
- データリンク層のフロー制御方式:受信者が受け付けられない場合は確認応答を返さず、受信者が受け付けることができる場合は確認応答フレームを返信する。
- トランスポート層フロー制御手段: 受信側が送信側にウィンドウをアナウンスします。
4.1.2. フロー制御方式(ストップ・ウェイト・プロトコル、スライディング・ウィンドウ・プロトコル)
2 つが含まれます: 停止-等待协议
、滑动窗口协议
。
- stop-wait プロトコルは実際には特別なスライディング ウィンドウ プロトコルとみなすことができ、このプロトコルのウィンドウは 1 であり、送信ウィンドウと受信ウィンドウは両方とも 1 です。
- スライディング ウィンドウ プロトコルは、 、 の 2 つの方法に分かれてい
后退N帧协议(GBN)
ます。选择重传协议(SR)
停止待機プロトコル
停止-等待协议
: フレームが送信されるたびに、次のフレームを送信する前に受信者が確認フレームを送り返すのを待つ必要があるため、実際には比較的非効率的です。
処理:送信側はフレームを送信するたびに送信を停止し、相手の確認を待ち、確認を受信してから次のフレームを送信します。
スライディング ウィンドウ プロトコル
滑动窗口协议
: 比較的効率的
ウィンドウ内でスライドするプロセス ウィンドウ プロトコル:
下の図では、上のデータが送信側、下のデータが受信側です。小さなグリッドはフレームを示し、フレーム 0 からフレーム 1 までソートされています。下の図では、送信ウィンドウの位置は 6 です。このとき、送信ウィンドウ内のフレームは連続して送信できます (送信前に、対応するシーケンス番号のフレームが確認フレームを受信するのを待つ必要はありません)。受信ウィンドウは、対応するシーケンス番号フレームのみを受信できます。
发送窗口
: 送信が許可されているフレームの連続シーケンス番号を保持している送信者を指します。(送信者が現在送信中のデータとも解釈できます)
受信ウィンドウがフレーム番号 0 を受信すると、受信ウィンドウは 1 スペース前に移動し、現在の受信者が 2 番目のフレームを受信できることを示します。
同時に、受信者は確認フレーム番号 0 を返します。送信者はそれを受信すると、スライディング ウィンドウも実行します。このとき、ウィンドウ内のフレーム番号 5 を送信することもできます。
追記:実はstop-waitプロトコルもスライディングウィンドウプロトコルですが、送信側と受信側のウィンドウは一つしかありません。
3 つの待機プロトコルのウィンドウ サイズを比較する
3 つの待機プロトコルのウィンドウ サイズを比較します。
- 停止待機プロトコル: 送信ウィンドウ サイズ = 1、受信ウィンドウ サイズ = 1。
- バックオフ N フレーム プロトコル (GBN): 送信ウィンドウ サイズ > 1、受信ウィンドウ サイズ = 1。
- 再送信プロトコル (SR) を選択します: 送信ウィンドウ サイズ > 1、受信ウィンドウ サイズ > 1。
注: リンク層スライディング ウィンドウ プロトコルでは、送信プロセス中にウィンドウ全体 (送信ウィンドウ、受信ウィンドウ) のサイズが固定されます。
4.1.3. 信頼性の高い伝送、スライディング ウィンドウ、およびフロー制御を区別します。
可靠传输
: 送信者が送信するもの、受信者が受信するもの。
- 問題解決:この伝送方式は信頼性があり、フレームが欠落、消失、重複した場合、受信側で欠落、重複したフレームが正常な状態に戻るように受信側で完全に制御する必要があり、これが信頼性の高い伝送です。解決すべき問題。
流量控制
: 受信機が各フレームを受信するのに十分なバッファ スペースを確保できるように、送信レートを制御します。
- 解決策:
滑动窗口
。- 問題1:フロー制御(受信できない場合は確認がされず、送信したくても送信できない)を解決します。[スライディング ウィンドウを使用すると、一度に 1 つのウィンドウのサイズを固定できます。確認フレームを受信すると、ウィンドウは 1 フレームずつスライドします。プロセス全体が実際にはトラフィックを制御します。なぜなら、送信者が確認フレームを受信していない場合、その送信ウィンドウはそれらのフレーム上で丸で囲まれており、これが送信者の送信速度を偽装制御しているためです。受信者がデータを受信できず、確認フレームに応答しないと、送信者が送信したいウィンドウがすでに固定されているため、データを送信できません]
- 問題 2: 確実な送信(送信者による自動再送信) を解決します。[送信者がフレームを送信して一定時間待機しても確認フレームを受信しない場合、この時点で自動的に再送信されます]
4.1.4. stop-wait プロトコルとスライディング ウィンドウ プロトコルはどの層ですか?
左側の 2 冊の本では、このプロトコルがトランスポート層にあるものとして説明されていますが、King's Book では、このプロトコルがデータリンク層にあるものとして説明されています。
コンピュータ ネットワークの開発の初期には、通信リンクの品質はあまり良くありませんでした。この時、リンク層は信頼性の高い伝送の責任を担う必要があったため、リンク層はストップ-ウェイト プロトコルを使用していました。 -off n フレーム プロトコル、選択的再送信プロトコルなど。
テクノロジーの発展に伴い、通信リンクの品質はますます向上しています。現時点では、エラーの可能性は以前ほど大きくありません。現時点では、リンク層は信頼性の高い伝送の責任を一時的に放棄し、これを行うことができます。実装はトランスポート層に任せ、リンク層は 1 つのエラー制御のみを担当すればよいため、リンク上でのデータ転送がより高速になり、時間と遅延が少なくなります。
まとめ: これら 3 つのプロトコルがどの層にあるのか、どの層にあるのかを気にする必要はありません。最終的な影響は、データを送信するためのオブジェクトだけです。たとえば、これら 3 つのプロトコルがトランスポート層にある場合、オブジェクトはパケットであり、リンク層で送信されるときはフレームです。本質は送信したいデータです。
マインドマップの瞬間
4.2. 停止待機プロトコル
4.2.1. なぜストップ・ウェイト・プロトコルと研究前提があるのでしょうか?
1. なぜストップアンドウェイトプロトコルがあるのですか?
ビット エラーに加えて、基礎となるチャネルでパケット損失が発生します。
- パケットロス:物理回線障害、機器障害、ウイルス攻撃、ルーティング情報エラー等により、データパケットロスが発生する場合があります。
パケットロスの問題を解決し、フロー制御を実装するには、stop-wait プロトコルを使用する必要があります。
2. 研究停止待機協定の前提条件は何ですか?
現在では全二重通信が一般的ですが、議論の便宜上、一方のみがデータを送信し(送信者)、一方が受信を受信する(受信者)とします。
ここでは信頼性の高い伝送の原理について説明しているため、伝送がどのレベルであるかを考慮する必要はありません。
「停止待ち」とは、各パケットの送信後に送信を停止し、相手の確認を待ち、確認を受信してから次のパケットを送信することを意味します。
4.2.2. プロトコルのエラーフリーおよびエラーフリー状態の停止待機
エラーがない状況:
次の図は、エラーがない場合、送信側はフレーム送信後に毎回待機し、受信側がフレームを受信して確認応答フレームを返すまで次のフレームを送信しないことを示しています。
- 複数のゼロ フレームがあり、2 つのフレームが同じではないことがわかります。
注: 送信側はデータフレームが送信されるたびに停止して待機するため、1 ビットの数値で十分です。
このエラーのない状態は非常に理想的ですが、実際のタスクではリンク層で一部のデータ フレームが失われるなどのエラー、つまりパケット損失が発生することがよくあります。
エラー状況が発生しています
ケース 1: データ フレームの損失またはフレーム エラーが検出された場合
シナリオ再発: 送信者は最初のフレームを問題なくインターフェイスに送信しますが、このとき受信側はフレーム 0 を示す ACK 0 の確認フレームを返します。このとき、送信途中でフレームが失われた場合、受信側はフレームを受信できず、確認フレームに応答することができず、このとき送信側は確認フレームを受信できないため待ち続けることになります。この種の問題を解決しますか?
解決策: 送信側はタイムアウト タイマーを使用します。送信側がフレームを送信するとタイムアウトが開始されます。タイムアウト時間が経過しても確認応答フレームが受信されない場合、フレームは再送信されます。
超时计时器
: フレームが送信されるたびにタイマーを開始します。タイムアウトタイマーで設定する再送時間は、フレーム送信の平均 RTT よりも長く設定する必要があります。
- RTT は往復伝送遅延を指します。
注意点:
- フレームを送信した後、送信者はそのコピーを保持する必要があります。(送信中および再送信中のフレーム損失を防ぐため。該当フレームの確認フレームを受信した後にのみ、そのフレームは破棄され、次の送信が開始されます)
- データ フレームと確認応答フレームには番号を付ける必要があります。(受信側が同じ送信シーケンス番号を持つデータフレームを連続して受信した場合、受信側は重複したフレームを受信したことを意味します。この番号は、フレームの損失や重複などの問題を解決するために使用できます。また、フレームを受信した場合、しかし、エラー検出後に問題が発生すると、この時点でフレームは破棄され、処理は実行されず、確認応答フレームは返されません。この時点で、送信者は再送信する前に再送信時間を待つことしかできません)
2 番目のケース: ACK が失われた
状況の説明: 送信側が送信したフレームを受信した後、受信側は確認フレームを返しますが、その途中で確認フレームが失われた場合はどうなりますか?
解決策: 送信側がタイムアウト期間内に確認応答フレームを受信しない場合、タイムアウトになり、今フレームを再送信します。その後、受信側は 2 番目のフレームを既に受信しているため、そのフレームを破棄します。繰り返しフレームの場合は、再送信します。そして、フレーム No.1 を確認します。つまり、フレーム No.1 の確認応答が再度実行され、送信側はフレーム No.1 を受信します。
3 番目の状況: ACK が遅い
场景复现:发送方首先发送0号帧,接收端接收到0号帧后返回0号的确认帧(No1),不过因为网络阻塞的原因迟迟没有到达,此时接收端由于超时计时器到时间了就会进行重传0号帧。
接着接收端收到了0号帧,由于上一次已经接收过了,这一次就会丢弃掉该0号帧,重新返回一个0号确认帧(No2),这一次网络并没有阻塞发送端很快收到了这一个0号确认帧,此时开始发送1号帧,再发送完的后,此时收到了之前第一次接收端回复的0号帧(No1)。
对于发送端的处理方式为:不做处理,只是将它简单丢弃。
疑问点:若是No1的0号确认帧再第二次发送的0号确认帧之前到了呢?
解答:那么发送端会直接再接收端0号的确认帧后开始发送1号帧,至于第二次发送的0号确认帧发送端与上面的做法一致,同样也是会进行丢弃。
4.2.3、停止-等待协议性能分析(优缺点)
优点:简单。
缺点:信道利用率太低!
4.2.4、理解停止-等待协议中的信道利用率
接下来来看一下图示理解一下信道利用率:
信道利用率
:指的是发送方在一个发送周期内有效的发送数据,所需要的时间占整个发送周期的比例。
公式如下,可以看到这个发送时延实际在图中信道利用率是比较低的:
实际总结一下就是:发送方在一个发送周期内,有效地发送数据所需要的时间占整个发送周期的比例。
简化一下上面公式(结合实际例题给出的数据),实际两者的本质计算都是相同的:
此外还有个与信道利用率相关的计算公式,也就是信道利用率:信道吞吐率 = 信道利用率 * 发送方的发送速率
。
4.2.5、信道利用率的实际例题
题目:
分析: 伝送速度は 4kb/s であるため、C = 4kb/s となります。1回の伝播遅延も30msとしているので、往復は30*2=60msとなり、このときデータフレーム長をLとします。
式は次のようにリストできます。
- 2 x 30ms x 4kb/s を計算するにはどうすればよいですか? 4kb/s = 4000bit/s、30ms は 30/1000 s で、30ms x 4kb/s = 120bit に変換すると 4000bit/s に相当します。
すると、L / (L+240) = 0.8、最終的に L = 960bit が計算できます。
マインドマップの瞬間
4.3. バックワード N フレーム プロトコル (GBN プロトコル)
4.3.1. stop-and-wait プロトコルの欠点 (パイプライン技術の理解)
まず、ストップ アンド ウェイト プロトコルを見てみましょう。各フレームは、前に送信されたフレームが確認応答フレームを受信した後にのみ送信されることがわかります。待機に多くの時間が費やされていることがわかります。
どうすればチャネル利用率を高くできるでしょうか?
解決策: 組立ライン技術。
1 つのデータ フレームを送信した後、複数のデータ フレームを連続して送信すると、下図のように 3 つのフレームが連続して送信され、このときチャネル使用率が高くなることがわかります。
組立ライン技術はテストポイントではなく、理解するだけで十分です。
**なぜ組み立てラインと呼ばれるのでしょうか? **各データ フレームは、前のデータ フレームの後に下方向に送信されます。この継続的な送信はパイプライン作業に似ており、これをパイプライン テクノロジと呼びます。
パイプラインの使用もいくつかの影響をもたらすため、現時点ではいくつかの改善を行う必要があります。
1. シリアル番号の範囲を増やす必要があります。(各送信データ フレームには一意のシーケンス番号が必要です。たとえば、上記で送信された 3 つのフレーム グループでは、受信機がそれぞれに対応する一意のフレームを返すことができるように、シーケンス番号が異なる必要があります。問題があるフレームを見つけるのが簡単です。)
2. 送信者は複数のパケットをキャッシュする必要があります。(送信処理中に、フレーム番号0、フレーム番号1、フレーム番号2が送信されるなど、フレームが失われやすくなります。3つのフレームが連続して送信された場合、フレーム番号1とフレーム番号2が失われます) 、フレーム番号 0 のみが正常に送信されます。その後、実際にフレーム 1 と 2 を待たずに再送信する必要がある場合、これら 2 つのフレームは送信前に事前にキャッシュされている必要があり、キャッシュされたデータ フレームの位置が停止位置よりも 2 つ多く必要になります。 -and-wait プロトコル)
后退N帧协议
パイプライン上では確認フレームの欠落や遅延などが発生する可能性があり、現時点ではこれらのエラーを解決する方法が用意されています选择重传协议
。
4.3.2. バック N フレームプロトコルのスライディングウィンドウ
送信者はウィンドウ >1 を維持し、受信者はウィンドウ =1 を維持します。受信者はフレームを受信した後に確認フレームを返します。この時点でウィンドウは 1 フレーム移動します。同時に、送信者がウィンドウを受信した場合、グリッドもフレーム確認後に移動します。
- 送信ウィンドウを通じて、フレームの 4 つの状態を判断できます。 ① 送信後に確認。② 送信済みですが確認待ちです。③まだ送信可能です。④まだ送信できません。
追加機能: 効率を高めるため、受信側はフレームごとに確認フレームを返す必要がなく、累積的な確認を行うことができます送信側がフレーム 1、フレーム 2、フレーム 3 をすべて送信すれば、受信側は確認フレームを返す必要がなくなります1つずつ確認する必要がありますが、3番のフレームを直接確認してack3を返信するだけです この時、送信側は確認フレームを受信した時点で3フレーム全てを受信したことが分かります。 4番フレームを送信します。
4.3.3. GBN 送信者が応答しなければならない 3 つのこと
1. 上位層の呼び出し
上位層がデータを送信したい場合、送信側はまず送信ウィンドウがいっぱいかどうかを確認し、いっぱいでない場合はフレームを生成して送信します。ウィンドウがいっぱいの場合、送信側はデータを送信ウィンドウに返すだけで済みます。上位層は、上位層のウィンドウがいっぱいであることを意味し、上位層は送信する前にしばらく待機します。
- 実際の実装では、送信側は上位層からデータを受け取りますが、それをキャッシュに置き、アイドル状態またはウィンドウ全体が空いていてデータを送信できるときに、キャッシュ内のデータ フレームを取り出して、送信。
2. ACKを受信する
GBN プロトコルでは、フレーム n の確認応答は累積的な確認応答となり、受信機がフレーム n とそれ以前のすべてのフレームを受信したことを示します。
- 例えば、ack4 を受信すると、受信側は 4 番以降のフレームをすべて受信したものとみなし、送信側は 5 番以降のフレームの送信を開始します。
3. タイムアウトイベント
プロトコルの名前は Backoff N Frames/Backoff N Frames で、フレームの損失または遅延が発生したときの送信側の動作に由来しています。stop-and-wait プロトコルと同様に、タイマーはデータ フレームを回復するため、またはフレームの損失を確認するために再び使用されます。タイムアウトが発生した場合、送信者は送信されたが確認されなかったすべてのフレームを再送信します。
- 受信側では順番に受け付けますが、送信側がフレーム1、2、3、4を連続して送信した場合、フレーム4が先に到着すれば受信側は直接受信し、最初にフレーム4が到着するというわけではありません。フレーム 1 を待ちます。フレームが到着したときに、他のフレームが先に到着した場合、その時点でフレームは破棄され、フレーム No.1 まで待機します。
- **この1番フレームが送信中に失われると、受信側は他のフレームを受け付けなくなってしまいますが、この時はどうすればよいのでしょうか?**受信側にはタイムアウトタイマがあり、フレームNo.1の確認フレームを長時間受信しない場合、この時点でタイムアウト再送が行われ、現フレーム以降の再送が行われます。
4.3.4. GBN プロトコル受信側が行う必要があること
1. フレーム n が正しく順番に受信された場合、受信側はフレーム n に対する ACK を送信し、フレームのデータ部分を上位層に渡します。
2. 待ちたいフレームを受信していない場合は、先に到着した他のフレームを破棄し、最後に受信したフレームから順に ACK を再送信します。受信側は、順序がずれたフレームをキャッシュする必要はなく、維持する必要があるのは 1 つだけです: expectedseqnum
(順番に受信した次のフレームのシーケンス番号。受信側が待機していたフレームです)。
4.3.5. GBN運用中(運用プロセス)
GBN の実行プロセスと例は次のとおりです。
まず、送信側はフレーム 0、1、2、3 を連続送信し、そのうちフレーム 0 とフレーム 1 は正常に受信され、対応する確認応答フレームが返されましたが、このうちフレーム 2 は送信途中で失われてしまいました。フレーム No. 3 が受信側に到着すると、現在の Expectedseqnum はフレーム No. 2 であるため、受信側はフレーム No. 3 を破棄します。
フレーム0とフレーム1の確認フレームが送信側で受信されたため、送信側のウィンドウは2フレーム移動しましたが、このときフレームNo.4とフレーム5が連続して送信されることになり、また現在のexpectedseqnum受信側がまだフレーム No. 2 である場合、フレーム No. 4 と 5 もこの時点で破棄されます。
此时发送2帧的超时计时器到时间了还没有收到2帧的确认帧,此时会进行超时重发,并且2帧之后的3帧、4帧、5帧也是会连续的再次发出,之后依次就是等待接收端的接收回复确认帧,循环往复。
4.3.6、提问:滑动窗口长度是否是可以无限的?
若是采用n个比特对帧编号,那么发送窗口的尺寸WT应满足:1<=WT<=2n -1。若是超过这个范围,那么就会使接收方无法区别是新帧还是旧帧。
我们来举个例子,这里我直接拿一篇博客里的示例图,十分清晰 为什么回退N步(GBN)协议和选择重传(SR)协议的发送窗口有限制:
采用的2个比特对帧编号,那么22 - 1 = 3,窗口最多只能是3,那么为什么不能超过呢?
- 我们看下面这个例子,当窗口为4时,我们发送端直接发送了0123号帧,此时接收方所有的帧都接收到,都返回了相应的确认帧,此时出现了极端情况,四个确认帧在传输过程中都丢失了,由于发送端没有收到确认帧,此时在等待超时计时器结束的时候会进行超时重传,此时同样会再次发送0号帧!!!
- 注意了目前接收方中实际是已经接收到了之前的一组帧并且已经确认帧返回了,这里传过来的0号帧对于接收方来说只可能会当作是新的值,那么就会出现传输有误的问题!(接收方以为确认帧是能够正确的被发送方接收到的)
4.3.7、GBN协议重点总结
1. 受信側は累積的に確認することもできますし、場合によっては偶発的に確認することもできます。
捎带确认
これは、受信側が送信側に何らかの返信データを送信したい場合、対応する確認フレームを持ってきて送信できることを意味します。
2. 受信側はフレームを順番に受信するだけで、順番どおりにフレームを容赦なく破棄します。
3. 順に到着するシーケンス番号が最も大きいフレームを確認します。
4. 最大送信ウィンドウは 2 n - 1、受信ウィンドウ サイズは 1 です。
4.3.7. 演習
演習 1
トピック:
解析:C
GBNプロトコルでは、受信側はフレームを順番に受信しますが、質問ではフレーム0、フレーム2、フレーム3を受信していますが、フレーム1がないのは干渉です(受信側の送信過程で確実に欠落または遅延しています)このとき、受信側はフレーム番号0、1、2、3を実際に受信しているため、送信側はフレーム4、5、…を再送する必要がある。 6、フレーム番号 7 の場合、フレーム数は 4 になります。
演習 2
トピック:
解析:C
最初のフレーム、最後のフレーム、最初のフレームの確認フレームなど、重要なフレームを取得します。
まず、送信 + 送信からの最初のフレームの確認応答フレーム時間を計算しましょう。
- 1フレームの送信時間:(1000×8)/100Mb/s = 0.08ms
- 往復時間: 2x50 = 100ms
- 1 フレーム送信時間 + 往復時間 = 100.08ms
では、最初のフレームの確認フレームを受信してから 100.08ms 以内に送信できる最大データ量はどれくらいでしょうか?
ウィンドウ サイズ全体のすべてのデータ フレームが送信されるのにかかる時間を計算してみましょう: (1000 x 1000 x 8) / 100Mb/s = 80ms この時点で、すべてのデータ フレームを送信した後に次のことがわかります。ウィンドウ全体で、この時点では、最初のフレームの確認応答フレームはまだ受信されていません。この時点では、まだ 20 ミリ秒待つ必要があります。その後、サイクルが繰り返されます。この時点で、平均データ送信を計算できます。最大数の割合。
フレームを送信してから最初のフレームを受信するまでの時間は 100.08ms、送信されるデータ フレームのサイズは 1000x1000x8 = 8 x 10 6.合計サイズ/時間 = 最大平均データ転送速度を使用します。
つまり、(8 x 10 6 ) / 100.08ms は 80Mb/s にほぼ等しくなります。
4.3.8. GBN プロトコルのパフォーマンス分析
利点: データ フレームを継続的に送信できるため、チャネル使用率が向上します。
短所:再送時には、正しく送信された元のデータフレームを再送する必要があるため、伝送効率が低下します。
- 問題全体を解決するために、この欠点を改善する選択的再送信プロトコルと呼ばれる新しいプロトコルがあります。
マインドマップの瞬間
4.4. 再送プロトコル(SRプロトコル)の選択
4.4.1. GBNプロトコルの欠点
バックオフ N フレーム プロトコル GBN では、受信側が累積判定を実行できるという優れた機能があります (たとえば、送信側が 1、2、および 3 フレームを送信すると、受信側はすべてのフレームに応答する必要がなくなります) 、ただし、フレーム 1、2、および 3 を完全に決定するには、1 つの 3 フレームに直接応答するだけで十分です)。
しかし、これは、送信者が確認フレームを長期間受信しなかった場合、そのフレームとウィンドウ内の他のフレームをまとめて再送信することになり、結果として比較が失われるという一括再送信の問題も引き起こします。後続のフレームのうちの 1 つは、一度送信されたものであり、非常に古いため無駄になっている可能性があります。
解決策:
1. 単一の確認応答を設定する: フレームを 1 つずつ確認し、フレームが間違っていたり、フレームが失われた場合には、間違ったフレームを再送信するだけです。
2. 同時に、受信ウィンドウを増やし、受信バッファを設定し、順番どおりに到着しないフレームをキャッシュします。つまり、フレーム 0、1、2、および 3 が以前に連続して送信された場合、受信側は最初にフレーム 0 を受信し、他のフレームを最初に受信する必要があります。到着は破棄されます。最初に到着する他のフレームがある場合は、まずそれらをバッファに入れ、ウィンドウの左端のフレームが到着するのを待ってから、フレームを受け取ります。それはネットワーク層 (受信側) に渡されます。
4.4.2. 再送プロトコル(SRプロトコル)のスライディングウィンドウの選択
送信者のスライディング ウィンドウのさまざまな状態
送信者のスライディング ウィンドウに関連するさまざまなフレームは、次の状態に分類されます。
①発送確認後。
② 送信済みですが確認待ちです。
③まだ送信可能:この状態で別のデータを与えれば、5番に詰め込み、5番フレームでマークして送信できます。
④ まだ送信できません:まだスライディングウィンドウの範囲内にありません。
- 送信者がスライディングウィンドウで受信できる確認フレームは、GBNのように順番に確認されるわけではなく(受信側が順不同で事前にキャッシュできるため)、何が送信されたかはわかりますが、上の写真で確認待ちとなっているのは左右確認済みのものです。
受信機スライディングウィンドウのさまざまな状態
受信機のスライディング ウィンドウに関連するさまざまなフレームは、次の状態に分割されます。
① 届くと思っていたのに届きませんでした。
②受け取りを待っています。
③ 受信確認(キャッシュ): 受信側が再送プロトコルを選択する際に、事前にデータフレームを順不同でキャッシュできることがわかります。
4.4.3. SR 送信者が応答する必要がある 3 つの事項
1. 上位層の呼び出し
上位層からデータを受信した後、SR 送信側はフレームに使用可能な次のシーケンス番号を確認します。シーケンス番号が送信ウィンドウ内にある場合は、データ フレームが送信されます。そうでない場合は、GBN と同様に、データはキャッシュされるか、送信前に上位層に返されます。
- 実際の実装では、送信側は上位層からデータを受け取りますが、それをキャッシュに置き、アイドル状態またはウィンドウ全体が空いていてデータを送信できるときに、キャッシュ内のデータ フレームを取り出して、送信。
2. ACKを受信しました
ACK が受信され、フレーム番号がウィンドウ内にある場合、SR 送信者は確認応答されたフレームを受信済みとしてマークします。
- フレーム シーケンス番号がウィンドウの下限 (左側の最初のウィンドウに対応するシーケンス番号) である場合、ウィンドウは最小のシーケンス番号を持つ未確認のフレームに進み、全体として移動します。
- ウィンドウが移動すると、ウィンドウ内に新しい未送信のフレームが存在し、これらのフレームはこの時点で送信されます。
3. タイムアウトイベント
各フレームには独自のタイマーがあり、タイムアウト イベントの発生後に再送信されるフレームは 1 つだけです。
4.4.4. SR 受信機が行う必要があること
ウィンドウ内のすべてのフレームが受け入れられ、連続していなくても受信できます。
特定の受信の詳細: SR 受信機は、フレームが順序どおりであるかどうかに関係なく、正常に受信したフレームを確認応答します(フレームがウィンドウ内にある場合)。シーケンス外のフレームはウィンドウに直接キャッシュされ、すべてのフレーム(つまり、サイズが小さいフレーム)がなくなるまで、フレームの確認フレームが送信者に返されます(確認フレームは受信したフレームに直接返されます)。その後初めて、フレームのバッチが上位層に配信され、スライディング ウィンドウが前方に移動されます。
ウィンドウシーケンス番号外(次のウィンドウ未満)のフレームを受信した場合は、ACK が返されます。それ以外の場合、フレームは無視されます。
4.4.5. SR プロセスの実行 (タイムアウトを伴う)
送信ウィンドウと受信ウィンドウのサイズが両方とも 4 であると仮定します。
① 送信側は、先頭からフレーム 0、1、2、3 を順に送信しますが、フレーム 2 番は送信時に欠落しました、受信側はこのときフレーム 0、1、3 を受信し、確認フレームを返します順番通りに。
② 送信側はまずフレーム番号 0 の確認フレームを受信し、ウィンドウを 1 フレーム移動してフレーム番号 4 の送信を開始します。
③送信側は再度フレームNo.1の確認フレームを受信すると、再度ウィンドウを1フレーム移動してフレームNo.5の送信を開始します。
④ 送信途中で 2 番フレームが消失したため、受信側は 2 番フレームを受信できなかった場合、送信側に 2 番確認フレームを送信しませんのでご注意ください。このとき、フレーム No.2 のタイマーが満了しているため、送信側はタイムアウトとなり、フレーム No.2 (このフレームのみ) を再送信します。
⑤ 送信者はフレーム番号 3 の確認フレームを受信しますが、フレーム番号 2 の確認フレームをまだ受信していないため、この時点ではウィンドウは移動せず、送信するフレームがありません(続行することしかできません)。フレーム番号 2 の送信後) ウィンドウを移動)
4.4.6. スライディングウィンドウの長さの計算(シーン条件を含む)
質問: スライディング ウィンドウの長さを無限にすることはできますか?
結論: 送信ウィンドウは受信ウィンドウと同じであることが望ましい。これより大きいとオーバーフローし、小さいと意味がないからである。
ウィンドウの計算式: W Tmax = W Rmax = 2 (n-1)。
- ここで、Tmax は送信側のウィンドウを指し、Rmax は受信側のウィンドウを指し、n はシーケンス番号を表すビット数を指します (シーケンス番号が 0、1、2、3 の場合、それは数値です) 2ビットで表現できる)
2 つのシナリオ: シナリオ 1 は受信側が受信エラーを認識できない場合、シナリオ 2 は送信が正しい場合
シナリオ 1: シーケンス番号を表す 2 ビットを持つフレームが多数存在します。現在のウィンドウは 3 です。現在のシーンでエラーが発生し、再送信されたフレームがウィンドウ内の新しいフレームとして受信されます (エラー受信の例)
プロセスの説明:
- 送信者はフレーム 0、1、2 を順番に送信し、同時に受信者はそれらを正しく受信して対応するフレームを返すことができますが、3 つのフレームはすべて失われます。ただし、受信側に影響を与えないこのウィンドウは 3 つ移動しており、最新の受信側ウィンドウにもシーケンス番号 0 と 1 のフレームが含まれていることがわかります。
- 送信側は確認応答フレームを受信していないため、タイムアウトとなりフレーム 0 番を再送します。注意してください。このとき、受信側は再度シーケンス番号0のフレームを受信しましたが、受信側は以前にもシーケンス番号0を受信しているため、今回渡されたフレームは新たなフレームと誤って認識され、現在のウィンドウに保存されてしまいます。バッファの中間。(実はこのフレームは再送信されたフレームです!!!)
問題の説明: 再送信されたフレームが、ウィンドウ内で新しいフレームとして誤って受信されました。
シナリオ 2: シーケンス番号を表す 2 ビットを持つフレームが多数あります。現在のウィンドウは 3 です。現在のシナリオでは、受信側はシーケンス番号 0 の新しいフレームを正しく受信できます (正しい受信の例)
プロセスの説明:
- 送信側はフレーム 0、1、2 を順番に送信し、同時に受信側はそれらを正しく受信して、対応するフレームを返すことができます。
- 送信者はフレーム番号 0 を受信します。このとき、ウィンドウが 1 フレーム移動し、新しいフレーム番号 3 がウィンドウ内に表示されます。このとき、フレーム番号 3 が送信されます。赤い矢印は、フレームが送信されていることを示します。送信処理中に紛失してしまいました。
- このとき、送信者は確認フレーム 1 番を再度受信し、ウィンドウが再び移動しました。このとき、ウィンドウには新しいフレーム 0 が表示されました。送信者もフレーム 0 を送信し、受信側もフレーム 0 を送信します。この時点では通常、この新しいフレームを送信できます。フレーム番号 0 は、新しいウィンドウに対応するシーケンスで受信されます。
このプロセス中にフレームが送信されるのは通常のことです。
4.4.7. SRプロトコルの要点のまとめ
1. データフレームを1つずつ確認し、受信したデータフレームを1つずつ確認します。(受信側の窓口に限る)
2. エラーフレームのみ再送信します。(GBN プロトコルのようなバッチ再送信は必要なくなりました)
3. 受信機にはキャッシュがあります。(受信側のウィンドウ内で順序どおりでないフレームが来た場合、受信側もそれに対応し、最初にキャッシュし、正しいフレームが形成されるまで待機してから、これらの連続したフレームをネットワーク層に配信します。同時にウィンドウを前進させます)
4. W Tmax = W Rmax = 2 (n-1)。(最大受信ウィンドウ)
4.4.8. 演習
トピック:
分析:A
この問題では、データリンク層は選択的再送信(SR)プロトコルを使用しており、送信側はフレーム0~3、つまりフレーム0、1、2、3を送信していますが、このうちフレーム1が確認されています(この時点では)。 、フレーム 0 の確認ではないため、ウィンドウは移動しません) が同時実行されているため、確認する必要があるフレームはまだ 0、2、3 の 3 つです。
フレーム 0 とフレーム 2 の連続タイムアウトは、フレーム 0 とフレーム 2 に対する送信側のタイムアウトが期限切れになったことを意味し、この時点で再送信する必要があります。この質問ではフレーム 3 のステータスが明確ではないため、次の可能性があります。正常に送信されました。オントロジーに関する限り、再送信されるフレームはフレーム 0 と 2 だけなので、2 つだけです。
マインドマップの瞬間
4.5. メディアアクセス制御 (MAC)
4.5.1. データ送信に使用される 2 種類のリンク (ポイントツーポイント、ブロードキャスト)
ポイントツーポイント リンク: 隣接する 2 つのノードが、第三者を介さずにリンクによって接続されます。
アプリケーション: PPP プロトコル。広域ネットワークで一般的に使用されます。
例: 以下の電話の図に示すように、2 人が通信するために接続している場合、このポイントツーポイント リンクには第三者は関与しません。
ブロードキャスト リンク: すべてのホストが通信メディアを共有します。
アプリケーション: 初期のバス イーサネット、無線 LAN、LAN で一般的に使用されています。
- 携帯電話やモバイル機器を使って利用するのが無線LANです。
例: 広い部屋では、人々の会話は空気という媒体を介して伝わります。
代表的なトポロジー:バス型、スター型(論理バス型)
バスのタイプを次の図に示します。
スター型が論理バス型と言われるのはなぜですか?
- また、スター構造では、ホスト A がホスト C にメッセージを送信すると、他のホストもそれを受信し、他のホストはそれを比較して自分のメッセージであるかどうかを判断します。
4.5.2. メディアアクセス制御を理解する
メディア アクセス制御の内容: 2 つのノードのペア間の通信が相互に干渉しないように、特定の措置を採用します。
メディア アクセス制御は、静的チャネル割り当てと動的チャネル割り当てに分けられます。
静态划分信道
: このチャネルでコミュニケーションを開始する前に、まずこのチャネルを次のように分割するか、全員のコミュニケーション方法を規定します。动态划分信道
: 通信プロセス中に競合が発生した場合は、それを制御し、タイムリーに解決してください。
- 静的に分割されたチャネルの英単語: FDM: 周波数、TDM: 時間、WDM: 波、CDM: コード。
4.5.3. チャネル分割メディアアクセス制御(静的チャネル分割)
4.5.3.1. 多重化テクノロジーを理解する
チャネル分割メディアアクセス制御: メディアを使用する各デバイスを同じチャネル上の他のデバイスからの通信から分離し、時間および周波数領域のリソースをネットワーク上のデバイスに合理的に割り当てます。
多重化技術を使用した、上記ホストの各チャネルの最適化について説明します。
多路复用技术
: 複数の信号を結合して物理チャネル上で送信することで、複数のコンピュータまたは端末デバイスがチャネル リソースを共有し、チャネルの使用率を向上させることができます。
送信側では、複数のホストがそれぞれデータをマルチプレクサーに送信します。その後、マルチプレクサーはデータをマージし、共有チャネル上に送信します。受信側に到達した後、データはデマルチプレクサーを通過し、分割されます。データを取得し、それぞれ他のホストに送信します。
多重化技術の特徴: 2 つのノード間の通信のためにブロードキャスト チャネルを複数の非干渉サブチャネルに論理的に分割すると、ブロードキャスト チャネルがポイントツーポイント チャネルに実際に変換されます。
実際、データがブロードキャスト チャネルで送信されるとき、Liangliang は相互に干渉しないようにアクセスを制御するため、干渉しません。
チャネルを静的に分割するいくつかの方法:
方法 1: 周波数分割多重 FDM
以下は、周波数と時間に関する周波数分割多重の座標図です。
各周波数帯域はユーザーに割り当てられ、各ユーザーはいつでも周波数帯域を占有します。ユーザーに特定の周波数帯域が割り当てられた後は、通信プロセス中に最初から最後までこの周波数帯域を占有します。
- 周波数分割多重のすべてのユーザーは、同時に異なる帯域幅 (周波数帯域幅) リソースを占有します。
- ここでの帯域幅は送信速度や伝送速度とは異なり、通信処理中の周波数帯域幅をHz単位で表します。
送信プロセス: 各ユーザーは周波数帯域を占有し、その周波数帯域を使用して自分のデータを送信します。これにより、データ送信プロセス中にすべてのユーザーが争うことがなくなります。
たとえば、次の図では、各周波数が異なるため、共有チャネルで送信できます。
周波数分割多重 FDM の評価: 伝送媒体の帯域幅を最大限に活用するため、システム効率が高く、技術が比較的成熟しているため、実装が比較的容易です。
方式 2: 時分割多重 TDM
通常の時分割多重TDM
FDMとの違い:各ホストがこのようなチャネルを常に占有するわけではなく、交互にチャネルが使用されていることがわかりますが、周波数は区別されず、すべての周波数帯域幅は同じです。
时分复用技术
: 時間を等しい長さの時分割多重フレーム (TDM フレーム) に分割します。各時分割多重ユーザーは、各 TDM フレーム内の固定数のタイム スロットを占有し、すべてのユーザーが順番にチャネルを占有します。
- 時分割多重 TDM フレームのタイムスロットは、下図のフレーム内の A、B、C、D です。
- 上の図では、各ホスト A、B、C、D が順番にチャネルを周期的に占有していることがわかります。
TDM フレームは、データリンク層のフレームとは異なり、物理層で送信されるビット ストリームに分割され、周期を示すフレームです。
周波数分割多重と時分割多重の違い:
- 周波数分割多重化: 並列。(各ホストは 1 つの周波数帯域を占有し、同時に送信します)
- 時分割多重化: 同時実行。(時間を同じ長さの時分割多重フレームに分割する)
実際の計算問題: 回線全体の伝送速度が 8000 ビット/秒の場合、上記の 4 つのホストによると、各ホストは順番に 2000 ビットしか送信できません。4 つのホストがそれぞれ 2000 ビットを送信すると、4 つのホストは次のようになります。この時点では 8000 ビットなので、対応する TDM フレームを構成できます。
統計的時分割多重 STDM (タイムスロットの最適化された動的割り当て)
時分割多重 TDM では、各ホスト A は再び使用できるようになるまでに 3 つのタイム スライス (TDM フレーム内のタイム スロット) 待機する必要があるため、非常に長い時間待機することになり、結果としてチャネル使用率の比較が低くなります。
時分割多重化の改善: 统计时分复用STDM
。
特徴: チャネル使用率を大幅に向上させることができます。
各ホストの送信時間と頻度は異なり、ホストがデータを送信しない時間や断続的にデータを送信する時間も存在するため、より一般的に使用される方法は、時間ポイントをカウントすることです。コンセントレーターが使用されます:
- コンセントレータの機能: 図の 4 つの低速ユーザーを接続し、そのデータを一元化し、高速回線を通じて目的のコンピュータに送信します。
詳細なプロセス: 各 STDM フレーム内のタイム スロットの数は、コンセントレータに接続されているユーザーの数よりも少ないです。各ユーザーがデータを持っている場合、そのデータはコンセントレータの入力バッファに随時送信され、コンセントレータは入力バッファを順番にスキャンし、バッファ内の入力データを STDM フレームに入れます。STDM フレームがいっぱいになると、が送り出されます。
注: 現時点では、ユーザーが交替で交代するのではなく、各ユーザーのホストから送信されたデータがまとめられ、STDM フレームに形成されることがわかります。そして、従来のTDMと異なるのは、このとき1フレームが4タイムスロットではなく2タイムスロットであり、タイムスロットのデータ量は任意に設定できることである。
- 同様に、このフレームはリンク層のフレームではなく、フレーム全体が物理層で伝送されるビットストリームで分割されたフレームである。
注: STDM フレームはタイムスロットを固定的に割り当てませんが、要求に応じてタイムスロットを動的に割り当てます。
実際の計算の質問: 回線全体の伝送速度が 8000 ビット/秒の場合、上記の STDM 統計時分割マルチチャネル規則に従って、現時点では 4 つのホストのそれぞれが最大 8000 ビットに達することができます。最終的にはコンセントレータを通過して STDM フレームを形成します。
方法 3: 波長分割多重 WDM
波長分割多重:波長分割多重とは、光を周波数分割多重することです。複数の異なる波長(周波数)の光信号が1本の光ファイバ内で伝送されます。波長(周波数)が異なるため、各チャネルの光信号は干渉しません。最後に、波長分解マルチプレクサを使用して各チャネルの波長を分解します。
- 周波数分割多重技術と非常によく似ています。
光の各周波数帯域は異なるため、各周波数帯域の光を束ねて一本の線に撚り合わせて伝送することができ、伝送全体にわたって高周波帯域と低周波帯域が互いに干渉することはありません。このチャネル多重化技術は、波長分割多重化技術と呼ばれます。
方法 4: コード分割多重 CDM
波長分割多重と同様に、公衆チャネルでは、最初にすべてのデータ全体が撚り合わされ、次に結合されたデータ全体が C エンドの受信側全体で分離されます。
難易度: a と b、および他のすべてのサイトから送信されたデータを、C が受信したデータから分離するにはどうすればよいですか?
CDM で最も一般的に使用される方式の 1 つである CDMA (Code Division Multiple Access) は、符号分割多重方式であると同時に、現在では無線 LAN や携帯電話ネットワークでも一般的に使用されているプロトコルでもあります。
具体的な動作手順: ビットを複数のチップに分割し、各サイトに固有の m ビットのチップ列を割り当て、1 を送信する場合はチップ列を送信します (通常は 0 を -1 として書き込みます)。
- 1 ビットの各マイクロタイミングでは、0 は -1、1 は +1 です。
C エンドでは、結合されたデータを取得する必要があります。これには、混合データから異なるサイトを分離する必要があるため、最初に操作を行う必要があります。つまり、AB または他のサイトのチップ シーケンスを設定する必要があります。
セットアッププロセスは次のとおりです。
1. 複数のサイトが同時にデータを送信する場合、各サイトのチップ配列は互いに直交している必要があり、正規化された内積は 0 になります。0の場合のみ直交を意味し、この時点で出力可能です。
ビット 0 が送信された場合、データ 0 を 1 に、1 を 0 に置き換えます。最終的に、ベクトルは 1 が +1、0 が -1 の形式のままです。この時点では、一般に送信できます。チャネル。
2. このとき、2 つのベクトルは共通チャネルに到達し、線形加算されます。
3. C に到達した後、2 つの端をどのように分離しますか?
- マージされたデータとソース サイトの正規化された内積。
- B によって得られた結果は -1 であり、送信されたデータが 0 であることを意味します。
CDとCSの見分け方は?
チャネルが動的に割り当てられる限り、CS と CS が使用されますが、CD は CS ではなく、静的なチャネル分割です。
ヒント: CS はダイナミックな銃撃戦ゲームと考えることができ、CS は動的に割り当てられます。
4.5.4. 動的なチャネル割り当て
4.5.4.1. ランダムアクセスメディアアクセス制御
ランダム アクセス メディア アクセス制御を理解する
メディア アクセス制御はブロードキャスト チャネルに適用されるアクセス制御です。ブロードキャスト チャネルでは、各ノードが通信したい場合、同じ通信しかできません。一度に情報を送信できるのは 1 人だけですが、2 つのノードが同時に情報を送信している場合は、同時に、チャネル上で競合が発生し、通信が失敗します。
この現象に対応するには、共有するメディアへのアクセスを制御する必要がありますが、これは主に静的パーティショニングと動的パーティショニングに分けられます。本章では動的パーティショニングについて説明します。この割り当て方法は、通信中にユーザーに固定的に割り当てられるわけではありません。ユーザーにとって、この動的割り当てチャネルでユーザーが占有できる帯域幅はより大きくなります。
ランダム アクセス メディア アクセス制御の特徴: すべてのユーザーが情報をランダムに送信でき、情報送信時にはすべての帯域幅が占有されます。
欠点: このランダム性により、調整不能が発生します。すべてのユーザーがランダムにメッセージを送信できる場合、複数のユーザーが相互に調整しない場合、メッセージを直接送信することになり、競合の問題が発生するためです。現時点では、これらのプロトコルを使用して、この調整不能によって引き起こされる競合を解決する必要があります。
方法 1: ALOHA 協定
ALOHAプロトコルについて知る
純粋な ALOHA プロトコルとスロット付き ALOHA プロトコルに分けられます。
アロハプロトコルの由来:ある学者がハワイに行った際、島々のコミュニケーション問題を調査し、その解決方法を考え出したのですが、現地の住民同士がコミュニケーションをとる際にお互いに挨拶をしていたので、それをALOHAプロトコルと名付けました。
①ピュアALOHAプロトコル
純粋な ALOHA プロトコルのアイデア: チャネルの監視なし、タイムスロットに応じた送信なし、ランダムな再送信、いつでも好きなときに送信できます。
以下の図は、純粋な ALOHA プロトコルを実装するプロセスを示しています。
1. まず、ステーション 1 がデータ フレームの送信に T 0時間を費やしますが、この時間内に他のステーションがデータを送信しないため、この時点で送信は成功します。
2. ステーション 2 もデータ フレームの送信に T 0時間を費やしますが、ステーション N-1 も送信プロセスの後半でデータを送信するため、この時点で競合が発生します (この競合の送信側は影響を受けないことに注意してください)すぐに発見してください)。
- T 0はデータ フレーム、つまりその送信時間を指します。実際には、送信時間と伝播時間、つまりフレームが送信されてから正常に送信されるまでの時間が含まれます。
** 2 つのサイト間で競合が発生するかどうかは不明ですが、この競合はいつ発見され、検出されるのでしょうか? **ステーションがデータ フレームの送信を完了するまで待機する必要がある場合、受信機は競合するエラー データ フレームを受信するため、受信機は NAK 否定応答フレームを返すか、応答フレームをまったく返さなくなります。
- 返信がない場合、送信者はタイムアウト期間待ってそれを検出し、再送信します。
競合はどのように解決されますか?
- タイムアウト後、再送信する前にランダムな時間待機します。
②スロット付きALOHAプロトコル
純粋な ALOHA プロトコルはデータをランダムに送信するため、データ フレーム送信の成功率が非常に低くなります。データ フレーム送信の成功率はどのように説明すればよいですか?
- スループットを使用します。
时隙ALOHA协议思想
: 時間を複数の同一のタイム スライスに分割します。すべてのユーザーは、タイム スライスの先頭でネットワーク チャネルに同期的にアクセスします。競合が発生した場合、送信する前に次のタイム スライスの先頭まで待機する必要があります。
- 要約すると、いつでも好きなときに投稿のランダム性を制御できます。
プロセス: 異なるステーションがフレームの到着時に直接送信せず、<T 0時間待機し、タイム スライスを待ってから送信したことがわかります。タイムスロット 同時に到着すると、次のタイムスロットで衝突が発生します。衝突後の戦略は純粋な ALOHA の場合と同様です。
ALOHAプロトコルの比較と概要
1. 純粋な ALOHA は、スロット付き ALOHA よりもスループットと効率が低くなります。
- 純粋な ALOHA はデータをランダムかつ恣意的に送信するため、この種の送信では衝突の可能性が高く、当然のことながら効率とスループットの低下につながります。
2. 純粋な ALOHA はいつでも好きなときに送信できますが、スロット付き ALOHA は時間セグメントの開始時にのみ送信できます。
方法 2: CSMA プロトコル (検出チャネルの追加)
CSMAプロトコルを理解する
最初にリッスンしてから送信しますが、その後の送信中に競合が発生するかどうかは保証されません。
CS
: キャリア センス/モニタリングでは、各ステーションはデータを送信する前に、後続のバス上にデータを送信している他のコンピュータがあるかどうかを検出する必要があります。
- 複数のステーションがバス上で同時にデータを送信すると、バス上の信号電圧スイング値が増加します (互いに重なり合います)。ステーションによって検出された信号電圧スイング値が特定のしきい値を超えた場合、バス上の少なくとも 2 つのステーションが同時にデータを送信していると考えられ、衝突が発生したこと、つまり競合が発生したことを示します。
MA
: マルチポイントアクセス。バス上に多数のコンピュータがマルチポイントアクセスで接続されていることを示します。
プロトコルの考え方: フレームを送信する前に、まずチャネルが監視されます。
監視結果には 2 種類があり、対応するアクションは監視結果に基づいて行われます。
- チャネルアイドル: 現時点では完全なフレームが送信されます。
- チャンネルがビジーです: 送信を延期します。
上記のさまざまな状態で動作するための 3 つの異なるプロトコルがあります。たとえば、完全なフレームの即時送信をどれだけ遅らせるかなどです。
坚持CSMA
。非坚持CSMA
。p-坚持CSMA
。
①1-CSMAを遵守する
1-坚持CSMA
: 永続性とは、監視チャネルがビジーになった後の永続性を指します。
感想:
1. ホストが情報を送信したい場合、まずチャネルをリッスンします。
2. アイドル状態の場合は待たずに直接送信されます。
3. 忙しい場合は、空くまで聞き続けて、すぐに送信してください。(ここには主張が反映されており、チャネルがビジーの場合は常に監視されます)
4. 競合がある場合 (一定期間内に肯定的な応答が受信されない場合)、リッスンする前にランダムな長時間待機し、上記のプロセスを繰り返します。
利点: メディアが無料である限り、サイトはメディアをすぐに送信するため、メディア利用の損失を回避できます。
- メディア使用率とは、チャネルの使用率を指します。チャネルがアイドル状態であればデータを送信でき、チャネルの使用率は非常に高くなります。
短所: 2 つ以上のサイトに送信するデータがある場合、競合は避けられません。
②非永続的CSM
非坚持CSMA
: 非永続的とは、監視チャネルがビジー状態になった後、監視を継続しないことを指します。
CSMA の考え方に従わない:
1. ホストがメッセージを送信したい場合、まずチャネルをリッスンします。
2. アイドル状態の場合は待たずに直接送信されます。
3. 忙しい場合は、ランダムな時間待ってから再度聞いてください。(お金を引き出すことに固執しない場合は、ここに来てください。チャンネルがビジーの場合は、ランダムな時間待機してから聞きます)
利点: ランダムな再送信遅延時間を使用すると、衝突の可能性を減らすことができます。
短所: 全員が待ち時間を遅らせているため、メディアがアイドル状態のままになり、メディアの使用量が減少する可能性があります。
③p-CSMA遵守
p-坚持CSMA
: アイドル状態のリスニング チャネルの処理を指します。(以前との違いは、以前にチャネルがビジーであることを検出したことです)
前の 2 つの CSMA プロトコルとは異なり、永続的なチャネルに適用されます。
- P=1 の場合、一致は 1 のままです。
- P=0 の場合、それは遵守しない合意です。
感想:
1. 送信する前に、まずチャンネルを聞きます。
2. アイドル状態の場合、待機せずに確率 p で直接送信され、確率 1-p の場合、送信前に次のタイムスロットまで待機します。
3. チャネルがビジーの場合は、チャネルがアイドル状態になるまで監視を続け、確率 p で送信します。
4. 競合がある場合は、次のタイムスロットが開始するまで待ってから監視し、上記の手順を繰り返します。
利点: このソリューションは、非永続アルゴリズムのように競合を削減し、1 永続アルゴリズムのようにメディアのアイドル時間を削減します。
- 非坚持算法:若是信道空闲的时候会直接发送,忙的时候会等待一个随机时间在监听。【空闲则以p概率直接传输,不必等待;概率1-p等待到下一个时间槽再传输。】
- 1-坚持算法:若是信道忙,那么就会一直监听,直到信道空闲,就会直接将数据发送出去。【若是信道为忙,则持续监听到信道空闲再以p概率发送】
注意:在此之前的三种算法,并没有一个检测冲突的一个过程,此时并不知道在发送数据的时候信道上是否是冲突的,还是可以继续把自己想要发送的数据发送出去,此时就会导致发送的数据是一种浪费。
- 有没有什么方法可以减少资源浪费?CSMA/CD。
三种CSMA对比总结
使用一个现实生活例子举例,依次对应坚持CSMA、非坚持CSMA以及p-坚持CSMA:
方式三:CSMA/CD协议(增加发送数据时检测)
认识CSMA/CD协议(CS、MA、CD)
载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
CS
:载波监听/监听,每一个站在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据。
- 注意:在这里与之前有一点不一样,在这里发送数据时也会检测是否有计算机在发送数据。
- **发送数据时怎么监听?**实际就是检测这个信道上电压的一个摆动幅值,若是这个幅值十分大,那么就知道整个路上有这个信道很多来在发送数据,此时发送肯定会出现冲突。
- **如何发现当前信道是空闲的还是在忙碌?**在自己站点为止检测是否有信号进入,若是有,那么就说明有人在发送,此时发送就会产生冲突。
MA
:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。
- 应用:总线型网络。
CD
:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时,其他站是否也在发送数据。
- 适配器只要想成是自己的原站点即可。
- アプリケーション:半二重ネットワーク。送信者と受信者を決定した後、データを送信する場合は一方向のみにデータを送信できます。
最初に聞いて後で話すとなぜ衝突が起こるのでしょうか?
バス内では電磁波は有限の速度で伝播します。電磁波が電磁波の形で存在する場合、電磁波は非常に速いです。時間は 10 8 ですが、バスが非常に長い場合は、それでも時間がかかります。しばらくの間、したがって、電磁波全体の伝播時間はキャリア監視にとって非常に重要です。それは影響を及ぼします。電磁波全体が私に到達していなければ、ここで信号を検出することは間違いなくできません。
伝播遅延はキャリア センシングにどのような影響を与えますか? 特定の通信時間(リード2T
)
この時点で A が B にデータを送信したが、送信遅延の影響により、B は現在の信号がアイドル状態であることを検出し、この時点でデータの送信を開始するとします。
- 一方向のエンドツーエンド伝播遅延 (単位は tao と読みます) は、端 a から端 b までの信号または電磁波の伝播遅延を指します。
ホスト A とホスト B の両方がデータを送信するため、この時点で競合が発生します。
A と B の間の通信の特定の時間の詳細:
まず、ホスト A がデータを送信し、データが次の場所に到達すると、
このとき、ホスト B も現在のチャネルがアイドル状態であることを検出し、判断しました (伝送遅延により、ホスト B にはしばらく届かなかったため、アイドル状態であると検出しました)。データを送信するため、必然的に衝突が発生します。このとき、2 つの信号は重ね合わされてターゲット ホストに送信され続けます。
以下では、下図のように衝突データを黒い線で表します。このとき、最初に B が衝突を検出して送信を停止し、しばらくしてホスト A も衝突を検出して送信を停止します。
- 受信側に誤ったデータが到達すると衝突が検出されるのはなぜですか?
- 受信したデータフレームに基づいてエラーが発生したかどうかを検出するデータフレームのエラー制御があり、ここで検出できます。自然信号を重ね合わせると必ず問題が発生します。その後、検証メソッドはフレームにエラーがあることを検出し、衝突または競合が発生したと判断できます。
この時点で、衝突が検出された時間 (ホスト B) など、各期間を詳しく見てみましょう。
- B が衝突を検出したときの時間は、片道のエンドツーエンド伝播遅延です:
τ
。 - B がシグナルを送信してから B が衝突を検出するまでの期間を次のように設定すると
δ
、その時点でホスト B がτ - δ
シグナルを送信します。 - 実際の衝突時間は次のとおりです。
τ - δ/2
なぜδ/2
大丈夫ですか? ホスト B が送信する回線と、ホスト A が送信する信号が衝突する回線 B が対称であることがわかりますので、直接設定することもできますδ/2
。
次に、ホスト A で衝突が検出された時刻を見てみましょう。
- ホスト B が信号を送信する時間は で
τ - δ
、一方向のエンドツーエンド伝播遅延は ですτ
。2 つを合わせた時間は、A が衝突を検出した時間です:2τ - δ
。
送信したデータが他のデータと衝突しなくなるまで、遅くともどれくらいの時間がかかるか考えてみてください。
- A の場合、衝突が検出されたとき
2τ - δ
、δ
それが 0 に近づいたとき、最新の時刻は です2τ
。 - 送信したデータが衝突したかどうかを知るのにどれくらい時間がかかるかを尋ねる場合、範囲を指定できます: (0,
2τ
)
この最新の時刻2τ
を表す名詞は複数あります: 总线的端到端往返传播时延
、争用期/冲突窗口/碰撞窗口
。
啓発: 経過時間内に衝突が検出されない限り2τ
、この送信では衝突が発生しないと確信できます。
衝突後の再送タイミングを確認するにはどうすればよいですか?
仮説を立ててください: 競合を検出した後、直接再送信できるでしょうか?
このとき、以下の特殊な状況が発生しています。ホスト a とホスト b は、今すぐデータを送信したいと考えています。このとき、両方ともチャネルがアイドル状態であることを検出したため、たまたま同時にデータを送信します。送信0.5τ
プロセス中の衝突の時点は次のとおりです0.5τ
。
では、どうすれば解決できるでしょうか?
- 切り捨てられた 2 進指数回避アルゴリズムが使用されます。
アルゴリズムの実装プロセス:
1. 基本的なバックオフ (延期) 時間を競合期間として決定します2τ
。
2. 再送信回数に等しいパラメータ k を定義します。k は 10 を超えません。つまり、k = min{再送信回数, 10}。
- 再送回数が 10 回を超えない場合、k は再送回数と同じになります。
- 再送信回数が 10 回を超えると、k は増加せず、10 のままになります。
3. 離散整数セット **[0, 1, …, 2 k -1]**から数値 r をランダムに選択します。再送信に必要なバックオフ時間は、基本バックオフ時間の r 倍、つまり です2rτ
。
- 各範囲は再送信回数 k に関連しており、k が大きくなるにつれて範囲も大きくなります。
4. 再送が 16 回失敗した場合は、ネットワークが混雑しており、フレームが正しく送信できないとみなされ、フレームは破棄され、上位にエラーが報告されます。
以下は、k が実際に 1 から始まるケースで、複数の競合検出をシミュレートします。
結論: 競合が連続して複数回発生する場合は、より多くのステーションがメッセージの要求と送信に参加する可能性があることを示します。このアルゴリズムを使用すると、再送信を延期する必要がある平均時間が再送信の回数とともに増加するため、再送信の確率が減少します。衝突はシステム全体の安定性に有益です。
演習(衝突範囲の計算)
トピック:
分析: 1023。
この質問には落とし穴があります。つまり、11 回の衝突の後、k=11 になります。前のアルゴリズムのルールによれば、k が 10 回を超えると、k は増加せず、10 のみになります。その場合、k= を使用します。 10 を計算に代入すると、離散整数セットは [0, 1, 2, …, 2 11 -1] となり、最終結果は 1023 になります。
最小フレーム長の問題
なぜ最小フレーム長という概念を導入するのでしょうか?
- CSMA/CDでは送信中に衝突を検出することもでき、衝突があった場合には直接送信を停止することができます。
- ケース: ステーション A は非常に短いフレームを送信しましたが、衝突が発生しましたが、フレームを送信するまで衝突は検出されませんでしたが、この時点では既に送信されていたため、送信を停止できませんでした。
CSMA/CS が時間内に停止して状況を制御できるようにするには、最短のフレーム長である最小フレーム長を定義する必要があります。
目的: 衝突が検出されたときに、フレームの送信がまだ完了していないことを望みます。
これに先立って、競合異常を検出するのにかかる時間は であり2τ
、フレームの送信遅延は少なくとも であるはずです2τ
。
結論: フレームの送信遅延は、バス内の信号の伝播遅延の少なくとも 2 倍でなければなりません。
つまり、次の式が得られ最小帧长 = 总线传播时延 x 数据传输速率 x 2
ます。(つまり、2τ
x データ転送速度)
Ethernet規定:最短フレーム長は64Bであり、64B未満の場合は競合により異常終了した無効フレームとなります。
- この最小フレーム長を達成するために、比較的短いフレームは、送信のためにリンク上に配置される前に 64B 位置にパディングされます。
マインドマップの瞬間
方法 4: CSMA/CA プロトコル (衝突回避)
CSMA/CA と CD の違いを理解する
CA プロトコル データ CD も CSMA プロトコルに従属します。
同じ点: チャネルが最初に監視され、次にデータが送信されます。
違い: CD は衝突検出用であり、CA は衝突回避用です。
質問: 非常に包括的な CD 契約があるのに、なぜ CA 契約が必要なのでしょうか?
回答: 主な理由は、適用シナリオが異なるためであり、CA は無線 LAN、つまり無線ネットワークで使用されますが、CD プロトコルは有線ネットワークに適用されるバス型イーサネットにしか適用できません。2つの異なるネットワーク、異なる伝送媒体に対しては、通信規定に異なるプロトコルを使用する必要があり、その際に使用されるプロトコルがCSMA/CAプロトコルである。
無線 LAN で CSMA/CD プロトコルを使用する場合、次の 2 つの大きな問題が発生します。
- 問題 1: 360° かつ包括的な衝突検知を実現することは不可能です。
- 無線 LAN で CD の代わりに CA が使われる理由は、この無線ネットワークでは CD を使用するのが非常に困難であるためです。CD は衝突の検出であり、無線 LAN の範囲と空間は非常に広いためです。衝突の検出、つまり 360 度で衝突を検出する必要がありますが、これをハードウェアで実装するのは非常に困難であるため、CD を使用して無線 LAN で全方向から衝突を検出する方法はありません。
- 質問2: 秘境駅。
- A も C も信号を検出せず、チャネルがアイドル状態であると判断した場合、端末 B に同時にデータ フレームを送信するため、競合が発生します。ここで、a が b にデータ c を送信したい場合、C は a に比べて隠れ局ですが、隠れ局とは、C は a と b がデータを送信していることを知らないため、後で衝突が発生します。
- 私は隠れステーションの問題を解決したいと考えています。a と b に干渉しないように、a と b がデータを送信しようとしていることを C に知らせたいと考えています。つまり、受信側の近くのいくつかのノードに、a が現在データを送信していることを知らせたいと考えています。は b と通信したいと考えており、他のノードは干渉を停止します。
CSMA/CA プロトコルの仕組み
CSMA/CA プロトコルの仕組み:
1. データを送信するには、まずチャネルがアイドル状態かどうかを確認します。
2. アイドル状態の場合は、RTS (送信要求)を送信します。RTS には、送信機のアドレス、受信機のアドレス、次のデータの送信継続時間、およびその他の情報が含まれます。チャネルがビジーの場合は、待機します。
- RTSは送信しても送信しなくても構いませんが、隠れ局の問題を解決するためにRTSの送信を検討します。
3. RTS を受信した後、受信側はCTS (送信可)で応答します。
- 受信側が応答 CTS を返すと、2 つのサイト間の接続が確立されたことと同じになります。後で他のサイトが RTS 接続を送信すると、受信側はその RTS 接続を拒否し、他のサイトは引き続き RTS 接続を受信します。到達するとデータを送信できなくなりますので、隠れ局の問題は解決されます。
4. CTS を受信した後、送信者はデータ フレームの送信を開始します (同時にチャネルを予約します。送信者は他のステーションにデータを送信する時間を伝えます)。
5. データフレームを受信した後、受信側は CRC を使用してデータが正しいかどうかを確認し、正しい場合は ACK フレームで応答します。
6. 送信側は ACK を受信した後、次のデータ フレームの送信を開始できます。そうでない場合は、指定された再送信回数まで再送信します (ランダムな遅延時間を決定するために、バイナリ指数バックオフ アルゴリズムが使用されます)。
衝突回避を実現する 3 つのメカニズムと手段を要約します。
1. チャンネルを予約します。(チャネルを予約することで、他のサイトにデータを送信する時間を伝えることができ、高い確率で競合を回避できます)
2. ACK フレーム。(データフレーム送信後、受信側は確認を返す必要があります。送信側は確認を受信して初めて新しいデータを送信できます。確認が返せない場合、送信側は再送信します)
3. RTS/CTS フレーム (オプション)。(データ送信後、まず送信者と受信者が握手をします。送信者は受信者にRTSを送信します。受信者がCTSフレームを受信して返送すると、良好な接続が確立されたことを意味します。このとき、他のホストは接続できません。出ます)
CSMA/CD と CSMA/CA の類似点と相違点
類似点:
CSMA/CD メカニズムと CSMA/CA メカニズムはどちらも CSMA の考え方に従属しており、核となるのは話す前にまず聞くことです。つまり、両方のデバイスはチャネルにアクセスする前に監視する必要があり、チャネルがアイドル状態であることが判明した場合にのみアクセスできます。
違い:
1.伝送メディアの違い:バスイーサネット[有線]にはCSMA/CD、無線LAN[無線]にはCSMA/CAを使用
2.異なるキャリア検出方法:伝送メディアが異なるため、 CSMA/CD と CSMA/CA の検出方法も異なります。
- CSMA/CD はケーブル内の電圧の変化によって検出され、データが衝突すると、それに応じてケーブル内の電圧も変化します。
- CSMA/CA は、エネルギー検出 (ED)、キャリア検出 (CS)、およびエネルギーとキャリアのハイブリッド検出という 3 つの方法を使用してチャネルのアイドル状態を検出します。
3. CSMA/CD は競合を検出し、CSMA/CA は競合を回避します。両者の間で競合が発生した場合、上限を設けて再送信します。
4.5.4.2. ポーリングアクセスのメディアアクセス制御
4.5.4.2.1. 3 つのプロトコルのレビュー
信道划分介质访问呢控制(MAC multiple Access Control)协议
:
- 多重化技術に基づいてリソースを分割します。
- ネットワークの負荷が高くなります。共有チャネルは効率的で公平です。
- リソースは分割されます。すべてのホストが使用中である場合、それは共有チャネルが完全に利用されており、効率が非常に高いことを意味します。公平性は、その時点でリソースが均等に割り当てられるという事実にあります。
- ネットワーク負荷が軽いため、共有チャネルの効率が低くなります。
- 作業中にビジー状態になるホストやノードはほとんどないため、多数のノードがアイドル状態になり、チャネル リソースのほとんどが無駄になり、時空間共有チャネルの効率はさらに低くなります。
随机MAC协议
:
- 用户可以根据自己的意愿来随机发送信息,发送可独占信道带宽。
- 网络负载重:产生冲突开销。
- 在随机访问麦克协议当中,基本都是一个广播式的链路,广播式的消息,在广播式信道重若是网络负载重,那么说明网络重有很多主机都在发送消息,那么很多主机都同时发送消息就会产生冲突,会让我们发送的消息失效,这就是产生的冲突开销。
- 网络负载轻:共享信道效率高,单个结点可利用信道全部带宽。
- 单个结点可以利用信道的全部带宽,由于网络负载轻的时候可能只有一太主机在发送数据,就不会产生冲突,这个信道也完全占用了带宽来发送自己的消息。
轮询访问MAC协议/轮流访问MAC协议
:将上面两个协议优点融合在一起。
- 既要不产生冲突,又要发送时占全部带宽。
问:哪个协议会发生冲突?只有随机访问MAC协议会发生冲突。
对于轮询访问MAC协议主要包含两个协议:轮询协议、令牌传递协议。
方式一:轮询协议
核心思想:主结点轮流"邀请"从属结点发送数据。
过程描述:主机A会依次询问B、C、D、E主机,首先会问B是否需要发送数据(发送一个很短的数据帧,用于询问作用),若是需要则此时进行连接进行数据传输;传完之后主机A又会去询问C是否要进行连接,若是不要则继续询问D,当询问E主机也结束时,此时会再次重来询问主机B。
特点:结合了前面两种协议的优点,首先就是不会产生冲突问题,接着就是每一次只允许一台主机发送数据,那么那一台主机就能够占用全部带宽。
问题:
1、轮询开销:若是被询问的主机数量什么庞大,此时一个个通过轮询询问所带来的开销也是十分大的。
2. 待機遅延: 後のホストが要求されるまでに、さらに待機遅延が発生します。
3. 単一障害点: 上の図のホスト A がダウンすると、他のスレーブ ノードは存続できなくなり、誰も問い合わせることがなく、データを送信できなくなります。
- 解決策: いつでもバックアップ マスター ノードを作成して、壊れたマスター ノードを置き換えることができます。
方法 2: トークン パッシング プロトコル
トポロジー: 論理的にはリング状ですが、実際の物理実装は星型です。
制御チャネルの使用: 同時に 1 つのノードだけがチャネルを占有するようにしてください。
- TCU: データを送信するための実際の送信インターフェース、通過するすべてのフレームを送信できる転送用インターフェースであり、アクセス ステーションがデータを送受信するためのインターフェースを提供します。これは主に転送機能です。
トークンリングの受け渡しプロセス
トークンリング転送処理:この時点でデータを送信するホストが存在しない場合、データを送信するホストが存在するまで、ホスト間でトークンが転送されます。
この時点で、ホスト D はデータを送信したいと考えており、このトークンを保持して次の 2 つの手順を実行します。
- トークンのフラグビットを変更します。(実際にはトークンをフリー状態からビジー状態に変更します)
- トークンの制御フレームの後にデータ フレームを追加し、このデータ フレームをターゲット ホストに送信します。
ホスト D がそれをホスト A に送信しています。このとき、データ フレームはホスト C とホスト B を経由します。ホスト D に関しては、ホスト D がそのデータをコピーしてホストに送信します。
このとき、ホスト A はデータ フレームにエラーがあるかどうかを確認します。エラーがある場合は再送信する必要があります。エラーがない場合は、この時点でデータ フレームが再利用され、その後フレームが再利用されます。転送されなくなり、トークンはビジー状態になります ステータスがアイドル状態に変化した後、トークンが渡されます 以降の処理が繰り返されます ホストがホストを経由するときにトークンを使用したい場合は、上記のホスト D の 2 つのステップが再度実行されるので、送信します。
トークンリングトランスポートプロトコルの利点と質問
トークン パッシング プロトコルは、チャネル分割 MAC プロトコルの利点を組み合わせており、主に一度に 1 つのホストだけがトークンを保持するため、衝突や競合を引き起こしません。トークンを保持しているホストのみがデータを送信でき、他のホストは送信できません。データ。現時点では衝突はありません。
質問: ホストに大量のデータがある場合、ホストは常にこのトークンを占有し、データを継続的に送信しますか?
- いいえ、時間には制限があります。この時間を超えると、他のデータはウェーブを待つ必要があります。送信元ホストに転送された場合にのみ、他のホストからのデータが送信されます。各ノードは送信できます。現地時間内のトークン保持時間を取得してデータ送信権を取得することは、トークンを無制限に保持することを意味するものではありません。
トークンプロトコルに起因する問題:
1. トークンのオーバーヘッド。(一部の書籍では、トークンが失われるとトークンを生成する必要があると記載されています。また、一部の書籍では、データがソース サイトに送信された後にエクスペリエンス トークンが生成されると記載されており、これもトークンのオーバーヘッドです)
2. 待機オーバーヘッド: ホスト d がデータを送信していて、この時点でホスト a もデータを送信したい場合、トークン リングが自分自身に到達する前に、トークン リングの制限時間が終了するまで待機する必要があります。これにも遅延が発生します。時間。
3. 単一障害点: 1 つのホストがダウンすると、リンク全体が切断されます。
- 解決策: 問題を解決するには、いくつかの代替マシンを使用する必要があります。
アプリケーション シナリオ: トークン送信を使用するネットワークは、負荷が高くトラフィック量が多いネットワークでよく使用されます。
MACプロトコルの概要
5.LAN
5.1. LANの基本概念とアーキテクチャ
5.1.1. LAN について
局域网(Local Area Network)
: LAN と略され、ブロードキャスト チャネルを使用して、特定のエリア内で複数のコンピュータによって相互接続されたコンピュータのグループを指します。
LAN には次のような特徴があります。
- カバーされる地理的範囲は小さく、1 つまたは集中した建物グループなど、比較的独立したローカル範囲内でのみ接続されます。
- ネットワーク用に特別に敷設された伝送媒体(ツイストペア、同軸ケーブル)を使用するため、データ伝送速度は高速です(10Mb/s ~ 10Gb/s)。
- 通信遅延時間が短く、ビットエラー率が低く、信頼性が高い。
- 各局は対等の関係にあり、伝送路を共有します。
- 分散制御やブロードキャスト通信が多く使われており、ブロードキャストやマルチキャストが可能です。(ブロードキャストとマルチキャスト: ローカル エリア ネットワークがブロードキャスト チャネルを使用する場合、このチャネルを共有するためにブロードキャスト通信が使用されます。)
ローカル エリア ネットワークを決定する主な要素は次のとおりです。网络拓扑
および。上記の特性はこの3つの要素によって決まります。传输介质
介质访问控制方法
5.1.2. LANトポロジー
スター トポロジ: 中央ノードはコントロール センターであり、任意の 2 つのノード間の通信に必要な手順は最大でも 2 つだけです。
- 利点: 高速な伝送速度、シンプルなネットワーク構成、簡単なネットワーク構築、制御および管理。
- 短所: ネットワークの信頼性が低く、ネットワーク共有機能が貧弱で、単一障害点があります。(バス トポロジは幹線を共有するため、ここでの共有能力の低さはバス トポロジを指します)
- スター型トポロジのハブに障害が発生すると、すべてのホストが通信できなくなります。
バス・トポロジ: 高いネットワーク信頼性、ネットワーク・ノード間の高速な応答速度、強力なリソース共有機能、低い設備投資、低コスト、簡単な設置と使用、ワークステーション・ノードに障害が発生しても、ネットワーク・システム全体への影響はほとんどありません。
リングトポロジー:システム内の通信機器や回線が比較的経済的です。
- 短所: 単一障害点の問題があり、ループが閉じているため拡張が難しく、システムの応答遅延が長く、情報伝達効率が比較的低いです。
ツリー トポロジ: 拡張が容易で、障害の切り分けが容易で、単一障害点が発生しやすいです。
評価: バス トポロジの方が優れており、ローカル エリア ネットワークで一般的に使用されるトポロジです。イーサネットは論理的なバス トポロジです。
5.1.3. LAN伝送媒体
5.1.4. LANメディアアクセス制御方式
LANメディアアクセス制御方式:
1. CSMA/CD:バス LAN およびツリー ネットワークでも一般的に使用されます。
- 最初に聞いて後で話します。聞いて同時に話します。
2. トークン バス:バス LAN やツリー ネットワークでもよく使用されます。
なぜトークンバスと呼ばれるのですか?
- トークンとバスの機能を組み合わせます。バスネットワークまたはツリーネットワーク内の各ワークステーションは、インターフェイスのアドレスサイズなどの順序に従って配置されて論理的なリングを形成し、トークン所有者だけがバスを制御し、情報を送信する権限を持ちます。
3. トークン リング: トークン リング ネットワークなどのリング LAN で使用されます。物理構造はスター構造です。
5.1.5. LANの分類
- トークン リング ネットワーク内のノードに障害が発生すると、リングは通信できなくなるため、トークン リング ネットワークは「過去のもの」と言われています。
- FDDI で使用される伝送媒体は光ファイバーです。
- ATM ネットワークの 53 バイト単位の長さは可変です。
- 無線LANの通信媒体は空気または電磁波です。
- 無線 LAN と WiFi の違い: WIFI は無線 LAN を応用したもので、無線 LAN は WIFI よりも広範囲をカバーでき、その範囲は数キロメートルにも及ぶ場合があります。
5.1.6、IEEE802規格
基本的な紹介は次のとおりです。
IEEE802 規格の既存の規格は次のとおりです。主に覚えておいていただきたいのは、以下の赤い線です。
- Ethernetが準拠する規格はIEEE802.3です。
- IEEE802.5はトークンリングネットワークです。
- IEEE802.8 は FDDI プロトコルであり、一般的に使用される伝送媒体は光ファイバーです。
- 巧妙なトリック: 高価な光ファイバーはお金持ちであることを意味し、お金持ちであれば 8 を取得すると、それは IEEE802.8 になります。
- IEEE802.11:無線LAN。
IEEE802 とイーサネットは密接に統合されています。
5.1.7、MAC サブレイヤと LLC サブレイヤ:
IEEE802規格に記載されているLAN参照モデルの値は、 OSI参照モデルのデータリンク層と物理層に相当します。
実際のIEEE802ではデータリンク層が逻辑链路层LLC
と介质访问控制MAC子层
に分かれています。
LLC子层
: ネットワーク層プロトコルの識別とそれらのカプセル化を担当します。LLC ヘッダーは、フレーム受信後にデータ パケットをどう処理するかをデータ リンク層に指示します。
- ネットワーク層のサービスとして、「確認なし接続なし」、「接続指向」、「確認なし接続」、「高速伝送」のサービスを提供します。
MAC子层
: 主な機能には、データ フレームのカプセル化/分解、フレームのアドレス指定と識別、フレームの受信と送信、リンク管理、およびフレーム エラー制御が含まれます。
- MAC サブレイヤの存在により、異なる物理リンク タイプ間の違いが保護されます。
概要: LLC サブレイヤはネットワーク層の隣にあり、ネットワーク層にサービスを提供します。MAC サブレイヤは物理層の隣にあるため、物理層に関連します。
- 伝送メディアおよび物理層伝送メディアに関連するコンテンツは、この MAC サブレイヤに配置されます。
マインドマップの瞬間
5.2. イーサネット
5.2.1. イーサネットについて
以太网(Ethernet)
Xerox が作成し、Xeror、Intel、DEC が共同開発したベースバンド バス LAN 仕様を指し、現在既存の LAN で使用されている最も一般的な通信プロトコル標準です。
- ベースバンド バス LAN 仕様: ベースバンドは仕様であり、バスは論理バス トポロジを指し、LAN 仕様は LAN テクノロジである場合があります。
イーサネット利用CSMA/CD(载波监听多路访问及冲突检测)
技術。
- CSMA/CD が使用されている場合、それがイーサネット ネットワークであることがわかります。
イーサネットは、さまざまな LAN テクノロジーの中で支配的な地位を占めています。
1. 低コスト (イーサネット カードのコストは 100 元未満)。
2. 最も広く使用されている LAN テクノロジーです。
3. トークンリングや ATM よりも安価で簡単です。
- 安さと簡単さは主にネットワークの構築、ネットワークの拡張、一部の障害の修正に反映され、一部のノードの障害を修正する方が簡単かつ安価になります。
4.ネットワーク速度要件を満たします: 10Mb/s ~ 10Gb/s。
- 従来のイーサネット 10Mb/秒、ファスト イーサネット、ギガビット イーサネット、および高速イーサネット 10Mb/秒。
5.2.2. イーサネットの 2 つの規格
イーサネットの 2 つの規格:
DIX Ethernet V2
: 最初の LAN 製品 (イーサネット) プロトコル。IEEE802.3
: IEEE 802 委員会の 802.3 ワーキング グループによって開発された最初の IEEE イーサネット標準。
2 つの規格の違いは、フレーム形式の 2 バイトが少し異なることであり、規則を満たすものをDIX Ethernet V2
イーサネットIEEE802.3
と呼ぶことができます。
イーサネットは802.3 LANとも呼ばれます。
5.2.3. イーサネットによって提供されるコネクションレスで信頼性の低いサービス
イーサネットによって提供されるコネクションレスで信頼性の低いサービス:
无连接
: 送信者と受信者の間に「ハンドシェイク プロセス」はありません。
无可靠
: 送信者のデータ フレームには番号が付けられておらず、受信者は送信者に確認せず、エラー フレームは直接破棄され、上位レベルがエラーの責任を負います。
- 上位レベルの責任とは、主に伝送層またはトランスポート層を指します。
要約: イーサネットはベスト エフォート型の配信がすべてです。イーサネットはエラーのない受信のみを実現し、信頼性の高い送信は実現しません。
- イーサネットはデータを受信すると、何らかのエラー検出を実行します。エラーが検出された場合、データは直接破棄または拒否されます。これは信頼性の高い伝送ではありません。
可靠传输
つまり、あなたが送信したフレームが続く限り、私はそれを受信します。フレームが失われたり、フレームが繰り返されたり、順序が狂ったりした場合、これらの信頼性のある伝送の問題はトランスポート層によって実現されます。
5.2.4. イーサネットによって提供されるコネクションレスで信頼性の低いサービス
イーサネット伝送メディアとトポロジの開発:
伝送メディアの開発: 従来のイーサネットでは太い同軸ケーブルが使用され、次に安価な細い同軸ケーブルが使用され、さらに偽造品と安価なツイストペアとハブの組み合わせが使用されます。
物理トポロジーの発展: 従来のイーサネットと現在のイーサネットの論理構造はどちらもバス型でしたが、その後、ネットワークの拡張や障害検出をより便利に行えるハブが登場し、物理トポロジーは、オリジナルのバス型構造でスターになりました。
- ハブを使用したイーサネットは依然として論理バス ネットワークであり、各ステーションは論理バスを共有し、依然として CSMA/CD プロトコルを使用します。
イーサネットトポロジー:論理的にはバス型、物理的にはスター型。
5.2.5、10Base-Tイーサネット
10Base-T
: ベースバンド信号を伝送するツイスト ペア イーサネットです。T はツイスト ペアを意味します。現在の 10Base-T は非シールド ツイスト ペア (UTP) を使用し、伝送速度は 10Mb/s です。
- ベースとは、デジタル信号である送信ベースバンド信号を指します。
- T はツイストツイストペアです。
- 10 で表される伝送速度は 10Mb/s です。
特徴は以下の通りです。
1. 物理的にはスター型、論理的にはバス型を採用しており、各ツイストペアの最長長は100mです。
2. マンチェスターエンコーディングを使用します。
- 1 ビットは 2 つのコード ソースに対応します。つまり、1 ビットの時間範囲内に 2 つの信号変化があります。
3. CSMA/CD メディア アクセス制御を採用します。(一部の競合や衝突が発生します)
5.2.6、アダプターとMACアドレス
アダプター: パソコンと外部の有線LANを接続するものです。
ネットワークインターフェイスボードは次のとおりです。
网络接口板NIC(network interface card)
: 以前は、グラフィックス カードを個別に取り付ける必要がありましたが、現在はマザーボードに直接統合されており、プロセッサーとメモリ (RAM および ROM を含む) はアダプターに取り付けられています。
- ROM には、コンピュータのハードウェア アドレス MAC アドレスが含まれています。このMACアドレスは世界で唯一の識別コードです。
ローカル エリア ネットワークでは、ハードウェア アドレスは物理アドレスまたは MAC アドレスとも呼ばれます。[実際には識別子]
MAC地址
: 各アダプタはグローバルに一意な 48 ビットのバイナリ アドレスを持ち、最初の 24 ビットは製造元 (IEEE 規定) を表し、最後の 24 ビットは製造元によって指定されます。
- MAC アドレスは、通常、02-60-8c-e4-b1-21 のように 6 つの 2 進数で表されます。
5.2.7. イーサネットMACフレーム
5.2.7.1. イーサネット MAC フレームの構成を理解する
このときネットワーク層にはIPデータグラムがあり、リンク層に到達する際にデータパケットをカプセル化する必要があります。
最も一般的に使用される MAC フレームは、DIX Ethernet V2
イーサネット V2 ( ) のフォーマット (最初の規格に基づくフォーマット) です。
IP层—>数据链路层阶段
: IP層から送信されたIPデータグラムはMAC層に到達するとデータに属することがわかりますが、このときデータのヘッダーと末尾に宛先アドレス、送信元アドレス、タイプ、FCSが付加されます。[先頭と末尾に制御フィールドを追加]物理层阶段
: 送信側と受信側の両方が送受信の同期を維持するには、MAC フレームの前にプリアンブルを追加する必要があります。このプリアンブルは 8B で、最初の 7Bはすべて10、10、 10 で構成され、最後の 2 桁は 11 で、送信者の高速受信機が MAC フレームの一部を受信する準備ができていることを示します。
次に、イーサネット MAC フレームのコンポーネントを見てみましょう。
源地址
: 送信者のアドレス。目的地址
: ターゲットアドレスを指します。3 つの状況があります。 ① ユニキャスト アドレスは、固定ホストに送信されるような独自の MAC アドレス、このホストの MAC アドレスを指します。②すべて 1 のブロードキャスト アドレスがすべてのホストに送信され、すべてのホストがこのアドレスを見た場合は、この時点ですべてのホストがそれを受け入れます。③マルチキャストアドレス。类型
: 受信した MAC フレームのデータを上位層のプロトコルに引き渡すために、上位ネットワーク層がどのようなプロトコルを使用しているかを示すために使用されます。数据
: この長さは可変で、下限は 46 バイト、上限は 1500 バイトです。- 1500B: リンク層の最大データ送信単位MTUである、あらかじめ指定された1500Bです。
- 46B: CSMA/CD プロトコルを研究するときに言及された最小フレーム長は 64B ですが、なぜここで 46 なのでしょうか? 実際には、まだ 64B です。18B は、宛先アドレス、送信元アドレス、タイプ、および FCS によって占有される合計バイト数です。64-18 = 46B です。したがって、ここでのデータ範囲は 46 ~ 1500 です。
FCS
:CRC巡回冗長検査の4バイトのフレームチェックシーケンスFCSを指します。
5.2.7.2. 質問: データリンク層がヘッダーとテールを追加するのはなぜですか?また、MAC フレームの後にフレーム終了ロケーターがないのはなぜですか?
質問: データ リンク層でヘッダーとテールが追加されるのはなぜですか。また、MAC フレームの後にフレーム終了ロケーターがないのはなぜですか?
- 下の図に示すように、丸で囲まれているのはフレーム開始デリミタです。問題は、なぜここにフレーム終了ロケーターがないのかということです。
理由:イーサネットはマンチェスター符号化を採用しており、各ビットに 2 つのシンボルが含まれる特徴があり、データ送信時にこの電圧変化が感じられます。
電圧は次のように変化します。
但是若是不发送数据,电压就是没有变化了的。当发送方把最后一个以太网帧发送完毕之后就不会再发送其他的码元了,因此这个发送方网络适配器的接口上电压也不会再发生变化。正是因为这个没有发生变化的电压,此时可以很清楚的确定以太网帧结束的一个为止,再这个结束为止往前四个字节就可以确定我们的数据结束位置。
- 并且每一个发送帧之间,都有一个最小间隔,我们每一个帧并不是紧挨着发送的,发完一个帧,就会停一会,接着再去发送一个新的帧,此时就会有空白的时间,此时检测不到电压变化就说明此时发送方是进行停止发送了,这样在这个停止发送之前的四个字节就可以确定数据帧的结尾。
以太网V2(DIX Ethernet V2
)与IEEE802.3的区别:
1、第三个字段是长度/类型。
2、当长度/类型字段值小于0x0600时,数据字段必须装入LLC子层。
5.2.8、高速以太网(3种)
速率>=100Mb/s的以太网称为高速以太网。
1、100BASE-T以太网
介绍:在双绞线上传送100Mb/s基带信号的星型拓扑以太网,仍然使用IEEE802.3的CSMA/CD协议
。
功能:支持全双工和半双工,在全双工方式下工作而无冲突。
- 全双工在这里中心节点就变成了交换机,这种全双工指的是每一台主机都可以发送的同时接收。其可以进行隔离冲突域,每一台交换机的端口就是一个冲突域,此时这一个主机在一个冲突与当中就不会发生冲突了。在全双工的情况下是不用使用CSMA/CD协议的。
2、吉比特以太网
概要:光ファイバーまたはツイストペアケーブルを介して 1Gb/s 信号を送信します。
機能: 全二重と半二重をサポートし、競合することなく全二重モードで動作できます。
3. 10ギガビット
概要: 10 ギガビット イーサネットは、光ファイバーを介して 10Gb/s 信号を送信します。
機能: 全二重のみをサポートし、競合の問題はありません。
伝送媒体:光ファイバー。
マインドマップの瞬間
5.3. 無線LAN
5.3.1. IEEE802.11 について
IEEE802.11
無線LANの共通規格であり、IEEEが定めた無線ネットワーク通信の規格です。
IEEE802.11bおよびIEEE802.11gを満たしていればWIFIに属します。
5.3.2、802.11 MACフレームヘッダフォーマット(各フィールドの詳細)
802.11 MAC フレーム ヘッダー形式:
MAC フレーム ヘッダーの形式を次の図に示します。4 つのアドレス フィールドは次のようにコメントされています。
例: ホスト A がホスト B と通信する場合、そのプロセスは何ですか?
ホスト A (ここでは携帯電話とします) は、このとき A に最も近いのは AP1、次に B に最も近いのは AP2 です。
- APとは無線アクセスポイント、基地局のことを指します。
ホスト A がトラフィックを介して B に情報を送信したい場合、A はまず AP1 に情報を送信し、次に AP1 が AP2 基地局に送信し、次に AP2 基地局が B の携帯電話に送信します。メッセージを受信できます。
ホスト A がホスト B にメッセージを送信する上記のプロセスを考えてみましょう。対応する MAC フレームの実際のフィールドを見てみましょう。
- 受信側と送信側は、指定された基地局の MAC アドレスを指定します。
- 宛先アドレスと送信元アドレスは、ホスト A とホスト B の MAC アドレスを示します。
補足:新しい場所に入ると、実際に最寄りの現地基地局に接続することになりますが、その際に基地局に携帯電話番号が登録され、対応するデータベースが更新されます。北京に到着すると、「北京はようこそ」というテキスト メッセージが届きます。このテキスト メッセージは、この新しい基地局に新規登録されて送信されます。
5.3.3、IEEE802.1規格のタイプ分類(4)
IEEE802.1 規格では、フレーム タイプを次の 4 つのカテゴリに分類しています。
上に書かれたフレーム アドレスは、実際にはすべてのフィールドの以下の WDS です。
- フィールドの値が 0 の場合、そのフィールドは使用されないことを意味します。
To AP
AP に送信されるフレームを指し、このとき、Address1 の受信側は BSSID で表される AP の MAC アドレスになります。From AP
AP 基地局から送信されたフレームを指します。Address2 送信者は、BSSID で表される AP の MAC アドレスです。
実技試験: ホストが基地局にフレームを送信したい場合、To AP の 3 つの対応するアドレスが何であるかを知りたいと思います。
5.3.4. 無線LANの分類
1. 固定インフラストラクチャを備えた無線 LAN。
2. 固定インフラを必要としない無線LANの自己組織型ネットワーク。
5.3.4.1. 固定インフラストラクチャを使用した無線 LAN (BSS、ESS、サービスおよび識別)
固定インフラによる無線LAN:
基本服务集BSS
: 基本サービスセット BSS を構成するホストを含む、AP (基地局) がカバーする範囲を指します。
注: ホストと AP の間に壁がある場合、信号が弱くなり、ワイヤレス AP の信号転送プロセスが妨げられやすくなります。
扩展服务集ESS
: いくつかのサービス セット (有線と無線など) を組み合わせた後、拡張サービス セットが形成されます。
現在、基本サーバーが 1 台だけでなく、2 台目の基本サーバーもありますが、この時点で通信は可能ですか?
- はい、現時点では配信システムを使用する必要があります。この配信システムは、当社の無線サービスと有線サービスを組み合わせたものに相当します。A が B と通信したい場合、間の距離は非常に長くなります (州を越える)。このとき、ホストAはまず基地局AP1にデータを送信し、その後基地局が有線ケーブルや信号ケーブルに接続され、この時点で分配システムにより有線通信が完了する。
- 有線+無線の組み合わせを実現。
漫游
: 1 つの基地局の範囲内のホストが、別の基地局の範囲内のホストと通信できるという事実を指します。
人生における小さな例を挙げると、コンピューターの Wi-Fi をオンにしたり、携帯電話の Wi-Fi をオンにしたときに見えるものは、 と呼ばれるものです服务及标识符
。
服务及标识符
:それぞれが基地局、それぞれが無線アクセスポイントに相当します。
5.3.4.2. 固定インフラを必要としない無線LANの自己組織化ネットワーク
固定インフラを必要としない無線LANの自己組織型ネットワーク:
- 固定インフラストラクチャがない: トランスポンダ、ハブ、ルーター、基地局がないことを意味します。いくつかのホストだけが単独でネットワークを形成します。各ホスト自体がホストとルーターの役割を果たすことができ、データを送信できます。データの転送に役立ち、各ノード間の下位ビットは互いに等しい。
5.4. VLAN の基本概念と原則
5.4.1. VLAN はなぜ存在するのでしょうか? (ローカルエリアネットワークの制限の特徴)
VLAN はなぜ存在するのでしょうか?
- 従来の LAN には局所性があります。
制限の特徴は次のとおりです。
1. トラフィック分離の欠如: グループ トラフィックが単一のスイッチに集中している場合でも、ブロードキャスト トラフィックは依然として組織ネットワーク全体 (ARP、RIP、DHCP プロトコル) に広がります。
- ブロードキャスト ドメインでは、ホストがブロードキャスト フレームを送信すると、ブロードキャスト ドメイン内のすべてのホストがブロードキャスト フレームを受信するため、このプロトコルを適用するとフラッディング現象が発生します。
2. ユーザー管理の不便さ: ホストが異なるグループ間を移動する場合、物理配線を変更して新しいスイッチに接続する必要があります。
- あるグループ内の別のワークグループを移動する場合は、物理的な配線を変更する必要があります。物理的な変更またはソフトウェアの変更を使用できます。変更は少ないほど良いと考えられます。
3. ルーターのコストが高い:ローカル エリア ネットワークでは多くのルーターを使用できますが、コストが高くなります。
- リンク上に大量のブロードキャスト フレームが伝播している場合、それらを分離していくつかのブロードキャスト ドメインを作成したいと考えています。ブロードキャスト ドメインの分離には、それをサポートするルーターが必要です。大規模な LAN 内に多数のグループがある場合、それらを分離したいと考えています。現時点では、問題を解決するには複数のルーターを使用する必要があります。
5.4.2. VLAN の基本概念
虚拟局域网VLAN(Virtual Local Area Network)
これは、LAN 内のデバイスを、物理的な場所とは関係のない論理グループに分割するテクノロジーです。これらの論理グループには、特定の共通の要件があります。各 VLAN は、個別のブロードキャスト ドメイン/異なるサブネットです。
スイッチが VLAN に分割されると、スイッチに接続された複数のホストが異なる VLAN に属することができ、各 VLAN はブロードキャストドメインになります。
例: 以下のように構成された 2 つのブロードキャスト ドメイン VLAN1 と VLAN2 では、ホスト A がブロードキャスト フレームを送信すると、ホスト A だけがそれを受信できます。VLAN2 のホスト C および D は影響を受けません。
効果: 本来、物理的には 4 台のホストが同じブロードキャスト ドメイン内にあるように見えますが、VLAN 分割後、この LAN は 2 つのブロードキャスト ドメインに分割できます。
5.4.3. VLAN は大規模なローカルエリアネットワークの分割を実現します
実際には、スイッチに接続されているホストを分割するだけでなく、このような大規模な LAN 内でも分割することができます。次の図に示すように、黒色のホストを VLAN2 に、オレンジ色のホストをVLAN1に分割します。
効果: 現時点では、このフォームを使用して、いくつかの物理的な制限や概念を完全に破り、いくつかのブロードキャスト ドメインを論理的に形成できます。
5.4.4. VLAN 実装原理
5.4.4.1. スイッチ内部の VLAN 実装 (フォワーディングテーブル、VLAN テーブル、ケースシナリオ)
上の図の WLAN1 の A を VLAN2 の C に直接送信できますか?
- 結論: いいえ、これらは 2 つの異なるサブネットであるためです。
- 理由: 現時点では、単に仮想 LAN に分割されています。2 つの VLAN は、実際には論理的には 2 つのサブネットとして理解できます。異なるサブネットは、ルーティングと転送を備えたルーターまたはレイヤー 3 スイッチの助けを借りてのみ確立できます。
上の図で、VLAN1 のホスト A が VLAN2 のホスト C にデータを送信できないのはなぜですか?
まず、スイッチにはスイッチ転送テーブルがあり、これは主に MAC アドレスとポート間のマッピングです。
次に、VLAN 仮想 LAN の使用により、VLAN LAN とポート間のマッピングである VLAN テーブルがアタッチされます。
シナリオ 1: VLAN1 のホスト A が VLAN1 のホスト B に送信します。
ホスト A のポートがどの VLAN に属しているかを VLAN テーブルから判断し、VLAN1 に属しているため、この時点では VLAN1 ブロードキャスト ドメイン内のホストにのみ送信されるため、ホスト B にしか送信できませんが、 VLAN2 のホストには送信されません。
シナリオ 2: VLAN1 のホスト A が VLAN2 のホスト C に送信します。(送信に失敗しました)
VLAN はサブネットを分割するために使用されるため、この時点では VLAN1 と VLAN2 は 2 つのネットワーク セグメントにあります。実際、ホスト A は送信時にまず対応する VLAN テーブルを確認します。ホスト A は VLAN1 に属し、次にホスト C のテーブルを確認します。は VLAN2 です。所属するネットワーク セグメントのみをブロードキャストできるため、送信できません。
VLAN ID とポートに基づく上記の VLAN テーブルの場合、次のように呼ばれます基于接口的VLAN技术
。
基于MAC地址的交换机的VLAN表
: 元のポートを、この表の対応するホストの MAC アドレスに置き換えます。
実際によく使用されているのは、ポートベースの VLAN テクノロジーです。
5.4.4.2. スイッチ間の実装
2 つのスイッチの内部実装原理
キーポイント: ホストと別の仮想 LAN 内のホスト (たとえば、VLAN1 と VLAN2 は 2 つの異なるネットワーク セグメント) の場合、レイヤー 3 スイッチまたはルーターの条件下でのみ通信できます。
2 セットのスイッチが VLAN を使用して接続されていることがわかります。VLAN は、VLAN1 と VLAN2 の 2 つのグループに分割されています。
例: ホスト A がホスト E に送信します。
1. このとき、ホスト A はフレームを準備します。このフレームはリンク層の通常のイーサネット フレームです。スイッチに到達すると、ホスト A のフレームが VLAN1 から来たものであることがわかります。 ) がこのフレームに追加されます。tag = 1 は、ホスト ポート 1 から送信され、VLAN 1 に属することを意味します。
2. このとき、リンクを通じてスイッチ 2 に送信されます。
- リンクからタグを削除しない理由は、このウィンドウではトランク(トランクポートと呼ばれ、スイッチ間を接続するポート)と呼ばれており、このトランクについてはタグを削除する必要がないためです。
3. スイッチ 2 に送信されると、スイッチ 2 の VLAN1 に属するこのデータ フレームが受信されます。次に、VLAN テーブルが検索されて VLAN1 のホストが特定され、他の MAC アドレス フィールドと組み合わせて、送信するかどうかが決定されます。 E または F を指定してください。
Core : 送信処理中に、ホストがどのネットワークに属しているかを示すラベルが必要で、宛先に送信されると、どの仮想 LAN に送信すればよいかがわかります。
VLAN実装:IEEE802.1Qフレーム(スイッチ間送信)
ラベル付けのプロセスでは、次の図に示すように、データ フレームを変更して 4 バイトの VLAN に挿入します。
4 バイトの解釈:
- ①VLANタグの最初の2バイトはIEEE802.1Qフレームであることを示します。
- ②次の4桁は無効です。
- ③次の12ビットはVLAN識別子VID (イーサネットフレームがどのVLANに属するかを一意に示すために使用)で、VLAN1の場合は1番になります。
- VID の値の範囲は 0 ~ 4095 ですが、 VLAN を表すために 0 も 4095 も使用されないため、VLAN を表すために使用される有効な VID 値の範囲は 1 ~ 4094 です。
注: IEEE802.1Q フレームは、ユーザー ホストではなくスイッチによって処理されます。(ホストとスイッチ間では通常のイーサネット フレームのみが交換されます)。
5.4.5. 実践的な演習: 異なる VLAN LAN 間の通信が可能かどうかを確認します。
質問 1: A と E はアクセスできるでしょうか?
回答: 図によると、スイッチが接続されていることがわかります。ホスト A とホスト E の間のプロセスは次のとおりです。
まず、ホスト A が通常のイーサネット フレームを作成し、それがスイッチに送信されると、スイッチは 1 (VLAN1 を意味する) とマークされたタグを追加し、スイッチ 1 のトランク ポートを介してスイッチ 2 に送信します。
このとき、スイッチ 2 はタグタグ内の対応する VLAN1 に基づいて対応するホストを見つけ、次に対応する VLAN テーブルを検索します。確かに E があり、送信は成功しました。
问题2:A和D、H能否实现访问?
解答:
(1)A和D不能够实现访问,主要原因为:虽然是连接着一个交换机,但是此时是通过VLAN分为了两个无线局域网,由于两个VLAN之间并没有交换机以及路由器,所以在VLAN表中发现在VLAN1里并没有主机D所以无法实现访问。
(2)A和H不能够实现访问,主要原因为:同样会经过问题1的流程,此时以太网帧带着标记来到了交换机2,此时交换机2读出了这个是VLAN1发来的以太网帧,此时在交换机2中的VLAN表里的VLAN1里并没有找到H,此时不能够实现访问。
核心要点:对于不同网段之间是否有路由器以及三层交换机,若是没有,无法跨不同网段访问。
5.4.6、选择题练习
题目:
解析:是通过软件的形式来实现逻辑工作组的划分与管理,也就是创建的是VLAN表。
六、广域网
6.1、广域网概念
广域网(WAN,Wide Area Network)
:通常能够跨越很大的物理范围,所覆盖的范围从几十公里到几千公里,它能够连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。
技术使用:广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网。它将分布在不同地区的局域网或计算机系统互联起来,达到资源共享的目的。
实际应用:使用的Internet就是广域网,是世界上范围内最大的广域网。
广域网中有很多的节点,叫做节点交换机
(如下图),这个交换机是链路层的设备,是交换机但是和路由器的功能很像,都是用来转发分组的。
交换机与路由器区别:前者是在单个网络中的转发分组,路由器则是在多个网络之间转发分组。
WAN にはスイッチ、ルーター、ハブがあり、各層、テクノロジー、LAN の重点の違いは次のとおりです。
- LAN が配置されている層との違い: WAN がカバーするネットワーク構造は物理層、リンク層、ネットワーク層に及びますが、LAN は物理層とデータリンク層のみをカバーします。
- 技術的な違い: LAN は論理バス タイプのマルチポイント アクセス テクノロジであるマルチポイント アクセス テクノロジを使用します; WAN はポイントツーポイントで、1 つの送信者と 1 つの受信者がリンクを介して接続されます 二重または半二重通信モード。
- LAN はデータ伝送を重視し、WAN はリソース共有を重視します。
WAN で最も一般的に使用されるプロトコル: PPP プロトコル、HDLC プロトコル。
6.2. PPP 契約
6.2.1. PPPプロトコルの特徴
点对点协议PPP(Point-to-Point Protocol)
: 現在最も広く使用されているデータ リンク層プロトコルであり、ユーザーは通常、ダイヤルアップ電話を使用してインターネットにアクセスするときに PPP プロトコルを使用します。
制限事項: 全二重リンクのみがサポートされます。
6.2.2. PPP 契約が満たすべき要件
PPP 契約が満たすべき要件:
1. シンプル: リンク層フレームの場合、エラー修正、シーケンス番号、フロー制御は必要ありません。
- インターネット アーキテクチャの最も複雑な部分は TCP にあります。IP プロトコルも TCP よりも複雑で単純です。現時点では、IP プロトコルは信頼性の低いデータグラム サービスを提供します。データ リンク層が信頼できる必要はありません。 IP 送信の前に、信頼性の高い送信を実現できません。
2. フレームへのカプセル化: フレームのヘッダーと末尾にフレーム区切り文字を追加します。
3. 透過的送信: フレーム区切り文字と同じビットの組み合わせを持つデータはどのように処理されるべきか;非同期ラインはバイトで埋められ、同期ラインはビットで埋められます。
- トランスペアレント伝送とは、データ部にどのようなビットストリームが伝送されても完全に伝送することができ、データ部にフレームデリミタがあっても見えなくなります。
- 非同期回線でのバイト パディングとは、送信中にバイトごと、または文字ごとに送信することを指します。同期についても同様です。
4. 複数のネットワーク層プロトコル: カプセル化された IP データグラムは複数のプロトコルを使用できます。
- リンク層はネットワーク層のデータグラムもカプセル化します。この時点でカプセル化された PPP プロトコルでは、このネットワーク層でプロトコルを使用する必要はありません。より包括的です。IP データグラムのカプセル化には複数のプロトコルを使用できます。IPプロトコル、IPX プロトコルはすべて利用可能です。
5. 複数のタイプのリンク: シリアル/パラレル、同期/非同期、電気/光...
6. エラー検出: PPP プロトコルでは信頼性の高い伝送を実現する必要がないため、エラーが検出された場合は直接破棄されます。
- CRC 巡回冗長が使用され、PPP プロトコルのフレームに FCS フィールドを追加することでエラー検出が実現されます。
7. 接続ステータス、つまりリンクが適切に機能しているかどうかを確認します。
8. 最大送信単位: データ部分の最大長 (MTU) は 1500 バイトを超えることはできません。
9. ネットワーク層アドレスのネゴシエーション: 通信する両方の当事者のネットワーク層アドレスを把握します。
10. データ圧縮: データを圧縮して送信します。
6.2.3. PPP 契約が満たす必要のない要件
PPP 契約が満たす必要のない要件:
1. エラー修正は必要ありません。
2. フロー制御は必要ありません。
3. 番号を付ける必要はありません。
4. マルチポイント回線はサポートされておらず、ポイントツーポイント間の接続プロセスを 1 つだけ定義または満たす必要があります。
6.2.4. PPPプロトコルの3つの構成要素(実装機能)
PPP プロトコルの 3 つのコンポーネント (実装機能) :
1. IP データグラムをシリアル リンク (同期シリアル/非同期シリアル) にカプセル化する方法。
2. : 主にID 認証链路控制协议LCP
のためにデータ リンク接続を確立および維持します。
- たとえば、ダイヤルアップ インターネット アクセスの場合、この接続はリンク接続を反映しています。つまり、LCP プロトコルは満たされていません。
3.: 网络控制协议NCP
PPP は複数のネットワーク層プロトコルをサポートできます。ネットワーク層プロトコルの論理接続を確立および構成するには、異なるネットワーク層プロトコルごとに、対応する NCP を構成する必要があります。
注: LCP プロトコルに基づくと、インターネット機能は接続が確立されて初めて実現できるため、ネットワーク層のデータグラムを処理してリンク層にカプセル化する必要があります。
LCP协议
これは、論理接続の層を確立するのと同様に、物理接続を確立するのと似ています。NCP协议
6.2.5. PPP プロトコルの仕組み (PPP プロトコルの状態図)
まず [デバイス間のリンクなし] は、現時点ではインターネットに接続されていません。まず、ブロードバンドをクリックして、アカウントとパスワードを入力します (例を示します)。この時点で、物理接続 [物理リンク] が確立されます。このとき、LCP リンクが確立されると、この物理リンクは LCP リンク [LCP リンク] に構築され、NPC 構成ネゴシエーションを通じて NCP リンクが形成され、初めてネットワークに正式にアクセスできます。 。
6.2.6. PPPプロトコルのフレームフォーマット
バイト単位では、
帧定界符
:先頭と最後にフラグフィールドがあります。
插入转义字符
: データ部分の処理中にフレーム区切り文字と同じフラグ フィールドが見つかった場合は、このエスケープ文字を対応するフィールドの前に追加する必要があります。
A、C控制字段
:設計の最初に与える意味はなく、主にその後の改善を容易にするためのもので、Aはアドレス、Cはコントロールのはずですが、この2つの領域は今のところ完成していません。使用されていません。
协议
: 右側の情報部分の種類を識別するために使用されます。
FCS
: エラー検出を実装するには、2 バイトのフレーム チェック シーケンスを使用します。
6.3. HDLCプロトコル
6.3.1. HDLC プロトコルを理解する
HDLC プロトコルは、TCP/IP プロトコル スイートによって開発されたものではなく、OSI によって開発されたプロトコルです。
高级数据链路层控制(High-Level Data Link Control或简称HDLC)
: インターネット上のデータ伝送を同期させるためのデータリンク層プロトコルであり、IBM の SDLC (Synchronous Data Control) プロトコルを拡張して国際標準化機構 (ISO) によって開発された特殊なプロトコルです。
実装方法:データメッセージは透過的に送信でき、透過的な送信を実現するための「0ビット挿入法」はハードウェアでの実装が容易です。
- トランスペアレント伝送方式:0ビット挿入方式。
- PPPプロトコルには同期伝送と非同期伝送があり、PPPプロトコルの同期伝送もHDLCと同じ0ビット挿入方式を採用しており、0が5個あった場合に1を挿入する。受信側は5ビットの後に0ビットを挿入するだけでよい0の連続 1 そのまま削除してください。
- HDLC プロトコルと PPP プロトコルの違い: PPP プロトコルは、タイムトランスペアレント伝送とバイト充填が異なります. データ内でフレーム区切り文字を持つ文字が見つかった場合、それはデータコンテンツ部分に挿入されます. エスケープ文字.
通信方式:全二重通信。
利点: 全フレームをCRC でチェックし、情報フレームに連番を付けることで受信漏れや重複を防ぎ、伝送信頼性が高い。:
6.3.2、HDLCステーション
1. マスタステーション: 主な機能は、コマンド (データ情報を含む) フレームの送信、応答フレームの受信であり、リンク制御システム全体の初期起動、プロセス制御、エラー制御、エラー検出または回復などを担当します。
2. スレーブ局: 主な機能は、マスタ局が送信したコマンドフレームを受信し、マスタ局に応答フレームを送信し、マスタ局と連携してエラー回復などのリンク制御に参加することです。
3. 複合ステーション: 主な機能はコマンド フレームと応答フレームの送受信であり、リンク全体の制御を担当します。
Webサイトに応じた3つのデータ操作方法があります。
1. 正常响应方式
: スレーブ局がメッセージを送信するにはマスタ局の同意が必要で、マスタ局がデータ送信を指示することでスレーブ局はデータを送信できます。
2. 异步平衡方式
: 各複合ステーションは他のステーションにデータを送信できます。
3. 异步响应方式
: スレーブ局はマスタ局の承諾なしにデータを送信することができます。
6.3.3. HDLC フレームフォーマット
以下に示すように、フレーム形式は PPP プロトコルに似ています。
标志字段
: 識別子フィールドが先頭と末尾に追加され、フラグ フィールドのバイナリ値は同じ 01111110 です。零比特传输
: トランスペアレント送信区間に同じビットストリームフォーマットがある場合、5110 ルールに従ってゼロビット送信を行い、5 回連続した 1 ビットが検出された場合、送信者は送信側が自動的に送信を開始することを指します。 5 番目の連続する 1 ビット 制御文字と同じバイト パターンを区別するためにゼロ ビット (0 ビット) が挿入されます。地址位A
: ① 通常応答モードまたは非同期応答モードを使用する場合、スレーブアドレスが設定されます。②非同期バランシング方式の場合、応答局と相手先のアドレスが記入されます。控制字段C
: 間違いなく HDLC タイプです。PPP フレームのプロトコル フィールドに非常に似ています。この制御フィールドは主に最初の 2 桁に依存します。ルールは次のとおりです (熟練度は、これら 3 つのフレームを知ることです。覚えていればそれらを一緒にすると、監視は行われません):- 最初のビットが 0 (情報フレーム (I)) の場合、データ情報を送信したり、ピギーバック技術を使用してデータを確認したりするために使用されます。
- 最初の 2 桁が 10 (監視フレーム (S)) の場合、フロー制御とエラー制御に使用され、情報フレームの確認、再送要求、送信一時停止要求などの機能を実行します。
- 最初の 2 桁が 11 (番号なしフレーム (U)) の場合、リンクの確立や切断などのさまざまな制御機能を提供するために使用されます。
6.3.4. PPP プロトコルと HDLC プロトコルの類似点と相違点
類似点:
1. HDLC と PPP は全二重リンクのみをサポートします。
2.透明な伝送が実現できます。
- PPP プロトコルは、
零比特填充
この字节填充
ビット スタッフィング方式を実装できます。 - HDLC プロトコルはゼロビット パディング方式のみを実装できます。(1 が 5 つある場合、末尾は 0 で埋められます)
3.エラー検出は可能ですが、エラーを修正することはできません。
- これは主に FCS フレーム チェック フィールドを借用することで実現されます。
違いは次のとおりです。
違いの詳細な説明:
- PPP プロトコルはバイト指向であるため、整数のバイト(8 ビットの整数倍) になります。HDLC プロトコルの各フレーム形式は各ビットに基づいており、送信されるときは一連のビットになります。これはどの位置でも可能です。
- 2B プロトコル フィールド: PPP はプロトコル フィールドです。HDLC の制御フィールドはこのプロトコル フィールドと同様であり、すべて情報部分とフレームの種類を指定します。
- シーケンス番号と確認メカニズムの有無: PPP にはありませんが、HDLC にはあります (現時点では、HDLC の方が信頼性が高く、PPP プロトコルは信頼性が低いと言えます)
- ** PPP プロトコルはなぜ信頼できないのですか? **実際のアプリケーションでは、TCP プロトコルは主にエラー制御やフロー制御などの機能を実装するために使用されるため、比較的無駄が多いためです。ネットワーク層やデータリンク層については、基本的に実現できるものは信頼できません。 1 つの送信ですが、その理由は、ネットワークに対して非常に高速な要求があり、物理層またはデータリンク層でエラーの検出と修正を完了するのに多くの時間がかかるためです。 。したがって、信頼性の高い送信の大部分はトランスポート層に渡されます。
- 信頼性: シーケンス番号と確認メカニズムの有無に応じて、PPP は信頼できませんが、HDLC は信頼できます。(ただし、実際には PPP が依然として使用されています。その理由は、確実な伝送がトランスポート層によって実装され、物理層のデータリンク層が実装されていないためです。伝送は可能な限り完了します。)
マインドマップの瞬間
7. リンク層装置
7.1. 物理層拡張イーサネット
拡張の理由: 最初は複数のホストがハブに接続されていますが、ホストとハブの間の距離は 100 メートルを超えることはできません。100 メートルを超えると、フレーム損失が非常に深刻になります。遠く離れたホストを有効にするため、通信するにはイーサネットを物理レベルで拡張する必要があります。:
拡張方法1:光ファイバー
方法 1:光ファイバーを使用してイーサネットの範囲を拡張または拡張し、2 つのホスト間の通信距離を長くすることができます。
以下の図では、ホストとハブの間に光ファイバーが使用されていますが、同時にハブに光ファイバーを追加してネットワーク範囲を拡張することもできます。
光ファイバー間の光電変換には、光ファイバー変調器と光復調器が使用されます。
拡張方法2:トランクハブ
方法 2: ハブを使用して多数のハブを結合する
複数のホストを接続するハブは、将来的にはハブによって結合され、各ハブによって形成される領域はコリジョン ドメインと呼ばれます。
- 競合ドメインとは、物理層デバイスと接続されたホストを指します。通信が行われる場合、同時に 1 つのホストのみが情報を送信できます。2 つのホストが情報を送信すると、競合または衝突が発生します。
次の図に示すように、最初にハブを使用して競合ドメインを構築し、次に複数のハブをバックボーン ハブに接続します。この時点で、最初の競合ドメインのコンピューターは、他の 2 つの競合ドメインのコンピューターと通信できます。接続を確立します。これがイーサネットを拡張する方法です。
このアプローチを採用することには 2 つの利点があります。
- メリット 1: 競合ドメイン間およびドメイン間通信が実現できるため、1 つのホストが遠く離れたホストと通信できます。
- 利点 2: イーサネットのカバー範囲の地理的範囲が拡大されました。当初は競合ドメインに 4 台のホストしか存在しませんでしたが、現在は 12 台のホストが競合ドメインに存在します。
デメリット: 通信効率が低下する 元々の競合ドメインでは 4 台のホスト間で競合が発生する確率は比較的低かったが、バックボーン ハブの通信チャネルを共有するホストが非常に多いため、競合の発生確率はさらに高くなる。 、効率は低くなります。
競合を減らし、イーサネットの範囲を拡張する方法はありますか?
- はい、リンク層でイーサネットの拡張が行われ、このときブリッジとスイッチの2 つのデバイスが使用されます。
7.2. リンク層拡張イーサネット
7.2.1. ネットワークブリッジ
7.2.1.1. ネットワークブリッジと原則を理解する
ブリッジはスイッチの前身と考えることができ、実際のアプリケーションでは通常、ブリッジの代わりにスイッチが使用されます。
网桥
: MAC フレームの宛先アドレスに基づいてフレームを転送およびフィルタリングします。ブリッジがフレームを受信すると、フレームをすべてのインターフェイスに転送するのではなく、最初にフレームの宛先 MAC アドレスを確認し、次に転送先を決定します。フレームを転送するか、インターフェースを選択するか、直接ドロップします (つまり、フィルター)。
原則: ハブがホストからデータを送信する場合、データはすべてのポートから転送されます。ブリッジでは、このポートから転送する必要があるかどうか、どこに転送するかを検討します。転送できない場合は、転送します。廃棄されることになります。
ネットワーク ブリッジには通常 2 つのポートがあり、4 つまたは 3 つのポートもありますが、一般的には比較的少数です。ブリッジの両端はネットワーク セグメントであり、ハブがネットワーク セグメントで使用されている場合、ハブも同じネットワーク セグメントに属します。
网段
: 一般に、同じ物理層機器 (伝送メディア、リピータ、ハブ) を使用して直接通信できるコンピュータ ネットワークの部分を指します。
7.2.1.2. ネットワークブリッジの利点
ブリッジの利点:
利点 1. トラフィックをフィルタリングし、スループットを向上させます。
- このブリッジは、現在データ リンク層で動作しているデバイスです。競合ドメインを分離できます。トラフィックをフィルタリングし、競合ドメインを分離する機能があります。相互に対話することなく、異なるネットワーク セグメント上の通信を確認できます。たとえば、 A と B は通信でき、C と D も通信でき、E と F も通信できます。
- 物理層デバイスがハブなどの複数の競合ドメインに接続されている場合、1 つの競合ドメインのホストが通信しているときは、他の競合ドメインのホストは通信できません。
物理デバイスごとに使用される帯域幅も異なります。
- ネットワーク ブリッジを使用する場合、各ネットワーク セグメントの帯域幅が 10Mb/s の場合、3 つのネットワーク セグメントを合わせた最大スループットは 30Mb/s になります。
- ハブを使用する場合、各ネットワーク セグメントの帯域幅が 10Mb/s の場合、物理層の機器を使用して接続されるため、コリジョン ドメイン全体の最大スループットは 10Mb/s になります。
メリット2:物理的な伝送範囲が拡大します。
- 例: たとえば、上の図の左端の競合ドメインにある A は、非常に遠く離れた E と通信できます。
メリット3:信頼性の向上。
- 競合ドメイン内のホストに接続されているケーブルに障害が発生しても、競合ドメイン内の他の 2 つのホストには影響がありません。
利点 4: 異なる物理層、異なる MAC サブレイヤ、およびイーサネットを異なる速度で相互接続できます。
7.2.1.3. 最初のタイプのブリッジ: 透明ブリッジ (自己学習プロセスを含む、3 つのケース)
透明网桥
: 「透過的」とは、送信されたフレームがどのブリッジを通過するかをイーサネット上のステーションが認識しないことを意味し、接続するとすぐに動作するプラグアンドプレイデバイスです。
- どのように動作します?自己学習アルゴリズムを使用しています。
ブリッジ フォワーディング テーブル: フォワーディング テーブルは常に変更されているわけではありません。数分ごとに更新されます。この更新により、以前のレコードがすべて削除され、自己学習によって新しいフォワーディング テーブルが改善されます。
自己学習プロセス:
まず、ブリッジをネットワーク ケーブルに接続すると、各ブリッジの転送テーブルは空になり、左右にポート 1 と 2 が配置されます。
ケース 1: ホスト A がホスト B に信号を送信する
ネットワークセグメント上のホストAがBに信号を送信すると、左右のホストGとホストBが信号を受信することになりますが、このとき実際に信号を受信しているのはBです。
このとき、このデータはブリッジの左側のインターフェース 1 にも送信されます。このとき、ブリッジは現在のフレームに基づいてどのポートに転送するかを見つけます。転送テーブルにはホスト A のアドレスがないため、この時点で転送テーブルに存在します 転送テーブルに A のレコードを追加します 転送テーブルには宛先ホスト B の情報がないため、この時点ではポート 2 経由で転送されます。
ポート 2 から転送された後、ネットワーク セグメント C および D に対応するホストもメッセージを受信します。B ではないため、別のブリッジのポート 1 に到達するまですべて破棄されます。ブリッジはまた、メッセージが存在しないことを検出し、 A のアドレスの場合、A のアドレスのレコードは転送テーブルに保存されます。転送にはホスト B が存在しないため、新しいネットワーク セグメントに転送されるまでポート 2 から転送され、新しいネットワーク セグメントが存在しなくなります。ホスト B. ホスト。
ケース 2: ホスト F がホスト C にデータを送信する
ホスト F は、現在のネットワーク セグメント内のホスト C にデータ フレームを送信します。このとき、このネットワーク セグメントにはホスト C が存在しないため、ホストはそれを受信しません。このとき、データ フレームはブリッジのポート 2 に到着します。ブリッジはまず転送先の F ホストにデータがあるかどうかを確認しますが、この時点では F レコードが追加されておらず、C ホストがないため、データ フレームはポート 1 から転送されます。
この時点で、ホスト C はポート 1 によって転送されたネットワーク セグメントでパケットを正常に受信します。
同時に、ネットワークセグメント上にあるため、このデータフレームは左側のブリッジ1のポート2に送信されます。また、ブリッジ1のフォワーディングテーブルにはFのアドレスレコードがないため、ブリッジ1のアドレスは、このとき、F が送信されます。レコードは転送テーブルに保存されます。F アドレスのレコードが見つからないため、データ フレームは引き続きブリッジ 1 のポート 1 から転送されます。
ケース 3: B が A にデータ フレームを送信したい
ホスト B はネットワークセグメント上のホスト A にデータフレームを直接送信しますが、このとき A はネットワークセグメント上にあるため、データフレームを直接受信します。
同時に、このデータ フレームはブリッジ 1 のポート 1 に到着します。まず、フォワーディング テーブルにホスト B のレコードがあるかどうかを確認します。ない場合は、ホスト B のレコードがあるため、フォワーディング テーブルに直接記録されます。ブリッジの転送テーブル内のホスト A の対応するレコード アドレス レコード この時点で、ブリッジはホスト A がブリッジ上にあることを認識しているため、データ フレームは破棄されます。
7.2.1.4. 2 番目のタイプのブリッジ: ソースルーティングブリッジ (原理は最初のタイプと似ています)
源路由网桥
: フレーム送信時に詳細な最適経路情報(最短経路・最短時間)をフレームのヘッダに入れます。
方法:送信元局がディスカバリフレームをブロードキャストモードで事前通信先局に送信する。
例: 下の写真の迷路は、入口と出口がある実際の複雑なネットワークに似ています。ソース ルーティング ブリッジの動作原理は、ソース ステーションが伝播のためにブロードキャストの形式でリンク上にブリッジを配置することです。このリンクは非常に複雑で、終端まで複数のパスが存在する可能性があります。以下の 2 つの解決策があります。
実際には、ディスカバリ フレームを送信元ステーションから宛先ステーションに送信できるソリューションは数多くありますが、このとき、宛先ステーションは原則として応答フレームまたはディスカバリ フレームを返します。または、送信フレームは開始点、現時点でルーティング オプションがいくつあるかを示します。
これらのルーティング オプションの中で、最も短いルートまたは最も短い時間が必要なルートがあり、それは主に目的に応じて異なります。最適なパスが決定された後、それが最適なルーティング情報としてフレームのヘッダーに配置されます。送信する必要があるのは次のとおりです。宛先ステーションがこのステーションと同じ場合、このスキームを使用して送信されます。
7.2.2. イーサネットスイッチ(マルチインターフェースブリッジ)
7.2.2.1. イーサネットスイッチについて
元のネットワーク ブリッジにはポートが 2 つしかないため、このイーサネットを拡張しようとすると多くのブリッジが必要になり、多くの無駄が生じます。テクノロジーの発展に伴い、ネットワーク ブリッジのインターフェイスはますます増えており、一部のハブ (HUB と一部のホスト) も接続できます。
現時点では、このようなマルチポート ネットワーク ブリッジが現在のイーサネット スイッチになります。通常、十数個のポートがあり、それぞれをハブに接続できます。
- ネットワークが非常に複雑で、スイッチに接続されているホストが多すぎる場合は、最初にホストをハブに接続させてから、スイッチを使用してハブに接続することを検討する必要があります。
- ホストの数が比較的少ない場合は、ホストをスイッチに直接接続することもできます。
7.2.2.2. イーサネットスイッチの利点
イーサネットスイッチの利点: 専用の伝送メディア帯域幅
利点は何ですか?
- 当初、複数のホストを接続するときに競合ドメインを構築するためにハブの物理層デバイスを使用していました。実際、各ホストはハブの帯域幅を均等に分割します。たとえば、ハブが 10Mb/s の場合、ホストは 4 つになります。現時点では、各ホストの帯域幅はすべて 2.5Mb/s です。
- イーサネット スイッチを使用して複数のホストまたは複数のハブを接続する場合、イーサネット スイッチの帯域幅が 10Mb/s であれば、各ハブ (ホスト) が10Mb/s の帯域幅を排他的に占有します。
7.2.2.3. イーサネットスイッチの 2 つのスイッチングモード (カットスルー、ストアアンドフォワード)
カットスルー スイッチ、ストア アンド フォワード スイッチ、およびその 2 つを組み合わせて使用するスイッチの2 種類があります。
① カットスルースイッチ: 宛先アドレス(6B)を確認後、直ちに転送します。
- メリット:遅延が少ない。
- 短所: 信頼性が低く、異なるレートでのポート スイッチングをサポートできません (両側のレートが大きく異なる場合に問題が発生します)。
② ストアアンドフォワードスイッチ: フレームをキャッシュに入れて正しいかどうかを確認し、正しい場合は転送し、間違っている場合は破棄します。
- 利点: 信頼性が高く、異なるレートのポート スイッチングをサポートできます。
- デメリット:遅延が大きい。
実際のアプリケーションでは、ストアアンドフォワードスイッチが使用されます。
7.2.2.4. スイッチ転送メカニズム (2 つの例)
実は、これはネットワークブリッジの自己学習能力とほぼ同じです。
以下はスイッチの図の例です。スイッチは複数のホストに接続でき、スイッチは転送テーブルを維持します。
例 1: ホスト A がホスト B にデータ フレームを送信します。
ホスト A がスイッチにデータを送信します。スイッチはまず、ルーティング テーブルに送信ホスト A のレコードがあるかどうかを確認します。ない場合は、A のアドレスとインターフェイス 1 のレコードを追加します。ルーティング テーブルに送信されます。ホスト B は照会されません。この時点では、スイッチのすべてのポートがこのデータ フレームを転送します。
ポート 3 および 4 に接続されているホスト C および D は宛先ホストではないため、データ フレーム メッセージは最終的にホスト B からポート 2 で受信されます。
例 2: ホスト B がホスト A に送信する
ホスト B がスイッチにデータ フレームを送信すると、スイッチはまずルーティング テーブルにホスト B のレコードがあるかどうかを確認して記録し、次にルーティング テーブルにクエリを実行して、対応するポート方向があるかどうかを確認します。ホスト A のアドレス。見つかった場合、この時点でスイッチはデータをポート 1 から直接転送し、ポート 3 と 4 はデータを転送しません。
注: 各エントリにはライフサイクルが設定されており、このライフサイクルを超えると、エントリはスイッチによって削除されます。:
- 削除の主な目的: 場合によっては、いくつかの新しいホストがスイッチに接続されるため、転送テーブルを常に最新の状態に保つ必要があります。
7.3. コリジョンドメインとブロードキャストドメイン
7.3.1. コンフリクトドメインとブロードキャストドメインを理解する
冲突域
: 同じコリジョン ドメイン内の各ノードは、送信されたすべてのフレームを受信できます。一度に情報を送信できるのは 1 つのデバイスだけです。
广播域
: 任意のデバイスから送信されたブロードキャスト フレームを受信できるネットワーク上のすべてのデバイスの集合。ステーションがブロードキャスト信号を送信する場合、その信号を受信できるすべてのデバイスの範囲をブロードキャスト ドメインと呼びます。
異なるレイヤのデバイスの場合、コリジョン ドメインとブロードキャスト ドメインが分離されているかどうかは、次の図に示すようになります。
- スイッチなどのリンク層デバイスの各ポートはコリジョン ドメインです。
7.3.2. 例: ブロードキャスト ドメインと競合ドメインの数を確認する
次の図に基づいて、ブロードキャスト ドメインと競合ドメインの数を特定します。
ブロードキャストドメインの数を確認するにはどうすればよいですか?
- ルーターが存在する場合はブロードキャスト ドメインを分離できますが、ルーターが存在しない場合はブロードキャスト ドメインが 1 つだけ存在します。
競合ドメインの数を確認するにはどうすればよいですか?
- ハブは、スイッチに接続されたポートに対応するコリジョン ドメインを形成できます。
- 概要:物理リンク層の機器を見てください。ポートの数に基づいていくつかのコリジョン ドメインがあります。この時点では、図には 4 つあります。
答え: 4 つのコリジョン ドメインと 1 つのブロードキャスト ドメイン。
マインドマップの瞬間
主催者:ロングロード日程:2023.7.30-8.3