PIM (pim)
- レイヤ: L3 (ネットワーク)
- ヘッダ: 4 オクテット (固定長)
- 補足: マルチキャスト制御プロトコル
下位レイヤからの到達
| 下位レイヤ | 判別フィールド | 値 |
|---|---|---|
ipv4 | protocol | 103 (0x67) |
フィールド
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
version | uint(4) | 2 | PIM バージョン (2)。 | |
type | enum(4) | 0 (hello) | 次レイヤのプロトコル番号 (「次レイヤ」参照) | PIM メッセージタイプ (ボディから Auto: 0 Hello、1 Register、3 Join/Prune)。 |
reserved | uint(8) | 0 | ||
checksum | uint(16) | ヘッダとそれ以降すべてに対するインターネットチェックサム | インターネットチェックサム (メッセージ全体。Register は先頭 8 オクテットのみ) (Auto)。 |
type
| 値 | 名前 |
|---|---|
| 0 | hello |
| 1 | register |
| 2 | register_stop |
| 3 | join_prune |
| 4 | bootstrap |
| 5 | assert |
| 6 | graft |
| 7 | graft_ack |
| 8 | candidate_rp_advertisement |
次レイヤ
次レイヤは type で判別します。このフィールドが Auto のときは、上に積んだプロトコルの値を書き込みます。
| 値 | プロトコル | 備考 |
|---|---|---|
| 0 | pim_hello | |
| 3 | pim_join_prune |
制約
| レベル | 規則 |
|---|---|
| 警告 | version が 2 |
サンプルテンプレート
- interop-pim-hello-neighbor —
templates/interop/pim-hello-neighbor.wpg.yaml - pim-hello —
templates/protocols/mcast/pim-hello.wpg.yaml - pim-join-prune —
templates/protocols/mcast/pim-join-prune.wpg.yaml