home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1997 December
/
Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso
/
drafts
/
draft_ietf_j_p
/
draft-ietf-mboned-pmbr-spec-00.txt
< prev
next >
Wrap
Text File
|
1997-02-24
|
15KB
|
480 lines
Network Working Group
Internet Draft Deborah Estrin (USC)
Ahmed Helmy (USC)
David Thaler (UMICH)
draft-ietf-mboned-pmbr-spec-00.txt Feb 3, 1997
PIM Multicast Border Router (PMBR) specification for connecting PIM-
SM domains to a DVMRP Backbone
Status of This Memo
This document is an Internet Draft. Internet Drafts are working
documents of the Internet Engineering Task Force (IETF), its Areas,
and its Working Groups. (Note that other groups may also distribute
working documents as Internet Drafts).
Internet Drafts are draft documents valid for a maximum of six
months. Internet Drafts may be updated, replaced, or obsoleted by
other documents at any time. It is not appropriate to use Internet
Drafts as reference material or to cite them other than as a
``working'' draft'' or ``work in progress.''
Please check the I-D abstract listing contained in each Internet
Draft directory to learn the current status of this or any other
Internet Draft.
Estrin,Helmy,Thaler [Page 1]
Internet Draft PMBR specification Feb 1997
1 Assumptions
This document specifies the behavior of PIM-SM Multicast Border
Routers (PMBRs) that connect PIM-SM to DVMRP networks. We assume that
the reader is familiar with the PIM-SM protocol
specification.[Estrin96]
The following assumptions are made regarding the PMBR architecture
and connectivity:
1 The PMBR is located at the boundary of a PIM-SM multicast
domain, and connects the domain to a multicast domain that
does not run PIM-SM. In this document we focus on
connectivity to DVMRP speaking domains.
2 The PMBR implements the multicast protocols of the
multicast domains to which its interfaces are connected; in
this document this implies PIM-SM and DVMRP. Any PMBR
implementation can be logically viewed as having two
components; one implementing PIM-SM and another
implementing DVMRP.
3 Only one multicast protocol is implemented per interface;
mixed multicast protocol LANs on the border are not
permitted. Interfaces are classified as either PIM-SM or
DVMRP interfaces. Each component owns the interfaces
corresponding to its type. The PIM-SM component is
responsible for adding or deleting PIM-SM interfaces from
iif and oif entries of the multicast routing table, and
similarly the DVMRP component is responsible for adding and
deleting DVMRP interfaces.
4 The multicast backbone is running DVMRP.
5 A PMBR is used at all interconnection points between PIM-SM
and DVMRP regions.
2 Overview and example
The PMBR has two primary roles. First it must pull down packets
generated within the PIM-SM domain and inject them into the
Estrin,Helmy,Thaler [Page 2]
Internet Draft PMBR specification Feb 1997
DVMRP backbone. Second, it must import packets generated
outside the PIM-SM domain so that they can be delivered to group
members inside the PIM-SM domain, using PIM-SM mechanisms.
Furthermore, in case of transit networks, the PMBR acts to pass
the multicast traffic through the PIM domain.
3 Detailed Message Processing
This section discusses, in more detail, the message processing
in each of the PMBR components. Only deviations from the
standard behaviors, or additions thereto, are discussed. The
assumed standard behavior for PIM-SM and DVMRP is described in
PIM-SMv2 spec [Estrin96] and DVMRP spec [Pusateri96],
respectively. We assume that the forwarding entries are only
(S,G) forwarding entries. The internal communication protocol
between the components is assumed to support the internal signal
types: `Join', `Prune', `Creation', and `Deletion Request'
signals. All these internal signals are (S,G) specific. (The
internal communication protocol between the components of the
PMBR is not specified in this document, and is an implementation
issue.)
3.1 The PIM-SM Component
3.1.1 Receiving Bootstrap messages
Upon receiving a Bootstrap message, the PIM-SM Component does
the following:
1 The received Bootstrap message is processed as in standard
PIM (see section `Receiving and Forwarding Bootstrap' in
PIM-SMv2 spec).
2 If the Bootstrap message is accepted, a (*,*,RP) state is
set up for every new RP in the RP-Set whose mask indicates
that the RP supports non-local groups (for example,
239.X.X.X is considered locally scoped and PMBRs do not set
(*,*,RP) state for RPs supporting only that portion of the
address space). The (*,*,RP) states trigger (*,*,RP) Joins
towards the corresponding RPs.
(*,*,RP) Joins are periodically sent off of the (*,*,RP)
entries, as in
standard PIM. (*,*,RP) entries at the PMBRs are not deleted if
the
Estrin,Helmy,Thaler [Page 3]
Internet Draft PMBR specification Feb 1997
(*,*,RP) entry timer expires; they are deleted only when the
corresponding RP is removed from the RP-Set.
3.1.2 Receiving data packets from a PIM-SM interface
When a data packet is received on a PIM-SM interface:
1 The PIM-SM component processes the data packet as in
standard PIM,
2 If the packet for (S,G) is accepted, there was no previous
(S,G) entry, and `G' is a non-local group, then a new (S,G)
forwarding entry is created. In this case an internal
`Creation' signal is sent to the DVMRP component.
3 The packet is forwarded to the outgoing interface list
(oiflist) of the new entry (including the oifs added by the
DVMRP component, if any).
3.1.3 Receiving Register-Stop
Register-Stop messages are processed as in standard PIM (see
section
`Sending Registers and Receiving Register-Stops' in PIM-SMv2
spec).
Further, if the (S,G) forwarding entry oiflist becomes null
(an
entry set up for sending Registers is not considered a null
oiflist entry,
since this indicates a virtual encapsulation interface), and
the iif
is a DVMRP interface, an internal `Prune' is sent to the DVMRP
component.
3.1.4 Receiving PIM Join/Prune messages
When a PIM Join/Prune message is received on a PIM-SM interface:
1 The PIM-SM component processes the Join/Prune as in
standard PIM
2 If any affected (S,G) forwarding entry's oiflist changed
from null to non-null and a DVMRP interface as iif, an
Estrin,Helmy,Thaler [Page 4]
Internet Draft PMBR specification Feb 1997
internal `Join' is sent to the DVMRP component.
3 If the last oif is deleted from any (S,G) forwarding entry,
whose iif is a DVMRP interface, an internal `Prune' is sent
to the DVMRP component, for the corresponding entry(ies).
3.1.5 Receiving PIM Asserts
When a PIM Assert is received on a PIM-SM interface:
1 The PIM-SM component processes the Assert as in standard
PIM
2 If due to the Assert processing, the last oif is deleted
from any (S,G) forwarding entry(ies); where S is reached
via DVMRP interface, an internal `Prune' signal is sent to
the DVMRP component, for the corresponding entry(ies).
3.1.6 Register-bit timer expiry
When the Register-bit timer expires for an (S,G) entry, for
which iif is a DVMRP interface:
1 The PIM-SM component modifies the (S,G) forwarding entry to
support unicasting Registers with the Border-bit set, to
the corresponding RP.
2 If the forwarding entry had null oiflist, an internal
`Join' is sent to the DVMRP component.
3.1.7 (S,G) forwarding entry timeout
When a (S,G) entry timer expires in the PIM-SM component, an
internal `Deletion Request' signal is sent to the DVMRP
component.
3.1.8 Switching to the Shortest Path Tree (SPT)
Switching to the SPT is done according to standard PIM. In this
context the PMBR acts as a DR for external receivers. In
addition, if there is a (S,G) entry for which S is reached via
Estrin,Helmy,Thaler [Page 5]
Internet Draft PMBR specification Feb 1997
a PIM-SM interface, and the oiflist includes DVMRP interfaces,
the PMBR may switch to the SPT.
3.1.9 Receiving Internal Join
When the PIM-SM component receives an internal Join, the Join is
processed as a standard PIM (S,G) Join. However, instead of
restarting the oif timer, the entry timer for the corresponding
entry is restarted.
3.1.10 Receiving Internal Prune
The internal Prune is handled by the PIM-SM component as a
standard PIM (S,G) Prune.
3.1.11 Receiving Internal Creation Signal
When the PIM-SM component receives a `Creation' signal for
(S,G), if S is reached via a DVMRP interface, the PIM-SM
component modifies the (S,G) forwarding entry to support sending
PIM Registers with the Border bit set, to the corresponding RP.
3.1.12 Receiving Internal Deletion Request Signal
If the entry timer for the (S,G) forwarding entry has expired in
the PIM-SM component the entry is deleted.
3.1.13 Routing Updates For PIM-SM transit domains we require that
the PIM-SM component (as well as all PIM internal routers),
implement the DVMRP routing information exchange protocol to
support consistant RPF computation on both sides of the PIM-SM
domain. The PIM-SM component exchanges routing updates with the
DVMRP component of the PMBR, according to standard DVMRP.
3.2 The DVMRP Component
3.2.1 Receiving data packets from a DVMRP interface
Upon receiving data packets from a DVMRP interface,
the following actions are taken:
1 The DVMRP component processes the packet according to DVMRP
rules.
2 If a packet for (S,G) is accepted, for which there was no
previous (S,G) state, a (S,G) state is created, and an
internal `Creation' signal is sent to the PIM-SM component.
Estrin,Helmy,Thaler [Page 6]
Internet Draft PMBR specification Feb 1997
3 The packet is forwarded to the oiflist of the new entry
(including oifs added by the PIM-SM component, if any).
3.2.2 Receiving DVMRP (S,G) Prunes
When a DVMRP Prune message for (S,G) is received on a DVMRP
interface, the DVMRP component performs the following:
1 The DVMRP component processes the Prune message according
to DVMRP rules.
2 If the oiflist for the corresponding entry becomes null,
and the iif for the entry is a PIM-SM interface, an
internal `Prune' signal is sent to the PIM-SM component.
3.2.3 Receiving DVMRP (S,G) Graft
When a DVMRP Graft message is received on a DVMRP interface, for
a source reached via a PIM-SM interface, the DVMRP component
performs the following:
1 The DVMRP component processes the Graft message according
to DVMRP rules.
2 If the matching entry previously had null oiflist, an
internal `Join' is sent to the PIM-SM component.
3.2.4 (S,G) Prune timeout
When an interface Prune timer expires, for a (S,G) entry; where
S is reached via a PIM-SM interface, the DVMRP component
performs the following:
1 The timeout is processed as in standard DVMRP
2 If the forwarding entry previously had a null oiflist, an
internal `Join' is sent to the PIM-SM component.
Estrin,Helmy,Thaler [Page 7]
Internet Draft PMBR specification Feb 1997
3.2.5 Receiving Internal Join
The internal Join is treated as a DVMRP Graft.
3.2.6 Receiving Internal Prune
The internal Prune is treated as a DVMRP Prune.
3.2.7 Receiving Internal Creation signal
When the DVMRP component receives an internal `Creation' signal
for a (S,G) forwarding entry, the following is performed:
1 All dependent downstream DVMRP interfaces, for the given
source, are added to the oiflist of the corresponding
forwarding entry, as specified by DVMRP.
2 If S is reached via a DVMRP interface, a DVMRP Graft is
sent upstream.
3.2.8 Receiving Internal Deletion Request signal
If the entry timer has expired in the DVMRP component, the entry
is deleted.
4 References
[Estrin96] Protocol Independent Multicast Sparse-Mode (PIM-SM):
Protocol
Specification.
D. Estrin, D. Farinacci, A. Helmy, D. Thaler,
S. Deering, M. Handley, V. Jacobson, G. Liu, P.
Sharma, L. Wei,
December 1997
[Pusateri96] Distance Vector Multicast Routing (DVMRP): Protocol
Specification. Tomas Pusateri,
September 1996
Estrin,Helmy,Thaler [Page 8]
Expire in six months