draft-ietf-idmr-pim-sm-spec-06.txt   draft-ietf-idmr-pim-sm-spec-07.txt 
skipping to change at line 67 skipping to change at line 67
the protocol specification. It is organized according to PIM-SM the protocol specification. It is organized according to PIM-SM
message type; for each message type we describe its contents, its message type; for each message type we describe its contents, its
generation, and its processing. generation, and its processing.
Sections 3.8 and 3.9 summarize the timers and flags referred to Sections 3.8 and 3.9 summarize the timers and flags referred to
throughout this document. Section 4 provides packet format details. throughout this document. Section 4 provides packet format details.
The most significant functional changes since the January '95 version The most significant functional changes since the January '95 version
involve the Rendezvous Point-related mechanisms, several resulting involve the Rendezvous Point-related mechanisms, several resulting
simplifications to the protocol, and removal of the PIM-DM protocol simplifications to the protocol, and removal of the PIM-DM protocol
details to a separate [3] (for clarity). details to a separate document [3] (for clarity).
2 PIM-SM Protocol Overview 2 PIM-SM Protocol Overview
In this section we provide an overview of the architectural In this section we provide an overview of the architectural
components of PIM-SM. components of PIM-SM.
A router receives explicit Join/Prune messages from those neighboring A router receives explicit Join/Prune messages from those neighboring
routers that have downstream group members. The router then forwards routers that have downstream group members. The router then forwards
data packets addressed to a multicast group, G, only onto those data packets addressed to a multicast group, G, only onto those
interfaces on which explicit joins have been received. Note that all interfaces on which explicit joins have been received. Note that all
skipping to change at line 629 skipping to change at line 629
2.11 PIM-SM for Inter-Domain Multicast 2.11 PIM-SM for Inter-Domain Multicast
Future documents will address the use of PIM-SM as a backbone Future documents will address the use of PIM-SM as a backbone
inter-domain multicast routing protocol. Design choices center inter-domain multicast routing protocol. Design choices center
primarily around the distribution and usage of RP information primarily around the distribution and usage of RP information
for wide area, inter-domain groups. for wide area, inter-domain groups.
2.12 Security 2.12 Security
All PIM control messages may use [6] to address security All PIM control messages may use IPsec [6] to address security
concerns. Security mechanisms are likely to be enhanced in the concerns. Security mechanisms are likely to be enhanced in the
near future. near future.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 14] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 14]
3 Detailed Protocol Description 3 Detailed Protocol Description
This section describes the protocol operations from the This section describes the protocol operations from the
perspective of an individual router implementation. In perspective of an individual router implementation. In
particular, for each message type we describe how it is particular, for each message type we describe how it is
generated and processed. generated and processed.
skipping to change at line 1510 skipping to change at line 1510
Upon receiving a C-RP-Adv, a router does the following: Upon receiving a C-RP-Adv, a router does the following:
1 If the router is not the elected BSR, it ignores the 1 If the router is not the elected BSR, it ignores the
message, else message, else
2 The BSR adds the RP address to its local pool of candidate 2 The BSR adds the RP address to its local pool of candidate
RPs, according to the associated group prefix(es) in the RPs, according to the associated group prefix(es) in the
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 34] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 34]
C-RP-Adv message. The BSR may apply a local policy to limit C-RP-Adv message. The Holdtime in the C-RP-Adv message is
the number of Candidate RPs included in the Bootstrap also stored with the corresponding RP, to be included later
message. The BSR may override the prefix indicated in a C- in the Bootstrap message. The BSR may apply a local
RP-Adv unless the Authoritative bit in the C-RP-Adv is set. policy to limit the number of Candidate RPs included
in the Bootstrap message.
The BSR may override the prefix indicated in a C-RP-Adv
unless the Authoritative bit in the C-RP-Adv is set.
The BSR keeps an RP-timer per RP in its local RP-set. The RP- The BSR keeps an RP-timer per RP in its local RP-set. The RP-
timer is initialized to the Holdtime in the RP's C-RP-Adv. When timer is initialized to the Holdtime in the RP's C-RP-Adv. When
the timer expires, the corresponding RP is removed from the RP- the timer expires, the corresponding RP is removed from the RP-
set. The RP-timer is restarted by the C-RP-Advs from the set. The RP-timer is restarted by the C-RP-Advs from the
corresponding RP. corresponding RP.
The BSR also uses its Bootstrap-timer to periodically send The BSR also uses its Bootstrap-timer to periodically send
Bootstrap messages. In particular, when the Bootstrap-timer Bootstrap messages. In particular, when the Bootstrap-timer
expires, the BSR originates an Bootstrap message on each of its expires, the BSR originates an Bootstrap message on each of its
PIM interfaces. The message is sent with a TTL of 1 to the PIM interfaces. The message is sent with a TTL of 1 to the
`ALL-PIM-ROUTERS' group. In steady state, the BSR originates `ALL-PIM-ROUTERS' group. In steady state, the BSR originates
Bootstrap messages periodically. At startup, the Bootstrap-timer Bootstrap messages periodically. At startup, the Bootstrap-timer
is initialized to [Bootstrap-Timeout], causing the first is initialized to [Bootstrap-Timeout], causing the first
Bootstrap message to be originated only when and if the timer Bootstrap message to be originated only when and if the timer
expires. For timer details, see Section 3.6.3. A DR unicasts a expires. For timer details, see Section 3.6.3. A DR unicasts a
Bootstrap message to each new PIM neighbor, i.e., after the DR Bootstrap message to each new PIM neighbor, i.e., after the DR
receives the neighbor's Hello message (it does so even if the receives the neighbor's Hello message (it does so even if the
new neighbor becomes the DR). new neighbor becomes the DR).
The Bootstrap message is subdivided into sets of group- The Bootstrap message is subdivided into sets of {group-
prefix,RP-Count,RP-addresses. The format of the Bootstrap prefix,RP-Count,RP-addresses}.
For each RP-address, the corresponding Holdtime is included in the
``RP-Holdtime'' field. The format of the Bootstrap
message allows `semantic fragmentation', if the length of the message allows `semantic fragmentation', if the length of the
original Bootstrap message exceeds the packet maximum boundaries original Bootstrap message exceeds the packet maximum boundaries
(see Section 4). However, we recommend against configuring a (see Section 4). However, we recommend against configuring a
large number of routers as C-RPs, to reduce the semantic large number of routers as C-RPs, to reduce the semantic
fragmentation required. fragmentation required.
3.6.3 Receiving and Forwarding Bootstrap 3.6.3 Receiving and Forwarding Bootstrap
Each router keeps a Bootstrap-timer, initialized to [Bootstrap- Each router keeps a Bootstrap-timer, initialized to [Bootstrap-
Timeout] at startup. Timeout] at startup.
skipping to change at line 1990 skipping to change at line 1995
the iif is different from the (*,G) iif the iif is different from the (*,G) iif
WC |Join | The receiver expects to receive packets from all sources via this (shared tree) path. Thus, the WC |Join | The receiver expects to receive packets from all sources via this (shared tree) path. Thus, the
Join/Prune applies to a (*,G) entry Join/Prune applies to a (*,G) entry
WC | Route entry | Wildcard entry; if there is no more specific WC | Route entry | Wildcard entry; if there is no more specific
match for a particular source, packets will match for a particular source, packets will
be forwarded according to this entry be forwarded according to this entry
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 45] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 45]
3.10 Security 3.10 Security
All PIM control messages may use [6] to address security All PIM control messages may use IPSec [6] to address security
concerns. concerns.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 46] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 46]
4 Packet Formats 4 Packet Formats
This section describes the details of the packet formats for PIM This section describes the details of the packet formats for PIM
control messages. control messages.
All PIM control messages have protocol number 103. All PIM control messages have protocol number 103.
skipping to change at line 2053 skipping to change at line 2058
length' field in the header. length' field in the header.
2 Encoded-Group-Address: Takes the following format: 2 Encoded-Group-Address: Takes the following format:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Mask Len | Group multicast Address ... | | Reserved | Mask Len | Group multicast Address ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ...Group multicast Address ...| | ...Group multicast Address ...|
+-+-+-+-+-+-+-+-+-+-+++++++ +-+-+-+-+-+-+-+-+-+-+~+~+~+~+~+~+
Reserved Reserved
Transmitted as zero. Ignored upon receipt. Transmitted as zero. Ignored upon receipt.
Mask Len Mask Len
The Mask length is 8 bits. The value is the number of The Mask length is 8 bits. The value is the number of
contiguous bits left justified used as a mask which contiguous bits left justified used as a mask which
describes the address. It is less than or equal to describes the address. It is less than or equal to
Addr length * 8. If the message is sent for a single Addr length * 8. If the message is sent for a single
group then the Mask length must equal Addr length * 8 group then the Mask length must equal Addr length * 8
skipping to change at line 2079 skipping to change at line 2084
3 Encoded-Source-Address: Takes the following format: 3 Encoded-Source-Address: Takes the following format:
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 49] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 49]
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Rsrvd |S|W|R| Mask Len | Source Address ... | | Rsrvd |S|W|R| Mask Len | Source Address ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... Source Address | | ... Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+++-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+~+~+-+
Reserved Reserved
Transmitted as zero, ignored on receipt. Transmitted as zero, ignored on receipt.
S,W,R See Section 4.5 for details. S,W,R See Section 4.5 for details.
Mask Length Mask Length
Mask length is 8 bits. The value is the number of Mask length is 8 bits. The value is the number of
contiguous bits left justified used as a mask which contiguous bits left justified used as a mask which
describes the address. The mask length must be less describes the address. The mask length must be less
skipping to change at line 2114 skipping to change at line 2119
It is sent periodically by routers on all interfaces. It is sent periodically by routers on all interfaces.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PIM Ver| Type | Addr length | Checksum | |PIM Ver| Type | Addr length | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OptionType | OptionLength | | OptionType | OptionLength |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OptionValue | | OptionValue |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+++ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+~+~+
| . | | . |
| . | | . |
| . | | . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OptionType | OptionLength | | OptionType | OptionLength |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OptionValue | | OptionValue |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+++ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+~+~+
PIM Version, Type, Addr length, Checksum PIM Version, Type, Addr length, Checksum
Described above. Described above.
OptionType OptionType
The type of the option given in the following OptionValue The type of the option given in the following OptionValue
field. field.
OptionLength OptionLength
The length of the OptionValue field in bytes. The length of the OptionValue field in bytes.
skipping to change at line 2174 skipping to change at line 2179
address is to the RP's address. address is to the RP's address.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PIM Ver| Type | Addr length | Checksum | |PIM Ver| Type | Addr length | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|B|N| Reserved | |B|N| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
Multicast data packet ~ Multicast data packet ~
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PIM Version, Type, Addr length, Checksum PIM Version, Type, Addr length, Checksum
Described above. {Note that the checksum for Registers Described above. {Note that the checksum for Registers
is done only on the PIM header, excluding the data packet is done only on the PIM header, excluding the data packet
portion.} portion.}
B The Border bit. If the router is a DR for a source that it B The Border bit. If the router is a DR for a source that it
is directly connected to, it sets the B bit to 0. If the is directly connected to, it sets the B bit to 0. If the
skipping to change at line 2417 skipping to change at line 2422
| Fragment Tag | Hash Mask len | BSR-priority | | Fragment Tag | Hash Mask len | BSR-priority |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unicast-BSR-Address | | Unicast-BSR-Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Encoded-Group Address-1 | | Encoded-Group Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RP-Count-1 | Frag RP-Cnt-1 | Reserved | | RP-Count-1 | Frag RP-Cnt-1 | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unicast-RP-Address-1 | | Unicast-RP-Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . | | RP1-Holdtime | Unicast- . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . . . RP-Address-2 | RP2-Holdtime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . | | . |
| . | | . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unicast-RP-Address-m | | Unicast-RP-Address-m |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . | | RPm-Holdtime | Encoded- . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . . . Group Address-2 . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . | | . |
| . | | . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Encoded-Group Address-n | | Encoded-Group Address-n |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RP-Count-m | Frag RP-Cnt-m | Reserved | | RP-Count-m | Frag RP-Cnt-m | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unicast-RP-Address-1 | | Unicast-RP-Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RP1-Holdtime | Unicast- . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . . . RP-Address-2 | RP2-Holdtime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . | | . |
| . | | . |
| . | | . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unicast-RP-Address-m | | Unicast-RP-Address-m |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RPm-Holdtime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PIM Version, Type, Addr length, Checksum PIM Version, Type, Addr length, Checksum
Described above. Described above.
Fragment Tag
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 61] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 61]
Fragment Tag
A randomly generated number, acts to distinguish the A randomly generated number, acts to distinguish the
fragments belonging to different Bootstrap messages; fragments belonging to different Bootstrap messages;
fragments belonging to same Bootstrap message carry the fragments belonging to same Bootstrap message carry the
same `Fragment Tag'. same `Fragment Tag'.
Hash Mask len Hash Mask len
The length (in bits) of the mask to use in the hash The length (in bits) of the mask to use in the hash
function. For IPv4 we recommend a value of 30. For IPv6 we function. For IPv4 we recommend a value of 30. For IPv6 we
recommend a value of 126. recommend a value of 126.
skipping to change at line 2491 skipping to change at line 2507
fragment of the Bootstrap message, for the corresponding fragment of the Bootstrap message, for the corresponding
group prefix. The `Frag RP-Cnt' field facilitates parsing group prefix. The `Frag RP-Cnt' field facilitates parsing
of the RP-Set for a given group prefix, when carried over of the RP-Set for a given group prefix, when carried over
more than one fragment. more than one fragment.
Unicast-RP-address-1..m Unicast-RP-address-1..m
The address of the Candidate RPs, for the corresponding The address of the Candidate RPs, for the corresponding
group prefix. The length of this field in bytes is group prefix. The length of this field in bytes is
specified in Addr length. specified in Addr length.
RP1..m-Holdtime
The Holdtime for the corresponding RP. This field is copied
from the `Holdtime' field of the associated RP stored at
the BSR.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 62] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 62]
4.7 Assert Message 4.7 Assert Message
The Assert message is sent when a multicast data packet is The Assert message is sent when a multicast data packet is
received on an outgoing interface corresponding to the (S,G) or received on an outgoing interface corresponding to the (S,G) or
(*,G) associated with the source. (*,G) associated with the source.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at line 2607 skipping to change at line 2628
Encoded-Group Address-1..n Encoded-Group Address-1..n
The group prefixes for which the C-RP is advertising. The group prefixes for which the C-RP is advertising.
Format previously described. Format previously described.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 66] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 66]
5 Acknowledgments 5 Acknowledgments
Tony Ballardie, Scott Brim, Jon Crowcroft, Bill Fenner, Paul Tony Ballardie, Scott Brim, Jon Crowcroft, Bill Fenner, Paul
Francis, Joel Halpern, Horst Hodel, Polly Huang, Stephen Francis, Joel Halpern, Horst Hodel, Polly Huang, Stephen
Ostrowski, Lixia Zhang and Girish Chandranmenon provided Ostrowski, Lixia Zhang and Girish Chandranmenon provided
detailed comments on previous drafts. The authors of [7] and detailed comments on previous drafts. The authors of CBT [7] and
membership of the IDMR WG provided many of the motivating ideas membership of the IDMR WG provided many of the motivating ideas
for this work and useful feedback on design details. for this work and useful feedback on design details.
This work was supported by the National Science Foundation, This work was supported by the National Science Foundation,
ARPA, cisco Systems and Sun Microsystems. ARPA, cisco Systems and Sun Microsystems.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 67] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 67]
6 Appendices 6 Appendices
6.1 Appendix I: Major Changes and Updates to the Spec 6.1 Appendix I: Major Changes and Updates to the Spec
skipping to change at line 2757 skipping to change at line 2778
and restarts the RP-Set timer at [Bootstrap-Period]. No and restarts the RP-Set timer at [Bootstrap-Period]. No
state transition is incurred. state transition is incurred.
This way, the elected BSR originates periodic Bootstrap This way, the elected BSR originates periodic Bootstrap
messages every [Bootstrap-Period]. messages every [Bootstrap-Period].
2 If a router is not a C-BSR: 2 If a router is not a C-BSR:
1 The router operates initially in the 'AxptAny' state. In 1 The router operates initially in the 'AxptAny' state. In
such state, a router accepts the first Bootstrap message such state, a router accepts the first Bootstrap message
from the RPF neighbor toward the included BSR The Reverse from the RPF neighbor toward the included BSR. The Reverse
Path Forwarding (RPF) neighbor in this case is the next hop Path Forwarding (RPF) neighbor in this case is the next hop
router en route to the included BSR. router en route to the included BSR.
2 If the Bootstrap-timer expires, and the current state is 2 If the Bootstrap-timer expires, and the current state is
`AxptPref', -where the router accepts only preferred. `AxptPref', -where the router accepts only preferred.
Preferred Bootstrap messages are those that carry BSR-
priority and address higher than, or equal to, `LclBSR'.
Bootstrap messages from the RPF neighbor toward the Bootstrap messages from the RPF neighbor toward the
included BSR-, the router transits into the `AxptAny' included BSR-, the router transits into the `AxptAny'
state. state (preferred Bootstrap messages are those that carry
BSR-priority and address higher than, or equal to, `LclBSR').
In this case, if an elected BSR becomes unreachable, the In this case, if an elected BSR becomes unreachable, the
routers start accepting Bootstrap messages from another C- routers start accepting Bootstrap messages from another C-
BSR after the Bootstrap-timer expires. All PIM routers BSR after the Bootstrap-timer expires. All PIM routers
within a domain converge on the preferred (with highest within a domain converge on the preferred (with highest
priority and address) reachable C-BSR. priority and address) reachable C-BSR.
* Receiving Bootstrap Message * Receiving Bootstrap Message
To avoid loops, an RPF check is performed on the included BSR To avoid loops, an RPF check is performed on the included BSR
skipping to change at line 2928 skipping to change at line 2948
* {(*,G) route entry}. Group members join the shared RP-Tree for * {(*,G) route entry}. Group members join the shared RP-Tree for
a particular group. This tree is represented by (*,G) multicast a particular group. This tree is represented by (*,G) multicast
route entries along the shortest path branches between the RP route entries along the shortest path branches between the RP
and the group members. and the group members.
* {(*,*,RP) route entry}. (*,*,RP) refers to any source and any * {(*,*,RP) route entry}. (*,*,RP) refers to any source and any
multicast group that maps to the RP included in the entry. The multicast group that maps to the RP included in the entry. The
routers along the shortest path branches between a domain's routers along the shortest path branches between a domain's
RP(s) and its PMBRs keep (*,*,RP) state and use it to determine RP(s) and its PMBRs keep (*,*,RP) state and use it to determine
how to deliver packets toward the PMBRs if data packets arrive how to deliver packets toward the PMBRs if data packets arrive
for which there is not a longer match. THe wildcard group in the for which there is not a longer match. The wildcard group in the
(*,*,RP) route entry is represented by a group address of (*,*,RP) route entry is represented by a group address of
224.0.0.0 and a mask length of 4 bits. 224.0.0.0 and a mask length of 4 bits.
Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 76] Estrin,Farinacci,Helmy,Thaler,Deering,Handley,Jacobson,Liu,Sharma,Wei [Page 76]
References References
1. S.Deering, D.Estrin, D.Farinacci, V.Jacobson, C.Liu, L.Wei, 1. S.Deering, D.Estrin, D.Farinacci, V.Jacobson, C.Liu, L.Wei,
P.Sharma, and A.Helmy. Protocol independent multicast (pim) : P.Sharma, and A.Helmy. Protocol independent multicast (pim) :
Motivation and architecture. Motivation and architecture.
Internet Draft, May 1995. Internet Draft, May 1995.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/