RFC 2497 PROPOSED STANDARD IPV6 · ARCNET · LINK LAYER

IPv6 over ARCnet: Transmission of IPv6 Packets over ARCnet Networks

How IPv6 packets travel over ARCnet: frame type, MTU, address formation and the neighbor discovery option.

On rfc-editor.org ↗
PUBLISHED
January 1999
AUTHORS
I. Souvatzis
STREAM
IETF
UPDATED BY
RFC 8064 — Stable IPv6 IIDs
PROTOCOL ID (SYSTEM CODE)
C4 hexadecimal
DEFAULT MTU
9072 octets
MAXIMUM PACKET LENGTH
60480 octets
ARCNET MULTICAST ADDRESS
00 hexadecimal
AUTOCONFIGURATION PREFIX LENGTH
64 bits
DOI
10.17487/RFC2497

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                       I. Souvatzis
Request for Comments: 2497                            The NetBSD Project
See Also: 1201                                              January 1999
Category: Standards Track


           Transmission of IPv6 Packets over ARCnet Networks

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

1. Introduction

   This memo specifies a frame format for transmission of IPv6 [IPV6]
   packets and the method of forming IPv6 link-local and statelessly
   autoconfigured addresses on ARCnet networks. It also specifies the
   content of the Source/Target Link-layer Address option used by the
   Router Solicitation, Router Advertisement, Neighbor Solicitation,
   Neighbor Advertisement and Redirect messages described in [DISC],
   when those messages are transmitted on an ARCnet.

      The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
      NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
      in this document are to be interpreted as described in RFC 2119
      [KWORD].

2. Frame Format

   IPv6 packets are link layer fragmented and reassembled according to
   [PHDS]. A brief but sufficient discussion of this fragmentation
   method can be found in [ARCIPV4].

   The protocol ID (System Code in ARCnet terminology) assigned to IPv6
   is C4 hexadecimal.

3. Maximum Transmission Unit

   The maximum IPv6 packet length possible using this encapsulation
   method is 60480 octets. Since this length is impractical because of
   its worst case transmission time of several seconds, all ARCnet
   implementations on a given ARCnet network should agree on a smaller
   value.

   The default MTU for IPv6 [IPV6] packets on an ARCnet is 9072 octets.

   In the presence of a router, this size MAY be changed by a Router
   Advertisement [DISC] containing an MTU option. If a Router
   Advertisement is received with an MTU option specifying an MTU larger
   than 60480, or larger than a manually configured value less than
   60480, that MTU option may be logged to system management but MUST be
   otherwise ignored.

   If no router is available, the local MTU MUST be left at 9072 or MUST
   be manually configured to the same different value on all connected
   stations.

   Implementations MAY accept arriving IPv6 datagrams which are larger
   than their configured maximum transmission unit.  They are not
   required to discard such datagrams. If they can not handle larger
   datagrams, they MAY log the event to the system administration, but
   MUST otherwise silently discard them.

4. Stateless Auto-configuration

   If a node has an EUI-64 which is not used to form the Interface
   Identifier for any other interface, it SHOULD use that EUI-64 to form
   the Interface Identifier for its ARCnet interface.  If that EUI-64 is
   in use for another interface attached to a different link, it MAY be
   used for the ARCnet interface as well.

   The Interface Identifier is then formed from the EUI-64 by
   complementing the "Universal/Local" (U/L) bit, which is the next-
   to-lowest order bit of the first octet of the EUI-64.

   When a node has no EUI-64 available for forming its ARCnet Interface
   Identifer, it MUST form that identifier as specified in [AARCH],
   Appendix A, section "Links with Non-Global Identifier".  That is, the
   8 bit manually configured ARCnet address is appended to the 56 zero
   bits.

   For example, for an ARCnet interface with the configured address of
   49 hexadecimal this results in the following identifier:

   |0              1|1              3|3              4|4              6|
   |0              5|6              1|2              7|8              3|
   +----------------+----------------+----------------+----------------+
   |0000000000000000|0000000000000000|0000000000000000|0000000001001001|
   +----------------+----------------+----------------+----------------+

   Note that this results in the universal/local bit set to "0" to
   indicate local scope.

   An IPv6 address prefix used for stateless auto-configuration [ACONF]
   of an ARCnet interface MUST have a length of 64 bits.

5. Link-Local Addresses

   The IPv6 link-local address [AARCH] for an ARCnet interface is formed
   by appending the Interface Identifier, as defined above, to the
   prefix FE80::/64.

    10 bits            54 bits                  64 bits
   +----------+-----------------------+----------------------------+
   |1111111010|         (zeros)       |    Interface Identifier    |
   +----------+-----------------------+----------------------------+

6. Address Mapping -- Unicast

   The procedure for mapping IPv6 addresses into ARCnet link-layer
   addresses is described in [DISC]. The Source/Target link layer
   Address option has the following form when the link layer is ARCnet.

             0                   1
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |     Type      |    Length     |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |ARCnet address |               |
            +---------------+              -+
            |                               |
            +-    5 octets of padding      -+
            |                               |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      Option fields:

      Type      1 for Source Link-layer address.
                2 for Target Link-layer address.
      Length         1 (in units of 8 octets).

      ARCnet address The 8 bit ARCnet address, in canonical bit order.

7. Address Mapping -- Multicast

   As ARCnet only provides 1 multicast address (00 hexadecimal), all
   IPv6 multicast addresses MUST be mapped to this address.

8. Security Considerations

   The method of derivation of Interface Identifiers from ARCnet
   addresses is intended to preserve local uniqueness when possible.
   However, there is no protection from duplication through accident or
   forgery.

9. Acknowledgements

   Big parts of the new version of this memo are either based on
   [ETHIPV6] or on Matt Crawford's review of an earlier version.

10. References

   [AARCH]   Hinden, R. and S. Deering, "IP Version 6 Addressing
             Architecture", RFC 2373, July 1998.

   [ACONF]   Thomson, S. and T. Narten, "IPv6 Stateless Address
             Autoconfiguration", RFC 2462, December 1998.

   [ARCIPV4] Provan, D., "Transmitting IP Traffic over ARCNET Networks",
             RFC1201, Novell, Inc., February 1991.

   [DISC]    Narten, T., Nordmark, E. and W. Simpson, "Neighbor
             Discovery for IP Version 6 (IPv6)", RFC 2461, December
             1998.

   [ETHIPV6] Crawford, M., "Transmission of IPv6 Packets over Ethernet
             Networks", RFC 2464, December 1998.

   [EUI64]   "64-Bit Global Identifier Format Tutorial", http://stan�
             dards.ieee.org/db/oui/tutorials/EUI64.html.

   [IPV6]    Deering, S. and R. Hinden, "Internet Protocol, Version 6
             (IPv6) Specification", RFC 2460, December 1998.

   [KWORD]   Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [PHDS]    Novell, Inc., "ARCNET Packet Header Definition Standard",
             Novell Part Number 100-00721-001, November 1989.

11. Author's Address

   Ignatios Souvatzis
   The NetBSD Project
   Stationenweg 29
   D-53332 Bornheim
   Germany

   Phone (work): +49 (228) 734316
   EMail: is@netbsd.org

12.  Full Copyright Statement

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

AI ELI5

On this page
PROBLEMIPv6 needs link-specific rules before it can run on ARCnet, a network with only 8-bit hardware addresses and one multicast address.
MECHANISMThe RFC assigns IPv6 the ARCnet protocol ID C4 hexadecimal, sets a default MTU of 9072 octets, builds interface identifiers from an EUI-64 or the 8-bit ARCnet address, and defines the link-layer address option for ARCnet.
STATUS TODAYIt is a Proposed Standard that was updated by RFC 8064.

§1What the RFC Specifies

RFC 2497 specifies a frame format for sending IPv6 packets over ARCnet and the way to form IPv6 link-local and statelessly autoconfigured addresses there. It also defines the Source/Target Link-layer Address option used by the Router Solicitation, Router Advertisement, Neighbor Solicitation, Neighbor Advertisement and Redirect messages of RFC 2461 when they are sent on an ARCnet.

It is a short rulebook for using the new internet addressing on one particular old kind of network.

§2Frame Format and Protocol ID

IPv6 packets are fragmented and reassembled at the link layer according to the ARCNET Packet Header Definition Standard. A short description of the method is in RFC 1201, the IPv4 over ARCNET specification.

The protocol ID, called the System Code in ARCnet terms, assigned to IPv6 is C4 hexadecimal.

Big messages are cut into pieces for the network and glued back together at the other end. A special code, C4, tells the receiver the pieces hold IPv6.

§3Maximum Transmission Unit

The largest IPv6 packet this encapsulation can carry is 60480 octets. That is impractical because the worst-case transmission time is several seconds, so all implementations on a given ARCnet should agree on a smaller value. The default MTU is 9072 octets.

With a router present, the MTU MAY be changed by a Router Advertisement carrying an MTU option. If the advertised MTU is larger than 60480, or larger than a manually configured value below 60480, it may be logged but MUST otherwise be ignored. With no router, the MTU MUST stay at 9072 or be manually set to the same value on all connected stations.

Implementations MAY accept arriving datagrams larger than their configured MTU. If they cannot handle them, they MAY log the event and MUST otherwise silently discard them.

Messages have a size limit, like a box that only holds so much. Everyone on the network should use the same box size, or the bigger boxes get thrown away.

§4Interface Identifiers and Link-Local Addresses

If a node has an EUI-64 not used for another interface, it SHOULD use it for its ARCnet interface. If that EUI-64 serves another interface on a different link, it MAY be reused. The Interface Identifier is the EUI-64 with the Universal/Local bit complemented.

With no EUI-64, the node MUST follow Appendix A of RFC 2373: the 8-bit manually configured ARCnet address is appended to 56 zero bits. For the address 49 hexadecimal this gives 56 zero bits followed by 01001001, which leaves the universal/local bit at 0 for local scope.

A prefix used for stateless autoconfiguration (RFC 2462) on ARCnet MUST be 64 bits long. The link-local address is the prefix FE80::/64 followed by the Interface Identifier.

A computer with a serial number built into its card uses that to make its address. If it has none, it uses the small number someone set by hand and fills the rest with zeros.

§6Address Mapping

Unicast mapping follows RFC 2461. On ARCnet the Source/Target Link-layer Address option has a Type (1 for source, 2 for target), a Length of 1 (in units of 8 octets), the 8-bit ARCnet address in canonical bit order, and 5 octets of padding.

ARCnet offers only one multicast address, 00 hexadecimal, so all IPv6 multicast addresses MUST be mapped to it.

To find a neighbor, a computer asks for its hardware number, which is just one small byte here. Every group message goes to the one shared address that ARCnet has for groups.

LINK-LAYER ADDRESS OPTION ON ARCNET (RFC 2497)
Source/Target Link-layer Address option
FieldNameSizeValueDescription
TYPEType1 byte1 for source, 2 for target link-layer address.
LENGTHLength1 byte11, in units of 8 octets.
ARCNET-ADDRESSARCnet address1 byteThe 8-bit ARCnet address, in canonical bit order.
PADDINGPadding5 bytes5 octets of padding.

§8Security Considerations

Deriving Interface Identifiers from ARCnet addresses is intended to preserve local uniqueness where possible. The RFC notes that there is no protection from duplication through accident or forgery.

Nothing stops two computers from picking the same address, by mistake or on purpose.

§7References