DCN-ネットワーク層ルーティング
デバイスに宛先に到達するための複数のパスがある場合、デバイスは常に他のパスよりも優先して1つのパスを選択します。この選択プロセスはルーティングと呼ばれます。ルーティングは、ルーターと呼ばれる特別なネットワークデバイスによって実行されるか、ソフトウェアプロセスによって実行されます。ソフトウェアベースのルーターには、機能と範囲が制限されています。
ルーターは常にデフォルトルートで構成されています。デフォルトルートは、特定の宛先のルートが見つからない場合にパケットを転送する場所をルーターに指示します。同じ宛先に到達するために複数のパスが存在する場合、ルーターは次の情報に基づいて決定を下すことができます。
ホップカウント
Bandwidth
Metric
Prefix-length
Delay
ルートは静的に構成することも、動的に学習することもできます。1つのルートを他のルートよりも優先するように構成できます。
ユニキャストルーティング
ユニキャストデータまたはユニキャストトラフィックと呼ばれるインターネットおよびイントラネット上のトラフィックのほとんどは、指定された宛先で送信されます。インターネットを介したユニキャストデータのルーティングは、ユニキャストルーティングと呼ばれます。宛先がすでにわかっているため、これは最も単純なルーティング形式です。したがって、ルーターはルーティングテーブルを検索し、パケットをネクストホップに転送するだけです。
ブロードキャストルーティング
デフォルトでは、ブロードキャストパケットは、どのネットワーク上のルーターによってもルーティングおよび転送されません。ルーターはブロードキャストドメインを作成します。ただし、特別な場合には、ブロードキャストを転送するように構成できます。ブロードキャストメッセージは、すべてのネットワークデバイスに送信されます。
ブロードキャストルーティングは、次の2つの方法(アルゴリズム)で実行できます。
ルーターはデータパケットを作成し、それを各ホストに1つずつ送信します。この場合、ルーターは、宛先アドレスが異なる単一のデータパケットの複数のコピーを作成します。すべてのパケットはユニキャストとして送信されますが、すべてに送信されるため、ルーターがブロードキャストしているようにシミュレートされます。
この方法は多くの帯域幅を消費し、ルーターは各ノードの宛先アドレスを指定する必要があります。
次に、ルーターがブロードキャストされるパケットを受信すると、それらのパケットをすべてのインターフェイスからフラッディングするだけです。すべてのルーターは同じ方法で構成されます。
この方法はルーターのCPUでは簡単ですが、ピアルーターから受信したパケットが重複する問題が発生する可能性があります。
リバースパス転送は、ルーターがブロードキャストを受信する場所から前任者について事前に知っている手法です。この手法は、重複を検出して破棄するために使用されます。
マルチキャストルーティング
マルチキャストルーティングは、重要な違いと課題を伴うブロードキャストルーティングの特殊なケースです。ブロードキャストルーティングでは、パケットは不要な場合でもすべてのノードに送信されます。ただし、マルチキャストルーティングでは、データはパケットを受信したいノードにのみ送信されます。
ルーターは、マルチキャストパケット(またはストリーム)の受信を希望するノードがあることを認識している必要があります。ノードのみが転送する必要があります。マルチキャストルーティングは、ループを回避するためにスパニングツリープロトコルで機能します。
マルチキャストルーティングは、重複パスとループを検出して破棄するために、リバースパス転送技術も使用します。
エニーキャストルーティング
エニーキャストパケット転送は、複数のホストが同じ論理アドレスを持つことができるメカニズムです。この論理アドレス宛てのパケットが受信されると、ルーティングトポロジで最も近いホストに送信されます。
エニーキャストルーティングは、DNSサーバーの助けを借りて行われます。エニーキャストパケットを受信すると、DNSを使用して送信先に問い合わせられます。DNSは、DNSに構成されている最も近いIPであるIPアドレスを提供します。
ユニキャストルーティングプロトコル
ユニキャストパケットのルーティングに使用できるルーティングプロトコルには、次の2種類があります。
ディスタンスベクタールーティングプロトコル
ディスタンスベクターは、送信元と宛先の間のホップ数を決定する単純なルーティングプロトコルです。ホップ数が少ないルートが最適ルートと見なされます。すべてのルーターは、設定された最適なルートを他のルーターにアドバタイズします。最終的に、すべてのルーターは、ピアルーターのアドバタイズメントに基づいてネットワークトポロジを構築します。
たとえば、ルーティング情報プロトコル(RIP)。
リンクステートルーティングプロトコル
リンクステートプロトコルは、ディスタンスベクターよりも少し複雑なプロトコルです。ネットワーク内のすべてのルーターのリンクの状態が考慮されます。この手法は、ルートがネットワーク全体の共通グラフを作成するのに役立ちます。次に、すべてのルーターは、ルーティングの目的で最適なパスを計算します。たとえば、Open Shortest Path First(OSPF)やIntermediate System to Intermediate System(ISIS)などです。
マルチキャストルーティングプロトコル
ユニキャストルーティングプロトコルはグラフを使用しますが、マルチキャストルーティングプロトコルはツリーを使用します。つまり、ループを回避するためにスパニングツリーを使用します。最適なツリーは、最短パススパニングツリーと呼ばれます。
DVMRP -距離ベクトルマルチキャストルーティングプロトコル
MOSPF -マルチキャストOpenShortest PathFirst
CBT -コアベースのツリー
PIM -プロトコルに依存しないマルチキャスト
現在、プロトコルに依存しないマルチキャストが一般的に使用されています。2つのフレーバーがあります。
PIM Dense Mode
このモードでは、ソースベースのツリーを使用します。LANなどの高密度環境で使用されます。
PIM Sparse Mode
このモードは共有ツリーを使用します。WANなどのまばらな環境で使用されます。
ルーティングアルゴリズム
ルーティングアルゴリズムは次のとおりです。
洪水
フラッディングは、最も単純な方法のパケット転送です。パケットが受信されると、ルーターはパケットを受信したインターフェイスを除くすべてのインターフェイスに送信します。これにより、ネットワークに過度の負担がかかり、ネットワーク内をさまよう重複パケットが大量に発生します。
存続時間(TTL)を使用して、パケットの無限ループを回避できます。ネットワークのオーバーヘッドを削減するための選択的フラッディングと呼ばれるフラッディングの別のアプローチがあります。この方法では、ルータはすべてのインターフェイスでフラッディングするのではなく、選択したインターフェイスでフラッディングします。
最短経路
ネットワークでのルーティングの決定は、主に送信元と宛先の間のコストに基づいて行われます。ここではホップカウントが大きな役割を果たします。最短パスは、さまざまなアルゴリズムを使用して、ホップ数が最小のパスを決定する手法です。
一般的な最短経路アルゴリズムは次のとおりです。
ダイクストラのアルゴリズム
ベルマンフォードアルゴリズム
フロイドウォーシャルアルゴリズム