米葫芦网

RFC2491 - IPv6 over Non-Broadcast Multiple Access (NBMA) networks

热度:2℃ 发布时间:2024-11-18 09:37:59

Network Working Group G. Armitage
Request for Comments: 2491 LUCent Technologies
Category: Standards Track P. Schulter
Bright Tiger Technologies
M. Jork
Digital Equipment GmbH
G. Harter
Compaq
January 1999
IPv6 over Non-Broadcast Multiple Access (NBMA) 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.
Abstract
This document describes a general architecture for IPv6 over NBMA
networks. It forms the basis for subsidiary companion documents that
describe details for various specific NBMA technologies (such as ATM
or Frame Relay). The IPv6 over NBMA architecture allows conventional
host-side operation of the IPv6 Neighbor Discovery protocol, while
also supporting the establishment of "shortcut" NBMA forwarding paths
when dynamically signaled NBMA links are available. Operations over
administratively configured Point to Point NBMA links are also
described.
Dynamic NBMA shortcuts are achieved through the use of IPv6 Neighbor
Discovery protocol operation within Logical Links, and inter-router
NHRP for the discovery of off-Link NBMA destinations. Both flow-
triggered and eXPlicitly source-triggered shortcuts are supported.
1. Introduction.
Non Broadcast Multiple Access (NBMA) networks may be utilized in a
variety of ways. At one extreme, they can be used to simply provide
administratively configurable point to point service, sufficient to
interconnect IPv6 routers (and even IPv6 hosts, in certain
situations). At the other extreme, NBMA networks that support dynamic
establishment and teardown of Virtual Circuits (or functional
equivalents) may be used to emulate the service provided to the IPv6
layer by conventional broadcast media such as Ethernet. Typically
this emulation requires complex convergence protocols, particularly
to support IPv6 multicast.
This document describes a general architecture for IPv6 over NBMA
networks. It forms the basis for companion documents that provide
details specific to various NBMA technologies (for example, ATM [17]
or Frame Relay). The IPv6 over NBMA architecture allows conventional
host-side operation of the IPv6 Neighbor Discovery protocol, while
also supporting the establishment of "shortcut" NBMA forwarding paths
(when dynamically signaled NBMA links are available).
The majority of this document focuses on the use of dynamically
managed point to point and point to multipoint calls between
interfaces on an NBMA network. These will be generically referred to
as "SVCs" in the rest of the document. The use of administratively
configured point to point calls will also be discussed. Such calls
will be generically referred to as "PVCs". Depending on context,
either may be shortened to "VC".
Certain NBMA networks may provide a form of connectionless service
(e.g. SMDS). In these cases, a "call" or "VC" shall be considered to
implicitly exist if the sender has an NBMA destination address to
which it can transmit packets whenever it desires.
1.1 Neighbor Discovery.
A key difference between this architecture and previous IP over NBMA
protocols is its mechanism for supporting IPv6 Neighbor Discovery.
The IPv4 world evolved an approach to address resolution that
depended on the operation of an auxiliary protocol operating at the
"link layer" - starting with Ethernet ARP (RFC826 [14]). In the
world of NBMA (Non Broadcast, Multiple Access) networks ARP has been
applied to IPv4 over SMDS (RFC1209 [13]) and IPv4 over ATM (RFC1577
[3]). More recently the ION working group has developed NHRP (Next
Hop Resolution Protocol [8]), a general protocol for performing
intra-subnet and inter-subnet address resolution applicable to a
range of NBMA network technologies.
IPv6 developers opted to migrate away from a link layer specific
approach, chosing to combine a number of tasks into a protocol known
as Neighbor Discovery [7], intended to be non-specific across a
number of link layer technologies. A key assumption made by Neighbor
Discovery"s actual protocol is that the link technology underlying a
given IP interface is capable of native multicasting. This is not
particularly true of most NBMA network services, and usually requires
convergence protocols to emulate the desired service. (The MARS
protocol, RFC2022 [5], is an example of such a convergence
protocol.) This document augments and optimizes the MARS protocol for
use in support of IPv6 Neighbor Discovery, generalizing the
applicability of RFC2022 beyond ATM networks.
1.2 NBMA Shortcuts.
A shortcut is an NBMA level call (VC) directly connecting two IP
endpoints that are logically separated by one or more routers at the
IP level. IPv6 packets traversing this VC are said to "shortcut" the
routers that are in the logical IPv6 path between the VC"s endpoints.
NBMA shortcuts are a mechanism for minimizing the consumption of
resources within an IP over NBMA cloud (e.g. router hops and NBMA
VCs).
It is important that NBMA shortcuts are supported whenever IP is
deployed across NBMA networks capable of supporting dynamic
establishment of calls (SVCs or functional equivalent). For IPv6
over NBMA, shortcut discovery and management is achieved through a
mixture of Neighbor Discovery and NHRP.
1.3 Key components of the IPv6 over NBMA architecture.
1.3.1 NBMA networks providing PVC support.
When the NBMA network is used in PVC mode, each PVC will connect
exactly two nodes and the use of Neighbor Discovery and other IPv6
features is limited. IPv6/NBMA interfaces have only one neighbor on
each Link. The MARS and NHRP protocols are NOT necessary, since
multicast and broadcast operations collapse down to an NBMA level
unicast operation. Dynamically discovered shortcuts are not
supported.
The actual details of encapsulations and link token generation SHALL
be covered by companion documents covering specific NBMA technology.
They SHALL conform to the following guidelines:
Both unicast and multicast IPv6 packets SHALL be transmitted over
PVC links using the encapsulation described in section 4.4.1.
Interface tokens for PVC links SHALL be constructed as described
in section 5. Interface tokens need only be unique between the two
nodes on the PVC link.
This use of PVC links does not mandate, nor does it prohibit the
use of extensions to the Neighbor Discovery protocol which may be
developed for either general use of for use in PVC connections
(for example, Inverse Neighbor Discovery).
NBMA-specific companion documents MAY additionally specify the
concatenation of IPv6 over PPP and PPP over NBMA mechanisms as an
OPTIONAL approach to point to point IPv6.
Except where noted above, the remainder of this document focuses on
the SVC case.
1.3.2 NBMA networks providing SVC support.
When the NBMA network is used in SVC mode, the key components are:
- The IPv6 Neighbor model, where neighbors are discovered through
the use of messages multicast to members of an IPv6 interface"s
local IPv6 Link.
- The MARS model, allowing emulation of general multicast using
multipoint calls provided by the underlying NBMA network.
- The NHRP service for seeking out the NBMA identities of IP
interfaces who are logically distant in an IP topological sense.
- The modeling of IP traffic as "flows", and optionally using the
existence of a flow as the basis for attempting to set up a
shortcut link level connection.
In summary:
The IPv6 "Link" is generalized to "Logical Link" (LL) in NBMA
environments (analogous to the generalization of IPv4 IP Subnet to
Logical IP Subnet in RFC1209 and subsequently RFC1577).
IPv6/NBMA interfaces utilize RFC2022 (MARS) for general intra-
Logical Link multicasting. The MARS itself is used to optimally
distribute discovery messages within the Logical Link.
For destinations not currently considered to be Neighbors, a host
sends the packets to one of its default routers.
When appropriately configured, the egress router from a Logical
Link is responsible for detecting the existence of an IP packet
flow through it that might benefit from a shortcut connection.
While continuing to conventionally forward the flow"s packets,
the router initiates an NHRP query for the flow"s destination
IP address.
The last router/NHS before the target of the NHRP query
ascertains the target interface"s preferred NBMA address.
The originally querying router then issues a Redirect to the IP
source, identifying the flow"s destination as a transient
Neighbor.
Host-initiated triggering of shortcut discovery, regardless of the
existence of a packet flow, is also supported through specific
Neighbor Solicitations sent to a source host"s default router.
A number of key advantages are claimed for this approach. These are:
The IPv6 stacks on hosts do not implement separate ND protocols
for each link layer technology.
When the destination of a flow is solicited as a transient
neighbor, the returned NBMA address will be the one chosen by the
destination when the flow was originally established through hop-
by-hop processing. This supports the existing ND ability for IPv6
destinations to perform their own dynamic interface load sharing.
1.4 Terminology.
The bit-pattern or numeric value used to identify a particular NBMA
interface at the NBMA level will be referred to as an "NBMA address".
(An example would be an ATM End System Address, AESA, when applying
this architecture to ATM networks, or an E.164 number when applying
this architecture to SMDS networks.)
The call that, once established, is used to transfer IP packets from
one NBMA interface to another will be referred to as an SVC or PVC
depending on whether the call is dynamically established through some
signaling mechanism, or administratively established. The specific
signaling mechanisms used to establish or tear down an SVC will be
defined in the NBMA-specific companion specifications. Certain NBMA
networks may provide a form of connectionless service (e.g. SMDS). In
these cases, a "call" or "SVC" shall be considered to implicitly
exist if the sender has an NBMA destination address to which it can
transmit packets whenever it desires.
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 RFC2119 [16].
1.5 Document Structure.
The remainder of this document is structured as follows: Section 2
explains the generalization of IPv6 Link to "Logical Link" when used
over NBMA networks, and introduces the notion of the Transient
Neighbor. Section 3 describes the modifications to the MARS protocol
for efficient distribution of ND messages within a Logical Link, and
the rules and mechanisms for discovering Transient Neighbors.
Section 4 covers the basic rules governing IPv6/NBMA interface
initialization, packet and control message encapsulations, and rules
for SVC management. Section 5 describes the general rules for
constructing Interface Tokens, the Link Layer Address Option, and
Link Local addresses. Section 6 concludes the normative sections of
the document. Appendix A provides some non-normative descriptive
text regarding the operation of Ipv6 Neighbor Discovery. Appendix B
describes some sub-optimal solutions for emulating the multicasting
of Neighbor Discovery messages around a Logical Link. Appendix C
discusses shortcut suppression and briefly reviews the future
relationships between flow detection and mapping of flows onto SVCs
of differing qualities of service.
2. Logical Links, and Transient Neighbors.
IPv6 contains a concept of on-link and off-link. Neighbors are those
nodes that are considered on-link and whose link-layer addresses may
therefore be located using Neighbor Discovery. Borrowing from the
terminology definitions in the ND text:
on-link - an address that is assigned to a neighbor"s interface on
a shared link. A host considers an address to be on-
link if:
- it is covered by one of the link"s prefixes, or
- a neighboring router specifies the address as the
target of a Redirect message, or
- a Neighbor Advertisement message is received for the
target address, or
- a Neighbor Discovery message is received from the
address.
off-link - the opposite of "on-link"; an address that is not
assigned to any interfaces attached to a shared link.
Off-link nodes are considered to only be accessible through one of
the routers directly attached to the link.
The NBMA environment complicates the sense of the word "link" in much
the same way as it complicated the sense of "subnet" in the IPv4
case. For IPv4 this required the definition of the Logical IP Subnet
(LIS) - an administratively constructed set of hosts that would share
the same routing prefixes (network and subnetwork masks).
This document considers the IPv6 analog to be a Logical Link (LL).
An LL consists of nodes administratively configured to be "on
link" with respect to each other.
The members of an LL are an IPv6 interface"s initial set of
neighbors, and each interface"s Link Local address only needs to
be unique amongst this set.
It should be noted that whilst members of an LL are IPv6 Neighbors,
it is possible for Neighbors to exist that are not, administratively,
members of the same LL.
Neighbor Discovery events can result in the expansion of an IPv6
interface"s set of Neighbors. However, this does not change the set
of interfaces that make up its LL. This leads to three possible
relationships between any two IPv6 interfaces:
- On LL, Neighbor.
- Off LL, Neighbor.
- Off LL, not Neighbor.
Off LL Neighbors represent the "shortcut" connections, where it has
been ascertained that direct connectivity at the NBMA level is
possible to a target that is not a member of the source"s LL.
Neighbors discovered through the operation of unsolicited messages,
such as Redirects, are termed "Transient Neighbors".
3. Intra-LL and Inter-LL Discovery.
This document makes a distinction between the discovery of neighbors
within a Logical Link (intra-LL) and neighbors beyond the LL (inter-
LL). The goal is to allow both inter- and intra-LL neighbor discovery
to involve no changes to the host-side IPv6 stack for NBMA
interfaces.
Note that section 1.3.1 applies when the NBMA network is being used
to provide only configured point to point (PVC) service.
3.1 Intra-LL - ND over emulated multicast.
The basic model of ND assumes that a link layer interface will do
something meaningful with an ICMPv6 packet sent to a multicast IP
destination address. (IPv6 assumes that multicasting is an integral
part of the Internet service.) This document assumes multicast
support will be provided using the RFC2022 (MARS) [5] service
(generalized for use over other NBMA technologies in addition to
ATM). An IPv6 LL maps directly onto an IPv6 MARS Cluster in the same
way an IPv4 LIS maps directly onto an IPv4 MARS Cluster.
The goal of intra-LL operation is that the IPv6 layer must be able to
simply pass multicast ICMPv6 packets down to the IPv6/NBMA driver
without any special, NBMA specific processing. The underlying
mechanism for distributing Neighbor Discovery and Router Discovery
messages then works as expected.
Sections 3.1.1 describes the additional functionality that SHALL be
required of any MARS used in conformance with this document.
Background discussion of these additions is provided in Appendix B.
3.1.1 Mandatory augmented MARS and MARS Client behavior.
IPv6/NBMA interfaces SHALL register as MARS Cluster members as
described in section 4.1, and SHALL send certain classes of outgoing
IPv6 packets directly to their local MARS as described in section
4.4.2.
The MARS itself SHALL then re-transmit these packets according to the
following rules:
- When the MARS receives an IPv6 packet, it scans the group
membership database to find the NBMA addresses of the IPv6
destination group"s members.
- The MARS then checks to see if every group member currently has
its pt-pt control VC open to the MARS. If so, the MARS sends a
copy of the data packet directly to each group member over the
existing pt-pt VCs.
- If one or more of the discovered group members do not have an
open pt-pt VC to the MARS, or if there are no group members
listed, the packet is sent out ClusterControlVC instead. No
copies of the packet are sent over the existing (if any) pt-pt
VCs.
3.2 Inter-LL - Redirects, and their generation.
Shortcut connections are justified on the grounds that demanding
flows of IP packets may exist between source/destination pairs that
are separated by IP routing boundaries. Shortcuts are created between
Transient Neighbors.
The key to creating transient neighbors is the Redirect message
(section 8 [7]). IPv6 allows a router to inform the members of an LL
that there is a better "first hop" to a given destination (section
8.2 [7]). The advertisement itself is achieved through a Router
Redirect message, which may carry the link layer address of this
better hop.
A transmitting host only listens to Router Redirects from the router
that is currently acting as the default router for the IP destination
that the Redirect refers to. If a Redirect arrives that indicates a
better first hop for a given destination, and supplies a link layer
(NBMA) address to use as the better first hop, the associated
Neighbor Cache entry in the source host is updated and its
reachability set to STALE. Updating the cache in this context
involves building a new VC to the new NBMA address. If this is
successful, the old VC is torn down only if it no longer required
(since the old VC was to the router, it may still be required by
other packets from the host that are heading to the router).
Two mechanisms are provided for triggering the discovery of a better
first hop:
Router-based flow identification/detection.
Host-initiated shortcut request.
Section 3.2.1 discusses flow-based triggers, section 3.2.2 discusses
the host initiated trigger, and section 3.2.3 discusses the use of
NHRP to discover mappings for IPv6 targets in remote LLs.
3.2.1 Flow Triggered Redirection.
The modification of forwarding paths based on the dynamic detection
of IP packet flows is at the core of models such as the Cell Switch
Router [11] and the IP Switch [12]. Responsibility for detecting
flows is placed into the routers, where packets cross the edges of IP
routing boundaries.
For the purpose of conformance with this document, a router MAY
choose to initiate the discovery of a better first-hop when it
determines that an identifiable flow of IP packets are passing
through it.
Such a router:
SHALL only track flows that originate from a directly attached
host (a host that is within the LL-local scope of one of the
router"s interfaces).
SHALL NOT use IP packets arriving from another router to
trigger the generation of a Router Redirect.
SHALL only consider IPv6 packets with FlowID of zero for the
purposes of flow detection as defined in this section.
SHALL utilize NHRP as described in section 3.2.3 to ascertain a
better first-hop when a suitable flow is detected, and
advertise the information in a Router Redirect.
IPv6 routers that support the OPTIONAL flow detection behavior
described above SHALL support administrative mechanisms to switch off
flow-detection. They MAY provide mechanisms for adding additional
constraints to the categories of IPv6 packets that constitute a
"flow".
The actual algorithm(s) for determining what sequence of IPv6 packets
constitute a "flow" are outside the scope of this document. Appendix
C discusses the rationale behind the use of non-zero FlowID to
suppress flow detection.
3.2.2 Host Triggered Redirection
A source host MAY also trigger a redirection to a transient neighbor.
To support host-triggered redirects, routers conforming to this
document SHALL recognize specific Neighbor Solicitation messages sent
by hosts as requests for the resolution of off-link addresses.
To perform a host-triggered redirect, a source host SHALL:
Create a Neighbor Solicitation message referring to the off-LL
destination (target) for which a shortcut is desired
Address the NS message to the router that would be the next hop
for traffic sent towards the off-LL target (rather than the
target"s solicited node multicast address).
Use the standard ND hop limit of 255 to ensure the NS won"t be
discarded by the router.
Include the shortcut limit option defined in appendix D. The value
of this option should be equal to the hop limit of the data flow
for which this trigger is being sent. This ensures that the router
is able to restrict the shortcut attempt to not exceed the reach
of the data flow.
Forward the NS packet to the router that would be the next hop for
traffic sent towards the off-LL target.
Routers SHALL consider a unicast NS with shortcut limit option as a
request for a host-triggered redirect. However, actual shortcut
discovery is OPTIONAL for IPv6 routers.
When shortcut discovery is not supported, the router SHALL construct
a Redirect message identifying the router itself as the best
"shortcut", and return it to the soliciting host.
If shortcut discovery is to be supported, the router"s response SHALL
be:
A suitable NHRP Request is constructed and sent as described in
section 3.2.3. The original NS message SHOULD be discarded.
Once the NHRP Reply is received by the originating router, the
router SHALL construct a Redirect message containing the IPv6
address of the transient neighbor, and the NBMA link layer address
returned by the NHRP resolution process.
The resulting Redirect message SHALL then be transmitted back to
the source host. When the Redirect message is received, the source
host SHALL update its Neighbor and Destination caches.
The off-LL target is now considered a Transient Neighbor. The
next packet sent to the Transient Neighbor will result in the
creation of the direct, shortcut VC (to the off-LL target itself,
or to the best egress router towards that neighbor as determined
by NHRP).
If a NHRP NAK or error indication is received for a host-triggered
shortcut attempt, the requesting router SHALL construct a Redirect
message identifying the router itself as the best "shortcut", and
return it to the soliciting host.
3.2.3 Use of NHRP between routers.
Once flow detection has occurred, or a host trigger has been
detected, routers SHALL use NHRP in an NHS to NHS mode to establish
the IPv6 to link level address mapping of a better first hop.
IPv6/NBMA routers supporting shortcut discovery will need to perform
some or all of the following functions:
- Construct NHRP Requests and Replies.
- Parse incoming NHRP Requests and Replies from other NHSes
(routers).
- Forward NHRP Requests towards an NHS that is topologically
closer to the IPv6 target.
- Forward NHRP Replies towards an NHS that is topologically closer
to the requester.
- Perform syntax translation between Neighbor Solicitations and
outbound NHRP Requests.
- Perform syntax translation between inbound NHRP Replies and
Redirects.
The destination of the flow that caused the trigger (or the target of
the host initiated trigger) is used as the target for resolution in a
NHRP Request. The router then forwards this NHRP Request to the next
closest NHS. The process continues (as it would for normal NHRP)
until the Request reaches an NHS that believes the IP target is
within link-local scope of one of its interfaces. (This may
potentially occur within a single router.)
As NHRP resolution requests always follow the routed path for a given
target protocol address, the scope of a shortcut request will be
automatically bounded to the scope of the IPv6 target address. (e.g.
resolution requests for site-local addresses will not be forwarded
across site boundaries.)
The last hop router SHALL resolve the NHRP Request from mapping
information contained in its neighbor cache for the interface on
which the specified target is reachable. If there is no appropriate
entry in the Neighbor cache, or the destination is currently
considered unreachable, the last hop router SHALL perform Neighbor
Discovery on the local interface, and build the NHRP Reply from the
resulting answer. (Note, in the case where the NHRP Request
originated due to flow detection, there must already be a hop-by-hop
flow of packets going through the last hop router towards the target.
In this typical case the Neighbor cache will already have the desired
information.)
The NHRP Reply is propagated back to the source of the NHRP Request,
using a hop-by-hop path as it would for normal NHRP.
If the discovery process was triggered through flow detection at the
originating router, the return of the NHRP Reply results in the
following events:
A Redirect is constructed using the IPv6/NBMA mapping carried in
the NHRP Reply.
The Redirect is unicast to the IP packet flow"s source (using the
VC on which the flow is arriving at the router, if it is a bi-
directional pt-pt VC).
Any Redirect message sent by a router MUST conform to all the
rules described in [7] so that the packet is properly validated by
the receiving host. Specifically, if the target of the resulting
short-cut is the destination host then the ICMP Target Address
MUST be the same as the ICMP Destination Address in the original
message. If the target of the short-cut is an egress router then
the ICMP Target Address MUST be a Link Local address of the egress
router that is unique to the NBMA cloud to which the router"s NBMA
interface is attached.
Also note that egress routers may subsequently redirect the source
host. To do so, the Link Local ICMP Source Address of the Redirect
message MUST be the same as the Link Local ICMP Target Address of
the original Redirect message.
Note that the router constructing the NHRP Reply does so using the
NBMA address returned by the target host when the target host first
accepted the flow of IP traffic. This retains a useful feature of
Neighbor Discovery - destination interface load sharing.
Upon receipt of a NHRP NAK reply or error indication for a flow-
triggered shortcut attempt, no indication is sent to the source of
the flow.
3.2.3.1 NHRP/ND packet translation rules.
The following translation rules are meant to augment the packet
format specification in section 5 of the NHRP specification [8],
covering those packet fields specifically utilized by the IPv6/NBMA
architecture.
NHRP messages are constructed and sent according to the rules in [8].
The value of the NBMA technology specific fields such as ar$afn,
ar$pro.type, ar$pro.snap and link layer address format are defined in
NBMA-specific companion documents. Source, destination or client
protocol addresses in the common header or CIE of a NHRP message are
always IPv6 addresses of length 16.
When constructing an host-triggered NHRP resolution request in
response to a Neighbor Solicitation:
The ar$hopcnt field MUST be smaller than the shortcut limit value
specified in the shortcut limit option included in the triggering
NS message. This ensures that hosts have control over the reach of
their shortcut request. Note that the shortcut limit given in the
option is relative to the requesting host, thus the requirement of
ar$hopcnt being smaller than the given shortcut limit.
The Flags field in the common header of the NHRP resolution
request SHOULD have the Q and S bits set.
The U bit SHOULD be set. NBMA and protocol source addresses are
those of the router constructing the request.
The target address from the NS message is used as the NHRP
destination protocol address. A CIE SHALL NOT be specified.
When constructing a NHRP resolution request as a result of flow
detection, the choice of values is configuration dependent.
A NHRP resolution reply is build according to the rules in [8].
For each CIE returned, the holding time is 10 minutes.
The MTU may be 0 or a value specified in the NBMA-specific
companion document.
A successful NHRP resolution reply for a host-triggered shortcut
attempt is translated into an IPv6 Redirect message as follows:
IP Fields:
Source Address
The link-local address assigned to the router"s interface
from which this message is sent.
Destination Address
IPv6 Source Address of the triggering NS
Hop Limit
255
ICMP Fields:
Target Address
NHRP Client Protocol Address
Destination Address
Target of triggering NS (this is equivalent to the NHRP
Destination Protocol Address)
Target link-layer address
NHRP Client NBMA Address
All NHRP extensions currently defined in [8] have no effect on
NHRP/ND translation and MAY be used in NHRP messages for IPv6.
3.2.3.2 NHRP Purge rules.
Purges are generated by NHRP when changes are detected that
invalidate a previously issued NHRP Reply (this may include topology
changes, or a target host going down or changing identity). Any IPv6
shortcut previously established on the basis of newly purged
information SHOULD be torn down.
Routers SHALL keep track of NHRP cache entries for which they have
issued Neighbor Advertisements or Router Redirects. If a NHRP Purge
is received that invalidates information previously issued to local
host, the router SHALL issue a Router Redirect specifying the router
itself as the new best next-hop for the affected IPv6 target.
Routers SHALL keep track of Neighbor cache entries that have
previously been used to generate an NHRP Reply. The expiry of any
such Neighbor cache entry SHALL result in a NHRP Purge being sent
towards the router that originally requested the NHRP Reply.
3.3. Neighbor Unreachability Detection.
Neighbor Solicitations sent for the purposes of Neighbor
Unreachability Detection (NUD) are unicast to the Neighbor in
question, using the VC that is already open to that Neighbor. This
suggests that as far as NUD is concerned, the Transient Neighbor is
indistinguishable from an On-LL Neighbor.
3.4. Duplicate Address Detection.
Duplicate Address Detection is only required within the link-local
scope, which in this case is the LL-local scope. Transient Neighbors
are outside the scope of the LL. No particular interaction is
required between the mechanism for establishing shortcuts and the
mechanism for detection of duplicate link local addresses.
4 Node Operation Concepts.
This section describes node operations for performing basic functions
(such as sending and receiving data) on a Logical Link. The
application of these basic functions to the operation of the various
IPv6 protocols such as Neighbor Discovery is described in Appendix A.
The majority of this section applies only to NBMA networks when used
to provide point to point and point to multipoint SVCs. Section 7
discusses the case where the NBMA network is being used to supply
only point to point PVCs.
4.1.Connecting to a Logical Link.
Before a node can send or receive IPv6 datagrams its underlying
IPv6/NBMA interface(s) must first join a Logical Link.
An IPv6/NBMA driver SHALL establish a pt-pt VC to the MARS associated
with its Logical Link, and register as a Cluster Member [5]. The
node"s IPv6/NBMA interface will then be a member of the LL, have a
Cluster Member ID (CMI) assigned, and can begin supporting IPv6 and
IPv6 ND operations.
If the node is a host or router starting up it SHALL issue a single
group MARS_JOIN for the following groups:
- Its derived Solicited-node address(es) with link-local scope.
- The All-nodes address with link-local scope.
- Other configured multicast groups with at least link-local
scope.
If the node is a router it SHALL additionally issue:
- A single group MARS_JOIN for the All-routers address with
link-local scope.
- A block MARS_JOIN for the range(s) of IPv6 multicast addresses
(with greater than link-local scope) for which promiscuous
reception is required.
The encapsulation mechanism for, and key field values of, MARS
control messages SHALL be defined in companion documents specific to
particular NBMA network technologies.
4.2 Joining a Multicast Group.
This section describes the node"s behavior when it gets a
JoinLocalGroup request from the IPv6 Layer. The details of how this
behavior is achieved are going to be implementation specific.
If a JoinLocalGroup for a node-local address is received, the
IPv6/NBMA driver SHALL return success indication to the caller and
take no additional action. (Packets sent to node-local addresses
never reach the IPv6/NBMA driver.)
If a JoinLocalGroup is received for an address with greater than
node-local scope, the IPv6/NBMA driver SHALL send an appropriate
single group MARS_JOIN request to register this address with the
MARS.
4.3. Leaving a Multicast Group.
This section describes the node"s behavior when it gets a
LeaveLocalGroup request from the IPv6 Layer. The details of how this
behavior is achieved are going to be implementation specific.
If a LeaveLocalGroup for a node-local address is received, the
IPv6/NBMA driver SHALL return success indication to the caller and
take no additional action. (Packets sent to node-local addresses
never reach the IPv6/NBMA driver.)
If a LeaveLocalGroup is received for an address with greater than
node-local scope, the IPv6/NBMA driver SHALL send an appropriate
single group MARS_LEAVE request to deregister this address with the
MARS.
4.4. Sending Data.
Separate processing and encapsulation rules apply for outbound
unicast and multicast packets.
4.4.1. Sending Unicast Data.
The IP level "next hop" for each outbound unicast IPv6 packet is used
to identify a pt-pt VC on which to forward the packet.
For NBMA networks where LLC/SNAP encapsulation is typically used
(e.g. ATM or SMDS), the IPv6 packet SHALL be encapsulated with the
following LLC/SNAP header and sent over the VC.
[0xAA-AA-03][0x00-00-00][0x86-DD][IPv6 packet]
(LLC) (OUI) (PID)
For NBMA networks that do not use LLC/SNAP encapsulation, an
alternative rule SHALL be specified in the NBMA-specific companion
document.
If no pt-pt VC exists for the next hop address for the packet, the
node SHALL place a call to set up a VC to the next hop destination.
Any time the IPv6/NBMA driver receives a unicast packet for
transmission the IPv6 layer will already have determined the link-
layer (NBMA) address of the next hop. Thus, the information needed
to place the NBMA call to the next hop will be available.
The sending node SHOULD queue the packet that triggered the call
request, and send it when the call is established.
If the call to the next hop destination node fails the sending node
SHALL discard the packet that triggered the call setup. Persistent
failure to create a VC to the next hop destination will be detected
and handled at the IPv6 Network Layer through NUD.
At this time no rules are specified for mapping outbound packets to
VCs using anything more than the packet"s destination address.
4.4.2. Sending Multicast Data.
The IP level "next hop" for each outbound multicast IPv6 packet is
used to identify a pt-pt or pt-mpt VC on which to forward the packet.
For NBMA networks where LLC/SNAP encapsulation is typically used
(e.g. ATM or SMDS), multicast packets SHALL be encapsulated in the
following manner:
[0xAA-AA-03][0x00-00-5E][0x00-01][pkt$cmi][0x86DD][IPv6
packet]
(LLC) (OUI) (PID) (mars encaps)
The IPv6/NBMA driver"s Cluster Member ID SHALL be copied into
the 2 octet pkt$cmi field prior to transmission.
For NBMA networks that do not use LLC/SNAP encapsulation, an
alternative rule SHALL be specified in the NBMA-specific companion
document. Some mechanism for carrying the IPv6/NBMA driver"s
Cluster Member ID SHALL be provided.
If the packet"s destination is one of the following multicast
addresses, it SHALL be sent over the IPv6/NBMA driver"s direct pt-pt
VC to the MARS:
- A Solicited-node address with link-local scope.
- The All-nodes address with link-local scope.
- The All-routers address with link-local scope.
- A DHCP-v6 relay or server multicast address.
The MARS SHALL then redistribute the IPv6 packet as described in
section 3.1.1. (If the VC to the MARS has been idle timed out for
some reason, it MUST be re-established before forwarding the packet
to the MARS.)
If packet"s destination is any other address, then the usual MARS
client mechanisms are used by the IPv6/NBMA driver to select and/or
establish a pt-mpt VC on which the packet is to be sent.
At this time no rules are specified for mapping outbound packets to
VCs using anything more than the packet"s destination address.
4.5. Receiving Data.
Packets received using the encapsulation shown in section 4.4.1 SHALL
be de-encapsulated and passed up to the IPv6 layer. The IPv6 layer
then determines how the incoming packet is to be handled.
Packets received using the encapsulation specified in section 4.4.2
SHALL have their pkt$cmi field compared to the local IPv6/NBMA
driver"s own CMI. If the pkt$cmi in the header matches the local CMI
the packet SHALL be silently dropped. Otherwise, the packet SHALL be
de-encapsulated and passed to the IPv6 layer. The IPv6 layer then
determines how the incoming packet is to be handled.
For NBMA networks that do not use LLC/SNAP encapsulation, alternative
rules SHALL be specified in the NBMA-specific companion document.
The IPv6/NBMA driver SHALL NOT attempt to filter out multicast IPv6
packets arriving with encapsulation defined for unicast packets, nor
attempt to filter out unicast IPv6 packets arriving with
encapsulation defined for multicast packets.
4.6. VC Setup and release for unicast data.
Unicast VCs are maintained separately from multicast VCs. The setup
and maintenance of multicast VCs are handled by the MARS client in
each IPv6/NBMA driver [5]. Only the setup and maintenance of pt-pt
VCs for unicast IPv6 traffic will be described here. Only best
effort unicast VCs are considered. The creation of VCs for other
classes of service is outside the scope of this document.
Before sending a packet to a new destination within the same LL a
node will first perform a Neighbor Discovery on the intra-LL target.
This is done to resolve the IPv6 destination address into a link-
layer address which the sender can then use to send unicast packets.
Appendix A.1.1 contains non-normative, descriptive text covering the
Neighbor Solicitation/Advertisement exchange and eventual
establishment of a new SVC.
A Redirect message (either a redirect to a node on the same LL, or a
shortcut redirect to a node outside the LL) results in the sending
(redirected) node creating a new pt-pt VC to a new receiving node.
the Redirect message SHALL contain the link layer (NBMA) address of
the new receiving IPv6/NBMA interface. The redirected node does not
concern itself where the new receiving node is located on the NBMA
network. The redirected node will set up a pt-pt VC to the new node
if one does not previously exist. The redirected node will then use
the new VC to send data rather than whatever VC it had previously
been using.
Redirects are unidirectional. Even after the source has reacted to a
redirect, the destination will continue to send IPv6 packets back to
the redirected node on the old path. This happens because the
destination node has no way of determining the IPv6 address of the
other end of a new VC in the absence of Neighbor Discovery. Thus,
redirects will not result in both ends of a connection using the new
VC. IPv6 redirects are not intended to provide symmetrical
redirection. If the non-redirected node eventually receives a
redirect it MAY discover the existing VC to the target node and use
that rather than creating a new VC.
It is desirable that VCs are released when no longer needed.
An IPv6/NBMA driver SHALL release any VC that has been idle for 20
minutes.
This time limit MAY be reduced through configuration or as specified
in companion documents for specific NBMA networks.
If a Neighbor or Destination cache entry is purged then any VCs
associated with the purged entry SHOULD be released.
If the state of an entry in the Neighbor cache is set to STALE, then
any VCs associated with the stale entry SHOULD be released.
4.7 NBMA SVC Signaling Support and MTU issues.
Mechanisms for signaling the establishment and teardown of pt-pt and
pt-mpt SVCs for different NBMA networks SHALL be specified in
companion documents.
Since any given IPv6/NBMA driver will not know if the remote end of a
VC is in the same LL, drivers SHALL implement NBMA-specific
mechanisms to negotiate acceptable MTUs at the VC level. These
mechanisms SHALL be specified in companion documents.
However, IPv6/NBMA drivers can assume that they will always be
talking to another driver attached to the same type of NBMA network.
(For example, an IPv6/NBMA driver does not need to consider the
possibility of establishing a shortcut VC directly to an IPv6/FR
driver.)
5. Interface Tokens, Link Layer Address Options, Link-Local Addresses
5.1 Interface Tokens
Each IPv6 interface must have an interface token from which to form
IPv6 autoconfigured addresses. This interface token must be unique
within a Logical Link to prevent the creation of duplicate addresses
when stateless address configuration is used.
In cases where two nodes on the same LL produce the same interface
token then one interface MUST choose another host-token. All
implementations MUST support manual configuration of interface tokens
to allow operators to manually change a interface token on a per-LL
basis. Operators may choose to manually set interface tokens for
reasons other than eliminating duplicate addresses.
All interface tokens MUST be 64 bits in length and formatted as
described in the following sections. The hosts tokens will be based
on the format of an EUI-64 identifier [10]. Refer to [19 - Appendix
A] for a description of creating IPv6 EUI-64 based interface
identifiers.
5.1.1 Single Logical Links on a Single NBMA Interface
Physical NBMA interfaces will generally have some local identifier
that may be used to generate a unique IPv6/NBMA interface token. The
exact mechanism for generating interface tokens SHALL be specified in
companion documents specific to each NBMA network.
5.1.2 Multiple Logical Links on a Single NBMA Interface
Physical NBMA interfaces MAY be used to provide multiple logical NBMA
interfaces. Since each logical NBMA interface MAY support an
independent IPv6 interface, two separate scenarios are possible:
- A single host with separate IPv6/NBMA interfaces onto a number
of independent Logical Links.
- A set of 2 or more "virtual hosts" (vhosts) sharing a common
NBMA driver. Each vhost is free to establish IPv6/NBMA
interfaces associated with different or common LLs. However,
vhosts are bound by the same requirement as normal hosts - no
two interfaces to the same LL can share the same interface
token.
In the first scenario, since each IPv6/NBMA interface is associated
with a different LL, each interface"s external identity can be
differentiated by the LL"s routing prefix. Thus, the host can re-use
a single unique interface token across all its IPv6/NBMA interfaces.
(Internally the host will tag received packets in some locally
specific manner to identify what IPv6/NBMA interface they arrived on.
However, this is an issue generic to IPv6, and does not required
clarification in this document.)
The second scenario is more complex, but likely to be rarer.
When supporting multiple logical NBMA interfaces over a single
physical NBMA interface, independent and unique identifiers SHALL be
generated for each virtual NBMA interface to enable the construction
of unique IPv6/NBMA interface tokens. The exact mechanism for
generating interface tokens SHALL be specified in companion documents
specific to each NBMA network.
5.2 Link Layer Address Options
Neighbor Discovery defines two option fields for carrying link-layer
specific source and target addresses.
Between IPv6/NBMA interfaces, the format for these two options is
adapted from the MARS [5] and NHRP [8] specs. It SHALL be:
[Type][Length][NTL][STL][..NBMA Number..][..NBMA
Subaddress..]
Fixed Link layer address

[Type] is a one octet field.
1 for Source link-layer address.
2 for Target link-layer address.
[Length] is a one octet field.
The total length of the option in multiples of 8 octets. Zeroed bytes
are added to the end of the option to ensure its length is a multiple
of 8 octets.
[NTL] is a one octet "Number Type & Length" field.
[STL] is a one octet "SubAddress Type & Length" field.
[NBMA Number] is a variable length field. It is always present. This
contains the primary NBMA address.
[NBMA Subaddress] is a variable length field. It may or may not be
present. This contains any NBMA subaddress that may be required.
If the [NBMA Subaddress] is not present, the option ends after the
[NBMA Number] ( and any additional padding for 8 byte alignment).
The contents and interpretation of the [NTL], [STL], [NBMA Number],
and [NBMA Subaddress] fields are specific to each NBMA network, and
SHALL be specified in companion documents.
5.3 Link-Local Addresses
The IPv6 link-local address is formed by appending the interface
token, as defined above, to the prefix FE80::/64.
10 bits 54 bits 64 bits
+----------+-----------------------+----------------------------+
1111111010 (zeros) Interface Token
+----------+-----------------------+----------------------------+
6. Conclusion and Open Issues
This document describes a general architecture for IPv6 over NBMA
networks. It forms the basis for subsidiary companion documents that
provide details for various specific NBMA technologies (such as ATM
or Frame Relay). The IPv6 over NBMA architecture allows conventional
host-side operation of the IPv6 Neighbor Discovery protocol, while
also supporting the establishment of "shortcut" NBMA forwarding paths
(when dynamically signaled NBMA links are available).
The IPv6 "Link" is generalized to "Logical Link" in an analagous
manner to the IPv4 "Logical IP Subnet". The MARS protocol is
augmented and used to provide relatively efficient intra Logical Link
multicasting of IPv6 packets, and distribution of Discovery messages.
Shortcut NBMA level paths are supported either through router based
flow detection, or host originated explicit requests. Neighbor
Discovery is used without modification for all intra-LL control
(including the initiation of NBMA shortcut discovery). Router to
router NHRP is used to oBTain the IPv6/NBMA address mappings for
shortcut targets outside a source"s Logical Link.
7. Security Considerations
This architecture introduces no new protocols, but depends on
existing protocols (NHRP, IPv6, ND, MARS) and is therefore subject to
all the security threats inherent in these protocols. This
architecture should not be used in a domain where any of the base
protocols are considered unacceptably insecure. However, this
protocol itself does not introduce additional security threats.
While this proposal does not introduce any new security mechanisms
all current IPv6 security mechanisms will work without modification
for NBMA. This includes both authentication and encryption for both
Neighbor Discovery protocols as well as the exchange of IPv6 data
packets. The MARS protocol is modified in a manner that does not
affect or augment the security offered by RFC2022.
Acknowledgments
Eric Nordmark confirmed the usefulness of ND Redirect messages in
private email during the March 1996 IETF. The discussions with
various ION WG members during the June and December 1996 IETF helped
solidify the architecture described here. Grenville Armitage"s
original work on IPv6/NBMA occurred while employed at Bellcore.
Elements of section 5 were borrowed from Matt Crawford"s memo on IPv6
over Ethernet.
Authors" Addresses
Grenville Armitage
Bell Laboratories, Lucent Technologies
101 Crawfords Corner Road
Holmdel, NJ 07733
USA
EMail: gja@lucent.com
Peter Schulter
Bright Tiger Technologies
125 Nagog Park
Acton, MA 01720
EMail: paschulter@acm.org
Markus Jork
European Applied Research Center
Digital Equipment GmbH
CEC Karlsruhe
Vincenz-Priessnitz-Str. 1
D-76131 Karlsruhe
Germany
EMail: jork@kar.dec.com
Geraldine Harter
Digital UNIX Networking
Compaq Computer Corporation
110 Spit Brook Road
Nashua, NH 03062
EMail: harter@zk3.dec.com
References
[1] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6)
Specification", RFC2460, December 1998.
[2] ATM Forum, "ATM User Network Interface (UNI) Specification
Version 3.1", ISBN 0-13-393828-X, Prentice Hall, Englewood
Cliffs, NJ, June 1995.
[3] Crawford, M., "A Method for the Transmission of IPv6 Packets over
Ethernet Networks", RFC1972, August 1996.
[4] Heinanen, J., "Multiprotocol Encapsulation over ATM Adaptation
Layer 5", RFC1483, July 1993.
[5] Armitage, G., "Support for Multicast over UNI 3.1 based ATM
Networks", RFC2022, November 1996.
[6] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC2373, July 1998.
[7] Narten, T., Nordmark, E. and W. Simpson, "Neighbor Discovery for
IP Version 6 (IPv6)", RFC2461, December 1998.
[8] Luciani, J., Katz, D., Piscitello, D. Cole B and N. Doraswamy,
"NBMA Next Hop Resolution Protocol (NHRP)", RFC2332, April 1998.
[9] Thomson, S. and T. Narten, "IPv6 Stateless Address
Autoconfiguration", RFC2462, December 1998.
[10] "64-Bit Global Identifier Format Tutorial",
http://standards.ieee.org/db/oui/tutorials/EUI64.Html.
[11] Katsube, Y., Nagami, K. and H. Esaki, "Toshiba"s Router
Architecture Extensions for ATM : Overview", RFC2098, February
1997.
[12] P. Newman, T. Lyon, G. Minshall, "Flow Labeled IP: ATM under
IP", Proceedings of INFOCOM"96, San Francisco, March 1996,
pp.1251-1260
[13] Piscitello, D. and J. Lawrence, "The Transmission of IP
Datagrams over the SMDS Service", RFC1209, March 1991.
[14] Plummer, D., "An Ethernet Address Resolution Protocol - or -
Converting Network Protocol Addresses to 48.bit Ethernet Address
for Transmission on Ethernet Hardware", STD 37, RFC826,
November 1982.
[15] McCann, J., Deering, S. and J. Mogul, "Path MTU Discovery for IP
version 6", RFC1981, August 1996.
[16] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC2119, March 1997.
[17] Armitage, G., Schulter, P. and M. Jork, "IPv6 over ATM
Networks", RFC2492, January 1999.
[18] C. Perkins, J. Bound, "Dynamic Host Configuration Protocol for
IPv6 (DHCPv6)", Work in Progress.
[19] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC2373, July 1998.
Appendix A. IPv6 Protocol Operation Description
The IPv6 over NBMA model described in this document maintains the
complete semantics of the IPv6 protocols. No changes need to be made
to the IPv6 Network Layer. Since the concept of the security
association is not being changed for NBMA, this framework maintains
complete IPv6 security semantics and features. This allows IPv6 nodes
to choose their responses to solicitations based on security
information as is done with other datalinks, thereby maintaining the
semantics of Neighbor Discovery since it is always the solicited node
that chooses what (and even if) to reply to the solicitation. Thus,
NBMA will be transparent to the network layer except in cases where
extra services (such as QoS VCs) are offered.
The remainder of this Appendix describes how the core IPv6 protocols
will operate within the model described here.
A.1 Neighbor Discovery Operations
Before performing any sort of Neighbor discover operation, each node
must first join the all-node multicast group, and it"s solicited node
multicast address (the use of this address in relation to DAD is
described in A.1.4). The IPv6 network layer will join these
multicast groups as described in 4.2.
A.1.1 Performing Address Resolution
An IPv6 host performs address resolution by sending a Neighbor
Solicitation to the solicited-node multicast address of the target
host, as described in [7]. The Neighbor Solicitation message will
contain a Source Link-Layer Address Option set to the soliciting
node"s NBMA address on the LL.
When the local node"s IPv6/NBMA driver is passed the Neighbor
Solicitation message from the IPv6 network layer, it follows the
steps described in section 4.4.2 Sending Multicast Data.
One or more nodes will receive the Neighbor Solicitation message.
The nodes will process the data as described in section 4.5 and pass
the de-encapsulated packets to the IPv6 network layer.
If the receiving node is the target of the Neighbor Solicitation it
will update its Neighbor cache with the soliciting node"s NBMA
address, contained in the Neighbor Solicitation message"s Source
Link-Layer Address Option as described in [7].
The solicited IPv6 host will respond to the Neighbor Solicitation
with a Neighbor Advertisement message sent to the IPv6 unicast
address of the soliciting node. The Neighbor Advertisement message
will contain a Target Link-Layer Address Option set to the solicited
node"s NBMA address on the LL.
The solicited node"s IPv6/NBMA driver will be passed the Neighbor
Advertisement and the soliciting node"s link-layer address from the
IPv6 network layer. It will then follow the steps described in
section section 4.4.1 to send the NA message to the soliciting node.
This will create a pt-pt VC between the solicited node and soliciting
node if one did not already exist.
The soliciting node will then receive the Neighbor Advertisement
message over the new PtP VC, de-encapsulate the message, and pass it
to the IPv6 Network layer for processing as described in section 4.5.
The soliciting node will then make the appropriate entries in it"s
Neighbor cache, including caching the NBMA link-layer address of the
solicited node as described in [7].
At this point each system has a complete Neighbor cache entry for the
other system. They can exchange data over the pt-pt VC newly created
by the solicited node when it returned the Neighbor Advertisement, or
create a new VC.
An IPv6 host can also send an Unsolicited Neighbor Advertisemnent to
the all-nodes multicast address. When the local node IPv6/NBMA driver
is passed the Neighbor Advertisement from the IPv6 network layer, it
follows the steps described in section 4.4.2 to send the NA message
to the all-nodes multicast address. Each node will process the
incoming packet as described in section 4.5 and then pass the packet
to the IPv6 network layer where it will be processed as described in
[7].
A.1.2 Performing Router Discovery
Router Discovery is described in [7]. To support Router Discovery an
IPv6 router will join the IPv6 all-routers multicast group address.
When the IPv6/NBMA driver gets the JoinLocalGroup request from the
IPv6 Network Layer, it follows the process described in section 4.2.
IPv6 routers periodically send unsolicited Router Advertisements
announcing their availability on the LL. When an IPv6 router sends
an unsolicited Router Advertisement, it sends a data packet addressed
to the IPv6 all-nodes multicast address. When the local node
IPv6/NBMA driver gets the Router Advertisement message from the IPv6
network layer, it transmits the message by following steps described
in section 4.4.2. The MARS will transmit the packet on the LL"s
ClusterControlVC, which sends the packets to all nodes on the LL.
Each node on the LL will then process the incoming packet as
described in section 4.5 and pass the received packet to the IPv6
Network layer for processing as appropriate.
To perform Router Discovery, an IPv6 host sends a Router Solicitation
message to the all-routers multicast address. When the local node
IPv6/NBMA driver gets the request from the IPv6 Network Layer to send
the packet, it follows the steps described in section 4.4.2. The RS
message will be sent to either those nodes which have joined the
all-routers multicast group or to all nodes. The nodes which receive
the RA message will process the message as described in section 4.5
and pass the RA message up to the IPv6 layer for processing. Only
those nodes which are routers will process the message and respond to
it.
An IPv6 router responds to a Router Solicitation by sending a Router
Advertisement addressed to the IPv6 all-nodes multicast address if
the source address of the Router Solicitation was the unspecified
address. If the source address in the Router Solicitation is not the
unspecified address, the the router will unicast the Router
Advertisement to the soliciting node. If the router sends the Router
Advertisement to the all-nodes multicast address then it follows the
steps described above for unsolicited Router Advertisements.
If the Router Advertisement is to be unicast to the soliciting node,
the IPv6 network layer will give the node"s IPv6/NBMA driver the
Router Advertisement and link-layer address of the soliciting node
(obtained through Address Resolution if necessary) which will send
the packet according to the steps described in section 4.4.1 This
will result in a new pt-pt VC being created between the router and
the soliciting node if one did not already exist.
The soliciting node will receive and process the Router Advertisement
as described in section 4.5 and will pass the RA message to the IPv6
network layer. The IPv6 network layer may, depending on the state of
the Neighbor cache entry, update the Neighbor cache with the router"s
NBMA address, contained in the Router Advertisement message"s Source
Link-Layer Address Option.
If a pt-pt VC is set up during Router Discovery, subsequent IPv6 best
effort unicast data between the soliciting node and the router will
be transmitted over the new PtP VC.
A.1.3 Performing Neighbor Unreachability Detection (NUD)
Neighbor Unreachability Detection (NUD) is the process by which an
IPv6 host determines that a neighbor is no longer reachable, as
described in [7]. Each Neighbor cache entry contains information used
by the NUD algorithm to detect reachability failures. Confirmation
of a neighbor"s reachability comes either from upper-layer protocol
indications that data recently sent to the neighbor was received, or
from the receipt of a Neighbor Advertisement message in response to a
Neighbor Solicitation probe.
Connectivity failures at the node"s IPv6/NBMA driver, such as
released VCs (see section 4.6) and the inability to create a VC to a
neighbor (see section 4.4.1), are detected and handled at the IPv6
network layer, through Neighbor Unreachability Detection. The node"s
IPv6/NBMA driver does not attempt to detect or recover from these
conditions.
A persistent failure to create a VC from the IPv6 host to one of its
IPv6 neighbors will be detected and handled through NUD. On each
attempt to send data from the IPv6 host to its neighbor, the node"s
IPv6/NBMA driver will attempt to set up a VC to the neighbor, and
failing to do so, will drop the packet. IPv6 reachability
confirmation timers will eventually expire, and the neighbor"s
Neighbor cache entry will enter the PROBE state. The PROBE state will
cause the IPv6 host to unicast Neighbor Solicitations to the
neighbor, which will be dropped by the local node"s IPv6/NBMA driver
after again failing to setup the VC. The IPv6 host will therefore
never receive the solicited Neighbor Advertisements needed for
reachability confirmation, causing the neighbor"s entry to be deleted
from the Neighbor cache. The next time th
网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载