広告
広告
https://www.7key.jp/nw/routing/r_protocol/dvmrp.html#what
DVMRPは、ユニキャストルーティングのRIPと同様、距離ベクトル方式をとるマルチキャストルーティングプロトコルです。マルチキャストルータ間で、ホップアカウント情報や宛先ノード、ネットワークアドレス情報、ソースノード情報などを交換するために使用されます。DVMRPはIGPで、マルチキャスト環境専用となっています。マルチキャストデータグラムとユニキャストデータグラムのルーティングを行うルータがDVMRPを使う場合は、DVMRPとRIPやOSPFなど他のIGPを両方実装する必要があります。DVMRPプロセスは、配下のリーフノードにパケットを転送します。DVMRPルータのアドレスは、224.0.0.4
となり、ルーティングデータグラムの交換にはIGMPが使用されます。下に一般的なDVMRPフォーマットを示します(括弧内単位はbit)。
V (4) | T (4) | Subtype (8) | Checksum ( 16 ) |
DVMRP データ(可変長) |
Subtype | 説明 |
---|---|
1 | 応答。宛先へのルートをもつメッセージ。 |
2 | 要求。宛先へのルートを要求するメッセージ。 |
3 | 非メンバーシップ報告。 |
4 | 非メンバーシップ取消。以前に出した非メンバーシップ報告を取り消すメッセージ。 |
コマンドコード | データ(最小8bit) | コマンドによって異なるオプションデータ |
https://www.7key.jp/nw/routing/r_protocol/dvmrp.html#command
Nullコマンドは32bit境界に揃えなければならない場合に使うパディング用コマンドです。8bitのデータフィールドを持っていますが、これは無視されます。オプションデータフィールドは使われません。
AFI【Address Family Indicator】コマンドとも呼ばれます。アドレスクラスの指定に使われるコマンドです。これによって使用アドレスの長さが決まります。このコマンドで設定されたアドレスクラスは、データストリームで次のAFIコマンドが読み出されるまで有効となります。初期設定では、データフィールドはIPアドレス(32bitアドレス)を示す2に設定されています。オプションデータフィールドは不要です。
使用するサブネットマスクを示すコマンドです。データフィールドの値は0か1かのどちらかをとります。0であればサブネットマスクが適用されないことを示し、1であれば次のフィールドにサブネットマスクが入れられていることを示します。サブネットマスクの長さはAFIが示します。AFIが2であれば次のフィールドは32bitの長さとなり、そのネットワークアドレスに使用するサブネットマスクが入れられます。
更新情報を送るルータを起点として、ホップカウントによるメトリックを使用します。データフィールドに入るメトリックは1から255までの値となります。オプションデータフィールドはありません。
このコマンドは無限大メトリックとなったルートについて、さらに情報を提供する手段とされるコマンドです。このコマンドではデータフィールドの8bitが8種類のフラグを表します。現在は6と7の2つが定義されており、7の場合は宛先が到達不能であることを、6の場合はスプリットホライズンがルートを隠していることを意味します。
このコマンドにより、データストリーム内にある他の全てのメトリックについて無限大メトリックが決まります。データフィールドは無限大メトリックで、1から255までの値をとります。初期設定はRIPと同様16となっています。
DA【Destination Address】コマンドとも呼ばれます。このコマンドにより、宛先ネットワークのリスト作成が可能となります。データフィールドには1から255までの宛先数が置かれ、オプションデータフィールドで示される宛先の数となっています。IPの場合AFIコマンドが示すようにオプションデータフィールドはどれも32bit長になります。宛先の最大数はメッセージの全長制限で決まり、どのメッセージも512オクテットを超えることはありません。
RDA【Requested Destination Address】コマンドとも呼ばれます。ルートを必要とする宛先のリストを提供します。データフィールドに入るのは指定されたアドレスの数で、0から255までの値をとります。0は全てのルートへの要求を示します。個々のルートが要求される場合、それぞれのルートがオプションデータフィールドに示され、IPアドレスでは32bitとなります。DAコマンド同様、実際に指定できるルートの数は、メッセージの最大長の制限があるのでAFIの指定によって決定されます。
NMR【Non Membership Report】コマンドとも呼ばれます。特定のマルチキャストグループを利用するホストを送信側ルータがもたないことを、受信側に伝えます。つまり、その特定のグループ宛のデータは送信する必要がありません。データフィールドに入るのは1から255までの値で、マルチキャストアドレスと持続時間タイマーの対の数を表します。オプションデータフィールドには、AFIコマンドが示す長さのマルチキャストアドレスと持続時間タイマーの対が続きます。これは、不要となったホストグループのマルチキャストアドレスと、この非メンバーシップ報告が有効な接続時間の秒数です。
このコマンドにより、以前出したNMRコマンドを取り消すことが出来ます。データフィールドに入る数値は次のオプションデータフィールドに入るマルチキャストアドレスの数です。オプションデータフィールドのそれぞれは、どれも現在のAFIコマンドが示す長さです。
https://www.7key.jp/nw/routing/r_protocol/dvmrp.html#work
DVMRPプロセスは、配下のリーフノードにパケットを転送します。DVMRPルータのアドレスは「224.0.0.4
」で、ルーティング情報の交換にはIGMPを使用します。この際、マルチキャストルータは、IP生存時間を1に設定したIGMP要求を全マルチキャストグループ(224.0.0.1
)に送り、応答を待ちます。RIPは特定の宛先へルーティングを行いますが、DVMRPはデータグラム伝送のリターンパスを保存し、マルチキャストツリーをリターンパスで作成します。DVMRPは通常の物理的なネットワークの他に、トンネルで連結されたネットワークを含みます。トンネルはマルチキャストをサポートしていないネットワークの中を、マルチキャストデータグラム通過させるために使用します。このトンネルでは、ユニキャストデータグラムが使用され、両端のルータ間で通信が行われることとなります。
仮想ネットワークへのデータグラム転送に責任を持つルータが仮想ネットワークの親となり、配下にあるルータの子が仮想ネットワークの情報をリバースパスでブロードキャストします。これをRPB【Reverse Path Broadcasting】と呼びます。
DVMRPにはマルチキャストメンバーとマルチキャストルータの2種類の受信者があり、マルチキャストパケットを物理的発信元からリバースの最短パスで転送します。転送の際に、メンバーのいない仮想ネットワークへのデータグラム転送を防ぐために、TRPB【Truncated Reverse Path Broadcasting】が考えられました。TRPBの動作は次のようになっています。
https://www.7key.jp/nw/routing/r_protocol/dvmrp.html#supplement
広告