Internet Draft Network Working Group Ken-ichi Nagami (Toshiba Corp.) INTERNET DRAFT Noritoshi Demizu (SonyCSL/NAIST) Hiroshi Esaki (Toshiba Corp.) Paul Doolan (Ennovate Networks) February 1998 Expires August 1998 VCID Notification over ATM link <draft-nagami-mpls-vcid-atm-00.txt> 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 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.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). Abstract Several label switching schemes have been proposed to integrate Layer 2 and Layer 3. The ATM Label Switching Router (ATM-LSR) is one of the major applications of label switching. Because the ATM layer labels (VPI and VCI) associated with a VC may change on each VC of that VCC, it is not possible to use them to identify a VCC in label binding messages. The concept of Virtual Connection Identifier (VCID) is introduced to solve this problem. VCID has the same value at both ends of a VCC and at all the intermediate ATM-LSRs through which the VCC passes. This document specifies the procedures for the communication of VCID values between neighboring ATM-LSRs that must occur in order to ensure this property. 1. Introduction Several label switching schemes have been proposed to integrate Layer 2 and Layer 3. The ATM Label Switching Router (ATM-LSR) is one of the major applications of label switching. In the case of ATM VCCs, the VPI and VCI labels are, in the general case, rewritten with new values at every switch node through which the VCC passes and cannot be used to provide end to end identification of a VCC. In the context of MPLS 'flows', which are classes of packets that have some common charachteristic that may be deduced by examination of the layer 3 header in the packets, are bound to layer 2 'labels'. We speak of flows being 'bound' to l abels. These bindings are conveyed between peer LSRs by means of a Label Distributi on Protocol [LDP]. In order to apply MPLS to ATM links, we need some way to identify ATM VCCs in LDP binding messages. In [VCID], an identifier called a Virtual Connection ID (VCID) is introduced. VCID has the same value at both ends of a VCC. This document specifies the procedures for the communication of VCID values between neighboring ATM-LSRs that must occur in order to ensure this property. 2. Overview of VCID Notification Procedures 2.1 VCID Notification procedures The ATM has several types of VCCs (transparent point-to-point link/VP/PVC/SVC). A transparent point-to-point link is defined as one that has the same VPI/VCI label at both ends of a VCC. For example, two nodes are directly connected (i.e., without intervening ATM switches) or are connected through a VP with the same VPI value at both ends of the VP. There are two broad categories of VCID notification procedures; inband and out of band. The categorisation refers to the connection over which the messages of the VCID notification procedure are forwarded. In the case of the inband procedures, those messages are forwarded over the VCC to which they refer. In contrast the out of band procedures transmit the messages over some other connection (than the VCC to which they refer). We list below the various types of link and briefly mention the VCID notification procedures employed and the rational for that choice. The procedures themselves are discussed in detail in later sections. Transparent point-to-point link : no VCID notification VCID notification procedure is not necessary because the label (i.e., VPI/VCI) is the same at each end of the VC. VP : inband notification (as a default mechanism) - Inband notification VCID notification is needed because the VPI at each end of the VC may not be the same. Inband VCID notification [VCID] is used in this case. - No notification If a node has only one VP to a neighboring node, VCID notification procedure is not mandatory. The VCI can be used as the VCID. This is because the VCI value is the same at each end of the VP. [Note] For easier implementation, using inband notification even in the case of a single VP is recommended. PVC : inband notification Inband VCID notification [VCID] is used in this case because the labels at each end of the VC may not be the same. SVC : there are three possibilities - Out of band notification If a signaling message has a field which is large enough to carry a VCID value (e.g., UUS [UUS]), then the VCID is carried directly in it. - Outband notification using a small-sized field If a signaling message has a field which is not large enough to carry a VCID value, this procedure is used. - Inband notification If a signaling message can not carry user information, this procedure is used. When an LSP is a point-to-multipoint VC and an ATM switch in an LSR is not capable of VC merge, it may cause problems in performance and quality of service. When the LSR wants to add a new leaf to the LSP, it needs to split the active LSP temporarily to send an inband notification message. 2.2 VCID Assignment A VCID value is assigned by either an upstream node or a downstream node depending on the type of VC. For a point-to-point VC, either the upstream node or the downstream node could assign a VCID value. For a point-to-multipoint VC, only an upstream (root) node can assign a VCID value. 3. VCID Notification Procedures 3.1 Inband Notification Procedures 3.1.1 Inband Notification for Point-to-point VC VCID notification is performed by transmitting a control message through the VCC newly established (by signalling or management) for use as an label switched path (LSP) [ARCH], The procedure for VCID notification between two nodes A and B is detailed below. 0. Node A establishes a VCC to the destination LSR B. (by signalling or management) 1. Node A selects a VCID value. 2. Node A sends a message which contains the VCID value through the newly established VCC to Node B. 3. Node A establishes an association between the label for the VC and the VCID value. 4. Node B receives the message from the VCC and establishes an association between the VCID in the message and that VCC. 5. Node B sends an ACK message to node A. 6. After Node A receives the ACK message, node A and node B both associate the VCID with the same VCC. Node A Node B | | |--------------->| | VCID | | | |<---------------| | ACK | 3.1.2 Inband notification for point-to-multipoint VC VCID notification is performed by sending a control message through the VCC to be used as an LSP. The upstream node must assign the VCID value, the procedure by which it notifies the downstream node of that value is given below. The procedure is used when a new VCC is created or a new leaf is added to the VCC. First, the procedure for establishing the first VC is described. 1. The upstream node assigns a VCID value for the VCC. When the VCID value is already assigned to a VCC, it is used for VCID. 2. The upstream node sends a message which contains the VCID value and the address of the upstream node through the VCC used for a label switched path. This message is transferred to all leaf nodes. 3. The upstream node establishes an association between the label for the VC and the VCID value. 4. The downstream nodes receiving the message check the address of the upstream node. If the address is not the same network prefix as own address, the message is discarded. Otherwise, the downstream nodes establish an association between the VCID in the message and the VC from which the message is received. 5. The downstream nodes send an ACK message to the upstream node. 6. After the upstream node receives the ACK messages, the upstream node and the downstream nodes share the VCID. Upstream Downstream 1 Downstream 2 | | | |-----------+--->| | | VCID +------------------->| | | | |<---------------| | | ACK | | |<-------------------------------| | ACK | Second, the procedure for adding a leaf to the existing point-to-multipoint VC is described. 0. The upstream node adds the downstream node, using the ATM signaling. 1. The VCID value which already assigned to the VCC is used. 2. The upstream node sends a message which contains the VCID value and the address of the upstream node through the VCC used for a label switched path. This message is transferred to all leaf nodes. 3. The downstream nodes receiving the message check the address of the upstream node. If the address is not the same network prefix as own address, the message is discarded. Otherwise, the downstream nodes establish an association between the VCID in the message and the VC from which the message is received. 4. After the upstream node receives the ACK messages, the upstream node and the downstream nodes share the VCID. 3.2 Outband Notification using a small-sized field This method can be applied when a VC is established using a signaling message and the message has a field which is not large enough to carry a VCID value. The signaling SETUP message of ATM Forum UNI 3.1/4.0 has a 7-bit mandatory field for the user. This is a user specific field in the Layer 3 protocol field in the BLLI IE (Broadband Low Layer Information Information Element). The BLLI value is used as a temporary identifier for a VC during a VCID notification procedure. This mechanism is defined as "Outband Notification using a small-sized field" described in [VCID]. The BLLI value of a new VC must not be assigned to other VCs during the procedure to avoid identifier conflict. When the association among the BLLI value, a VCID value, and the corresponding VC is established, the BLLI value can be reused for a new VC. VCID values can be assigned independently from BLLI values. Node A Node B | | |<-------------->| | ATM Signaling | | with BLLI | | | |--------------->| | BLLI & VCID | | | |<---------------| | ACK | A point-to-multipoint VC can also be established using ADD_PARTY of ATM Forum Signaling. ADD_PARTY adds a new VC leaf to an existing VC or an existing VC tree. In this procedure, the BLLI value of ADD_PARTY has to be the same value as that used to establish the first point-to-point VC of the tree. The same BLLI value can be used in different VC trees only when these VC trees can not add a leaf at the same time. As a result, the BLLI value used in the signaling must be determined by the root node of the multicast tree. [note] BLLI value is unique at the sender node. But BLLI value is not unique at the reciever node because multiple sender nodes allocate the same BLLI value. So, the receiver node must recognize BLLI value and the sender address. ATM Signaling messages(SETUP and ADD_PARTY) carry both the BLLI and the sender ATM address. The receiver node can realize which node sends the BLLI message. 3.2.1 Outband notification using a small-sized field for point-to-point VC This subsection describes procedures for establishing a VCC and for notification of its VCID between neighboring LSRs for unicast traffic. VC pool [VCPOOL] can be applied. For point-to-point VC, either an upstream LSR or a downstream LSR can allocate a VCID for a new VC. The procedure employed when the upstream LSR assigns a VCID is as follows. 1. An upstream LSR establishes a VCC to the downstream LSR using ATM signaling and supplies a value in the BLLI field that it is not currently using for any other (incomplete) VCID notification transaction with this peer. 2. The upstream LSR notifies the downstream LSR of the association between the BLLI and VCID values. The precise form of the message used is outside the scope of this document but it could be dedicated to this purpose or a modified LDP BIND message. 3. The downstream LSR establishes the association between the VCC with the BLLI value and the VCID and sends an ACK message to the upstream LSR. If the VCID is associated with some other VCC between the upstream and downstream LSRs, that old VCC is removed from service. 4. After the upstream LSR receives the ACK message, it establishes the association between the VCC and the VCID. The VCC is ready to be used. At this time the BLLI value employed in this transaction is free for reuse. The procedure employed when a downstream LSR assigns a VCID is as follows: 1. An upstream LSR establishes a VCC by ATM signaling between the downstream LSR with a unique BLLI value at this time. 2. The downstream LSR notifies the upstream LSR of a paired BLLI value and VCID using a message dedicated for this purpose or together within a BIND message. 3. The upstream LSR establishes the association between the VCC with the BLLI value and the VCID and sends an ACK message to the downstream LSR. If the VCID is associated with some other VCC between the upstream and downstream LSRs, that old VCC is removed from service. 4. After the downstream LSR receives the ACK message, it establishes the association between the VC and the VCID. The VC is ready to be used.At this time the BLLI value employed in this transaction is free for reuse. 3.2.2 Outband notification using a small-sized field for point-to-multipoint VC This subsection describes procedures for establishing the first VC for a multicast tree and for adding a new VC leaf to an existing VCC tree including the notification of its VCID for a multicast stream using point-to-multipoint VCs. In this procedure, an upstream LSR determines both the VCID and BLLI value in the multicast case. The reason that the BLLI value is determined by an upstream LSR is described above. First, the procedure for establishing the first VC is described. 1. An upstream LSR establishes a VC by ATM Forum Signaling between the downstream LSR with a unique BLLI value at this time. 2. The upstream LSR notifies the downstream LSR of a paired BLLI value and VCID using a message dedicated for this purpose or together within a BIND message. 3. The downstream LSR establishes the association between the VC with the BLLI value and the VCID and sends an ACK message to the upstream LSR. If the VCID is used by some other VC between the upstream and downstream LSRs, the old VC is discarded. 4. After the upstream LSR receives the ACK message, the VC is ready to be used and the BLLI value can be used for another VC. Second, the procedure for adding a leaf to the existing point-to-multipoint VC is described. 1. The upstream LSR establishes a VC by ATM Forum Signaling between its downstream LSR with the BLLI value that was used during the first signaling procedure. If another VC is using the BLLI value at the same time, the upstream waits for the completion of the signaling procedure that is using this BLLI value. 2. Go to step 2 of the procedure for the first VC. 3.3 Outband notification This method can be applied when a VC is established using a signaling message and the message has a field (e.g., UUS [UUS]) which is large enough to carry a VCID value. Node A Node B | | |<-------------->| | ATM Signaling | | with VCID | Security Considerations Security issues are not discussed in this document. Intellectual Property Considerations Toshiba Corporation and Ennovate Networks may seek patent or other intellectual property protection for some of the aspects of the technology discussed in this document. If any standards arising from this document are or become protected by one or more patents assigned to Toshiba Corporation, Toshiba intends to license them on reasonable and non- discriminatory terms. Acknowledgments The authors would like to acknowledge the valuable technical comments of the members of the LAST-WG of the WIDE Project. References [VCID] N. Demizu, et al., "VCID: Virtual Connection Identifier", draft-demizu-mpls-vcid-01.txt, Oct. 1997 [VCPOOL] N. Demizu, et al., "VC pool", draft-demizu-mpls-vcpool-00.txt, Oct. 1997 [ARCH] R. Callon, et al., "A Framework for Multiprotocol Label Switching", draft-ietf-mpls-framework-02.txt, Nov. 1997 [UUS] M. Suzuki, "The Assignment of the Information Field and Protocol Identifier in the Q.2941 Generic Identifier and Q.2957 User-to-user Signaling for the Internet Protocol", draft-suzuki-git-uus-assignment-00.txt, Nov. 1997 Authors Information Ken-ichi Nagami R&D Center, Toshiba Corporation, 1 Komukai-Toshiba-cho, Saiwai-ku, Kawasaki, 210, Japan Phone: +81-44-549-2231 Email: nagami@isl.rdc.toshiba.co.jp Noritoshi Demizu Sony Computer Science Laboratory, Inc. Takanawa Muse Bldg. 3-14-13, Higashigotanda, Shinagawa-ku, Tokyo, 141 Japan Phone: +81-3-5448-4380 E-mail: demizu@csl.sony.co.jp E-mail: nori-d@is.aist-nara.ac.jp Hiroshi Esaki Computer and Network Division, Toshiba Corporation, 1-1-1 Shibaura, Minato-ku, 105-01, Japan Email: hiroshi@isl.rdc.toshiba.co.jp Paul Doolan Ennovate Networks 330 Codman Hill Road Boxborough, MA Phone: 978-263-2002 x103 Email: pdoolan@ennovatenetworks.com