RFC 1954 INFORMATIONAL ATM · IPV4 · ENCAPSULATION

Ipsilon IPv4 over ATM: Transmission of Flow Labelled IPv4 on ATM Data Links Ipsilon Version 1.0

How to send labeled IPv4 packets over ATM links.

On rfc-editor.org ↗
PUBLISHED
May 1996
AUTHORS
P. Newman, W. Edwards, R. Hinden, E. Hoffman, F. Ching Liaw, T. Lyon, G. Minshall
STREAM
Legacy
DEFAULT MTU
1500 octets
FLOW TYPE 0 MTU
1500 octets
FLOW TYPE 1 MTU
1484 octets
FLOW TYPE 2 MTU
1492 octets
DEFAULT VPI/VCI
0/15
LABEL FORMAT
32-bit (4 reserved bits, 12 VPI bits, 16 VCI bits)
DOI
10.17487/RFC1954

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                 P. Newman, Ipsilon
Request for Comments: 1954                         W. L. Edwards, Sprint
Category: Informational                               R. Hinden, Ipsilon
                                                     E. Hoffman, Ipsilon
                                                  F. Ching Liaw, Ipsilon
                                                        T. Lyon, Ipsilon
                                                    G. Minshall, Ipsilon
                                                                May 1996


          Transmission of Flow Labelled IPv4 on ATM Data Links
                          Ipsilon Version 1.0

Status of this Memo

   This document provides information for the Internet community.  This
   memo does not specify an Internet standard of any kind.  Distribution
   of this memo is unlimited.

IESG Note:

   This note documents a private protocol for IPv4-based flows.  This
   protocol is NOT the product of an IETF working group nor is it a
   standards track document. It has not necessarily benefited from the
   widespread and in depth community review that standards track
   documents receive.

Abstract

   This document specifies the manner for transmitting IPv4 datagrams
   over an ATM data link, both in a default manner and in the presence
   of flow labelling via Ipsilon Flow Management Protocol [IFMP].

Table of Contents

   Introduction....................................................2
   1. Labels.......................................................2
   2. Default Encapsulation........................................2
   3. Flow Type 0 Encapsulation....................................3
   4. Flow Type 1 Encapsulation....................................4
   5. Flow Type 2 Encapsulation....................................5
   References......................................................7
   Security Considerations.........................................7
   Authors' Addresses..............................................7

Introduction

   This document specifies the manner for transmitting IPv4 datagrams
   over an ATM data link, both in a default manner and in the presence
   of flow labelling via Ipsilon Flow Management Protocol [IFMP].  ATM
   specific functions such as OAM cells, the CLP bit, and ABR RM cells
   are not used.  There are no reserved VCIs other than VPI = 0, VCI =
   0, which indicates an unassigned cell; and VPI = 0, VCI = 15, which
   is used for the default encapsulation.  IFMP messages must be sent
   using the default encapsulation.

1. Labels

   Labels, as carried by IFMP, are realized on an ATM data link as
   specific VPI/VCIs.  The format of the Label field for ATM labels is:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Reservd|          VPI          |             VCI               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The low order 16 bits of the label correspond to the VCI, with the
   least significant bit of the Label field corresponding to the least
   significant bit of the VCI.  If the link cannot support a full 16 bit
   VCI the unused bits of the VCI must be the most significant bits and
   they must be set to zero.

   The next 12 higher order bits of the label correspond to the VPI,
   with the least significant of these bits corresponding to the least
   significant bit of the VPI.  If the link cannot support a full 12 bit
   VPI, then the unused bits of the VPI must be the most significant
   bits and they must be set to zero.  The most significant four bits of
   the label are reserved.  They should be set to zero by the sender and
   ignored by the receiver.

2. Default Encapsulation

   The default encapsulation for IPv4 packets on ATM data links is the
   LLC/SNAP encapsulation specified in section 4.1 "LLC encapsulation
   for routed protocols" of RFC 1483 [RFC1483].  Such frames begin with
   the octets 0xAA 0xAA 0x03 0x00 0x00 0x00 0x08 0x00 (the LLC/SNAP
   header for IPv4).  The LLC/SNAP header is prefixed to the IP datagram
   and the entire packet is encapsulated within the payload of an AAL-5
   CPCS-PDU as specified in RFC 1483 and illustrated below:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               LLC (0xAA-AA-03)                |               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               |
   |                   SNAP (0x00-00-00-08-00)                     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   ~                         IPv4 Datagram                         ~
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Pad (0 - 47 octets)                         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +               AAL-5 CPCS-PDU Trailer (8 octets)               +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The maximum transmission unit (MTU) of an IPv4 datagram using the
   default encapsulation is 1500 octets.

   Frames using the default encapsulation are sent to: VPI = 0, VCI =
   15.

3. Flow Type 0 Encapsulation

   All IPv4 frames using Flow Type 0 are encapsulated within the payload
   of an AAL-5 CPCS-PDU.  This is the null encapsulation of section 5.1
   "VC based multiplexing of routed protocols" from RFC 1483 [RFC1483].
   There is no LLC/SNAP header.  The first octet of the frame
   corresponds to the first octet of the IPv4 datagram (i.e., the octet
   that contains the IP version number (4) and Internet Header Length
   (IHL) ).  The IP datagram is encapsulated within the payload of an
   AAL-5 CPCS-PDU as specified in RFC 1483 and illustrated below:

    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 Datagram                         ~
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Pad (0 - 47 octets)                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                AAL-5 CPCS-PDU Trailer (8 octets)              +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The MTU of an IPv4 datagram using Flow Type 0 encapsulation is 1500
   octets.

   Frames using Flow Type 0 encapsulation are sent to the VPI/VCI
   specified in the Label field of the corresponding IFMP Flow Type 0
   Redirect message element [IFMP].

4. Flow Type 1 Encapsulation

   All IPv4 frames using Flow Type 1 are encapsulated directly in the
   payload of an AAL-5 CPCS-PDU.  This is the null encapsulation of
   section 5.1 "VC based multiplexing of routed protocols" from RFC 1483
   [RFC1483].  There is no LLC/SNAP header.  Also, the following fields
   of the IP header are not transmitted: Version, Internet Header Length
   (IHL), Type of Service (TOS), Time to Live (TTL), Protocol, Source
   Address, and Destination Address.  In addition, the first 4 octets
   immediately following the IP header (as determined by the IHL field)
   are not transmitted.  (These 4 octets correspond to the source and
   destination ports for TCP and UDP datagrams.)  The value of the Total
   Length field is not changed; it remains the total length of the IP
   datagram before the above fields were removed.  The transmitted value
   of the Checksum field is the checksum value that would have been
   computed for the entire IP header if the TTL field had been set to
   zero (i.e., the actual value of the TTL field is "subtracted", using
   one's-complement arithmetic, from the Checksum before transmission).

   The IP datagram is encapsulated within the payload of an AAL-5 CPCS-
   PDU as specified in RFC 1483 and illustrated below:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Total Length          |        Identification         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Flags|     Fragment Offset     |           Checksum            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   ~                             Data                              ~
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Pad (0 - 47 octets)                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                AAL-5 CPCS-PDU Trailer (8 octets)              +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The MTU of the IPv4 datagram using Flow Type 1 encapsulation is 1484
   octets (1500 octets minus the 16 octets specified above).

   Frames using Flow Type 1 encapsulation are sent to the VPI/VCI
   specified in the Label field of the corresponding IFMP Flow Type 1
   redirect message element [IFMP].

5. Flow Type 2 Encapsulation

   All IPv4 frames using Flow Type 2 are encapsulated directly in the
   payload of an AAL-5 CPCS-PDU.  This is the null encapsulation of
   section 5.1 "VC based multiplexing of routed protocols" from RFC 1483
   [RFC1483].  There is no LLC/SNAP header.  Also, the following fields
   of the IP header are not transmitted: Version, Internet Header Length
   (IHL), Time to Live (TTL), Source Address, and Destination Address.
   The first 4 octets immediately following the IP header (as determined
   by the IHL field) are transmitted.  (These 4 octets correspond to the
   source and destination ports for TCP and UDP datagrams.) The value of
   the Total Length field is not changed; it remains the total length of
   the IP datagram before the above fields were removed.  The
   transmitted value of the Checksum field is the checksum value that
   would have been computed for the entire IP header if the TTL field
   had been set to zero (i.e., the actual value of the TTL field is
   "subtracted", using one's-complement arithmetic, from the Checksum
   before transmission).

   The IP datagram is encapsulated within the payload of an AAL-5 CPCS-
   PDU as specified in RFC 1483 and illustrated below:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Reserved    |Type of Service|         Total Length          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |        Identification         |Flags|     Fragment Offset     |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Reserved    |   Protocol    |           Checksum            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   ~                             Data                              ~
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Pad (0 - 47 octets)                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                AAL-5 CPCS-PDU Trailer (8 octets)              +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The Reserved fields are not used and should be set to zero by the
   sender and ignored by the receiver.

   The MTU of the IPv4 datagram using Flow Type 2 encapsulation is 1492
   octets (1500 octets minus the 8 octets specified above).

   Frames using Flow Type 2 encapsulation are sent to the VPI/VCI
   specified in the Label field of the corresponding IFMP Flow Type 2
   redirect message element [IFMP].

References

      [IFMP] Newman, P., et. al., "Ipsilon Flow Management Protocol
                Specification for IPv Version 1.0", Ipsilon Networks
                Inc., RFC 1953, May 1996.

      [RFC1483] Heinanen, J., "Multiprotocol Encapsulation over ATM
                Adaptation Layer 5", RFC 1483, July 1993.

SECURITY CONSIDERATIONS

   Security issues are not discussed in this document.

AUTHORS' ADDRESSES

   Peter Newman                        Phone: +1 (415) 846-4603
   Ipsilon Networks, Inc.              EMail: pn@ipsilon.com

   W. L. Edwards, Chief Scientist      Phone:  +1 (913) 534 5334
   Sprint                              EMail:  texas@sprintcorp.com

   Robert M. Hinden                    Phone: +1 (415) 846-4604
   Ipsilon Networks, Inc.              EMail: hinden@ipsilon.com

   Eric Hoffman                        Phone: +1 (415) 846-4610
   Ipsilon Networks, Inc.              EMail: hoffman@ipsilon.com

   Fong Ching Liaw                     Phone: +1 (415) 846-4607
   Ipsilon Networks, Inc.              EMail: fong@ipsilon.com

   Tom Lyon                            Phone: +1 (415) 846-4601
   Ipsilon Networks, Inc.              EMail: pugs@ipsilon.com

   Greg Minshall                       Phone: +1 (415) 846-4605
   Ipsilon Networks, Inc.              EMail: minshall@ipsilon.com

Ipsilon Networks, Inc. is located at:

   2191 East Bayshore Road
   Suite 100
   Palo Alto, CA 94303
   USA

Sprint is located at:

   Sprint
   Sprint Technology Services - Long Distance Division
   9300 Metcalf Avenue
   Mailstop KSOPKB0802
   Overland Park, KS 66212-6333
   USA

AI ELI5

On this page
PROBLEMATM is a fast network technology that uses small cells and virtual circuits, while IPv4 uses datagrams. They have different packet structures, so IPv4 must be encapsulated when sent over ATM. When IFMP labels are used, the encapsulation changes based on the flow type.
MECHANISMRFC 1954 specifies three encapsulation methods for IPv4 on ATM: a default encapsulation using LLC/SNAP, and two optimized encapsulations for labeled flows that omit redundant header fields depending on the flow type.
EFFICIENT TRANSMISSIONIPv4 packets can be efficiently transmitted over ATM, with or without IFMP labels. The labeled encapsulations reduce overhead by removing header fields that are redundant or already captured in the IFMP flow identifier.

§1Introduction

This document specifies how to transmit IPv4 datagrams over an ATM data link in two scenarios: in the default case without labels, and when flow labels are applied via the Ipsilon Flow Management Protocol (IFMP, described in RFC 1953).

ATM is a connection-oriented network technology where data is sent in small fixed-size cells over virtual circuits identified by VPI (Virtual Path Identifier) and VCI (Virtual Circuit Identifier) pairs. The default encapsulation uses LLC/SNAP headers and is always available. When IFMP is used to label flows, optimized encapsulations can omit certain redundant IPv4 header fields to reduce overhead.

The document defines the label format for ATM and three flow-specific encapsulations corresponding to the three flow types defined in RFC 1953.

ATM is like a fast express postal system with many sorting bins. This RFC explains how to wrap internet packets so they fit properly in ATM's bins and how to handle shortcuts for regular mail runs.

§2Labels on ATM

In IFMP, a label is a 32-bit value. On ATM, labels are mapped to VPI/VCI pairs: the low 16 bits of the label correspond to the VCI, and the next 12 bits correspond to the VPI. The high 4 bits are reserved and must be set to zero.

If a link cannot support the full 12-bit VPI or 16-bit VCI, the unused bits must be the most significant bits and must be set to zero.

The label space is managed at each end of a link, and each label maps to a virtual circuit on that link.

A label is just a pair of numbers that pick which bin and which slot within that bin to use on the ATM network.

§3Default Encapsulation

The default encapsulation for IPv4 on ATM is the LLC/SNAP encapsulation specified in RFC 1483. Every IPv4 packet is prefixed with an 8-byte LLC/SNAP header (bytes 0xAA 0xAA 0x03 0x00 0x00 0x00 0x08 0x00) that identifies the protocol as IPv4.

The entire packet (header plus IPv4 datagram) is then encapsulated within the payload of an AAL-5 CPCS-PDU (ATM Adaptation Layer 5 Common Part Convergence Sublayer Protocol Data Unit). AAL-5 adds padding (0 to 47 octets) and an 8-octet trailer.

The maximum transmission unit (MTU) for IPv4 datagrams using the default encapsulation is 1500 octets. Default encapsulation frames are sent to VPI = 0, VCI = 15.

IFMP protocol messages must use the default encapsulation.

The default way is to add a label and an envelope to the internet packet, like putting a certified letter in a box. The biggest letter is 1500 bytes.

§4Flow Type 0: Changing Encapsulation

Flow Type 0 uses null encapsulation: the IPv4 datagram is placed directly in the AAL-5 payload with no LLC/SNAP header. This encapsulation is used when redirecting all IPv4 traffic, without regard to source or destination.

Because Flow Type 0 matches all IPv4 packets (regardless of source, destination, port, or other fields), it offers a simple way to apply a label to general IPv4 traffic.

The MTU is 1500 octets, and frames are sent to the VPI/VCI specified in the IFMP Flow Type 0 Redirect message.

Flow Type 0 is the simplest: just put the internet packet directly in the envelope, without the certified mail label, for very general traffic.

§5Flow Types 1 and 2: Optimized Encapsulations

Flow Type 1 uses null encapsulation and omits several redundant IPv4 header fields: Version, IHL, Type of Service, TTL, Protocol, and both addresses. It also omits the first 4 octets after the IP header (the source and destination ports for TCP and UDP). The MTU is reduced to 1484 octets (1500 minus 16 bytes).

Flow Type 2 is similar but keeps the source and destination ports and omits only Version, IHL, TTL, and the addresses. Its MTU is 1492 octets (1500 minus 8 bytes).

Both use the checksum value that would result if the TTL field were zero. This allows the receiver to verify the checksum even though the TTL may differ.

These optimized encapsulations reduce overhead for labeled flows by removing header information that is already known from the IFMP flow identifier (which includes addresses and ports for both Type 1 and Type 2).

For regular conversations, we can skip writing down the address and some other stuff because both routers already know it from the label. This saves space in the envelope.

MTU and header omissions for each encapsulation type
EncapsulationLLC/SNAP HeaderOmitted FieldsMTU
DefaultPresent (8 bytes)None1500 octets
Flow Type 0NoneNone1500 octets
Flow Type 1 THIS RFCNoneVersion, IHL, TOS, TTL, Protocol, addresses, ports1484 octets
Flow Type 2 THIS RFCNoneVersion, IHL, TTL, addresses1492 octets

§6References