通信経路選択と通信手順
■ルーター
ルーターはネットワークの橋渡しを行うなどの役割を もっていますので、その役割を紹介したいと思います。 ①.ネットワークの橋渡し ルーターは自分たちが所属しているネットワークから 別のネットワークへの橋渡しを行っています。 LANからインターネットにつなぐ場合、 ネットワーク間の出入り口(ゲートウェイ)になっているので 必ずルーターを介して接続が行われます。②.伝送経路の選択 ルーターはインターネット側にデータを送り出す際に 送信先への伝送経路を決めます。 これをルーティングと呼び、目的地への適切なルートを記した ルーティングテーブルを利用しています。 ここにはあて先までの距離や次に中継するルーターのアドレスなどが 記録されています。 ルーターはパケットに記載されたあて先IPアドレスと ルーティングテーブルを比較し、適切な経路を見つけたら 次の中継点へデータを転送します。
③.伝送媒体のコンバート ユーザーは様々な通信手段を用いてインターネットにアクセスしますが ルーターは回線の違いを吸収して、同一の環境を提供します。
![]()
■ルーティングテーブル
ルーティングテーブルは宛先への適切なルートを記載したデータで 経路選択(ルーティング)を行うために欠かせない情報です。テーブルの作成は静的(スタティック)ルーティングか 動的(ダイナミック)ルーティングによって行われます。 ●静的ルーティングの特徴 ・全ての経路を自分で決める ・管理者がルーティングテーブルを入力する必要がある ・手動なので臨機応変に対応することが難しい ・ネットワーク障害が起こった際に対応が遅れやすい ・経路が少なかったり、決まっている場合に使用される ・経路が固定しているのでルータへの負担が低い まとめ 全ての伝送経路を自分で設定しなくていけないので すごい手間がかかるがルータへの負荷は低い ●動的ルーティングの特徴 ・全ての経路をルーターが決める ・ルーターが自動でルーティングテーブルを作成、編集する ・隣接するルーターと経路情報を随時交換し、 情報の変更に臨機応変に対応する ・ネットワークで障害が起こっても素早く別の経路に変更できる ・大規模なネットワークでは必要不可欠 ・情報交換が定期的に行われるので通信負荷がかかる まとめ ルーター任せなので管理の負荷が少ないが 情報交換を頻繁するので通信の負荷がかかる
■動的ルーティングのルーティングプロトコル
動的ルーティングでの情報交換やルーティングテーブルの作成は ルーティングプロトコルにより作成されています。 ルーティングプロトコル: ルーター同士がネットワーク上で経路を選択するための 情報のやり取りを行う通信プロトコルのこと このルーティングプロトコルはAS(Autonomous System:自律システム)と 呼ばれるネットワークグループ内部で使用されるものと AS同士のやり取りで使用されるものの2つがあります。 ●AS(Autonomous System:自律システム) ASはルーティングの効率化をはかるためにグループ化された ネットワークの集合です。 グループは地域や組織ではなくYahooBBやOCNなどのプロバイダ単位で 作成されており、AS間で経路情報の交換を行うことにより、 インターネット上で効率的な経路制御を実現します。 また、ASにはAS番号というものが設定されており、 AS番号はICANN(日本はJPNIC)から割り当てられています。 ルーティングプロトコルはAS間のルーティングプロトコルの EGP(Exterior Gateway Protcol)とAS内のルーティングプロトコルの IGP(Interior Gateway Protcol)に大別できます。●ルーティングプロトコルで使用する単語 ルーティングプロトコルの説明をする上で使用する単語の 説明を行いたいと思います。 ・ポップ数 送信先へ届くまでに経由するルーターの数で 送信先のルータも数に含める 自身のネットワーク内に送信する場合は0 ・帯域幅 回線の通信速度 ・メトリック ポップ数や帯域幅、回線の混雑状況や 回線のエラー発生率などの経路判断基準のこと ●ルーティングプロトコルの種類 ルーティングプロトコルはEGPとIGPに大別できますが、 最適な経路をどの観点から導き出すかでいくつかのタイプに 分類することも可能です。 ・ディスタンスベクタ型 宛先までのポップ数で最適な経路を決める ・リンクステート型 所属するAS内のネットワーク構成を把握したデータベースを持ち これを元にして最短経路を計算して適切なルートを決める ・ハイブリット型 ディスタンスベクタとリンクステートの 長所を取り入れたプロトコル
上の図ではディスタンスベクタによる経路選択を行っており、 ルートAはポップ数(送信先までの距離)が4、 ルートBはポップ数(送信先までの距離)が3です。 ディスタンスベクタはポップ数を経路選択の メトリック(基準)とする経路選択方法なので、 ポップ数の少ないルートBが伝送経路として決定します。
■ICMP
ここからはデータの伝送手順の話になります。 ICMP(Internet Control Message Protcol:アイシーエムピー)とは 通信中に発生したエラー通知や動作確認などを行う際に 利用するプロトコルです。 メッセージにはエラー内容を通知するエラーメッセージと ネットワークの状態の調査を要求するクエリメッセージがあります。●ICMPのタイプ ICMPには11種類のタイプがあり、タイプごとに エラー内容や要求内容が異なります。
●ping(ピング) pingはICMPのエコーメッセージを利用した機能のことで、 データを送信したい相手のコンピュータがネットワークに つながっているかどうかを確認する際に使用されます。 ・pingの流れ まず、宛先に対してエコー要求(type:11)を送信し、 宛先のコンピュータがネットワークに接続されていれば エコー応答(type:0)を返してきます。 これによって相手がインターネットに接続されているかどうか 確認できます。 また、要求から応答までの時間を計ることで 回線の混雑状況を知ることもできます。
・pingの使用方法 コマンドプロンプトを開き、ping URLで実行可能です。
■3ウェイハンドシェイク
3ウェイハンドシェイクの説明の前にTCPの説明をしておきたいと思います。 ●TCP TCP(Transmission Control Protcol)とは インターネットでデータを確実に宛先へ届けるために 使用するプロトコルのことです。 ●3ウェイハンドシェイク TCPを使ったデータのやり取りは、事前に送信先に 「これから通信を行う」という確認を行って 通信可能な状況を作り出します。 確実にデータを届けるために事前の段階から準備を行います。 この「これから通信を行う」という事前確認を3度のやり取りで 行うことから3ウェイハンドシェイク(3方向の握手)と呼ばれています。 ●事前確認の流れ 1.送信元 => 宛先 SYNという通信許可を求める情報を送る 2.宛先 => 送信元 通信を許可するACKという情報と 送信元への通信許可を求めるSYNを送信 3.送信元 => 宛先 宛先へACKを送る![]()
■確認応答
確認応答とはTCPでデータをパケット送信した際に データが届いたことを送信先が送信元へ伝えるメッセージのことです。 パケットデータにはシーケンス番号とデータのサイズが設定されています。 確認応答ではACK番号を設定して送信側へ送ります。 シーケンス番号: パケットに分割されたデータの先頭のバイト番号 (データ全体の何番目にあたるのかを示す数値) ACK番号: 次に送ってほしいデータの先頭バイトの先頭番号●応答確認が来なかったら 応答確認が受信側に届かなかった場合、通信中にエラーが 発生した可能性が高いので、送信側は一定時間待って、 再度パケットデータを送信します。 もし、再送したパケットデータ重複していたり、 シーケンス番号がずれていた場合は確認応答で 送ってほしいACK番号を設定して送信します。
■TCPとUDP
データ送信のプロトコルはTCPの他にUDPと呼ばれるものがあります。 UDP(User Datagram Protcol)とはデータの正確性よりも 即時性(リアルタイム性)を重視した通信になります。 ●TCPの特徴 ・データの正確性が高い ・応答確認を待つ必要があったりするので 伝送に時間がかかる ・メールなどの正確性を重視した通信に適している ●UDPの特徴 ・データの正確性が低い ・応答確認を行わないので伝送速度は速い ・IP電話やライブ映像などの通信に適している![]()
②.伝送経路の選択
ルーターはインターネット側にデータを送り出す際に
送信先への伝送経路を決めます。
これをルーティングと呼び、目的地への適切なルートを記した
ルーティングテーブルを利用しています。
ここにはあて先までの距離や次に中継するルーターのアドレスなどが
記録されています。
ルーターはパケットに記載されたあて先IPアドレスと
ルーティングテーブルを比較し、適切な経路を見つけたら
次の中継点へデータを転送します。
③.伝送媒体のコンバート
ユーザーは様々な通信手段を用いてインターネットにアクセスしますが
ルーターは回線の違いを吸収して、同一の環境を提供します。
テーブルの作成は静的(スタティック)ルーティングか
動的(ダイナミック)ルーティングによって行われます。
●静的ルーティングの特徴
・全ての経路を自分で決める
・管理者がルーティングテーブルを入力する必要がある
・手動なので臨機応変に対応することが難しい
・ネットワーク障害が起こった際に対応が遅れやすい
・経路が少なかったり、決まっている場合に使用される
・経路が固定しているのでルータへの負担が低い
まとめ
全ての伝送経路を自分で設定しなくていけないので
すごい手間がかかるがルータへの負荷は低い
●動的ルーティングの特徴
・全ての経路をルーターが決める
・ルーターが自動でルーティングテーブルを作成、編集する
・隣接するルーターと経路情報を随時交換し、
情報の変更に臨機応変に対応する
・ネットワークで障害が起こっても素早く別の経路に変更できる
・大規模なネットワークでは必要不可欠
・情報交換が定期的に行われるので通信負荷がかかる
まとめ
ルーター任せなので管理の負荷が少ないが
情報交換を頻繁するので通信の負荷がかかる
●ルーティングプロトコルで使用する単語
ルーティングプロトコルの説明をする上で使用する単語の
説明を行いたいと思います。
・ポップ数
送信先へ届くまでに経由するルーターの数で
送信先のルータも数に含める
自身のネットワーク内に送信する場合は0
・帯域幅
回線の通信速度
・メトリック
ポップ数や帯域幅、回線の混雑状況や
回線のエラー発生率などの経路判断基準のこと
●ルーティングプロトコルの種類
ルーティングプロトコルはEGPとIGPに大別できますが、
最適な経路をどの観点から導き出すかでいくつかのタイプに
分類することも可能です。
・ディスタンスベクタ型
宛先までのポップ数で最適な経路を決める
・リンクステート型
所属するAS内のネットワーク構成を把握したデータベースを持ち
これを元にして最短経路を計算して適切なルートを決める
・ハイブリット型
ディスタンスベクタとリンクステートの
長所を取り入れたプロトコル
上の図ではディスタンスベクタによる経路選択を行っており、
ルートAはポップ数(送信先までの距離)が4、
ルートBはポップ数(送信先までの距離)が3です。
ディスタンスベクタはポップ数を経路選択の
メトリック(基準)とする経路選択方法なので、
ポップ数の少ないルートBが伝送経路として決定します。
●ICMPのタイプ
ICMPには11種類のタイプがあり、タイプごとに
エラー内容や要求内容が異なります。
●ping(ピング)
pingはICMPのエコーメッセージを利用した機能のことで、
データを送信したい相手のコンピュータがネットワークに
つながっているかどうかを確認する際に使用されます。
・pingの流れ
まず、宛先に対してエコー要求(type:11)を送信し、
宛先のコンピュータがネットワークに接続されていれば
エコー応答(type:0)を返してきます。
これによって相手がインターネットに接続されているかどうか
確認できます。
また、要求から応答までの時間を計ることで
回線の混雑状況を知ることもできます。
・pingの使用方法
コマンドプロンプトを開き、ping URLで実行可能です。
●応答確認が来なかったら
応答確認が受信側に届かなかった場合、通信中にエラーが
発生した可能性が高いので、送信側は一定時間待って、
再度パケットデータを送信します。
もし、再送したパケットデータ重複していたり、
シーケンス番号がずれていた場合は確認応答で
送ってほしいACK番号を設定して送信します。
