HTTP/1.1 200 OK Date: Tue, 09 Apr 2002 00:55:50 GMT Server: Apache/1.3.20 (Unix) Last-Modified: Sun, 15 Nov 1992 04:38:00 GMT ETag: "3ddd9c-cbc2-2b05d428" Accept-Ranges: bytes Content-Length: 52162 Connection: close Content-Type: text/plain Network Working Group Juha Heinanen Reguest for Comments: DRAFT Telecom Finland Expires March 16, 1993 October 16, 1992 Multiprotocol Interconnect over ATM Adaptation Layer 5 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 1id- abstracts.txt listing contained in the internet-drafts Shadow Directories on nic.ddn.mil, nnsc.nsf.net, nic.nordu.net, ftp.nisc.sri.com, or munnari.oz.au to learn the current status of any Internet Draft. Abstract The purpose of this memo is to define approaches for multi-protocol operation over ATM AAL5. After field experience is obtained, some of the approaches may or may not be progressed to Internet Standards. Distribution of this memo is unlimited. 1. Introduction Asynchronous Transfer Mode (ATM) based networks are of increasing interest for both local and wide area applications. This memo describes three different methods for carrying connectionless network interconnect traffic (routed and bridged PDUs) over an ATM network. The first method approaches ATM from the LAN perspective and does higher-layer protocol multiplexing by prefixing the carried PDU by an IEEE 802.2 Logical Link Control (LLC) header. It is in the following called "LLC Encapsulation". The second method is functionally equivalent to the first, but approaches ATM from the WAN perspective by prefixing the carried PDU by an ISO/CCITT Network Layer Protocol ID (NLPID). It is in the following called "NLPID Encapsulation". The third method does higher-layer protocol multiplexing implicitly by ATM Virtual Circuits (VCs) and is in the following called "VC Based Multiplexing". Heinanen Expires March 16, 1993 [Page 1] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 ATM is a cell based transfer mode that requires variable length user information to be segmented and reassembled to/from short, fixed length cells. This memo doesn't specify a new Segmentation And Reassembly (SAR) method for bridged and routed PDUs, but proposes that they are carried in the Payload field of Common Part Convergence Sublayer (CPCS) PDU of AAL5 [1]. AAL5 is a new simple and efficient ATM Adaptation Layer currently being standardized both in ANSI and CCITT. 2. Selection of the Multiplexing Method It is envisioned that VC Based Multiplexing will be dominant in environments where dynamic creation of large numbers of ATM VCs is fast and economical. These conditions are likely to first prevail in ATM LANs. Encapsulation based approach to protocol multiplexing (LLC Encapsulation or NLPID Encapsulation), on the other hand, may be desirable when it is not practical for one reason or another to have a separate VC for each carried protocol. This is the case, for example, if the ATM network only supports (semi) Permanent Virtual Circuits (PVCs) or if charging depends heavily on the number of simultaneous VCs. As already mentioned in the introduction, the two proposed encapsulation based multiplexing methods are functionally equivalent. A subset of LLC Encapsulation has been earlier defined for SMDS [2], whereas NLPID Encapsulation is the same as that used for Frame Relay [3]. The later also allows interworking of ATM and Frame Relay stations according to I.555 [4]. Selection between the two encapsulation based multiplexing methods for ATM may thus depend on compatibility requirements with other network technologies. This memo doesn't prefer one or the other, but leaves the choice to the market. Later, when practical experience has been obtained and the market response is known, a new memo may be issued that states the Internet policy regarding the two encapsulation methods. When two ATM stations wish to exchange connectionless network interconnect traffic, selection of the multiplexing method is done either by manual configuration (in case of PVCs) or by B-ISDN signalling procedures (in case of Switched VCs). The details of B- ISDN signalling are still under study in CCITT [5]. It can, however, be assumed that B-ISDN signalling messages include a "Low layer compatibility" information element, which will allow negotiation of AAL5 and the carried (encapsulation) protocol. 3. AAL5 Frame Format No matter which multiplexing method is selected, routed and bridged PDUs shall be encapsulated within the Payload field of AAL5 CPCS-PDU. Heinanen Expires March 16, 1993 [Page 2] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 The format of the AAL5 CPCS-PDU is given below: AAL5 CPCS-PDU Format +-------------------------------+ | CPCS-PDU Header | +-------------------------------+ | . | | . | | Payload | | (up to 2^16 - 1 octets) | | . | | . | +-------------------------------+ | PAD ( 0 - 47 octets) | +-------------------------------+\ | Reserved (2 octets) | | +-------------------------------+ | | Length (2 octets) | > CPCS-PDU Trailer +-------------------------------| | | CRC (4 octets) | | +-------------------------------+/ The need and the functions of the CPCS-PDU Header are currently for further study in CCITT. It is assumed in this memo that if the Header is included, its length will be a multiple of four octets. The Payload field contains user information up to 2^16 - 1 octets. The PAD field pads the CPCS-PDU to fit exactly into the ATM cells such that the last 48 octet cell payload created by the SAR sublayer will have the CPCS-PDU Trailer right justified in the cell. The Reserved field is coded 0x00-00 and is used to achieve 32 bit alignment in the CPCS-PDU trailer. Additional functions besides the 32 bit alignment are for further study in CCITT. The Length field indicates the length, in octets, of the Payload field. The maximum value for the Length field is 65535 octets. A Length field coded as zero is used for the abort function. The CRC field protects the CPCS-PDU Header (if included) + the Payload field + the PAD field + the Reserved field + the Length field. 4. LLC Encapsulation Encapsulation Based Multiplexing is needed when several protocols are carried over the same VC. In order to allow the receiver to properly Heinanen Expires March 16, 1993 [Page 3] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 process the incoming AAL5 CPCS-PDU, the Payload Field must contain information necessary to identify the protocol of the routed or bridged PDU. In LLC Encapsulation this information is encoded in an LLC header placed in front of the carried PDU. Although this memo only covers protocols that operate over LLC Type 1 (unacknowledged connectionless mode) service, the same encapsulation principle applies also to protocols operating over LLC Type 2 (connection-mode) service. In the latter case the format and/or contents of the LLC header would differ from what is shown below. 4.1. LLC Encapsulation for Routed Protocols In LLC based encapsulation the protocol of the routed PDU is identified by prefixing the PDU by an IEEE 802.2 LLC header, which is possibly followed by an IEEE 802.1a SubNetwork Attachment Point (SNAP) header. In LLC Type 1 operation, the LLC header consists of three one octet fields: +------+------+------+ | DSAP | SSAP | Ctrl | +------+------+------+ In LLC encapsulation for routed protocols, the Control field has always value 0x03 specifying Unnumbered Information Command PDU. The LLC header value 0xFE-FE-03 identifies that a routed ISO PDU (see [6] and the appendix) follows. The Control field value 0x03 specifies Unnumbered Information Command PDU. For routed ISO PDUs the format of the AAL5 CPCS-PDU Payload field shall thus be as follows: Payload Format for Routed ISO PDUs +-------------------------------+ | LLC 0xFE-FE-03 | +-------------------------------+ | . | | ISO PDU | | (up to 2^16 - 4 octets) | | . | +-------------------------------+ The routed ISO protocol is identified by a one octet NLPID field that is part of Protocol Data. NLPID values are administered by ISO and CCITT. They are defined in ISO/IEC TR 9577 [6] and some of the currently defined ones are listed in the appendix. An NLPID value of 0x00 is defined in ISO/IEC TR 9577 as the Null Network Heinanen Expires March 16, 1993 [Page 4] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Layer or Inactive Set. Since it has no significance within the context of this encapsulation scheme, a NLPID value of 0x00 is invalid under the ATM encapsulation. It would also be possible to use the above encapsulation for IP, since, although not an ISO protocol, IP has an NLPID value 0xCC defined for it. This format shall, however, not be used. Instead, IP is encapsulated like all other routed non-ISO protocols by identifying it in the SNAP header that immediately follows the LLC header. The presence of a SNAP header is indicated by the LLC header value 0xAA-AA-03. A SNAP header is of the form +------+------+------+------+------+ | OUI | PID | +------+------+------+------+------+ The three-octet Organizationally Unique Identifier (OUI) identifies an organization which administers the meaning of the following two octet Protocol Identifier (PID). Together they identify a distinct routed or bridged protocol. The OUI value 0x00-00-00 specifies that the following PID is an EtherType. The format of the AAL5 CPCS-PDU Payload field for routed non-ISO PDUs shall thus be as follows: Payload Format for Routed non-ISO PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-00-00 | +-------------------------------+ | EtherType (2 octets) | +-------------------------------+ | . | | Non-ISO PDU | | (up to 2^16 - 9 octets) | | . | +-------------------------------+ In the particular case of an Internet IP PDU, the Ethertype value is 0x08-00: Heinanen Expires March 16, 1993 [Page 5] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Routed IP PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-00-00 | +-------------------------------+ | EtherType 0x08-00 | +-------------------------------+ | . | | IP PDU | | (up to 2^16 - 9 octets) | | . | +-------------------------------+ 4.2. LLC Encapsulation for Bridged Protocols In LLC Encapsulation bridged PDUs are encapsulated by identifying the type of the bridged media in the SNAP header. As with routed non-ISO protocols, the presence of the SNAP header is indicated by the LLC header value 0xAA-AA-03. With bridged protocols the OUI value in the SNAP header is the 802.1 organization code 0x00-80-C2 and the actual type of the bridged media is specified by the two octet PID. Additionally, the PID indicates whether the original Frame Check Sequence (FCS) is preserved within the bridged PDU. The media type (PID) values that can be used in ATM encapsulation are listed in the appendix. The AAL5 CPCS-PDU Payload field carrying a bridged PDU shall, therefore, have one of the following formats. Padding is added after the PID field if necessary in order to align the user information of the bridged PDU at a four octet boundary. Heinanen Expires March 16, 1993 [Page 6] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged Ethernet/802.3 PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-01 or 0x00-07 | +-------------------------------+ | PAD 0x00-00 | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-01) | +-------------------------------+ Payload Format for Bridged 802.4 PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-02 or 0x00-08 | +-------------------------------+ | PAD 0x00-00-00 | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-02) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 7] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.5 PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-03 or 0x00-09 | +-------------------------------+ | PAD 0x00-00-XX | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-03) | +-------------------------------+ Note that the 802.5 Access Control (AC) field has no significance outside the local 802.5 subnetwork. It can thus be regarded as the last octet of the three octet PAD field, which can be set to any value (XX). Payload Format for Bridged FDDI PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-04 or 0x00-0A | +-------------------------------+ | PAD 0x00-00-00 | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-04) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 8] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.6 PDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-0B | +---------------+---------------+ ------ | Reserved | BEtag | Common +---------------+---------------+ PDU | BAsize | Header +-------------------------------+ ------- | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | | +- Common PDU Trailer -+ | | +-------------------------------+ Note that in bridged 802.6 PDUs, there is only one choice for the PID value, since the presence of a CRC-32 is indicated by the CIB bit in the header of the MAC frame. The Common Protocol Data Unit (PDU) Header and Trailer are conveyed to allow pipelining at the egress bridge to an 802.6 subnetwork. Specifically, the Common PDU Header contains the BAsize field, which contains the length of the PDU. If this field is not available to the egress 802.6 bridge, then that bridge cannot begin to transmit the segmented PDU until it has received the entire PDU, calculated the length, and inserted the length into the BAsize field. If the field is available, the egress 802.6 bridge can extract the length from the BAsize field of the Common PDU Header, insert it into the corresponding field of the first segment, and immediately transmit the segment onto the 802.6 subnetwork. Thus, the bridge can begin transmitting the 802.6 PDU before it has received the complete PDU. Note that the Common PDU Header and Trailer of the encapsulated frame should not be simply copied to the outgoing 802.6 subnetwork because the encapsulated BEtag value may conflict with the previous BEtag value transmitted by that bridge. Heinanen Expires March 16, 1993 [Page 9] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for BPDUs +-------------------------------+ | LLC 0xAA-AA-03 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-0E | +-------------------------------+ | | | BPDU as defined by | | 802.1(d) or 802.1(g) | | | +-------------------------------+ | LAN FCS | +-------------------------------+ 5. NLPID Encapsulation In NLPID Encapsulation, the protocol of the routed or bridged PDU is identified by prefixing the PDU by a one octet NLPID, which is possibly followed by a SNAP header. For compatibility with RFC 1294 and I.555, the AAL5 CPCS-PDU Payload field always starts with three extra octets corresponding to the Address and Control fields of Q.922. In some cases, additional padding is needed before the NLPID octet in order to align the routed PDU or the payload of the bridged PDU at a four octet boundary. Although this memo only describes how NLPID encapsulation is used to carry connectionless PDUs over an ATM network, the same encapsulation principle also applies to connection-oriented protocols, such as X.25 and Q.931, for which appropriate NLPID values have been allocated. 5.1. NLPID Encapsulation for Routed Protocols In NLPID encapsulation the protocol of a routed PDU is identified by Network Level Protocol ID, which is a one octet field administered by ISO and CCITT. Values for this field are defined in ISO/IEC TR 9577 [6]. A NLPID value of 0x00 is defined within ISO/IEC TR 9577 as the Null Network Layer or Inactive Set. Since it has no significance within the context of this encapsulation scheme, a NLPID value of 0x00 is invalid under the ATM encapsulation. Some of the currently defined NLPID values are listed in the appendix. As it can be seen from the appendix, a unique NLPID value has been assigned for some routed protocols, such as IP and CLNP. In such cases the format of the AAL5 CPCS-PDU Payload field shall be as follows: Heinanen Expires March 16, 1993 [Page 10] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Routed NLPID PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | NLPID (1 octet) | +-------------------------------+ | . | | Carried PDU | | (up to 2^16 - 5 octets) | | . | +-------------------------------+ The value of the first two octets is constrained so that the they form a valid two octet Q.922 Address field. This means that the last bit of the first octet must be set to 0 and the last bit of the second octet must be set to 1. All other bits (marked with letter X) can be set to any value. The third octet is the Q.922 Control field and shall according to RFC 1294 have the value 0x03. Note that these three octets together with the NLPID octet align the carried PDU at a four octet boundary. In the particular case of an Internet IP PDU, the NLPID is 0xCC: Payload Format for Routed IP PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | NLPID 0xCC | +-------------------------------+ | . | | IP PDU | | (up to 2^16 - 5 octets) | | . | +-------------------------------+ In the particular case of a CLNP PDU, the NLPID is 0x81: Heinanen Expires March 16, 1993 [Page 11] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Routed CLNP PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | NLPID 0x81 | +-------------------------------+ | . | | Rest of CLNP PDU | | (up to 2^16 - 5 octets) | | . | +-------------------------------+ Note that in case of ISO protocols the NLPID field forms the first octet of the PDU itself and shall thus not be repeated. The above encapsulation applies only to those routed protocols that have a unique NLPID assigned. For other routed protocols (and for bridged protocols), it is necessary to provide another mechanism for easy protocol identification. This can be achieved by using an NLPID value 0x80 to indicate that a SNAP header follows. A SNAP header is of the form +------+------+------+------+------+ | OUI | PID | +------+------+------+------+------+ The three-octet Organizationally Unique Identifier (OUI) identifies an organization which administers the meaning of the two-octet Protocol Identifier (PID) which follows. Together they identify a distinct protocol. Note that OUI 0x00-00-00 specifies that the following PID is an EtherType. The format of the AAL5 CPCS-PDU Payload field for routed non-NLPID PDUs shall thus be as follows: Heinanen Expires March 16, 1993 [Page 12] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Routed non-NLPID PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00-00-00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-00-00 | +-------------------------------+ | EtherType (2 octets) | +-------------------------------+ | . | | Carried PDU | | (up to 2^16 - 9 octets) | | . | +-------------------------------+ The three octet PAD field is used to align the carried PDU at a four octet boundary. According to the above described encapsulation scheme, PDUs of those protocols, such as IP and CLNP, that have a unique NLPID assigned to them, could be encapsulated in two different ways. In order to eliminate the conflict, the SNAP variation shall only be used if no NLPID value is defined for the given protocol. This results in a smaller frame and less processing overhead at the receiver. 5.2. NLPID Encapsulation for Bridged Protocols In NLPID Encapsulation bridged PDUs are encapsulated by identifying the type of the bridged media in the SNAP header. As with routed non-NLPID protocols, the presence of the SNAP header is indicated by the NLPID value 0x80. With bridged protocols the OUI value in the SNAP header is the 802.1 organization code 0x00-80-C2 and the actual type of the bridged media is specified by the two octet PID. Additionally, the PID indicates whether the original FCS is preserved within the bridged PDU. The media type (PID) values that can be used in ATM encapsulation are listed in the Appendix. The AAL5 CPCS-PDU Payload field carrying a bridged PDU shall, therefore, have one of the following formats. Padding is added before the NLPID field if necessary in order to align the user information of the bridged PDU at a four octet boundary. Heinanen Expires March 16, 1993 [Page 13] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged Ethernet/802.3 PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-01 or 0x00-07 | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-01) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 14] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.4 PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-02 or 0x00-08 | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-02) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 15] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.5 PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-03 or 0x00-09 | +-------------------------------+ | PAD 0xXX | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-03) | +-------------------------------+ Note that the 802.5 Access Control (AC) field has no significance outside the local 802.5 subnetwork. It can thus be regarded as a PAD field, which can be set to any value (XX). Heinanen Expires March 16, 1993 [Page 16] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged FDDI PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-04 or 0x00-0A | +-------------------------------+ | PAD 0x00 | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (if PID is 0x00-04) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 17] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.6 PDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | PAD 0x00-00-00 | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-0B | +-------------------------------+ ------ | Reserved | BEtag | Common +---------------+---------------+ PDU | BAsize | Header +-------------------------------+ ------- | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | | +- Common PDU Trailer -+ | | +-------------------------------+ Note that in bridged 802.6 PDUs, there is only one choice for the PID value, since the presence of a CRC-32 is indicated by the CIB bit in the header of the MAC frame. The Common Protocol Data Unit (PDU) Header and Trailer are conveyed to allow pipelining at the egress bridge to an 802.6 subnetwork. Specifically, the Common PDU Header contains the BAsize field, which contains the length of the PDU. If this field is not available to the egress 802.6 bridge, then that bridge cannot begin to transmit the segmented PDU until it has received the entire PDU, calculated the length, and inserted the length into the BAsize field. If the field is available, the egress 802.6 bridge can extract the length from the BAsize field of the Common PDU Header, insert it into the corresponding field of the first segment, and immediately transmit the segment onto the 802.6 subnetwork. Thus, the bridge can begin transmitting the 802.6 PDU before it has received the complete PDU. Heinanen Expires March 16, 1993 [Page 18] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 One should note that the Common PDU Header and Trailer of the encapsulated frame should not be simply copied to the outgoing 802.6 subnetwork because the encapsulated BEtag value may conflict with the previous BEtag value transmitted by that bridge. Payload Format for BPDUs +-------------------------------+ | XXXXXXX0 (Q.922 Addr MSO) | +-------------------------------+ | XXXXXXX1 (Q.922 Addr LSO) | +-------------------------------+ | 0x03 (Q.922 Control) | +-------------------------------+ | NLPID 0x80 | +-------------------------------+ | OUI 0x00-80-C2 | +-------------------------------+ | PID 0x00-0E | +-------------------------------+ | | | BPDU as defined by | | 802.1(d) or 802.1(g) | | | +-------------------------------+ | LAN FCS | +-------------------------------+ 5.3. Fragmentation Issues In the event of I.555 interworking with Frame Relay, a fragmented frame may (rarely) be encountered. Frame fragments have an OUI of 0x00-80-C2 and a PID of 0x00-0D. For optional fragmentation procedures, see section 9 of RFC 1294. In general, fragmentation is not recommended. 6. VC Based Multiplexing In VC Based Multiplexing, the carried network interconnect protocol is identified implicitly by the VC connecting the two ATM stations, i.e. each protocol must be carried over a separate VC. There is therefore no need to include explicit multiplexing information in the Payload of the AAL5 CPCS-PDU. This results in minimal bandwidth and processing overhead. As indicated above, the carried protocol can be either manually configured or negotiated dynamically during call establishment using signalling procedures. The signalling details will be defined later in other RFCs when the relevant standards have become available. Heinanen Expires March 16, 1993 [Page 19] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 6.1. VC Based Multiplexing of Routed Protocols PDUs of routed protocols shall be carried as such in the Payload of the AAL5 CPCS-PDU. The format of the AAL5 CPCS-PDU Payload field thus becomes: Payload Format for Routed PDUs +-------------------------------+ | . | | Carried PDU | | (up to 2^16 - 1 octets) | | . | | . | +-------------------------------+ 6.2. VC Based Multiplexing of Bridged Protocols PDUs of bridged protocols shall be carried in the Payload of the AAL5 CPCS-PDU exactly as described in section 4.2 except that only the fields after the PID field are included. The AAL5 CPCS-PDU Payload field carrying a bridged PDU shall, therefore, have one of the following formats. Payload Format for Bridged Ethernet/802.3 PDUs +-------------------------------+ | PAD 0x00-00 | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (VC dependent option) | +-------------------------------+ Heinanen Expires March 16, 1993 [Page 20] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Payload Format for Bridged 802.4/802.5/FDDI PDUs +-------------------------------+ | PAD 0x00-00-00 or 0x00-00-XX | +-------------------------------+ | Frame Control (1 octet) | +-------------------------------+ | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | LAN FCS (VC dependent option) | +-------------------------------+ Note that the 802.5 Access Control (AC) field has no significance outside the local 802.5 subnetwork. It can thus be regarded as the last octet of the three octet PAD field, which in case of 802.5 can be set to any value (XX). Payload Format for Bridged 802.6 PDUs +---------------+---------------+ ------ | Reserved | BEtag | Common +---------------+---------------+ PDU | BAsize | Header +-------------------------------+ ------- | MAC destination address | +-------------------------------+ | | | (remainder of MAC frame) | | | +-------------------------------+ | | +- Common PDU Trailer -+ | | +-------------------------------+ Payload Format for BPDUs +-------------------------------+ | | | BPDU as defined by | | 802.1(d) or 802.1(g) | | | +-------------------------------+ | LAN FCS | +-------------------------------+ In case of Ethernet, 802.3, 802.4, 802.5, and FDDI PDUs the presense Heinanen Expires March 16, 1993 [Page 21] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 or absence of the trailing LAN FCS shall be identified implicitly by the VC, since the PID field is not included. PDUs with the LAN FCS and PDUs without the LAN FCS are thus considered to belong to different protocols even if the bridged media type would be the same. 7. Address Resolution An ATM network provides VCs that form the basis for connections between stations attached to it. A VC may also span over several ATM networks in an "ATM internet" consisting of an arbitrary concatenation of private ATM and public ATM networks. ATM VCs can be establish either (semi)permanently by the operator of the ATM network or dynamically by an ATM signalling protocol being defined by CCITT. In either case, each VC is identified by a Virtual Path Identifier (VPI) and a Virtual Channel Identifier (VCI). These identifiers have only local significance at each ATM interface. The support of multicasting in ATM networks is also presently under study in CCITT. If an ATM network supports multicasting, a special VPI/VCI pair can be used to indicate the sending of ATM cells to all stations in a particular multicast group. An ATM station may use the multicasting capability to dynamically resolve a protocol address to a hardware address using the standard Address Resolution Protocol (ARP) [7]. ARP packets are encapsulated within an LLC encoded CPCS- PDU Payload field as described in section 4. The details of multicast based address resolution will be described in a future RFC when more information is available on the ATM multicast mechanism. Multicast based address resolution will not be practical over large public or private ATM networks. In such cases it might be possible to apply a technique similar to "shortcut routing" [8] to augment the address resolution process. Address resolution could also work using a "well known" VC that connects to one or more address resolution servers. Another possibility might be to use DNS to store both the internet address and the physical ATM address of the destination. Finally, as proposed in [9], an ATM network could support signalling based on internet addresses in which case no address resolution would be needed. Further elaboration of address resolution mechanisms is outside the scope of this memo. 8. Bridging in an ATM Network An ATM interface acting as a bridge must be able to flood, forward, and filter bridged PDUs. Flooding is performed by sending the PDU to all possible appropriate destinations. In the ATM environment this means sending the PDU through each relevant VC. This may be accomplished by explicitly Heinanen Expires March 16, 1993 [Page 22] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 copying it to each VC or by using a multicast VC. To forward a PDU, a bridge must be able to associate a destination MAC address with a VC. It is unreasonable and perhaps impossible to require bridges to statically configure an association of every possible destination MAC address with a VC. Therefore, ATM bridges must provide enough information to allow an ATM interface to dynamically learn about foreign destinations beyond the set of ATM stations. To accomplish dynamic learning, a bridged PDU shall conform to the encapsulation described within section 3. In this way, the receiving ATM interface will know to look into the bridged PDU and learn the association between foreign destination and an ATM station. 9. For Further Study Due to incomplete standardization of ATM multicasting, addressing, and signalling mechanisms, details related to the negotiation of the multiplexing method as well as address resolution had to be left for further study. Also, this memo didn't try to specify which one (if any) of the two encapsulation based multiplexing methods should be preferred. Practical experience with real ATM networks is needed before these issues can be fully resolved. Acknowledgements This document has evolved from RFCs [2] and [3] from which much of the material has been adopted. Thanks to their authors T. Bradley, C. Brown, A. Malis, D. Piscitello, and C. Lawrence. In addition, the expertise of the ATM working group of the IETF has been invaluable in completing the document. Special thanks Brian Carpenter of CERN, Rao Cherukuri of IBM, Dan Grossman of Motorola, Joel Halpern of Network Systems, Bob Hinden of Sun Mircosystems, and Gary Kessler of MAN Technology Corporation for their detailed contributions. Security Considerations Security issues are not addressed in this memo. References [1] CCITT, "Report of WPXVIII". CCITT Study Group XVIII, Working Party 8, TD 62, Annex 5, Section C, Geneva 8-19 June, 1992. [2] Piscitello, D. and Lawrence, C., "The Transmission of IP Datagrams over the SMDS Service". RFC 1209, Bell Communications Heinanen Expires March 16, 1993 [Page 23] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Research, March 1991. [3] Bradley, T., Brown, C., and Malis, A., "Multiprotocol Interconnect over Frame Relay". RFC 1294, Wellfleet Communications, Inc. and BBN Communications, January 1992. [4] CCITT, "Draft Recommendation I.555". CCITT Study Group XVIII, Working Party 2, TD 36, Annex 4, Geneva 8-19 June, 1992. [5] CCITT, "Draft text for Q.93B". CCITT Study Group XI, Working Party XI/6-37, March 9-20, 1992. [6] Information technology - Telecommunications and Information Exchange Between Systems, "Protocol Identification in the Network Layer". ISO/IEC TR 9577, October 1990. [7] Plummer, David C., "An Ethernet Address Resolution Protocol". RFC 826, Symbolics, Inc., November 1982. [8] Tsuchiya, Paul, "Discovery and Routing over Large Public Data Networks". Internet Draft, Bellcore, July 1992. [9] Lyon, T., Liaw, F., and Romanow, A., "Network Layer Architecture for ATM Networks". Internet Draft, Sun Microsystems, July 1992. Appendix Partial List of NLPIDs 0x00 Null Network Layer or Inactive Set (not used with ATM) 0x80 SNAP 0x81 ISO CLNP 0x82 ISO ESIS 0x83 ISO ISIS 0xCC Internet IP List of Locally Assigned values of OUI 00-80-C2 with preserved FCS w/o preserved FCS Media ------------------ ----------------- -------------- 0x00-01 0x00-07 802.3/Ethernet 0x00-02 0x00-08 802.4 0x00-03 0x00-09 802.5 0x00-04 0x00-0A FDDI 0x00-05 0x00-0B 802.6 0x00-0D Fragments 0x00-0E BPDUs Heinanen Expires March 16, 1993 [Page 24] RFC DRAFT Multiprotocol Interconnect over ATM AAL5 October 1992 Author's Address Juha Heinanen Telecom Finland, PO Box 228, SF-33101 Tampere, Finland Phone: +358 49 500 958 Email: Juha.Heinanen@datanet.tele.fi Heinanen Expires March 16, 1993 [Page 25]