home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_i / draft-ietf-ion-ipatm-classic2-03.txt < prev    next >
Text File  |  1997-10-07  |  65KB  |  1,512 lines

  1.  
  2.  
  3. Network Working Group                                       Mark Laubach
  4. INTERNET DRAFT                                               Com21, Inc.
  5. Expires 6 April 1998
  6. Obsoletes: 1577, 1626                                       Joel Halpern
  7. <draft-ion-ipatm-classic2-03.txt>               Newbridge Networks, Inc.
  8.  
  9.                                                           6 October 1997
  10.  
  11.  
  12.  
  13.  
  14.                      Classical IP and ARP over ATM
  15.  
  16.  
  17. Status of this Memo
  18.  
  19.    This memo is an internet draft. Internet Drafts are working documents
  20.    of the Internet Engineering Task Force (IETF), its Areas, and its
  21.    Working Groups. Note that other groups may also distribute working
  22.    documents as Internet Drafts.
  23.  
  24.    Internet Drafts are draft documents valid for a maximum of six
  25.    months.  Internet Drafts may be updated, replaced, or obsoleted by
  26.    other documents at any time. It is not appropriate to use Internet
  27.    Drafts as reference material or to cite them other than as a "working
  28.    draft" or "work in progress".  Please check the lid-abstracts.txt
  29.    listing contained in the internet-drafts shadow directories on
  30.    nic.ddn.mil, nnsc.nsf.net, nic.nordu.net, ftp.nisc.src.com, or
  31.    munnari.oz.au to learn the current status of any Internet Draft.
  32.  
  33.  
  34. Table of Contents
  35.  
  36.    1. ABSTRACT  . . . . . . . . . . . . . . . . . . . . . . . . . .  2
  37.    2. ACKNOWLEDGMENT  . . . . . . . . . . . . . . . . . . . . . . .  3
  38.    3. CONVENTIONS . . . . . . . . . . . . . . . . . . . . . . . . .  3
  39.    4. INTRODUCTION  . . . . . . . . . . . . . . . . . . . . . . . .  3
  40.    5. IP SUBNETWORK CONFIGURATION . . . . . . . . . . . . . . . . .  6
  41.    5.1  Background  . . . . . . . . . . . . . . . . . . . . . . . .  6
  42.    5.2  LIS Configuration Requirements  . . . . . . . . . . . . . .  7
  43.    5.3  LIS Router Additional Configuration . . . . . . . . . . . .  8
  44.    6. IP PACKET FORMAT  . . . . . . . . . . . . . . . . . . . . . .  8
  45.    7. DEFAULT VALUE FOR IP MTU OVER ATM AAL5  . . . . . . . . . . .  9
  46.    7.1  Permanent Virtual Circuits  . . . . . . . . . . . . . . . .  9
  47.    7.2  Switched Virtual Circuits . . . . . . . . . . . . . . . . .  9
  48.    7.3  Path MTU Discovery Required . . . . . . . . . . . . . . . . 11
  49.    8. LIS ADDRESS RESOLUTION SERVICES . . . . . . . . . . . . . . . 11
  50.    8.1  ATM-based ARP and InARP Equivalent Services . . . . . . . . 11
  51.  
  52.  
  53.  
  54. Laubach+Halpern                                                 [Page 1]
  55.  
  56. DRAFT                 Classical IP and ARP over ATM         October 1997
  57.  
  58.  
  59.    8.2  Permanent Virtual Connections . . . . . . . . . . . . . . . 12
  60.    8.3  Switched Virtual Connections  . . . . . . . . . . . . . . . 12
  61.    8.4  ATMARP Single Server Operational Requirements . . . . . . . 13
  62.    8.5  ATMARP Client Operational Requirements  . . . . . . . . . . 14
  63.    8.5.1  Client ATMARP Table Aging . . . . . . . . . . . . . . . . 16
  64.    8.5.2  Non-Normal VC Operations  . . . . . . . . . . . . . . . . 17
  65.    8.5.3  Use of ATM ARP in Mobile-IP Scenarios . . . . . . . . . . 17
  66.    8.6  Address Resolution Server Selection . . . . . . . . . . . . 17
  67.    8.6.1  PVCs to ATMARP Servers  . . . . . . . . . . . . . . . . . 18
  68.    8.7  ATMARP Packet Formats . . . . . . . . . . . . . . . . . . . 18
  69.    8.7.1  ATMARP/InATMARP Request and Reply Packet Formats  . . . . 18
  70.    8.7.2  Receiving Unknown ATMARP packets  . . . . . . . . . . . . 20
  71.    8.7.3  TL, ATM Number, and ATM Subaddress Encoding . . . . . . . 20
  72.    8.7.4  ATMARP_NAK Packet Format  . . . . . . . . . . . . . . . . 21
  73.    8.7.5  Variable Length Requirements for ATMARP Packets . . . . . 21
  74.    8.8  ATMARP/InATMARP Packet Encapsulation  . . . . . . . . . . . 22
  75.    9. IP BROADCAST ADDRESS  . . . . . . . . . . . . . . . . . . . . 23
  76.    10. IP MULTICAST ADDRESS . . . . . . . . . . . . . . . . . . . . 23
  77.    11. SECURITY . . . . . . . . . . . . . . . . . . . . . . . . . . 23
  78.    12. MIB SPECIFICATION  . . . . . . . . . . . . . . . . . . . . . 24
  79.    13. OPEN ISSUES  . . . . . . . . . . . . . . . . . . . . . . . . 24
  80.    14. REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . 24
  81.    15. AUTHORS  . . . . . . . . . . . . . . . . . . . . . . . . . . 26
  82.    APPENDIX A - Update Information  . . . . . . . . . . . . . . . . 27
  83.  
  84.  
  85. 1.  ABSTRACT
  86.  
  87.    This memo defines an initial application of classical IP and ARP in
  88.    an Asynchronous Transfer Mode (ATM) network environment configured as
  89.    a Logical IP Subnetwork (LIS) as described in Section 5.  This memo
  90.    does not preclude the subsequent development of ATM technology into
  91.    areas other than a LIS; specifically, as single ATM networks grow to
  92.    replace many Ethernet local LAN segments and as these networks become
  93.    globally connected, the application of IP and ARP will be treated
  94.    differently.  This memo considers only the application of ATM as a
  95.    direct replacement for the "wires" and local LAN segments connecting
  96.    IP end-stations ("members") and routers operating in the "classical"
  97.    LAN-based paradigm. Issues raised by MAC level bridging and LAN
  98.    emulation are beyond the scope of this paper.
  99.  
  100.    This memo introduces general ATM technology and nomenclature.
  101.    Readers are encouraged to review the ATM Forum and ITU-TS (formerly
  102.    CCITT) references for more detailed information about ATM
  103.    implementation agreements and standards.
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110. Laubach+Halpern                                                 [Page 2]
  111.  
  112. DRAFT                 Classical IP and ARP over ATM         October 1997
  113.  
  114.  
  115. 2.  ACKNOWLEDGMENT
  116.  
  117.    The authors would like to thank the efforts of the IP over ATM
  118.    Working Group of the IETF. Without their substantial, and sometimes
  119.    contentious support, of the Classical IP over ATM model, this updated
  120.    memo would not have been possible. Section 7, on Default MTU, has
  121.    been incorporated directly from Ran Atkinson's RFC-1626, with his
  122.    permission.  Thanks for Andy Malis for an early review and comments
  123.    for rolc and ion related issues.
  124.  
  125.  
  126.  
  127. 3.  CONVENTIONS
  128.  
  129.    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  130.    "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
  131.    document are to be interpreted as described in RFC 2119 [20].
  132.  
  133.  
  134. 4.  INTRODUCTION
  135.  
  136.    The goal of this specification is to allow compatible and
  137.    interoperable implementations for transmitting IP datagrams and ATM
  138.    Address Resolution Protocol (ATMARP) requests and replies over ATM
  139.    Adaptation Layer 5 (AAL5)[2,6].
  140.  
  141.    This memo specifies the stable foundation baseline operational model
  142.    which will always be available in IP and ARP over ATM
  143.    implementations. Subsequent memos will build upon and refine this
  144.    model, however, in the absence or failure of those extensions,
  145.    operations will default to the specifications contained in this memo.
  146.    Consequently, this memo will not reference these other extensions.
  147.  
  148.    This memo defines only the operation of IP and address resolution
  149.    over ATM, and is not meant to describe the operation of ATM networks.
  150.    Any reference to virtual connections, permanent virtual connections,
  151.    or switched virtual connections applies only to virtual channel
  152.    connections used to support IP and address resolution over ATM, and
  153.    thus are assumed to be using AAL5.  This memo places no restrictions
  154.    or requirements on virtual connections used for other purposes.
  155.  
  156.    Initial deployment of ATM provides a LAN segment replacement for:
  157.  
  158.    1)  Local area networks (e.g., Ethernets, Token Rings and FDDI).
  159.  
  160.    2)  Local-area backbones between existing (non-ATM) LANs.
  161.  
  162.    3)  Dedicated circuits or frame relay PVCs between IP routers.
  163.  
  164.  
  165.  
  166. Laubach+Halpern                                                 [Page 3]
  167.  
  168. DRAFT                 Classical IP and ARP over ATM         October 1997
  169.  
  170.  
  171.    NOTE: In 1), local IP routers with one or more ATM interfaces will be
  172.    able to connect islands of ATM networks.  In 3), public or private
  173.    ATM Wide Area networks will be used to connect IP routers, which in
  174.    turn may or may not connect to local ATM networks.  ATM WANs and LANs
  175.    may be interconnected.
  176.  
  177.    Private ATM networks (local or wide area) will use the private ATM
  178.    address structure specified in the ATM Forum UNI 3.1 specification
  179.    [9] or as in the ATM Forum UNI 4.0 specification [19]. This structure
  180.    is modeled after the format of an OSI Network Service Access Point
  181.    Address. A private ATM address uniquely identifies an ATM endpoint.
  182.    Public networks will use either the address structure specified in
  183.    ITU-TS recommendation E.164 or the private network ATM address
  184.    structure. An E.164 address uniquely identifies an interface to a
  185.    public network.
  186.  
  187.    The characteristics and features of ATM networks are different than
  188.    those found in LANs:
  189.  
  190.    o   ATM provides a Virtual Connection (VC) switched environment. VC
  191.        setup may be done on either a Permanent Virtual Connection (PVC)
  192.        or dynamic Switched Virtual Connection (SVC) basis. SVC call
  193.        management signalling is performed via implementations of the UNI
  194.        3.1 protocol [7,9].
  195.  
  196.    o   Data to be passed by a VC is segmented into 53 octet quantities
  197.        called cells (5 octets of ATM header and 48 octets of data).
  198.  
  199.    o   The function of mapping user Protocol Data Units (PDUs) into the
  200.        information field of the ATM cell and vice versa is performed in
  201.        the ATM Adaptation Layer (AAL).  When a VC is created a specific
  202.        AAL type is associated with the VC.  There are four different AAL
  203.        types, which are referred to individually as "AAL1", "AAL2",
  204.        "AAL3/4", and "AAL5".  (NOTE: this memo concerns itself with the
  205.        mapping of IP and ATMARP over AAL5 only.  The other AAL types are
  206.        mentioned for introductory purposes only.)  The AAL type is known
  207.        by the VC end points via the call setup mechanism and is not
  208.        carried in the ATM cell header.  For PVCs the AAL type is
  209.        administratively configured at the end points when the Connection
  210.        (circuit) is set up.  For SVCs, the AAL type is communicated
  211.        along the VC path via UNI 3.1 as part of call setup establishment
  212.        and the end points use the signaled information for
  213.        configuration.  ATM switches generally do not care about the AAL
  214.        type of VCs.  The AAL5 format specifies a packet format with a
  215.        maximum size of (64K - 1) octets of user data. Cells for an AAL5
  216.        PDU are transmitted first to last, the last cell indicating the
  217.        end of the PDU.  ATM standards guarantee that on a given VC, cell
  218.        ordering is preserved end-to-end.  NOTE: AAL5 provides a non-
  219.  
  220.  
  221.  
  222. Laubach+Halpern                                                 [Page 4]
  223.  
  224. DRAFT                 Classical IP and ARP over ATM         October 1997
  225.  
  226.  
  227.        assured data transfer service - it is up to higher-level
  228.        protocols to provide retransmission.
  229.  
  230.    o   ATM Forum signaling defines point-to-point and point-to-
  231.        multipoint Connection setup [9, 19].  Multipoint-to-multipoint
  232.        VCs are not yet specified by ITU-TS or ATM Forum.
  233.  
  234.    o   An ATM Forum ATM address is either encoded as an NSAP form ATM
  235.        EndSystem Address (AESA) or is an E.164 Public-UNI address [9,
  236.        19].  In some cases, both an AESA and an E.164 Public UNI address
  237.        are needed by an ATMARP client to reach another host or router.
  238.        Since the use of AESAs and E.164 public UNI addresses by ATMARP
  239.        are analogous to the use of Ethernet addresses, the notion of
  240.        "hardware address" is extended to encompass ATM addresses in the
  241.        context of ATMARP, even though ATM addresses need not have
  242.        hardware significance.  ATM Forum NSAP format addresses (AESA)
  243.        use the same basic format as U.S. GOSIP OSI NSAPAs [11].  NOTE:
  244.        ATM Forum addresses should not be construed as being U.S. GOSIP
  245.        NSAPAs.  They are not, the administration is different, which
  246.        fields get filled out are different, etc.  In this document these
  247.        will be referred to as NSAPAs.
  248.  
  249.    This memo describes the initial deployment of ATM within "classical"
  250.    IP networks as a direct replacement for local area networks
  251.    (Ethernets) and for IP links which interconnect routers, either
  252.    within or between administrative domains. The "classical" model here
  253.    refers to the treatment of the ATM host adapter as a networking
  254.    interface to the IP protocol stack operating in a LAN-based paradigm.
  255.  
  256.    Characteristics of the classical model are:
  257.  
  258.    o   The same maximum transmission unit (MTU) size is the default for
  259.        all VCs in a LIS [2]. However, on a VC-by-VC point-to-point
  260.        basis, the MTU size may be negotiated during connection setup
  261.        using Path MTU Discovery to better suit the needs of the
  262.        cooperating pair of IP members or the attributes of the
  263.        communications path. (Refer to Section 7.3)
  264.    o   Default LLC/SNAP encapsulation of IP packets.
  265.  
  266.    o   End-to-end IP routing architecture stays the same.
  267.  
  268.    o   IP addresses are resolved to ATM addresses by use of an ATMARP
  269.        service within the LIS - ATMARPs stay within the LIS.  From a
  270.        client's perspective, the ATMARP architecture stays faithful to
  271.        the basic ARP model presented in [3].
  272.  
  273.    o   One IP subnet is used for many hosts and routers. Each VC
  274.        directly connects two IP members within the same LIS.
  275.  
  276.  
  277.  
  278. Laubach+Halpern                                                 [Page 5]
  279.  
  280. DRAFT                 Classical IP and ARP over ATM         October 1997
  281.  
  282.  
  283.    Future memos will describe the operation of IP over ATM when ATM
  284.    networks become globally deployed and interconnected.
  285.  
  286.    The deployment of ATM into the Internet community is just beginning
  287.    and will take many years to complete. During the early part of this
  288.    period, we expect deployment to follow traditional IP subnet
  289.    boundaries for the following reasons:
  290.  
  291.    o   Administrators and managers of IP subnetworks will tend to
  292.        initially follow the same models as they currently have deployed.
  293.        The mindset of the community will change slowly over time as ATM
  294.        increases its coverage and builds its credibility.
  295.  
  296.    o   Policy administration practices rely on the security, access,
  297.        routing, and filtering capability of IP Internet gateways: i.e.
  298.        firewalls. ATM will not be allowed to "back-door" around these
  299.        mechanisms until ATM provides better management capability than
  300.        the existing services and practices.
  301.  
  302.    o   Standards for global IP over ATM will take some time to complete
  303.        and deploy.
  304.  
  305.    This memo details the treatment of the classical model of IP and
  306.    ATMARP over ATM. This memo does not preclude the subsequent treatment
  307.    of ATM networks within the IP framework as ATM becomes globally
  308.    deployed and interconnected; this will be the subject of future
  309.    documents. This memo does not address issues related to transparent
  310.    data link layer interoperability.
  311.  
  312.  
  313. 5.  IP SUBNETWORK CONFIGURATION
  314.  
  315. 5.1 Background
  316.  
  317.    In the LIS scenario, each separate administrative entity configures
  318.    its hosts and routers within a LIS. Each LIS operates and
  319.    communicates independently of other LISs on the same ATM network.
  320.  
  321.    In the classical model, hosts communicate directly via ATM to other
  322.    hosts within the same LIS using the ATMARP service as the mechanism
  323.    for resolving target IP addresses to target ATM endpoint addresses.
  324.    The ATMARP service has LIS scope only and serves all hosts in the
  325.    LIS. Communication to hosts located outside of the local LIS is
  326.    provided via an IP router. This router is an ATM endpoint attached to
  327.    the ATM network that is configured as a member of one or more LISs.
  328.    This configuration MAY result in a number of disjoint LISs operating
  329.    over the same ATM network. Using this model hosts of differing IP
  330.    subnets MUST communicate via an intermediate IP router even though it
  331.  
  332.  
  333.  
  334. Laubach+Halpern                                                 [Page 6]
  335.  
  336. DRAFT                 Classical IP and ARP over ATM         October 1997
  337.  
  338.  
  339.    may be possible to open a direct VC between the two IP members over
  340.    the ATM network.
  341.  
  342.    By default, the ATMARP service and the classical LIS routing model
  343.    MUST be available to any IP member client in the LIS.
  344.  
  345. 5.2 LIS Configuration Requirements
  346.  
  347.    The requirements for IP members  (hosts, routers) operating in an ATM
  348.    LIS configuration are:
  349.  
  350.    o   All members of the LIS have the same IP network/subnet number and
  351.        address mask [8].
  352.  
  353.    o   All members within a LIS are directly connected to the ATM
  354.        network.
  355.  
  356.    o   All members of a LIS MUST have a mechanism for resolving IP
  357.        addresses to ATM addresses via ATMARP (based on [3]) and vice
  358.        versa via InATMARP (based on [12]) when using SVCs.  Refer to
  359.        Section 8 "Address Resolution" in this memo.
  360.  
  361.    o   All members of a LIS MUST have a mechanism for resolving VCs to
  362.        IP addresses via InATMARP (based on [12]) when using PVCs.  Refer
  363.        to Section 8 "Address Resolution" in this memo.
  364.  
  365.    o   All members within a LIS MUST be able to communicate via ATM with
  366.        all other members in the same LIS; i.e., the Virtual Connection
  367.        topology underlying the intercommunication among the members is
  368.        fully meshed.
  369.  
  370.    The following list identifies the set of ATM specific parameters that
  371.    MUST be implemented in each IP station connected to the ATM network:
  372.  
  373.    o   ATM Hardware Address (atm$ha). The ATM address of the individual
  374.        IP station.
  375.  
  376.    o   ATMARP Request Address list (atm$arp-req-list): atm$arp-req-list
  377.        is a list containing one or more ATM addresses of individual
  378.        ATMARP servers located within the LIS. In an SVC environment,
  379.        ATMARP servers are used to resolve target IP addresses to target
  380.        ATM address via an ATMARP request and reply protocol. ATMARP
  381.        servers MUST have authoritative responsibility for resolving
  382.        ATMARP requests of all IP members using SVCs located within the
  383.        LIS.
  384.  
  385.    A LIS MUST have a single ATMARP service entry configured and
  386.    available to all members of the LIS who use SVCs.
  387.  
  388.  
  389.  
  390. Laubach+Halpern                                                 [Page 7]
  391.  
  392. DRAFT                 Classical IP and ARP over ATM         October 1997
  393.  
  394.  
  395.    In the case where there is only a single ATMARP server within the
  396.    LIS, then all ATMARP clients MUST be configured identically to have
  397.    only one non-null entry in atm$arp-req-list configured with the same
  398.    address of the single ATMARP service.
  399.  
  400.    If the IP member is operating with PVCs only, then atm$arp-req-list
  401.    MUST be configured with all null entries and the client MUST not make
  402.    queries to either address resolution service.
  403.  
  404.    Within the restrictions mentioned above and in Section 8, local
  405.    administration MUST decide which server address(es) are appropriate
  406.    for atm$arp-req-list.
  407.  
  408.    By default, atm$arp-req-list MUST be configured using the MIB [18].
  409.  
  410.    Manual configuration of the addresses and address lists presented in
  411.    this section is implementation dependent and beyond the scope of this
  412.    document; i.e. this memo does not require any specific configuration
  413.    method. This memo does require that these addresses MUST be
  414.    configured completely on the client, as appropriate for the LIS,
  415.    prior to use by any service or operation detailed in this memo.
  416.  
  417. 5.3 LIS Router Additional Configuration
  418.  
  419.    It is RECOMMENDED that routers providing LIS functionality over the
  420.    ATM network also support the ability to interconnect multiple LISs.
  421.    Routers that wish to provide interconnection of differing LISs MUST
  422.    be able to support multiple sets of these parameters (one set for
  423.    each connected LIS) and be able to associate each set of parameters
  424.    to a specific IP network/ subnet number. In addition, it is
  425.    RECOMMENDED that a router be able to provide this multiple LIS
  426.    support with a single physical ATM interface that may have one or
  427.    more individual ATM endpoint addresses.  NOTE: this does not
  428.    necessarily mean different End System Identifiers (ESIs) when NSAPAs
  429.    are used.  The last octet of an NSAPA is the NSAPA Selector (SEL)
  430.    field which can be used to differentiate up to 256 different LISs for
  431.    the same ESI. (Refer to Section 5.1.3.1, "Private Networks" in [9].)
  432.  
  433.  
  434. 6.  IP PACKET FORMAT
  435.  
  436.    Implementations MUST support IEEE 802.2 LLC/SNAP encapsulation as
  437.    described in [2].  LLC/SNAP encapsulation is the default packet
  438.    format for IP datagrams.
  439.  
  440.    This memo recognizes that other encapsulation methods may be used
  441.    however, in the absence of other knowledge or agreement, LLC/SNAP
  442.    encapsulation is the default.
  443.  
  444.  
  445.  
  446. Laubach+Halpern                                                 [Page 8]
  447.  
  448. DRAFT                 Classical IP and ARP over ATM         October 1997
  449.  
  450.  
  451.    This memo recognizes that end-to-end signaling within ATM may allow
  452.    negotiation of encapsulation method on a per-VC basis.
  453.  
  454. 7.  DEFAULT VALUE FOR IP MTU OVER ATM AAL5
  455.  
  456.    Protocols in wide use throughout the Internet, such as the Network
  457.    File System (NFS), currently use large frame sizes (e.g. 8 KB).
  458.    Empirical evidence with various applications over the Transmission
  459.    Control Protocol (TCP) indicates that larger Maximum Transmission
  460.    Unit (MTU) sizes for the Internet Protocol (IP) tend to give better
  461.    performance. Fragmentation of IP datagrams is known to be highly
  462.    undesirable [16]. It is desirable to reduce fragmentation in the
  463.    network and thereby enhance performance by having the IP Maximum
  464.    Transmission Unit (MTU) for AAL5 be reasonably large.  NFS defaults
  465.    to an 8192 byte frame size. Allowing for RPC/XDR, UDP, IP, and LLC
  466.    headers, NFS would prefer a default MTU of at least 8300 octets.
  467.    Routers can sometimes perform better with larger packet sizes because
  468.    most of the performance costs in routers relate to "packets handled"
  469.    rather than "bytes transferred". So there are a number of good
  470.    reasons to have a reasonably large default MTU value for IP over ATM
  471.    AAL5.
  472.  
  473.    RFC-1209 specifies the IP MTU over SMDS to be 9180 octets, which is
  474.    larger than 8300 octets but still in the same range [1]. There is no
  475.    good reason for the default MTU of IP over ATM AAL5 to be different
  476.    from IP over SMDS, given that they will be the same magnitude. Having
  477.    the two be the same size will be helpful in interoperability and will
  478.    also help reduce incidence of IP fragmentation.
  479.  
  480.    Therefore, the default IP MTU for use with ATM AAL5 shall be 9180
  481.    octets.  All implementations compliant and conformant with this
  482.    specification shall support at least the default IP MTU value for use
  483.    over ATM AAL5.
  484.  
  485. 7.1  Permanent Virtual Circuits
  486.  
  487.    Implementations which only support Permanent Virtual Circuits (PVCs)
  488.    will (by definition) not implement any ATM signalling protocol. Such
  489.    implementations shall use the default IP MTU value of 9180 octets
  490.    unless both parties have agreed in advance to use some other IP MTU
  491.    value via some mechanism not specified here.
  492.  
  493. 7.2  Switched Virtual Circuits
  494.  
  495.    Implementations that support Switched Virtual Circuits (SVCs) MUST
  496.    attempt to negotiate the AAL CPCS-SDU size using the ATM signalling
  497.    protocol. The industry standard ATM signalling protocol uses two
  498.    different parts of the Information Element named "AAL Parameters" to
  499.  
  500.  
  501.  
  502. Laubach+Halpern                                                 [Page 9]
  503.  
  504. DRAFT                 Classical IP and ARP over ATM         October 1997
  505.  
  506.  
  507.    exchange information on the MTU over the ATM circuit being setup [9].
  508.    The Forward Maximum CPCS-SDU Size field contains the value over the
  509.    path from the calling party to the called party. The Backwards
  510.    Maximum CPCS-SDU Size Identifier field contains the value over the
  511.    path from the called party to the calling party. The ATM Forum
  512.    specifies the valid values of this identifier as 1 to 65535
  513.    inclusive. Note that the ATM Forum's User-to-Network-Interface (UNI)
  514.    signalling permits the MTU in one direction to be different from the
  515.    MTU in the opposite direction, so the Forward Maximum CPCS-SDU Size
  516.    Identifier might have a different value from the Backwards Maximum
  517.    CPCS-SDU Size Identifier on the same connection.
  518.  
  519.    If the calling party wishes to use the default MTU it shall still
  520.    include the "AAL Parameters" information element with the default
  521.    values for the Maximum CPCS-SDU Size as part of the SETUP message of
  522.    the ATM signalling protocol [9]. If the calling party desires to use
  523.    a different value than the default, it shall include the "AAL
  524.    Parameters" information element with the desired value for the
  525.    Maximum CPCS-SDU Size as part of the SETUP message of the ATM
  526.    Signalling Protocol. The called party will respond using the same
  527.    information elements and identifiers in its CONNECT message response
  528.    [9].
  529.  
  530.    If the called party receives a SETUP message containing the "Maximum
  531.    CPCS-SDU Size" in the AAL Parameters information element, it shall
  532.    handle the Forward and Backward Maximum CPCS-SDU Size Identifier as
  533.    follows:
  534.  
  535.    a)  If it is able to accept the ATM MTU values proposed by the SETUP
  536.        message, it shall include an AAL Parameters information element
  537.        in its response.  The Forward and Backwards Maximum CPCS-SDU Size
  538.        fields shall be present and their values shall be equal to the
  539.        corresponding values in the SETUP message.
  540.  
  541.    b)  If it wishes a smaller ATM MTU size than that proposed, then it
  542.        shall set the values of the Maximum CPCS-SDU Size in the AAL
  543.        Parameters information elements equal to the desired value in the
  544.        CONNECT message responding to the original SETUP message.
  545.  
  546.    c)  If the calling endpoint receives a CONNECT message that does not
  547.        contain the AAL Parameters Information Element, but the
  548.        corresponding SETUP message did contain the AAL Parameters
  549.        Information element (including the forward and backward CPCS-SDU
  550.        Size fields), it shall clear the call with cause "AAL Parameters
  551.        cannot be supported".
  552.  
  553.    d)  If either endpoint receives a STATUS message with cause
  554.        "Information Element Non-existent or Not Implemented" or cause
  555.  
  556.  
  557.  
  558. Laubach+Halpern                                                [Page 10]
  559.  
  560. DRAFT                 Classical IP and ARP over ATM         October 1997
  561.  
  562.  
  563.        ""Access Information Discarded", and with a diagnostic field
  564.        indicating the AAL Parameters Information Element identifier, it
  565.        shall clear the call with cause "AAL Parameters cannot be
  566.        supported."
  567.  
  568.    e)  If either endpoint receives CPCS-SDUs in excess of the negotiated
  569.        MTU size, it may use IP fragmentation or may clear the call with
  570.        cause "AAL Parameters cannot be supported".  In this case, an
  571.        error has occurred either due to a fault in an end system or in
  572.        the ATM network.  The error should be noted by ATM network
  573.        management for human examination and intervention.
  574.  
  575.    If the called endpoint incorrectly includes the Forward and Backward
  576.    Maximum CPCS-SDU Size fields in the CONNECT messages (e.g. because
  577.    the original SETUP message did not include these fields) or it sets
  578.    these fields to an invalid value, then the calling party shall clear
  579.    the call with cause "Invalid Information Element Contents".
  580.  
  581. 7.3  Path MTU Discovery Required
  582.  
  583.    The Path MTU Discovery mechanism is Internet Standard RFC-1191 [17]
  584.    and is an important mechanism for reducing IP fragmentation in the
  585.    Internet. This mechanism is particularly important because new subnet
  586.    ATM uses a default MTU sizes significantly different from older
  587.    subnet technologies such as Ethernet and FDDI.
  588.  
  589.    In order to ensure good performance throughout the Internet and also
  590.    to permit IP to take full advantage of the potentially larger IP
  591.    datagram sizes supported by ATM, all routers implementations that
  592.    comply or conform with this specification must also implement the IP
  593.    Path MTU Discovery mechanism as defined in RFC-1191 and clarified by
  594.    RFC-1435 [14]. Host implementations should implement the IP Path MTU
  595.    Discovery mechanism as defined in RFC-1191.
  596.  
  597. 8.  LIS ADDRESS RESOLUTION SERVICES
  598.  
  599. 8.1 ATM-based ARP and InARP Equivalent Services
  600.  
  601.    Address resolution within an ATM LIS SHALL make use of the ATM
  602.    Address Resolution Protocol (ATMARP) (based on [3]) and the Inverse
  603.    ATM Address Resolution Protocol (InATMARP) (based on [12]) and as
  604.    defined in this memo.  ATMARP is the same protocol as the ARP
  605.    protocol presented in [3] with extensions needed to support address
  606.    resolution in a unicast server ATM environment. InATMARP is the same
  607.    protocol as the original InARP protocol presented in [12] but applied
  608.    to ATM networks. All IP stations MUST support these protocols as
  609.    updated and extended in this memo.  Use of these protocols differs
  610.    depending on whether PVCs or SVCs are used.
  611.  
  612.  
  613.  
  614. Laubach+Halpern                                                [Page 11]
  615.  
  616. DRAFT                 Classical IP and ARP over ATM         October 1997
  617.  
  618.  
  619. 8.2 Permanent Virtual Connections
  620.  
  621.    An IP station MUST have a mechanism (e.g. manual configuration) for
  622.    determining what PVCs it has, and in particular which PVCs are being
  623.    used with LLC/SNAP encapsulation.  The details of the mechanism are
  624.    beyond the scope of this memo.
  625.  
  626.    All IP members supporting PVCs are required to use the Inverse ATM
  627.    Address Resolution Protocol (InATMARP) (refer to [12]) on those VCs
  628.    using LLC/SNAP encapsulation. In a strict PVC environment, the
  629.    receiver SHALL infer the relevant VC from the VC on which the
  630.    InATMARP_Request or response InATMARP_REPLY was received. When the
  631.    ATM source and/or target address is unknown, the corresponding ATM
  632.    address length in the InATMARP packet MUST be set to zero (0)
  633.    indicating a null length, and no storage be allocated in the InATMARP
  634.    packet, otherwise the appropriate address field should be filled in
  635.    and the corresponding length set appropriately. InATMARP packet
  636.    format details are presented later in this memo.
  637.  
  638.    Directly from [12]: "When the requesting station receives the
  639.    In[ATM]ARP_Reply, it may complete the [ATM]ARP table entry and use
  640.    the provided address information. NOTE: as with [ATM]ARP, information
  641.    learned via In[ATM]ARP may be aged or invalidated under certain
  642.    circumstances." IP stations supporting PVCs MUST re-validate ATMARP
  643.    table entries as part of the table aging process. See the Section
  644.    8.5.1 "Client ATMARP Table Aging".
  645.  
  646.    If a client has more than one IP address within the LIS and if using
  647.    PVCs, when an InATMARP_Request is received an InATMARP_Reply MUST be
  648.    generated for each such address.
  649.  
  650. 8.3 Switched Virtual Connections
  651.  
  652.    SVCs require support from address resolution services for resolving
  653.    target IP addresses to target ATM endpoint addresses. All members in
  654.    the LIS MUST use the same service. This service MUST have
  655.    authoritative responsibility for resolving the ATMARP requests of all
  656.    IP members within the LIS.
  657.  
  658.    ATMARP servers do not actively establish connections. They depend on
  659.    the clients in the LIS to initiate connections for the ATMARP
  660.    registration procedure and for transmitting ATMARP requests. An
  661.    individual client connects to the ATMARP server using a point-to-
  662.    point LLC/SNAP VC. The client sends normal ATMARP request packets to
  663.    the server. The ATMARP server examines each ATMARP_Request packet for
  664.    the source protocol and source hardware address information of the
  665.    sending client and uses this information to build its ATMARP table
  666.    cache. This information is used to generate replies to any ATMARP
  667.  
  668.  
  669.  
  670. Laubach+Halpern                                                [Page 12]
  671.  
  672. DRAFT                 Classical IP and ARP over ATM         October 1997
  673.  
  674.  
  675.    requests it receives.
  676.  
  677.    InATMARP_Request packets MUST specify valid address information for
  678.    ATM source number, ATM target number, and source protocol address;
  679.    i.e., these fields MUST be non-null in InATMARP_Request packets.
  680.  
  681.    This memo defines the address resolution service in the LIS and
  682.    constrains it to consist of a single ATMARP server.  Client-server
  683.    interaction is defined by using a single server approach as a
  684.    reference model.
  685.  
  686.    This memo recognizes the future development of standards and
  687.    implementations of multiple-ATMARP-server models that will extend the
  688.    operations as defined in this memo to provide a highly reliable
  689.    address resolution service.
  690.  
  691.  
  692. 8.4 ATMARP Single Server Operational Requirements
  693.  
  694.    A single ATMARP server accepts ATM calls/connections from other ATM
  695.    end points.  After receiving any ATMARP_Request, the server will
  696.    examine the source and target address information in the packet and
  697.    make note of the VC on which the ATMARP_Request arrived. It will use
  698.    this information as necessary to build and update its ATMARP table
  699.    entries.
  700.  
  701.    For each ATMARP_Request, then:
  702.  
  703.    1.  If the source IP protocol address is the same as the target IP
  704.        protocol address and a table entry exists for that IP address and
  705.        if the source ATM hardware address does not match the table entry
  706.        ATM address and there is an open VC associated with that table
  707.        entry that is not the same as the VC associated with the
  708.        ATMARP_Request, the server MUST return the table entry
  709.        information in the ATMARP_Reply, and MUST raise a "duplicate IP
  710.        address detected" condition to the server's management. The table
  711.        entry is not updated.
  712.  
  713.    2.  Otherwise, if the source IP protocol address is the same as the
  714.        target IP protocol address, and either there is no table entry
  715.        for that IP address, or a table entry exists for that IP address
  716.        and there is no open VC associated with that table entry, or if
  717.        the VC associated with that entry is the same as the VC for the
  718.        ATMARP_Request, the server MUST either create a new entry or
  719.        update the old entry as appropriate and returns that table entry
  720.        information in the ATMARP Reply.
  721.  
  722.    3.  Otherwise, when the source IP protocol address does not match the
  723.  
  724.  
  725.  
  726. Laubach+Halpern                                                [Page 13]
  727.  
  728. DRAFT                 Classical IP and ARP over ATM         October 1997
  729.  
  730.  
  731.        target IP protocol address, the ATMARP server will generate the
  732.        corresponding ATMARP_Reply if it has an entry for the target
  733.        information in its ATMARP table. Otherwise it will generate a
  734.        negative ATMARP reply (ATMARP_NAK).
  735.  
  736.    4.  Additionally, when the source IP protocol address does not match
  737.        the target IP protocol address and when the server receives an
  738.        ATMARP_Request over a VC, where the source IP and ATM address do
  739.        not have a corresponding table entry, the ATMARP server MUST
  740.        create a new table entry for the source information. Explanation:
  741.        this allows old RFC1577 clients to register with this ATMARP
  742.        service by just issuing requests to it.
  743.  
  744.    5.  Additionally, when the source IP protocol address does not match
  745.        the target IP protocol address and where the source IP and ATM
  746.        addresses match the association already in the ATMARP table and
  747.        the ATM address matches that associated with the VC, the server
  748.        MUST update the table timeout on the source ATMARP table entry
  749.        but only if it has been more than 10 minutes since the last
  750.        update. Explanation: if the client is sending ATMARP requests to
  751.        the server over the same VC that it used to register its ATMARP
  752.        entry, the server should examine the ATMARP request and note that
  753.        the client is still "alive" by updating the timeout on the
  754.        client's ATMARP table entry.
  755.  
  756.    6.  Additionally, when the source IP protocol address does not match
  757.        the target IP protocol address and where the source IP and ATM
  758.        addresses do not match the association already in the ATMARP
  759.        table, the server MUST NOT update the ATMARP table entry.
  760.  
  761.    An ATMARP server MUST have knowledge of any open VCs it has and their
  762.    association with an ATMARP table entry, and in particular, which VCs
  763.    support LLC/SNAP encapsulation. In normal operation, active ATMARP
  764.    clients will revalidate their entries prior to the server aging
  765.    process taking effect.
  766.  
  767.    Server ATMARP table entries are valid for 20 minutes.  If an entry
  768.    ages beyond 20 minutes without being updated (refreshed) by the
  769.    client, that entry is deleted from the table regardless of the state
  770.    of any VCs that may be associated with that entry.
  771.  
  772.  
  773. 8.5 ATMARP Client Operational Requirements
  774.  
  775.    The ATMARP client is responsible for contacting the ATMARP service to
  776.    both initially register and subsequently refresh its own ATMARP
  777.    information.
  778.  
  779.  
  780.  
  781.  
  782. Laubach+Halpern                                                [Page 14]
  783.  
  784. DRAFT                 Classical IP and ARP over ATM         October 1997
  785.  
  786.  
  787.    The client is also responsible for using the ATMARP service to gain
  788.    and revalidate ATMARP information about other IP members in the LIS
  789.    (server selection overview is discussed in Section 8.6). As noted in
  790.    Section 5.2, ATMARP clients MUST be configured with the ATM address
  791.    of the appropriate server prior to client ATMARP operation.
  792.  
  793.    IP clients MUST register their ATM endpoint address with their ATMARP
  794.    server using the ATM address structure appropriate for their ATM
  795.    network connection: i.e., LISs implemented over ATM LANs following
  796.    ATM Forum UNI 3.1 should register using Structure 1; LISs implemented
  797.    over an E.164 "public" ATM network should register using Structure 2.
  798.    A LIS implemented over a combination of ATM LANs and public ATM
  799.    networks may need to register using Structure 3.  Implementations
  800.    based on this memo MUST support all three ATM address structures.
  801.    See Section 8.7.1 for more details regarding the ATMARP Request
  802.    packet format.
  803.  
  804.    To handle the case when a client has more than one IP address within
  805.    a LIS, when using an ATMARP server, the client MUST register each
  806.    such address.
  807.  
  808.    For initial registration and subsequent refreshing of its own
  809.    information with the ATMARP service, clients MUST:
  810.  
  811.    1.  Establish an LLC/SNAP VC connection to a server in the ATMARP
  812.        service for the purposes of transmitting and receiving ATMARP
  813.        packets.
  814.  
  815.        NOTE: in the case of refreshing its own information with the
  816.        ATMARP service, a client MAY reuse an existing established
  817.        connection to the ATMARP service provided that the connection was
  818.        previously used either to initially register its information with
  819.        the ATMARP service or to refresh its information with the ATMARP
  820.        service.
  821.  
  822.    2.  After establishing a successful connection to the ATMARP service,
  823.        the client MUST transmit an ATMARP_Request packet, requesting a
  824.        target ATM address for its own IP address as the target IP
  825.        protocol address. The client checks the ATMARP_Reply and if the
  826.        source hardware and protocol addresses match the respective
  827.        target hardware and protocol addresses, the client is registered
  828.        with the ATMARP service. If the addresses do not match, the
  829.        client MAY take action, raise alarms, etc.; however, these
  830.        actions are beyond the scope of this memo.  In the case of a
  831.        client having more than one IP address in the list, this step
  832.        MUST be repeated for each IP address.
  833.  
  834.    3.  Clients MUST respond to ATMARP_Request and InATMARP_Request
  835.  
  836.  
  837.  
  838. Laubach+Halpern                                                [Page 15]
  839.  
  840. DRAFT                 Classical IP and ARP over ATM         October 1997
  841.  
  842.  
  843.        packets received on any VC appropriately. (Refer to Section 7,
  844.        "Protocol Operation" in RFC1293 [12].)
  845.  
  846.        NOTE: for reasons of robustness, clients MUST respond to
  847.        ATMARP_Requests.
  848.  
  849.    4.  Generate and transmit address resolution request packets to the
  850.        address resolution service.  Respond to address resolution reply
  851.        packets appropriately to build/refresh its own client ATMARP
  852.        table entries.
  853.  
  854.    5.  Generate and transmit InATMARP_Request packets as needed and to
  855.        process InATMARP_Reply packets appropriately.  InATMARP_Reply
  856.        packets should be used to build/refresh its own client ATMARP
  857.        table entries.  (Refer to Section 7, "Protocol Operation" in
  858.        [12].)  If a client has more than one IP address within the LIS
  859.        when an InATMARP_Request is received an InATMARP_Reply MUST be
  860.        generated for each such address.
  861.  
  862.    The client MUST refresh its ATMARP information with the server at
  863.    least once every 15 minutes.  This is done by repeating steps 1 and
  864.    2.
  865.  
  866.    An ATMARP client MUST have knowledge of any open VCs it has
  867.    (permanent or switched), their association with an ATMARP table
  868.    entry, and in particular, which VCs support LLC/SNAP encapsulation.
  869.  
  870. 8.5.1 Client ATMARP Table Aging
  871.  
  872.    Client ATMARP table entries are valid for a maximum time of 15
  873.    minutes.
  874.  
  875.    When an ATMARP table entry ages, an ATMARP client MUST invalidate the
  876.    table entry. If there is no open VC server associated with the
  877.    invalidated entry, that entry is deleted. In the case of an
  878.    invalidated entry and an open VC, the client MUST revalidate the
  879.    entry prior to transmitting any non address resolution traffic on
  880.    that VC; this requirement applies to both PVCs and SVCs.  NOTE: the
  881.    client is permitted to revalidate an ATMARP table entry before it
  882.    ages, thus restarting the aging time when the table entry is
  883.    successfully revalidate.  The client MAY continue to use the open VC,
  884.    as long as the table entry has not aged, while revalidation is in
  885.    progress.
  886.  
  887.    In the case of an open PVC, the client revalidates the entry by
  888.    transmitting an InATMARP_REQUEST and updating the entry on receipt of
  889.    an InATMARP_REPLY.
  890.  
  891.  
  892.  
  893.  
  894. Laubach+Halpern                                                [Page 16]
  895.  
  896. DRAFT                 Classical IP and ARP over ATM         October 1997
  897.  
  898.  
  899.    In the case of an open SVC, the client revalidates the entry by
  900.    querying the address resolution service.  If a valid reply is
  901.    received (e.g., ATMARP_Reply), the entry is updated.  If the address
  902.    resolution service cannot resolve the entry (i.e., "host not found"),
  903.    the SVC should be closed and the associated table entry removed.  If
  904.    the address resolution service is not available (i.e. "server
  905.    failure") and if the SVC is LLC/SNAP encapsulated, the client MUST
  906.    attempt to revalidate the entry by transmitting an InATMARP_Request
  907.    on that VC and updating the entry on receipt of an InATMARP_Reply. If
  908.    the InATMARP_Request attempt fails to return an InATMARP_Reply, the
  909.    SVC should be closed and the associated table entry removed.
  910.  
  911.    If a VC with an associated invalidated ATMARP table entry is closed,
  912.    that table entry is removed.
  913.  
  914. 8.5.2 Non-Normal VC Operations
  915.  
  916.    The specific details on client procedures for detecting non-normal VC
  917.    connection establishment or closures, or failed communications on an
  918.    established VC are beyond the scope of this memo. It is REQUIRED
  919.    however, that the client MUST remove the associated ATMARP entry for
  920.    a VC that fails to operate properly, as defined by the client, when
  921.    the client closes that VC, when it releases its resources for a VC,
  922.    or prior to any attempt to reopen that VC. This behavior specifically
  923.    REQUIRES that the client MUST refresh its ATMARP table information
  924.    prior to any attempt to re-establish communication to an IP member
  925.    after a non-normal communications problem has occurred on a VC
  926.    previously to that IP member.
  927.  
  928. 8.5.3 Use of ATMARP In Mobile-IP Scenarios
  929.  
  930.    When an ATM LIS is used as the home network in a mobile-IP scenario,
  931.    it is RECOMMENDED that the home agent NOT maintain long term
  932.    connections with the ATMARP service.  The absence of this VC will
  933.    permit a mobile node's registration, upon its return to the home
  934.    network, to immediately preempt the home agent's previous gratuitous
  935.    registration.
  936.  
  937. 8.6 Address Resolution Server Selection
  938.  
  939.    If the client supports PVCs only, the ATMARP server list is empty and
  940.    the client MUST not generate any address resolution requests other
  941.    than the InATMARP requests on a PVC needed to validate that PVC.
  942.  
  943.    If the client supports SVCs, then the client MUST have an non-NULL
  944.    atm$arp-req-list pointing to the ATMARP server(s) which provide
  945.    ATMARP service for the LIS.
  946.  
  947.  
  948.  
  949.  
  950. Laubach+Halpern                                                [Page 17]
  951.  
  952. DRAFT                 Classical IP and ARP over ATM         October 1997
  953.  
  954.  
  955.    The client MUST register with a server from atm$arp-req-list.
  956.  
  957.    The client SHALL attempt to communicate with any of the servers until
  958.    a successful registration is accomplished.  The order in which client
  959.    selects servers to attempt registration, is a local matter, as are
  960.    the number of retries and timeouts for such attempts.
  961.  
  962. 8.6.1 PVCs to ATMARP Servers
  963.  
  964.    In a mixed PVC and SVC LIS environment, an ATMARP client MAY have a
  965.    PVC to an ATMARP server.  In this case, this PVC is used for ATMARP
  966.    requests and responses as if it were an established SVC.  NOTE: if
  967.    this PVC is to be used for IP traffic, then the ATMARP server MUST be
  968.    prepared to accept and respond appropriately to InATMARP traffic.
  969.  
  970. 8.7 ATMARP Packet Formats
  971.  
  972.    Internet addresses are assigned independently of ATM addresses.  Each
  973.    host implementation MUST know its own IP and ATM address(es) and MUST
  974.    respond to address resolution requests appropriately.  IP members
  975.    MUST also use ATMARP and InATMARP to resolve IP addresses to ATM
  976.    addresses when needed.
  977.  
  978.    NOTE: the ATMARP packet format presented in this memo is general in
  979.    nature in that the ATM number and ATM subaddress fields SHOULD map
  980.    directly to the corresponding UNI 3.1 fields used for ATM
  981.    call/connection setup signalling messages.  The IP over ATM Working
  982.    Group expects ATM Forum NSAPA numbers (Structure 1) to predominate
  983.    over E.164 numbers (Structure 2) as ATM endpoint identifiers within
  984.    ATM LANs.  The ATM Forum's VC Routing specification is not complete
  985.    at this time and therefore its impact on the operational use of ATM
  986.    Address Structure 3 is undefined. The ATM Forum will be defining this
  987.    relationship in the future.  It is for this reason that IP members
  988.    need to support all three ATM address structures.
  989.  
  990. 8.7.1 ATMARP/InATMARP Request and Reply Packet Formats
  991.  
  992.    The ATMARP and InATMARP request and reply protocols use the same
  993.    hardware type (ar$hrd), protocol type (ar$pro), and operation code
  994.    (ar$op) data formats as the ARP and InARP protocols [3,12].  The
  995.    location of these three fields within the ATMARP packet are in the
  996.    same byte position as those in ARP and InARP packets.  A unique
  997.    hardware type value has been assigned for ATMARP.  In addition,
  998.    ATMARP makes use of an additional operation code for ARP_NAK.  The
  999.    remainder of the ATMARP/InATMARP packet format is different than the
  1000.    ARP/InARP packet format.
  1001.  
  1002.    The ATMARP and InATMARP protocols have several fields that have the
  1003.  
  1004.  
  1005.  
  1006. Laubach+Halpern                                                [Page 18]
  1007.  
  1008. DRAFT                 Classical IP and ARP over ATM         October 1997
  1009.  
  1010.  
  1011.    following format and values:
  1012.  
  1013.    Data:
  1014.      ar$hrd   16 bits  Hardware type
  1015.      ar$pro   16 bits  Protocol type
  1016.      ar$shtl   8 bits  Type & length (TL) of source ATM number (q)
  1017.      ar$sstl   8 bits  Type & length (TL) of source ATM subaddress (r)
  1018.      ar$op    16 bits  Operation code (request, reply, or NAK)
  1019.      ar$spln   8 bits  Length of source protocol address (s)
  1020.      ar$thtl   8 bits  Type & length (TL) of target ATM number (x)
  1021.      ar$tstl   8 bits  Type & length (TL) of target ATM subaddress (y)
  1022.      ar$tpln   8 bits  Length of target protocol address (z)
  1023.      ar$sha   qoctets of source ATM number
  1024.      ar$ssa   roctets of source ATM subaddress
  1025.      ar$spa   soctets of source protocol address
  1026.      ar$tha   xoctets of target ATM number
  1027.      ar$tsa   yoctets of target ATM subaddress
  1028.      ar$tpa   zoctets of target protocol address
  1029.  
  1030.    Where:
  1031.      ar$hrd  -  assigned to ATM Forum address family and is
  1032.                 19 decimal (0x0013) [4].
  1033.  
  1034.      ar$pro  -  see Assigned Numbers for protocol type number for
  1035.                 the protocol using ATMARP. (IP is 0x0800).
  1036.  
  1037.      ar$shtl -  Type and length of source ATM number.  See
  1038.                 Section 8.7.4 for TL encoding details.
  1039.  
  1040.      ar$sstl -  Type and length of source ATM subaddress.  See
  1041.                 Section 8.7.4 for TL encoding details.
  1042.  
  1043.      ar$op   -  The operation type value (decimal):
  1044.  
  1045.                 ATMARP_Request   = ARP_REQUEST   = 1
  1046.                 ATMARP_Reply     = ARP_REPLY     = 2
  1047.                 InATMARP_Request = InARP_REQUEST = 8
  1048.                 InATMARP_Reply   = InARP_REPLY   = 9
  1049.                 ATMARP_NAK       = ARP_NAK       = 10
  1050.  
  1051.      ar$spln -  length in octets of the source protocol address. Value
  1052.                 range is 0 or 4 (decimal).  For IPv4 ar$spln is 4.
  1053.  
  1054.      ar$thtl -  Type and length of target ATM number.  See
  1055.                 Section 8.7.4 for TL encoding details.
  1056.  
  1057.      ar$tstl -  Type and length of target ATM subaddress.  See
  1058.                 Section 8.7.4 for TL encoding details.
  1059.  
  1060.  
  1061.  
  1062. Laubach+Halpern                                                [Page 19]
  1063.  
  1064. DRAFT                 Classical IP and ARP over ATM         October 1997
  1065.  
  1066.  
  1067.      ar$tpln -  length in octets of the target protocol address. Value
  1068.                 range is 0 or 4 (decimal).  For IPv4 ar$tpln is 4.
  1069.  
  1070.      ar$sha  -  source ATM number (E.164 or ATM Forum NSAPA)
  1071.  
  1072.      ar$ssa  -  source ATM subaddress (ATM Forum NSAPA)
  1073.  
  1074.      ar$spa  -  source protocol address
  1075.  
  1076.      ar$tha  -  target ATM number (E.164 or ATM Forum NSAPA)
  1077.  
  1078.      ar$tsa  -  target ATM subaddress (ATM Forum NSAPA)
  1079.  
  1080.      ar$tpa  -  target protocol address
  1081.  
  1082. 8.7.2 Receiving Unknown ATMARP packets
  1083.  
  1084.    If an ATMARP client receives an ATMARP message with an operation code
  1085.    (ar$op) for which it is not coded to support, it MUST gracefully
  1086.    discard the message and continue normal operation.  An ATMARP client
  1087.    is NOT REQUIRED to return any message to the sender of the
  1088.    unsupported message.
  1089.  
  1090. 8.7.3 TL, ATM Number, and ATM Subaddress Encoding
  1091.  
  1092.    The encoding of the 8-bit TL (type and length) fields in ATMARP and
  1093.    In_ATMARP packets is as follows:
  1094.  
  1095.  
  1096.      MSB   8     7     6     5     4     3     2     1   LSB
  1097.         +-----+-----+-----+-----+-----+-----+-----+-----+
  1098.         |  0  | 1/0 |   Octet length of address         |
  1099.         +-----+-----+-----+-----+-----+-----+-----+-----+
  1100.  
  1101.    Where:
  1102.      bit.8   (reserved) = 0  (for future use)
  1103.  
  1104.      bit.7   (type)     = 0  ATM Forum NSAPA format
  1105.                         = 1  E.164 format
  1106.  
  1107.      bit.6-1 (length)   = 6 bit unsigned octet length of address
  1108.                           (MSB = bit.6, LSB = bit.1)  Value
  1109.                           range is from 0 to 20 (decimal).
  1110.  
  1111.    ATM addresses, as defined by the ATM Forum UNI 3.1 signaling
  1112.    specification [9], include a "Calling Party Number Information
  1113.    Element" and a "Calling Party Subaddress Information Element". These
  1114.    Information Elements (IEs) SHOULD map to ATMARP/InATMARP source ATM
  1115.  
  1116.  
  1117.  
  1118. Laubach+Halpern                                                [Page 20]
  1119.  
  1120. DRAFT                 Classical IP and ARP over ATM         October 1997
  1121.  
  1122.  
  1123.    number and source ATM subaddress respectively. Furthermore, ATM Forum
  1124.    defines a "Called Party Number Information Element" and a "Called
  1125.    Party Subaddress Information Element".  These IEs map to
  1126.    ATMARP/InATMARP target ATM number and target ATM subaddress
  1127.    respectively.
  1128.  
  1129.    The ATM Forum defines three structures for the combined use of number
  1130.    and subaddress [9]:
  1131.  
  1132.                         ATM Number      ATM Subaddress
  1133.                       --------------    --------------
  1134.         Structure 1   ATM Forum NSAPA        null
  1135.         Structure 2       E.164              null
  1136.         Structure 3       E.164         ATM Forum NSAPA
  1137.  
  1138.    ATMARP and InATMARP requests and replies for ATM address structures 1
  1139.    and 2 MUST indicate a null or unknown ATM subaddress by setting the
  1140.    appropriate subaddress length to zero; i.e. ar$sstl.length = 0 or
  1141.    ar$tstl.length = 0, the corresponding type field (ar$sstl.type or
  1142.    ar$tstl.type) MUST be ignored and the physical space for the ATM
  1143.    subaddress buffer MUST not be allocated in the ATMARP packet. For
  1144.    example, if ar$sstl.length=0, the storage for the source ATM
  1145.    subaddress is not allocated and the first byte of the source protocol
  1146.    address ar$spa follows immediately after the last byte of the source
  1147.    hardware address ar$sha in the packet.
  1148.  
  1149.    Null or unknown ATM addresses are MUST be indicated by setting the
  1150.    appropriate address length to zero; i.e., ar$shtl.length and
  1151.    ar$thtl.length is zero and the corresponding type field (ar$sstl.type
  1152.    or ar$tstl.type) MUST be ignored and the physical space for the ATM
  1153.    address or ATM subaddress buffer MUST not be allocated in the ATMARP
  1154.    packet.
  1155.  
  1156. 8.7.4 ATMARP_NAK Packet Format
  1157.  
  1158.    The ATMARP_NAK packet format is the same as the received
  1159.    ATMARP_Request packet format with the operation code set to ARP_NAK,
  1160.    i.e., the ATMARP_Request packet data is exactly copied (e.g. using
  1161.    bcopy) for transmission with the ATMARP_Request operation code
  1162.    changed to ARP_NAK value.
  1163.  
  1164. 8.7.5 Variable Length Requirements for ATMARP Packets
  1165.  
  1166.    ATMARP and InATMARP packets are variable in length.
  1167.  
  1168.    A null or unknown source or target protocol address is indicated by
  1169.    the corresponding length set to zero: e.g., when ar$spln or ar$tpln
  1170.    is zero the physical space for the corresponding address structure
  1171.  
  1172.  
  1173.  
  1174. Laubach+Halpern                                                [Page 21]
  1175.  
  1176. DRAFT                 Classical IP and ARP over ATM         October 1997
  1177.  
  1178.  
  1179.    MUST not be allocated in the packet.
  1180.  
  1181.    For backward compatibility with previous implementations, a null IPv4
  1182.    protocol address may be received with length = 4 and an allocated
  1183.    address in storage set to the value 0.0.0.0. Receiving stations MUST
  1184.    be liberal in accepting this format of a null IPv4 address, however
  1185.    on transmitting an ATMARP or InATMARP packet, a null IPv4 address
  1186.    MUST only be indicated by the length set to zero and MUST have no
  1187.    storage allocated.
  1188.  
  1189. 8.8 ATMARP/InATMARP Packet Encapsulation
  1190.  
  1191.    ATMARP and InATMARP packets are to be encoded in AAL5 PDUs using
  1192.    LLC/SNAP encapsulation. The format of the AAL5 CPCS-SDU payload field
  1193.    for ATMARP/InATMARP PDUs is:
  1194.  
  1195.                Payload Format for ATMARP/InATMARP PDUs:
  1196.                +------------------------------+
  1197.                |        LLC 0xAA-AA-03        |
  1198.                +------------------------------+
  1199.                |        OUI 0x00-00-00        |
  1200.                +------------------------------+
  1201.                |     Ethertype 0x08-06        |
  1202.                +------------------------------+
  1203.                |                              |
  1204.                |   ATMARP/InATMARP Packet     |
  1205.                |                              |
  1206.                +------------------------------+
  1207.  
  1208.    The LLC value of 0xAA-AA-03 (3 octets) indicates the presence of a
  1209.    SNAP header.
  1210.  
  1211.    The OUI value of 0x00-00-00 (3 octets) indicates that the following
  1212.    two-bytes is an ethertype.
  1213.  
  1214.    The Ethertype value of 0x08-06 (2 octets) indicates ARP [4].
  1215.  
  1216.    The total size of the LLC/SNAP header is fixed at 8-octets. This
  1217.    aligns the start of the ATMARP packet on a 64-bit boundary relative
  1218.    to the start of the AAL5 CPCS-SDU.
  1219.  
  1220.    The LLC/SNAP encapsulation for ATMARP/InATMARP presented here is
  1221.    consistent with the treatment of multiprotocol encapsulation of IP
  1222.    over ATM AAL5 as specified in [2] and in the format of ATMARP over
  1223.    IEEE 802 networks as specified in [5].
  1224.  
  1225.    Traditionally, address resolution requests are broadcast to all
  1226.    directly connected IP members within a LIS. It is conceivable in the
  1227.  
  1228.  
  1229.  
  1230. Laubach+Halpern                                                [Page 22]
  1231.  
  1232. DRAFT                 Classical IP and ARP over ATM         October 1997
  1233.  
  1234.  
  1235.    future that larger scaled ATM networks may handle ATMARP requests to
  1236.    destinations outside the originating LIS, perhaps even globally;
  1237.    issues raised by ATMARPing outside the LIS or by a global ATMARP
  1238.    mechanism are beyond the scope of this memo.
  1239.  
  1240. 9.  IP BROADCAST ADDRESS
  1241.  
  1242.    ATM does not support broadcast addressing, therefore there are no
  1243.    mappings available from IP broadcast addresses to ATM broadcast
  1244.    services. Note: this lack of mapping does not restrict members from
  1245.    transmitting or receiving IP datagrams specifying any of the four
  1246.    standard IP broadcast address forms as described in [8].  Members,
  1247.    upon receiving an IP broadcast or IP subnet broadcast for their LIS,
  1248.    MUST process the packet as if addressed to that station.
  1249.  
  1250.    This memo recognizes the future development of standards and
  1251.    implementations that will extend the operations as defined in this
  1252.    memo to provide an IP broadcast capability for use by the classical
  1253.    client.
  1254.  
  1255. 10.  IP MULTICAST ADDRESS
  1256.  
  1257.    ATM does not directly support IP multicast address services,
  1258.    therefore there are no mappings available from IP multicast addresses
  1259.    to ATM multicast services.  Current IP multicast implementations
  1260.    (i.e., MBONE and IP tunneling, see [10]) will continue to operate
  1261.    over ATM based logical IP subnets if operated in the WAN
  1262.    configuration.
  1263.  
  1264.    This memo recognizes the future development of ATM multicast service
  1265.    addressing by the ATM Forum. When available and widely implemented,
  1266.    the roll-over from the current IP multicast architecture to this new
  1267.    ATM architecture will be straightforward.
  1268.  
  1269.    This memo recognizes the future development of standards and
  1270.    implementations that will extend the operations as defined in this
  1271.    memo to provide an IP multicast capability for use by the classical
  1272.    client.
  1273.  
  1274. 11.  SECURITY
  1275.  
  1276.    Not all of the security issues relating to IP over ATM are clearly
  1277.    understood at this time, due to the fluid state of ATM
  1278.    specifications, newness of the technology, and other factors.
  1279.  
  1280.    It is believed that ATM and IP facilities for authenticated call
  1281.    management, authenticated end-to-end communications, and data
  1282.    encryption will be needed in globally connected ATM networks.  Such
  1283.  
  1284.  
  1285.  
  1286. Laubach+Halpern                                                [Page 23]
  1287.  
  1288. DRAFT                 Classical IP and ARP over ATM         October 1997
  1289.  
  1290.  
  1291.    future security facilities and their use by IP networks are beyond
  1292.    the scope of this memo.
  1293.  
  1294.    There are known security issues relating to host impersonation via
  1295.    the address resolution protocols used in the Internet [13].  No
  1296.    special security mechanisms have been added to the address resolution
  1297.    mechanism defined here for use with networks using IP over ATM.
  1298.  
  1299. 12.  MIB SPECIFICATION
  1300.  
  1301.    Clients built to this specification MUST implement and provide a
  1302.    Management Information Base (MIB) as defined in "Definitions of
  1303.    Managed Objects for Classical IP and ARP Over ATM Using SMIv2" [18].
  1304.  
  1305. 13.  OPEN ISSUES
  1306.  
  1307.    o   Automatic configuration of client ATM addresses via DHCP [15] or
  1308.        via ATM UNI 3.1 Interim Local Management Interface (ILMI)
  1309.        services would be a useful extended service addition to this
  1310.        document and should be addressed in a separate memo.
  1311.  
  1312.    o   ATMARP packets are not authenticated.  This is a potentially
  1313.        serious flaw in the overall system by allowing a mechanism by
  1314.        which corrupt information may be introduced into the server
  1315.        system.
  1316.  
  1317.  
  1318. 14. REFERENCES
  1319.  
  1320.    [1] Piscitello, D., and Lawrence, J., "IP and ARP over the SMDS
  1321.        Service", RFC-1209, USC/Information Sciences Institute, March
  1322.        1991.
  1323.  
  1324.    [2] Heinanen, Juha, "Multiprotocol Encapsulation over ATM Adaptation
  1325.        Layer 5", RFC-1483, USC/Information Sciences Institute, July
  1326.        1993.
  1327.  
  1328.    [3] Plummer, D., "An Ethernet Address Resolution Protocol - or -
  1329.        Converting Network Addresses to 48.bit Ethernet Address for
  1330.        Transmission on Ethernet Hardware", RFC-826, MIT, November 1982.
  1331.  
  1332.    [4] Reynolds, J., and Postel, J., "Assigned Numbers", RFC-1340, USC/
  1333.        Information Sciences Institute, July 1992.
  1334.  
  1335.    [5] Postel, J., and Reynolds, J., "A Standard for the Transmission of
  1336.        IP Datagrams over IEEE 802 Networks", RFC-1042, USC/Information
  1337.        Sciences Institute, February 1988.
  1338.  
  1339.  
  1340.  
  1341.  
  1342. Laubach+Halpern                                                [Page 24]
  1343.  
  1344. DRAFT                 Classical IP and ARP over ATM         October 1997
  1345.  
  1346.  
  1347.    [6] CCITT, "Draft Recommendation I.363", CCITT Study Group XVIII,
  1348.        Geneva, 19-29 January 1993.
  1349.  
  1350.    [7] CCITT, "Draft text for Q.93B", CCITT Study Group XI, 23 September
  1351.        - 2 October 1992.
  1352.  
  1353.    [8] Braden, R., "Requirements for Internet Hosts -- Communication
  1354.        Layers", RFC-1122, USC/Information Sciences Institute, October
  1355.        1989.
  1356.  
  1357.    [9] ATM Forum, "ATM User-Network Interface (UNI) Specification
  1358.        Version 3.1.", ISBN 0-13-393828-X, Prentice-Hall, Inc., Upper
  1359.        Saddle River, NJ, 07458, September, 1994.
  1360.  
  1361.    [10] Deering, S, "Host Extensions for IP Multicasting", RFC-1112,
  1362.        USC/Information Sciences Institute, August 1989.
  1363.  
  1364.    [11] Colella, Richard, and Gardner, Ella, and Callon, Ross,
  1365.        "Guidelines for OSI NSAP Allocation in the Internet", RFC-1237,
  1366.        USC/Information Sciences Institute, July 1991.
  1367.  
  1368.    [12] Bradely, T., and Brown, C., "Inverse Address Resolution
  1369.        Protocol", RFC-1293, USC/Information Sciences Institute, January
  1370.        1992.
  1371.  
  1372.    [13] Bellovin, Steven M., "Security Problems in the TCP/IP Protocol
  1373.        Suite", ACM Computer Communications Review, Vol. 19, Issue 2, pp.
  1374.        32-48, 1989.
  1375.  
  1376.    [14] Knowles, S., "IESG Advice from Experience with Path MTU
  1377.        Discovery, RFC-1435, IESG, March 1993.
  1378.  
  1379.    [15] Droms, R., "Dynamic Host Configuration Protocol", RFC1541,
  1380.        Bucknell University, October 1993.
  1381.  
  1382.    [16] Kent C., and J. Mogul, "Fragmentation Considered Harmful",
  1383.        Proceedings of the ACM SIGCOMM '87 Workshop on Frontiers in
  1384.        Computer Communications Technology, August 1987.
  1385.  
  1386.    [17] Mogul, J., and S. Deering, "Path MTU Discovery", RFC-1191,
  1387.        DECWRL, Stanford University, November 1990.
  1388.  
  1389.    [18] Green, M., Luciani, J., White, K., Kuo, T., "Definitions of
  1390.        Managed Objects for Classical IP and ARP over ATM Using SMIv2",
  1391.        IETF, draft-ietf-ipatm-mib-01 (work in progress), February, 1996.
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398. Laubach+Halpern                                                [Page 25]
  1399.  
  1400. DRAFT                 Classical IP and ARP over ATM         October 1997
  1401.  
  1402.  
  1403.    [19] ATM Forum, "ATM User-Network Interface (UNI) Specification
  1404.        Version 4.0", ATM Forum specfication afsig-0061.000,
  1405.        ftp://ftp.atmforum.com/, July, 1996.
  1406.  
  1407.    [20] Bradner, S., "Key words for use in RFCs to Indicate Requirement
  1408.        Levels", RFC2119, Harvard University, March 1997.
  1409.  
  1410. 15. AUTHORS
  1411.  
  1412.    Mark Laubach
  1413.    Com21, Inc.
  1414.    750 Tasman Drive
  1415.    Milpitas, CA 95035
  1416.  
  1417.    Phone: 408.953.9175
  1418.    FAX:   408.953.9299
  1419.    EMail: laubach@com21.com
  1420.  
  1421.  
  1422.    Joel Halpern
  1423.    Newbridge Networks, Inc.
  1424.    593 Herndon Parkway
  1425.    Herndon, VA  22070-5241
  1426.  
  1427.    Phone: 703.736.5954
  1428.    FAX:   703.736.5959
  1429.    EMail: jhalpern@Newbridge.com
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454. Laubach+Halpern                                                [Page 26]
  1455.  
  1456. DRAFT                 Classical IP and ARP over ATM         October 1997
  1457.  
  1458.  
  1459. APPENDIX A - Update Information
  1460.  
  1461.    This draft represents an update to RFC-1577 and RFC-1626.  The
  1462.    following changes are included in this memo:
  1463.  
  1464.    o   Pointer to Classical MIB I-D for setting of variables
  1465.  
  1466.    o   Single ATMARP server address to ATMARP server list, configurable
  1467.        via the MIB.
  1468.  
  1469.    o   RFC1626 text replaces MTU section
  1470.  
  1471.    o   Client registration procedure from In_ATMARP to first
  1472.        ATMARP_Request
  1473.  
  1474.    o   Clarification of variable length ATMARP packet format
  1475.  
  1476.    o   Clarification of ARP_NAK packet format
  1477.  
  1478.    o   Clarification of InATMARP packet format for null IPv4 addresses
  1479.  
  1480.    o   Clarification on ATMARP registration and use of InATMARP_Reply
  1481.        for clients having more than one IP address in a LIS
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510. Laubach+Halpern                                                [Page 27]
  1511.  
  1512.