Internet DRAFT - draft-chung-mpls-rsvp-multicasting
draft-chung-mpls-rsvp-multicasting
Network Working Group Jong-Moon Chung
Internet Draft (Oklahoma State
Expiration Date: August 2002 University)
Mauricio A.
Subieta Benito
(Oklahoma State
University)
Harleen Chhabra
(Exxon Mobil)
Grace Yoona Cho
(Oklahoma State
University)
Pravin Rasiah
(Oklahoma State
University)
February 2002
RSVP-TE Extensions for MPLS Multicasting Services
draft-chung-mpls-rsvp-multicasting-00.txt
Status of this Memo
This document is an Internet-Draft and is in full conformance
with all provisions of Section 10 of RFC2026.
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 and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
This document addresses the required extensions to the Resource
Reservation Protocol (RSVP) to support MPLS network multicasting
functionalities. The concepts presented in this paper support the
delivery of multicasting traffic in accordance to the traffic
engineering (TE) parameters provided in the MPLS specifications. The
IP multicasting procedures based on the protocol procedural format
Jong-Moon Chung, et al. Page <1>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
of other multicasting protocols (e.g., PIM-DM, PIM-SM, DVMRP, MOSPF,
CBT, etc.) will be fully embedded into the RSVP-TE signaling
operations to enable all multicasting procedures to be conducted
through pure MPLS networking operations.
Table of Contents
1. Introduction................................................3
2. Extensions to RSVP for Multicasting in MPLS Networks........3
2.1. The MULTICASTING_SESSION and TREE objects...................3
2.1.1. LSP_IPv4 MULTICASTING_SESSION Object........................4
2.1.2. LSP_IPv6 MULTICASTING_SESSION Object........................4
2.1.3. TREE Object.................................................5
2.2. Extensions to RSVP: Join, Leave, McRecal, and Destroy
Messages....................................................6
2.2.1. Join message................................................6
2.2.2. Leave message (ResvTear message)............................7
2.2.3. Multicast Recalculation (McRecal) message...................7
2.2.4. Destroy message (PathTear message)..........................8
2.3. Multicasting LSP Tree Path and Resv Message Extensions......8
2.3.1. Multicasting Extensions to the Path Message (Msg type = 1)..8
2.3.2. Multicasting Extensions to the Resv Message (Msg type = 2)..8
2.4. Multicasting Extensions to the Hello Message................8
3. Construction of the Multicasting Distribution Tree using
RSVP-TE.....................................................9
3.1. Sender-Initiated Tree Calculation...........................9
3.2. Receiver-Initiated Tree Calculation........................11
3.3. Re-calculation Procedures..................................12
4. Conclusion.................................................13
5. References.................................................13
6. AuthorsÆ Addresses.........................................14
Abbreviations
CBT: Core Based Tree
CoS: Class of Service
DVMRP: Distance Vector Multicast Routing Protocol
FEC: Forwarding Equivalence Class
GoS: Grade of Service
MIDB: Multicasting Information Database
MOSPF: Multicast Open Shortest Path First
PIM-DM: Protocol Independent Multicasting-Dense Mode
PIM-SM: Protocol Independent Multicasting-Sparse Mode
QoS: Quality of Service
LSR-RP: Label Switching Router-Rendezvous Point
Jong-Moon Chung, et al. February 2002 Page <2>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
1. Introduction
Multi Protocol Label Switching (MPLS) networking provides an
underlying networking architecture to support various Traffic
Engineering (TE) and Quality of Service (QoS) features. However, the
current standards are not capable of providing MPLS based
multicasting traffic services, rather an IP controlled MPLS overlay
model is provisioned to conduct this task. The protocol extensions
to enable MPLS multicasting services proposed in this document
agrees with the fundamental framework proposed in [9]. The basic
concept is to enable MPLS to provide all functionalities and
services required for multicasting, where the addressing and
management topology of current IP multicasting users and groups will
be done by the Internet Group Management Protocol (IGMP), thereby
keeping the management and addressing the same as currently done in
IP, but enabling the TE advantages of MPLS to exist over the
multicasting network connections.
The proposed work in this document extends to the implementation of
MPLS multicast protocols and procedures based on the Resource
Reservation Protocol with Traffic Engineering (RSVP-TE) extensions
[1][2]. The extensions provided to RSVP for LSP tunnel applications
in RFC 3209 [1] are restricted to unicast label switched paths,
where multicast LSPs were left for further study. With this focus,
the technical approach proposed in this document is to enable RSVP-
TE with the full set of multicasting functionalities such that MPLS
networking is fully capable of multicasting control and services
rather than it being dependent on the IP over MPLS overlay model.
2. Extensions to RSVP for Multicasting in MPLS Networks
RSVP applies IP datagram forwarding as a transport mechanism [2].
The proposed extensions to RSVP enable the RSVP signaling mechanism
to establish, maintain, and terminate multicasting connections. This
can be accomplished by adding message types and new C-type
identifiers to the existing objects of the messages to establish
multicasting based operations using the objects of the RSVP-TE
messages.
2.1. The MULTICASTING_SESSION and TREE objects
The MULTICASTING_SESSION and the TREE objects explained in this
document can be used for the multicasting tree control procedures as
optional objects that are additional to the SESSION object (i.e.,
they do not replace the SESSION object). When a source that is
multicasting is associated with a particular multicast session, then
the RSVP-TE message format may include the MULTICASTING_SESSION and
TREE objects.
Jong-Moon Chung, et al. February 2002 Page <3>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
2.1.1. LSP_IPv4 MULTICASTING_SESSION Object
Class = MULTICASTING_SESSION, LSP IPv4_Multicast C-Type = 5
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Multicasting Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MUST be zero | Multicast ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Multicasting Group Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv4 Multicasting Source Address
IPv4 address of the source node for multicasting tree.
Multicast ID
A 16-bit identifier used in the SESSION that remains constant
over the life of the tunnel.
IPv4 Multicasting Group Address
A 32-bit IPv4 Multicasting group address used in the
multicasting session that remains constant over the life of the
multicasting tree connection.
2.1.2. LSP_IPv6 MULTICASTING_SESSION Object
Class = MULTICASTING_SESSION, LSP_Ipv6_Multicast C-Type = 6
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| IPv6 Multicasting Source Address |
+ +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MUST be zero | Multicast ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| IPv6 Multicasting Group Address |
+ +
| |
+ +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv6 Multicasting Source Address
IPv6 address of the source node for multicasting tree.
Jong-Moon Chung, et al. February 2002 Page <4>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
Multicast ID
A 16-bit identifier used in the SESSION that remains constant
over the life of the tunnel.
IPv6 Multicasting Group Address
A 16-byte IPv6 Multicasting group address used in the
multicasting session that remains constant over the life of the
multicasting tree connection.
The Multicast ID is used when there is a need to identify different
sessions of multicasting services over the same multicasting tree. If
there is no use for this field then it is set to all zeros.
2.1.3. TREE Object
The TREE object is a list of multicasting tree LSR-RP (Label
Switching Router-Rendezvous Point) addresses that are announced,
such that LSRs that are not part of the multicasting tree can
identify these LSR-RPs for future connection purposes to the
multicasting tree. A LSR-RP is any intermediate LSR that has two or
more branches that forward traffic or signaling downstream or
aggregate upstream. In addition, for the Join message sent from the
root LSR, the TREE object can be used to establish an explicit
traffic path when connecting to a new host. In this case, the TREE
object list of LSR-RPs will indicate this flow path, where the last
LSR-RP of the TREE object list will be the one to connect to the new
host. The TREE Class is 22. There are two C-Types defined.
Class = TREE, LSP_IPv4_TREE C-Type = 1
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Multicasting LSR-RP Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ . . . . ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Multicasting LSR-RP Address-N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv4 Multicasting LSR-RP Address
A 32-bit IPv4 Multicasting LSR-Rendezvous Point address
Jong-Moon Chung, et al. February 2002 Page <5>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
Class = TREE, LSP_IPv6_TREE C-Type = 2
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| IPv6 Multicasting LSR-RP Address-1 |
+ +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ . . . . ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| IPv6 Multicasting LSR-RP Address-N |
+ +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv6 Multicasting LSR-RP Address
A 16-byte IPv6 Multicasting LSR-Rendezvous Point address
2.2. Extensions to RSVP: Join, Leave, McRecal, and Destroy Messages
In order to accommodate the proposed RSVP-TE for multicasting
capabilities, four RSVP-TE messages are defined: Join, Leave,
McRecal, and Destroy.
2.2.1. Join message
We assume that the mechanisms that provide authentication and
authorization services are provided for the MPLS network, and that
the verification takes place for every node that requests
multicasting traffic.
When a new host wants to join an existing multicast tree, a Join
message will be issued by the new host thereby making a request to
join the multicasting tree. In the case where a non-connected label
switching router (LSR) is making this request, the LSR will send a
Join message to a multicasting LSR of the multicasting tree
requesting for a connection. Following this, a Join message will be
sent from that multicasting LSR to the root LSR of the multicasting
tree requesting a connection and to update the multicasting
information database (MIDB) with this request. This Join message may
trigger a recalculation of the tree for connection updates. In the
RSVP common header, the message type (Msg type) 8 is assigned to
indicate the Join message (Msg Type = 8).
Jong-Moon Chung, et al. February 2002 Page <6>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
The format of the Join message (Msg type = 8) is as follows:
<Join Message>:: = <Common Header> [<INTEGRITY>]
<MULTICASTING_SESSION>[<TREE>]
<RSVP_HOP>
[<TIME_VALUES>]
[<EXPLICIT_ROUTE>]
[<SESSION_ATTRIBUTE>]
[<POLICY_DATA>...]
[<sender descriptor>]
The MULTICASTING_SESSION object of the Join message will include the
information of the multicasting tree.
2.2.2. Leave message (ResvTear message)
A leaf LSR may initiate a Leave message when it does not have any
more hosts actively participating in the multicast session. The
Leave message used in multicasting is conducted by the ResvTear
message (Msg Type = 6 [2]) that is sent to the upstream LSR-RP,
which contains the MULTICASTING_SESSION object information. If the
LSR-RP sees that all attached multicasting users are not in service
anymore, then the LSR-RP will send a ResvTear message to the
upstream LSR requesting a disconnection from the multicasting tree.
In this fashion, the Leave functionality will enable parts of the
tree that are not used to disconnect itself in modular units.
2.2.3. Multicast Recalculation (McRecal) message
The McRecal message is used to inform the root LSR that it has to
recalculate the multicast tree for that multicasting group. It also
carries the updated information downstream to keep the MIDB of the
intermediate nodes current. The McRecal message is assigned Msg type
= 9.
A McRecal message must be routed like the corresponding Resv message
or a ResvTear message, and its IP destination address will be the
multicast address of the previous hop.
The format of the McRecal message (Msg type = 9) is as follows:
<McRecal Message>::= <Common Header> [ <INTEGRITY> ]
<MULTICASTING_SESSION> [<TREE>]
[<RSVP_HOP>]
[<TIME_VALUES>]
[<EXPLICIT_ROUTE>]
[<SESSION_ATTRIBUTE>]
[<POLICY_DATA>...]
[<sender descriptor>]
Jong-Moon Chung, et al. February 2002 Page <7>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
2.2.4. Destroy message (PathTear message)
The root initiates the Destroy function for a Multicast tree when it
wants to terminate a multicast session. The destroy function is
conducted through the PathTear message (Msg Type = 5 [2]), which is
sent from the root to all its downstream LSRs. The PathTear message
that is inherent in RSVP removes all the entries in the LSP as well
as all reservations.
2.3. Multicasting LSP Tree Path and Resv Message Extensions
In both the Path and Resv messages the SESSION objects can be used
with new C-Type assignments to indicate multicasting applications.
2.3.1. Multicasting Extensions to the Path Message (Msg type = 1)
In the Path message, the MULTICASTING_SESSION object provides
necessary information that should be included in addition to the
SESSION object. The MULTICASTING_SESSION object can be considered as
an optional object according to the needs of the multicasting
applications.
The Path message originates from the LSR-RP to the LSR that desires
to join the multicasting tree. The MULTICASTING_SESSION object will
enable LSRs that are not part of the multicasting tree to know of
the multicasting source and group information.
2.3.2. Multicasting Extensions to the Resv Message (Msg type = 2)
The Resv message is also extended with the MULTICASTING_SESSION and
TREE objects that can be treated as optional objects that are
additional to the SESSION object.
The MULTICASTING_SESSION and TREE objects used in the Resv message
are specified in Section 2.1.
2.4. Multicasting Extensions to the Hello Message
The RSVP Hello extension of RFC 3209 enables RSVP nodes to detect
when a neighboring node is not reachable. The HELLO mechanism is
intended for use between immediate neighbors, and therefore, a Hello
message and a Hello Acknowledgement message are exchanged between
two RSVP neighbors. The Hello message has a Msg Type of 20 [1]. The
extensions to the Hello message format for multicasting applications
are as follows:
<Hello Message>::= <Common Header> [<INTEGRITY>]
<HELLO>
[<MULTICASTING_SESSION>][<TREE>]
The MULTICASTING_SESSION object will enable LSRs that are not part
of the multicasting tree to know of the multicasting source and
group information. The TREE object contains a list of LSR-RPs. It
Jong-Moon Chung, et al. February 2002 Page <8>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
allows intermediate LSRs to identify the LSR-RPs for future
connections to the multicasting tree.
3. Construction of the Multicasting Distribution Tree using RSVP-TE
The calculation and construction of the multicasting distribution
tree must be done in two different contexts: sender-initiated tree
calculation, and receiver-initiated tree calculation. Sender-
initiated construction occurs when a new source of multicasting
traffic starts delivering traffic to all the members of a group,
which is known as a traffic-driven scheme. The receiver-initiated
calculation becomes useful when a new member of a group wants to
start receiving traffic, following a request-driven scheme.
The protocol fields that trigger the multicasting operations of
RSVP-TE as well as the procedures for creating the multicasting
trees, which have not been detailed in previous works, are provided
here. In addition, this document enables the multicasting functions
of RSVP-TE to be independent of traditional IP-based multicast
routing protocols, such as MDVMRP, MOSPF, PIM, etc. However, IGMP
will be used to provide the mechanism for establishing and
maintaining multicasting group memberships.
The TE parameters used in MPLS can provide DiffServ [4] and flexible
QoS features in the multicasting tree calculations. In order to
include the TE parameters as the main constraints for the tree
calculation, a set of extensions can be added to the traditional
routing calculation algorithms, such as the distance vector (DV) or
the link state (LS) algorithms. Furthermore, based on the current
backbone network layout and the topology of how the backbone
networks are administered by carrier companies, enough flexibility
at calculating the distribution trees has to be given. For this
purpose three different tree construction mechanisms can be
considered:
1. Tree construction by means of source controlled routing,
2. Tree calculation by means of using traditional algorithms such
as the DV or LS algorithms that are solely based on distance
oriented metric values, and
3. Tree calculation by means of enhanced versions of the DV or LS
algorithms that employ both TE parameters and distance oriented
cost values as metric values in the tree calculations.
In the following subsections, it is assumed that every LSR knows its
neighboring LSRs due to an execution of the RSVP-TE Hello message
procedures.
3.1. Sender-Initiated Tree Calculation
The calculation and construction of the tree should be performed
based on the LSRs that have active members (hosts) that wish to
receive multicasting traffic. We assume that they have been either
identified in advance or they will be joining dynamically.
Jong-Moon Chung, et al. February 2002 Page <9>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
In order to properly calculate the tree, the first step is to find
out if there is an IGMP group definition table constructed. This
information is assumed to be found in every node in a Network
Management System (NMS) database with listings of the group
memberships, or in a LSR. With this information, the Multicasting
Information Database (MIDB) is created with the purpose of keeping
track of all multicasting sources, distribution groups, and
destinations. In addition, the MIDB allows the multicast information
to be decentralized, making it more effective for dynamic group
membership control. If this information is not available, the RSVP-
TE Hello extensions mechanism with multicasting extensions can be
used to provide information to the MIDB.
With the information contained in the MIDB, the calculation for the
tree can be done quickly based on one of the methods described
above. Once the tree is calculated, the Path messages are generated
with the required session object (containing the source and group IP
multicasting addresses) along with the other necessary object field
information. Once all the messages have been delivered, and all the
reservations are defined, the multicast traffic can be delivered to
all the predefined nodes.
Distribution calculation based on MIDB information
+-----------+
| MIDB |
+-----+-----+
(3)Multicasting | |(1)Multicasting Tree |(2)Path message
Traffic | V Database Information| sent to all LSRs
+-----------+ --> +-----+-----+ V of the tree.
| Source +-----+ Root LSR |
+-----------+ +-----+-----+
| |(4)Multicasting Traffic (5,6,7)
| V (5) (6)
+-----+-----+ --> +-----------+ --> +-----------+
| LSR +-----+ LSR +-----+ Receiver 1|
+-----+-----+ +-----------+ +-----------+
| |(5)
| V (6) (7)
+-----+-----+ --> +-----------+ --> +-----------+
| LSR +-----+ LSR +-----+ Receiver 2|
+-----------+ +-----------+ +-----------+
In Step (1) the information gathered in the MIDB is used by the root
LSR to construct the distribution tree. The root LSR will send out
Path messages to the LSRs of the multicasting tree to establish LSP
connection (step (2)). This will be confirmed by Resv massages at
each link of the multicasting tree (not shown in the figure). After
the tree connection is completed the source starts multicasting
traffic through the root LSR to the LSRs in the multicasting tree
composed by Steps (3) through (7).
Jong-Moon Chung, et al. February 2002 Page <10>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
3.2. Receiver-Initiated Tree Calculation
A multicasting distribution tree is not static; hence, mechanisms
that allow dynamic calculation of the tree have to be defined. In
order to recalculate the tree, a node has to issue a Join, Leave, or
McRecal message. These messages have been defined in Section 2.2.
The receiver-initiated tree is based on a predefined source already
generating multicast content, and the information contained within
the MIDB.
1. When a node wants to request a multicasting tree connection,
the node will send a RSVP-TE Join message to a LSR-RP of the
multicasting tree.
2. This LSR-RP of the multicasting tree will then send a Join
message to the root LSR. This Join request will be checked
for multicasting tree connection permission. If permission is
granted, a recalculation of the tree may occur if necessary.
In this case, a McRecal message will be issued for the
recalculation of the multicasting tree.
3. If a multicasting tree recalculation has been requested, an
update to the label mapping table of each LSR of the
multicasting tree will be conducted. The update procedure
refreshes the interfaces in which each message is received
and the interfaces through which each message is forwarded.
4. The multicasting root LSR will issue a Join message to the
node that is requesting connection to the multicasting tree
through the LSR-RP that the root LSR decides to use for this
connection. This LSR-RP will issue a Path message to the new
host for connection establishment to the tree.
5. If the procedure is not successful, the new receiver that was
making the Join message request will wait for an arbitrary
timeout and retries until it is able to obtain a multicasting
link connection
Receiver-initiated tree calculation
+---------+ +-----------+
| Source +---+ Root LSR |
+---------+ +-----+-----+
| | ^ (2)Join
| |(3) | message (1)Join message
| V Join +---- <-------
+-----+-----+ +-----------+ +------------+
| LSR-RP +-----+ LSR-RP +-----+New Receiver|
+-----+-----+ +-----------+ +------------+
| ------> ------->
| (4)Join message (5)Path
| <-------
| (6)Resv
|
+-----+-----+ +-----------+
| LSR +-----+ LSR |
+-----------+ +-----------+
Jong-Moon Chung, et al. February 2002 Page <11>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
In the figure above, step (1) shows the Join message indicating the
new receiverÆs intention to receive multicasting traffic. Step (2)
shows the Join message generated from the LSR-RP that received the
Join message requesting the root LSR to establish a multicasting
connection. This in turn triggers the recalculation of the
multicasting tree. Assuming that permission has been granted by the
root LSR, steps (3) and (4) show a Join message issued by the root
LSR which will contain a TREE object. The root LSR will assign one
of the neighboring LSR-RP to the host to become its connecting LSR.
This LSR-RP will receive the Join message sent from the root LSR,
and the Join message will be converted to a Path message to enable a
LSP connection to the multicasting tree (step (5)). In step (5), a
specific label may be requested to the down stream new receiver such
that all outgoing multicasting connections from the LSR-RP may use
the same label [2]. Step (6) shows the Resv message that will
include the label to be used.
3.3. Re-calculation Procedures
As mentioned before, a multicasting tree is not normally static,
either because new nodes are joining or because nodes leave the
tree. When a LSR does not have any more multicasting receivers, it
will issue a RSVP-TE Leave message, which will be sent to the
upstream LSR in order to stop the multicast traffic. The upstream
LSRs will perform the following activities:
1. If the LSR that is leaving is not the last LSR within the tree,
then the upstream LSR will erase the label mapping entry for
the downstream LSR, and it will issue a McRecal message to the
root LSR such that the root LSR can recalculate the tree should
it be necessary. Otherwise, the root LSR will use this
information to request an update of the label mapping tables of
the LSRs along the multicasting tree. The information in the
MIDB will also be updated.
2. If a tree recalculation is conducted, the root LSR will trigger
a re-calculation procedure via a McRecal message so all the
LSRs can use the updated information in the MIDB.
3. If the LSR that is leaving is the last leaf LSR on the
multicasting tree, then the upstream LSR will in turn issue a
RSVP-TE Leave message. The MIDB table will then be updated. The
root LSR in turn (after receiving the message and recalculating
the tree) will trigger a recalculation procedure via a McRecal
message so all the nodes can use the updated information in the
MIDB.
4. If the leaving LSR is the last one connected to the root LSR
(that is, the root LSR will be the last node on the tree), then
the Leave message procedures will be performed. A Destroy
procedure of the tree will not be performed. The tree will be
kept alive and the tree will be recalculated and rebuilt when
new hosts request connection to the tree.
Jong-Moon Chung, et al. February 2002 Page <12>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
5. In the event that the source has no more multicast content to
multicast, the root LSR will issue a RSVP-TE Destroy message
that will notify all the LSRs in the tree that the label
mappings have to be released and all the multicasting traffic
forwarding should be stopped. This will also trigger a purge
procedure within the MIDB, clearing all the entries for the
specific multicasting group.
4. Conclusion
The extensions proposed to RSVP-TE of this document deliver the
basic configuration and functionality required to support
multicasting for MPLS networking applications. By establishing Join,
McRecal, Leave, and Destroy messages, a multicasting distribution
tree that is conformant with the constraints defined by the MPLS TE
parameters can be created through RSVP-TE signaling. Furthermore, by
combining the multicasting extensions for RSVP-TE with the IGMP
features for multicasting group database control and the Hello
message with the MIDB extensions a set of operational procedures
have been developed for the dynamic management of multicasting
trees. This conceptualization allows all traffic engineering
features of MPLS networking to be flexibly provided within the
multicasting services in a very efficient, scalable, and
straightforward fashion.
5. References
[1] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and
Swallow, G., ææRSVP-TE: Extensions to RSVP for LSP Tunnels,ÆÆ RFC
3209, The Internet Society, Dec. 2001.
[2] Braden, R., Zhang, L., Berson, S., Herzog, S., and Jamin, S.,
"Resource ReSerVation Protocol (RSVP) -- Version 1, Functional
Specification," RFC 2205, The Internet Society, Sept. 1997.
[3] Chung, J.-M., (Invited Paper) ææAnalysis of MPLS Traffic
Engineering,ÆÆ in Proc. IEEE Midwest Symposium on Circuits and
Systems 2000 (MWSCASÆ00), East Lansing, Michigan, U.S.A., Aug.
8-11, 2000.
[4] Chung, J.-M., Marroun, E., Sandhu, H., and Kim, S.-C., ææVoIP
over MPLS Networking Requirements,ÆÆ in Proc. IEEE International
Conference on Networking 2001 (ICNÆ01), Colmar, France, July 9-
13, 2001.
[5] Chung, J.-M., Subieta Benito, M. A., Chhabra, H., Cho, G. Y.,
and Rasiah, P., ææLDP Extensions for MPLS Multicasting Services,ÆÆ
submitted, IEEE Networks.
[6] Chung, J.-M., Subieta Benito, M. A., Chhabra, H., Cho, G. Y.,
and Rasiah, P., ææRSVP Extensions for MPLS Multicasting
Services,ÆÆ submitted, IEEE J. Select. Areas in Commun.
[7] Chung, J.-M., Subieta Benito, M. A., Chhabra, H., Cho, G. Y.,
and Rasiah, P., ææLDP Extensions for MPLS Multicasting Services,ÆÆ
work in progress, Internet Draft, Internet Engineering Task
Force, The Internet Society.
[8] Miller, K. C., Multicast Networking and Applications, Addison-
Wesley, 1999.
Jong-Moon Chung, et al. February 2002 Page <13>
Internet Draft draft-ietf-mpls-rsvp-multicasting-00.txtAugust, 2002
[9] Ooms, D., Sales, B., Livens, W., Acharya, A., Griffoul, F., and
Ansari, F., ææFramework for IP Multicast in MPLS,ÆÆ work in
progress, Internet Draft, Internet Engineering Task Force, The
Internet Society.
[10] Rosen, E. and Viswanathan, A., ææMultiprotocol Label Switching
Architecture,ÆÆ RFC 3031, The Internet Society, Jan. 2001.
[11] Stallings, W., High-Speed Networks TCP/IP and ATM Design
Principles. New Jersey: Prentice Hall, 1998.
[12] Whitmann, R. and Zitterbart, M., Multicasting Communication
Protocols and Applications. Morgan Kaufman Publishers, 1999.
[13] Williamson, B., Developing Multicasting Networks. Vol. I, Cisco
Press, 2000.
6. AuthorsÆ Addresses
Jong-Moon Chung
ACSEL & OCLNB Laboratories
School of Electrical & Computer Engineering
Oklahoma State University
Stillwater, OK 74078
Phone: (405)744-9924
Email: jchung_osu@lycos.com
Mauricio A. Subieta Benito
ACSEL & OCLNB Laboratories
School of Electrical & Computer Engineering
Oklahoma State University
Stillwater, OK 74078
Phone: (405)744-5215
Email: maurici@okstate.edu
Harleen Chhabra
Exxon Mobil
P.O. Box 4449
Houston, TX 77210-4449
Phone: (713)431-4106
Email: Harleen.Chhabra@exxonmobil.com
Grace Yoona Cho
ACSEL & OCLNB Laboratories
School of Electrical & Computer Engineering
Oklahoma State University
Stillwater, OK 74078
Phone: (405)744-5215
Email: chog@okstate.edu
Pravin Rasiah
ACSEL & OCLNB Laboratories
School of Electrical & Computer Engineering
Oklahoma State University
Stillwater, OK 74078
Phone: (405)744-2662
Email: pravinras10@lycos.com
Jong-Moon Chung, et al. February 2002 Page <14>