IPv6 ND General Operational Overview: ND Functions, Functional Groups and Message Types

As I mentioned in the preceding overview, the name of the Neighbor Discovery (ND) protocol really does not do it justice. The protocol facilitates not merely the discovery of neighboring devices, but a substantial number of functions related to local network connectivity, datagram routing and configuration. Both regular hosts and routers in an IPv6 environment count on the ND protocol to facilitate important exchanges of information that are necessary for proper internetwork operation.

The Neighbor Discovery protocol has a number of similarities to the Internet Control Message Protocol. An important one is that like ICMP, ND is a messaging protocol. It doesn't implement a single specific function but rather a group of activities that are performed through the exchange of messages. This means we can't explain the operation of ND through a specific description of “what ND does”, but rather must define its operation by means of a list of messages ND provides and specific ways that they are used.

Any local network on an internet will have both regular hosts and routers, and the term neighbor can refer to either. Of course, hosts and routers play different roles on a network, and as a result neighbor discovery is very different for each. The ND standard describes nine specific functions performed by the protocol. To better understand these functions and how they are related, we can divide them into three functional groups based on communication type and the kinds of devices involved (see Figure 169).

Figure 169: Neighbor Discovery Protocol (ND) Functional Groups and Functions

Host-Router Discovery Functions

One of the two main groups of functions in ND are those that facilitate the discovery of local routers and the exchange of information between them and hosts. This includes four specific functions:

  • Router Discovery: This is the core function of this group: the method by which hosts locate routers on their local network.
     
  • Prefix Discovery: Closely related to the process of router discovery is prefix discovery. Recall that the term “prefix” refers to the network portion of an IP address. Hosts use this function to determine what network they are on, which in turn tells them how to differentiate between local and distant destinations and whether to attempt direct or indirect delivery of datagrams.
     
  • Parameter Discovery: Also closely related to router discovery, this is the method by which a host learns important parameters about the local network and/or routers, such as the maximum transmission unit of the local link.
     
  • Address Autoconfiguration: Hosts in IPv6 are designed to be able to automatically configure themselves, but this requires information that is normally provided by a router.

Host-Host Communication Functions

The other main group of functions is that associated with information determination and communication directly between nodes, usually hosts. Some of these functions can be performed between hosts and routers, but this group is not specifically related to router discovery; it includes:

  • Address Resolution: The process by which a device determines the layer two address of another device on the local network from that device's layer three (IP) address. This is the job performed by ARP in IP version 4.
     
  • Next-Hop Determination: The method for looking at an IP datagram's destination address and determining where it should next be sent.
     
  • Neighbor Unreachability Detection: The process of determining whether or not a neighbor device can be directly contacted.
     
  • Duplicate Address Detection: Determining if an address that a device wishes to use already exists on the network.

Redirect Function

The last functional group contains just one function: Redirect. The technique whereby a router informs a host of a better next-hop node to use for a particular destination.

 Key Concept: The Neighbor Discovery protocol encompasses nine individual functions, many of which are related to each other. They are organized into three functional groups: host-router discovery functions, host-host communication functions, and the redirect function.

Relationships Between Functions

The division of ND's overall functionality into nine tasks in three groups is somewhat arbitrary, but provides a good frame of reference for understanding what the protocol does. Obviously some of the functions in different groups are related; next-hop determination uses information obtained as part of parameter discovery. The redirect function is also a form of router-host communication but is distinct from router discovery.

ICMPv6 Messages Used By the Neighbor Discovery Protocol

Just as ND is similar to ICMP in its operation, the two protocols are related in another way: the method that messaging is done. ND actually implements its functions using ICMPv6 messages. A set of five message types is described in the ND standard:

  • Router Advertisement Messages: Sent regularly by routers to tell hosts that they exist and provide important prefix and parameter information to them.
     
  • Router Solicitation Messages: Sent by hosts to request that any local routers send a Router Advertisement message so they don't have to wait for the next regular advertisement message.
     
  • Neighbor Advertisement Messages: Sent by hosts to indicate the existence of the host and provide information about it.
     
  • Neighbor Solicitation Messages: Sent to verify the existence of another host and to ask it to transmit a Neighbor Advertisement.
     
  • Redirect Messages: Sent by a router to tell a host of a better method to route data to a particular destination.

More details on how these message types are used can be found in the topics later in this section that describe the three functional groups above in more detail. The structures of each of the five ICMPv6 message types used by ND can be found in the section on ICMPv6 informational message types and formats.

http://www.tcpipguide.com/free/t_IPv6NDGeneralOperationalOverviewNDFunctionsFunctio.htm

猜你喜欢

转载自blog.csdn.net/maimang1001/article/details/112530643