INTERNET-DRAFT Norihiro Ishikawa Expires: January 1998 NTT July, 1997 IP Multicast Routing over ATM 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), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). Abstract This memo describes the specification for IP multicast routing over ATM. This memo specifies the architecture and the protocol for scalable IP multicast routing over ATM, based on the shared tree architecture. Multicast shortcuts over ATM are possible in an efficient and scalable manner. The same messages as specified for IP multicasting over ATM MLIS [1] are applied for IP multicast routing over ATM, with some extensions. Ishikawa Expires January 1998 [Page 1] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 1. Introduction This memo describes the specification for IP multicast routing over ATM. The requirements for the specification for IP multicast routing over ATM are as follows: - To interwork with the MBONE (an experimental multicasting network on the Internet), the specification should be compatible with the basic specifications for IP multicasting such as RFC 1112 [2] and the multicast routing protocols such as RFC 1075 [3]. It should also interwork with routers and hosts in which such specifications are implemented. - To accomplish IP multicasting over ATM efficiently, the specificaiton should be able to effectively use the point-to-multipoint connection that ATM provides. - To be applicable to IP multicasting over ATM in different scales, the specification should be able to achieve hierarchical and scalable IP multicast routing. - Functions for IP multicast shortcuts should be provided in an efficient and scalable manner. - It should be compatible with the specifications for IP over ATM such as RFC 1577 [4] and RFC1755 [5] and be able to use those protocols when necessary. As a mechanism to satisfy above requirements, this memo describes the specification for IP multicast routing over ATM, based on the specification for IP multicast over ATM MLIS described in [1]. This memo assumes that "The ATM Forum UNI Specification, V 3.0/3.1" is used as the interface with ATM. 2. Architecture An architecture for IP multicast routing over ATM is described below. The architecture for IP multicast routing over ATM specified in this memo is an extension of the architecture of the specification for IP multicast over ATM described in [1]. In this architecture, multiple ATM multicast routers form a relationship that has a tree structure. Each ATM multicast router may be connected with an ATM multicast router as a parent. Such an ATM multicast router is called a parent router, from the ATM multicast router's point of view. Each ATM multicast router may be connected with multiple ATM multicast routers as a child. Such an ATM multicast router is called a child router, from the ATM multicast router's point of view. An ATM multicast router is connected Ishikawa Expires January 1998 [Page 2] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 with a parent router as well as child routers, using ATM VCCs. An ATM multicast router that does not have a parent router is the highest level router. An ATM multicast router that does not have a child is the lowest level router. A sending host may be connected with any level ATM multicast router, and send multicast IP datagrams. A receiving host is usually connected with the lowest level ATM multicast router, and receive multicast IP datagrams, although a receiving host may be connected with other level routers. An ATM multicast router views a receiving host directly connected with it as its child. An ATM multicast router is connected with a sending host and a receiving host, using ATM VCCs. For the efficient use of ATM, an ATM multicast router is usually connected with its child routers and/or receiving hosts, using ATM point-to- multipoint connections. For each host group that is identified by a class D IP address, a multicast routing tree (MRT) is defined. A specific ATM multicast router is designated as the root of an MRT. If the highest level router is designated as the root of an MRT, large scale IP multicasting is realized for the host group. If the lowest level router is designated as the root of an MRT, small scale IP multicasting is realized for the host group. Hence Hierarchical and scalable IP multicast routing can be realized by adopting the architecture that has a tree structure. 3. Mechanism The mechanism for IP multicast routing over ATM specified in this memo is explained below. The detailed procedures based on this mechanism are described in section 4. 3.1 Sending Multicast IP Datagrams If a sending host cat set up an ATM VCC with the root of an MRT, it sends multicast IP datagrams to the root, using the ATM VCC. If a sending host can not set up an ATM VCC with the root of an MRT, it sends a multicast IP datagram as a unicast IP datagram whose destination address is a unicast IP address of the root. In this case, the class D IP address is inserted into a unicast IP datagram using the loose source IP option. A unicast IP datagram travels toward the root of an MRT, using unicast routing protocols. Ishikawa Expires January 1998 [Page 3] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 3.2 Start of Receiving Multicast IP Datagrams A receiving host that requests to receive multicast IP datagrams sends a Join message to an ATM multicast router. If the ATM multicast router that has received a Join message from the receiving host is the root of the MRT that is identified by the class D IP address, it will send a Join Ack message to the receiving host, and start sending multicast IP datagrams. The procedure is as follows in the case where the ATM multicast router that has received a Join message from the receiving host is not the root of the MRT that is identified by the class D IP address: (1) If the ATM multicast router has already sent a Join message to the parent router and received a Join Ack message as its response, it will send a Join Ack message to the receiving host and start sending multicast IP datagrams. (2) If the ATM multicast router has already sent a Join message to the parent router but has not received a Join Ack/Join Nak message from the parent router, it will wait for the response of the parent router. (3) If the ATM multicast router has not sent a Join message to the parent router, it will send a Join message to the parent router. (4) If there is no parent router, the ATM multicast router will send a Join Nak message to the receiving host. If the ATM multicast router receives a Join Ack message from the parent router later, in the case of (2) and (3), it will send a Join Ack message to the receiving host and start sending of multicast IP datagrams. If a Join Nak message is received, the ATM multicast router will send a Join Nak message to the receiving host. The operation of an ATM multicast router that has received a Join message from a child router is the same as that of the ATM multicast router that has received a Join message from a receiving host. 3.3 Stop of Receiving Multicast IP Datagrams A receiving host that requests to end receiving multicast IP datagrams sends a Leave message to the ATM multicast router. The ATM multicast router that has received a Leave message from the receiving host ends sending multicast IP datagrams to the receiving host. Ishikawa Expires January 1998 [Page 4] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 The ATM multicast router that has received a Leave message from the receiving host sends a Leave message to its parent router when the following conditions are satisfied: (1) The ATM multicast router is not the root of the MRT that is identified by the class D IP address. (2) There exists no receiving host that is receiving multicast IP datagrams for the host group that is identified by the class D IP address as a result. The operation of an ATM multicast router that has received a Leave message from a child router is the same as that of the ATM multicast router that has received a Leave message from a receiving host. 4. Protocol Procedures The protocol procedures based on the mechanism specified in Section 3 are described below. The specification for IP multicast routing over ATM described in this memo is an extension of the specification for IP multicast over ATM MLIS described in [1]. Therefore, the operation of sending hosts, receicing hosts and ATM multicast routers that is not described in this memo is the same as described in [1]. 4.1 Operation of Sending Hosts A sending host must send multicast IP datagrams toward the root of an MRT which is defined for the host group identified by its destination address. If a sender can set up an ATM VCC directly with the root, the same procedures described in [1] are applied. If a sending host can not set up an ATM VCC with the root, it sends a multicast IP datagram as a unicast IP datagram whose destination address is an IP address of the root. In this case, the destination address of a multicast IP datagram (i.e. class D address) is inserted into a unicast IP datagram, using the Loose Source Route option. A unicast IP datagram travels toward the root of an MRT, using unicast IP routing protocols. 4.2 Operation of ATM Multicast Routers 4.2.1 Receiving Multicast IP Datagrams The operation of an ATM multicast router is described below, in the case where it has received a multicast IP datagram. Ishikawa Expires January 1998 [Page 5] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 4.2.1.1 When Loose Source Route Option is Designated The operation of an ATM multicast router is described below, in the case where the Loose Source Route option is designated: An ATM multicast router executes the procedures below, if the following condition is satisfied: - The ATM multicast router is the root of the MRT designated in the Loose Source option. (1) The ATM multicast router processes the Loose Source Route option of the received unicast IP datagram. In other words, the received unicast IP datagram is replaced with a multicast IP datagram with the multicast IP address of the host group as its destination IP address. (2) the ATM multicast router retrieves the conversion table of the destination IP address of the multicast IP datagram and the VCC for data transfer, in order to check whether the VCC for data transfer that forwards the received multicast IP datagram has been set up. NOTE: This conversion table is used when forwarding multicast IP datagrams to child routers and/or receiving hosts. (3) If the VCC for data transfer has been set up, the multicast IP datagram will be sent by using the VCC. If the VCC for data transfer has not been set up, the multicast IP datagram will be discarded. 4.2.1.2 When Loose Source Route Option is not Designated The operation of an ATM multicast router is the same as described in [1], in the case where the Loose Source Option is not designated. NOTE: In this case, an ATM multicast router does not need to distinguish whether it has received a multicast IP datagram from either a sending host or a parent router. 4.2.2 Receiving a Join Message The operation of an ATM multicast router is described below, in the case where it has received a Join message from either a receiving host or a child router. NOTE: In this case, an ATM multicast router does not need to distinguish whether it has received a Join message from either a receiving host or a child router. Ishikawa Expires January 1998 [Page 6] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 4.2.2.1 When an ATM multicast router is the root of an MRT The operation of an ATM multicast router is the same as described in [1]. 4.2.2.2 When an ATM multicast router is not the root of an MRT The procedures are as follows, in the case where the ATM multicast router has already sent a Join message to its parent router and then received Join Ack message as its response: (1) An ATM multicast router sets up a leaf to the VCC for data transfer, by using the ATM address of the receiving host or the child router. (2) If the setup of the leaf to the VCC succeeds, the ATM multicast router sends a Join Ack message to it. (3) If the setup of the leaf to the VCC fails, the ATM multicast router sends a Join Nak message to it. The procedures are as follows, in the case where the ATM multicast has already sent a Join message to its parent router, but has not received a Join Ack message or a Join Nak message from it. (1) The ATM multicast router will wait for a Join Ack message or a Join Nak message from its parent router. The procedures are as follows, in the case where the ATM multicast router has not sent a Join message to its parent router. (1) The ATM multicast router sends a Join message to its parent router. The procedures are as follows, in the case where there exists no parent router for the ATM multicast router. (1) The ATM multicast router sends a Join Nak message to the receiving host or the child router. 4.2.3 Receiving a Join Ack message The operation of an ATM multicast router is described below, in the case where it has received a Join Ack message from its parent router. Ishikawa Expires January 1998 [Page 7] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 The operation of an ATM multicast router is as follows if the following condition is satisfied: - The ATM multicast has sent a Join message to its parent router, regarding the received group address (1) The ATM multicast router sets up (a leaf of) a VCC for data transfer, by using the ATM address of the receiving host or the child router, from which it has received a Join message. NOTE: When the ATM multicast router has received a Join message from more than one receiving hosts and/or child routers, it sets up (a leaf of) the VCC to each of them. The VCC shall be a point-to-multipoint connection. (2) If the setup of (the leaf of) the VCC to the receiving host or the child router succeeds, the ATM multicast router sends a Join Ack message to it. (3) If the setup of (the leaf of) the VCC to the receiving host or the child router fails, the ATM multicast router sends a Join Nak message to it. NOTE: When the ATM multicast router has received a Join message from more than one receiving hosts and/or child routers, it sends a Join Ack message or a Join Nak message to each of them. An ATM multicast router discards the received Join Ack message if the following condition is satisfied: - The ATM multicast router has not sent a Join message to its parent router, regarding the received group address. 4.2.4 Receiving a Join Nak message The operation of an ATM multicast router is described below, in the case where it has received a Join Nak message from its parent router. The operation of an ATM multicast router is as follows if the following condition is satisfied: - The ATM multicast has sent a Join message to its parent router, regarding the received group address. Ishikawa Expires January 1998 [Page 8] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 (1) The ATM multicast router sends a Join Nak message to the receiving host or the child router, from which it has received a Join message. NOTE: When the ATM multicast router has received a Join message from more than one receiving hosts and/or child routers, it sends a Join Nak message to each of them. An ATM multicast router discards the received Join Nak message if the following condition is satisfied: - The ATM multicast router has not sent a Join message to its parent router, regarding the received group address. 4.2.5 Receiving a Leave Message The operation of an ATM multicast router is described below, in the case where it has received a Leave message from either a receiving host or a child router. NOTE: In this case, an ATM multicast router does not need to distinguish whether it has received a Leave message from either a receiving host or a child router. The operation of an ATM multicast router is as follows if the following conditions are satisfied: - The number of members becomes zero in the list of the IP addresses of receiving hosts and/or child routers that have joined the host group identified by the received group address. - The ATM multicast router is not the root of the MRT defined for the host group identified by the received group address. (1) The ATM multicast router sends a Leave message to its parent router. 4.2.6 Sending a Shortcut message An ATM multicast router may order Shortcut to receiving hosts and/or child routers that have joined the host group identified by the group address. It is a local decision by an ATM multicast router, whether it orders Shortcut or not. NOTE: An ATM multicast router may order Shortcut in the following cases. - An ATM multicast router is receiving large amount of multicast IP datagrams (e.g. file or video) toward the host group identified by the group address. Ishikawa Expires January 1998 [Page 9] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 The operation of an ATM multicast router is as follows if the following condition is satisfied: - The ATM multicast router is not the root of an MRT defined for the host group identified by the group address. (1) An ATM multicast router may send a Shortcut message to the receiving host or the child router that has joined the host group identified by the group address. NOTE: When more than one receiving hosts and/or child routers have joined the host group, An ATM multicast router sends a Shortcut message to each of them. 4.2.7 Receiving a Shortcut message When an ATM multicast router has received a Shortcut message, it may execute Shortcut. It is a local decision by an ATM multicast router, whether it executes Shortcut or not. The operation of an ATM multicast router is as follows if the following condition is satisfied: - The ATM multicast router can set up a VCC toward the ATM multicast router designated by the Shortcut Address field of the received Shortcut message. (1) An ATM multicast router may send a Join message to the ATM multicast router designated by the Shortcut Address field of the received Shortcut message. (2) When the ATM multicast router receives a Join Ack message, it sends a Leave message to its parent router. (3) When the ATM multicast router receives a Join Nak message, it does nothing. NOTE: The ATM multicast router may send a Join message to the same router again. 4.3 Operation of Receiving Hosts 4.3.1 Receiving an Shortcut message When a receiving host has received a Shortcut message, it may execute Shortcut. It is a local decision by a receiving host, whether it executes Shortcut or not. Ishikawa Expires January 1998 [Page 10] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 The operation of a receiving host is as follows if the following condition is satisfied: - The receiving host can set up a VCC toward the ATM multicast router designated by the Shortcut Address field of the received Shortcut message. (1) A receiving host may send a Join message to the ATM multicast router designated by the Shortcut Address field of the received Shortcut message. (2) When the receiving host receives a Join Ack message, it sends a Leave message to its parent router. (3) When the receiving host receives a Join Nack message, it does nothing. NOTE: The receiving host may send a Join message to the same router again. 5. Protocol Specification The same messages as specified in IGMP-ATM [1] are applied for IP multicast routing over ATM, with the following extension. NOTE: The Join message (2) is called the Host Membership Join message in IGMP-ATM [1]. The Leave message (5) is called the Host Membership Leave message in IGMP-ATM [1]. The Shortcut message is added to IGMP-ATM, for IP multicast routing over ATM specified in this memo. The format of the Shortcut message is as follows. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| Type | Unused | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Shortcut Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ (1) Version The version of this specification shall be ?. Ishikawa Expires January 1998 [Page 11] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 (2) Type The type of the Shortcut message is as follows: 6 = Shortcut (3) Unused Unused field, zeroed when sent, ignored when received. (4) Checksum The Checksum is the 16-bit one's complement sum of the Shortcut message. For computing the checksum, the checksum field is zeroed. (5) Shortcut Address An IP address of the ATM multicast router to which a receiving host or a child router will set up a VCC for Shortcut. When an ATM multicast router sends a Shortcut message to a receiving host or a child router, it usually sets an IP address of its parent router in this field. 6. Security Considerations The authentication parameter is added to the Join message, so that unauthorized receiving hosts and child routers can not join the host group. However, the definition of the format of the authentication parameter for the specific authentication mechanism is for further study. Ishikawa Expires January 1998 [Page 12] INTERNET-DRAFT IP Multicast Routing over ATM July, 1997 References [1] N. Ishikawa, "IP Multicast over ATM MLIS using ATM Multicast Routers", Internet Draft, July 1997. [2] S. Deering, "Host Extensions for IP Multicasting", RFC 1112, Stanford University, August 1989. [3] D. Waitzman, C. Partridge, S. Deering, "Distance Vector Multicast Routing Protocol", RFC 1075, November 1988. [4] M. Laubach, "Classical IP and ARP over ATM", RFC 1577, Hewlett-Packard Laboratories, December 1993. [5] M. Perez, F. Liaw, D. Grossman, A. Mankin, E. Hoffman, A. Malis, "ATM Signalling Support for IP over ATM", RFC 1755 February 1995. Authors' Address: Norihiro Ishikawa NTT Information and Communication Systems Laboratory 1-1 Hikarino-oka Yokosuka-Shi Kanagawa 239 Japan isic@isl.ntt.co.jp +81 468 59 2434 (tel) +81 468 59 3796 (fax) Ishikawa Expires January 1998 [Page 13]