⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc1577.txt

📁 RFC 的详细文档!
💻 TXT
📖 第 1 页 / 共 3 页
字号:
   more individual ATM endpoint addresses.  Note: this does not
   necessarily mean different End System Identifiers (ESIs) when NSAPAs
   are used.  The last octet of an NSAPA is the NSAPA Selector (SEL)
   field which can be used to differentiate up to 256 different LISs for
   the same ESI. (Refer to Section 5.1.3.1, "Private Networks" in [9].)

4.  Packet Format

   Implementations MUST support IEEE 802.2 LLC/SNAP encapsulation as
   described in [2].  LLC/SNAP encapsulation is the default packet
   format for IP datagrams.

   This memo recognizes that other encapsulation methods may be used
   however, in the absence of other knowledge or agreement, LLC/SNAP
   encapsulation is the default.



Laubach                                                         [Page 6]

RFC 1577             Classical IP and ARP over ATM          January 1993


   This memo recognizes the future deployment of end-to-end signalling
   within ATM that will allow negotiation of encapsulation method on a
   per-VC basis.  Signalling negotiations are beyond the scope of this
   memo.

5.  MTU Size

   The default MTU size for IP members operating over the ATM network
   SHALL be 9180 octets. The LLC/SNAP header is 8 octets, therefore the
   default ATM AAL5 protocol data unit size is 9188 octets [2].  In
   classical IP subnets, values other than the default can be used if
   and only if all members in the LIS have been configured to use the
   non-default value.

   This memo recognizes the future deployment of end-to-end signalling
   within ATM that will allow negotiation of MTU size on a per-VC basis.
   Signalling negotiations are beyond the scope of this document.

6.  Address Resolution

   Address resolution within an ATM logical IP subnet SHALL make use of
   the ATM Address Resolution Protocol (ATMARP) (based on [3]) and the
   Inverse ATM Address Resolution Protocol (InATMARP) (based on [12]) as
   defined in this memo.  ATMARP is the same protocol as the ARP
   protocol presented in [3] with extensions needed to support ARP in a
   unicast server ATM environment.  InATMARP is the same protocol as the
   original InARP protocol presented in [12] but applied to ATM
   networks.  All IP stations MUST support these protocols as updated
   and extended in this memo.  Use of these protocols differs depending
   on whether PVCs or SVCs are used.

6.1 Permanent Virtual Connections

   An IP station MUST have a mechanism (eg. manual configuration) for
   determining what PVCs it has, and in particular which PVCs are being
   used with LLC/SNAP encapsulation.  The details of the mechanism are
   beyond the scope of this memo.

   All IP members supporting PVCs are required to use the Inverse ATM
   Address Resolution Protocol (InATMARP) (refer to [12]) on those VCs
   using LLC/SNAP encapsulation.  In a strict PVC environment, the
   receiver SHALL infer the relevant VC from the VC on which the
   InATMARP request (InARP_REQUEST) or response (InARP_REPLY) was
   received.  When the ATM source and/or target address is unknown, the
   corresponding ATM address length in the InATMARP packet MUST be set
   to zero (0) indicating a null length, otherwise the appropriate
   address field should be filled in and the corresponding length set
   appropriately. InATMARP packet format details are presented later in



Laubach                                                         [Page 7]

RFC 1577             Classical IP and ARP over ATM          January 1993


   this memo.

   Directly from [12]: "When the requesting station receives the InARP
   reply, it may complete the [ATM]ARP table entry and use the provided
   address information.  Note: as with [ATM]ARP, information learned via
   In[ATM]ARP  may be aged or invalidated under certain circumstances."
   It is the responsibility of each IP station supporting PVCs to re-
   validate [ATM]ARP table entries as part of the aging process.  See
   Section 6.5 on "ATMARP Table Aging".

6.2 Switched Virtual Connections

   SVCs require support for ATMARP in the non-broadcast, non-multicast
   environment that ATM networks currently provide. To meet this need a
   single ATMARP Server MUST be located within the LIS. This server MUST
   have authoritative responsibility for resolving the ATMARP requests
   of all IP members within the LIS.

   The server itself does not actively establish connections.  It
   depends on the clients in the LIS to initiate the ATMARP registration
   procedure.  An individual client connects to the ATMARP server using
   a point-to-point VC. The server, upon the completion of an ATM
   call/connection of a new VC specifying LLC/SNAP encapsulation, will
   transmit an InATMARP request to determine the IP address of the
   client.  The InATMARP reply from the client contains the information
   necessary for the ATMARP Server to build its ATMARP table cache. This
   information is used to generate replies to the ATMARP requests it
   receives.

   The ATMARP Server mechanism requires that each client be
   administratively configured with the ATM address of the ATMARP Server
   atm$arp-req as defined earlier in this memo. There is to be one and
   only one ATMARP Server operational per logical IP subnet. It is
   RECOMMENDED that the ATMARP Server also be an IP station. This
   station MUST be administratively configured to operate and recognize
   itself as the ATMARP Server for a LIS. The ATMARP Server MUST be
   configured with an IP address for each logical IP subnet it is
   serving to support InATMARP requests.

   This memo recognizes that a single ATMARP Server is not as robust as
   multiple servers which synchronize their databases correctly. This
   document is defining the client-server interaction by using a simple,
   single server approach as a reference model, and does not prohibit
   more robust approaches which use the same client-server interface.







Laubach                                                         [Page 8]

RFC 1577             Classical IP and ARP over ATM          January 1993


6.3 ATMARP Server Operational Requirements

   The ATMARP server accepts ATM calls/connections from other ATM end
   points. At call setup and if the VC supports LLC/SNAP encapsulation,
   the ATMARP server will transmit to the originating ATM station an
   InATMARP request (InARP_REQUEST) for each logical IP subnet the
   server is configured to serve. After receiving an InATMARP reply
   (InARP_REPLY), the server will examine the IP address and the ATM
   address. The server will add (or update) the <ATM address, IP
   address> map entry and timestamp into its ATMARP table.  If the
   InATMARP IP address duplicates a table entry IP address and the
   InATMARP ATM address does not match the table entry ATM address and
   there is an open VC associated with that table entry, the InATMARP
   information is discarded and no modifications to the table are made.
   ATMARP table entries persist until aged or invalidated. VC call tear
   down does not remove ATMARP table entries.

   The ATMARP server, upon receiving an ATMARP request (ARP_REQUEST),
   will generate the corresponding ATMARP reply (ARP_REPLY) if it has an
   entry in its ATMARP table.  Otherwise it will generate a negative
   ATMARP reply (ARP_NAK).  The ARP_NAK response is an extension to the
   ARMARP protocol and is used to improve the robustness of the ATMARP
   server mechanism.  With ARP_NAK, a client can determine the
   difference between a catastrophic server failure and an ATMARP table
   lookup failure.  The ARP_NAK packet format is the same as the
   received ARP_REQUEST packet format with the operation code set to
   ARP_NAK, i.e., the ARP_REQUEST packet data is merely copied for
   transmission with the ARP_REQUEST operation code reset to ARP_NAK.

   Updating the ATMARP table information timeout, the short form: when
   the server receives an ATMARP request over a VC, where the source IP
   and ATM address match the association already in the ATMARP table and
   the ATM address matches that associated with the VC, the server may
   update the timeout on the source ATMARP table entry: i.e., if the
   client is sending ATMARP requests to the server over the same VC that
   it used to register its ATMARP entry, the server should examine the
   ATMARP requests and note that the client is still "alive" by updating
   the timeout on the client's ATMARP table entry.

   Adding robustness to the address resolution mechanism using ATMARP:
   when the server receives an ARP_REQUEST over a VC, it examines the
   source information.  If there is no IP address associated with the VC
   over which the ATMARP request was received and if the source IP
   address is not associated with any other connection, then the server
   will add the <ATM address, IP address> entry and timestamp into its
   ATMARP table and associate the entry with this VC.





Laubach                                                         [Page 9]

RFC 1577             Classical IP and ARP over ATM          January 1993


6.4 ATMARP Client Operational Requirements

   The ATMARP client is responsible for contacting the ATMARP server to
   register its own ATMARP information and to gain and refresh its own
   ATMARP entry/information about other IP members.  This means, as
   noted above, that ATMARP clients MUST be configured with the ATM
   address of the ATMARP server. ATMARP clients MUST:

      1. Initiate the VC connection to the ATMARP server for
         transmitting and receiving ATMARP and InATMARP packets.

      2. Respond to ARP_REQUEST and InARP_REQUEST packets received on
         any VC appropriately.  (Refer to Section 7, "Protocol Operation"
         in [12].)

      3. Generate and transmit ARP_REQUEST packets to the ATMARP server
         and to process ARP_REPLY and ARP_NAK packets from the server
         appropriately.  ARP_REPLY packets should be used to
         build/refresh its own client ATMARP table entries.

      4. Generate and transmit InARP_REQUEST packets as needed and to
         process InARP_REPLY packets appropriately.  InARP_REPLY packets
         should be used to build/refresh its own client ATMARP table
         entries.  (Refer to Section 7, "Protocol Operation" in [12].)

      5. Provide an ATMARP table aging function to remove its own old
         client ATMARP tables entries after a convenient period of time.

   Note: if the client does not maintain an open VC to the server, the
   client MUST refresh its ATMARP information with the server at least
   once every 20 minutes.  This is done by opening a VC to the server
   and exchanging the initial InATMARP packets.

6.5 ATMARP Table Aging

   An ATMARP client or server MUST have knowledge of any open VCs it has
   (permanent or switched), their association with an ATMARP table
   entry, and in particular, which VCs support LLC/SNAP encapsulation.

   Client ATMARP table entries are valid for a maximum time of 15
   minutes.

   Server ATMARP table entries are valid for a minimum time of 20
   minutes.

   Prior to aging an ATMARP table entry, an ATMARP server MUST generate
   an InARP_REQUEST on any open VC associated with that entry. If an
   InARP_REPLY is received, that table entry is updated and not deleted.



Laubach                                                        [Page 10]

RFC 1577             Classical IP and ARP over ATM          January 1993


   If there is no open VC associated with the table entry, the entry is
   deleted.

   When an ATMARP table entry ages, an ATMARP client MUST invalidate the
   table entry. If there is no open VC associated with the invalidated
   entry, that entry is deleted. In the case of an invalidated entry and
   an open VC, the ATMARP client must revalidate the entry prior to
   transmitting any non address resolution traffic on that VC. In the
   case of a PVC, the client validates the entry by transmitting an
   InARP_REQUEST and updating the entry on receipt of an InARP_REPLY. In
   the case of an SVC, the client validates the entry by transmitting an
   ARP_REQUEST to the ATMARP Server and updating the entry on receipt of
   an ARP_REPLY. If a VC with an associated invalidated ATMARP table
   entry is closed, that table entry is removed.

6.6 ATMARP and InATMARP Packet Format

   Internet addresses are assigned independently of ATM addresses.  Each
   host implementation MUST know its own IP and ATM address(es) and MUST
   respond to address resolution requests appropriately.  IP members
   MUST also use ATMARP and InATMARP to resolve IP addresses to ATM
   addresses when needed.

   The ATMARP and InATMARP protocols use the same hardware type
   (ar$hrd), protocol type (ar$pro), and operation code (ar$op) data
   formats as the ARP and InARP protocols [3,12].  The location of these
   fields within the ATMARP packet are in the same byte position as
   those in ARP and InARP packets.  A unique hardware type value has
   been assigned for ATMARP.  In addition, ATMARP makes use of an
   additional operation code for ARP_NAK.  The remainder of the
   ATMARP/InATMARP packet format is different than the ARP/InARP packet
   format.

   The ATMARP and InATMARP protocols have several fields that have the
   following format and values:

   Data:
     ar$hrd     16 bits  Hardware type
     ar$pro     16 bits  Protocol type
     ar$shtl     8 bits  Type & length of source ATM number (q)
     ar$sstl     8 bits  Type & length of source ATM subaddress (r)
     ar$op      16 bits  Operation code (request, reply, or NAK)
     ar$spln     8 bits  Length of source protocol address (s)
     ar$thtl     8 bits  Type & length of target ATM number (x)
     ar$tstl     8 bits  Type & length of target ATM subaddress (y)
     ar$tpln     8 bits  Length of target protocol address (z)
     ar$sha     qoctets  source ATM number
     ar$ssa     roctets  source ATM subaddress



Laubach                                                        [Page 11]

RFC 1577             Classical IP and ARP over ATM          January 1993


     ar$spa     soctets  source protocol address
     ar$tha     xoctets  target ATM number
     ar$tsa     yoctets  target ATM subaddress
     ar$tpa     zoctets  target protocol address

   Where:

     ar$hrd  -  assigned to ATM Forum address family and is
                19 decimal (0x0013) [4].

     ar$pro  -  see Assigned Numbers for protocol type number for
                the protocol using ATMARP. (IP is 0x0800).

     ar$op   -  The operation type value (decimal):
                ARP_REQUEST   = 1
                ARP_REPLY     = 2

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -