1

I'll consider IPv6 headers for this question.

I assume that the simplest IP lookup scheme implementation would just look at the 'Destination Address' field in the IP header of an incoming IP packet.

However, I suspect that "real world" implementations in routers are more complex, looking at other fields, e.g.:

  • 'Flow Label', 'Source Address', 'Port' numbers for flow identification;
  • Decrement the 'Hop Limit' and decide whether to drop a packet if it reaches 0;
  • Even some 'Extension Headers'.

My questions are:

  • Which IPv6 header fields are usually checked by current forwarding engine implementations to perform a "common" IP lookup?
  • Is any of the IPv6 'Extension Headers' usually checked when performing a "common" IP lookup?
2

If you are referring to the routing of an IPv6 packet, it is really only the destination address which plays a part in that.

The Hop Count field is first inspected to see if the packet should be dropped. If the packet is not dropped, the field is decremented and the packet is forwarded, or dropped, based on the destination address.

The only extension header normally examined by a router is the Hop-By-Hop Options extension header, but many routers will deny packets with this extension header, or ignore it altogether.

Other fields may be examined by various services enabled on a router. For example, if the router is configured for QoS, the Traffic Class field may be used for queuing. ACLs configured in the router may care about the source and destination addresses, the protocol and port numbers in the payload, etc.

The Flow Label field hasn't been widely supported since the use of it isn't mandated, and it has various "possible" uses. A good use would be to keep all packets in a single traffic flow from being spread across multiple paths. This use requires the source host and routers in the path to support it.

Which fields are examined and used by a router really depends on which services are configured and enabled on the router. The IPv6 packet header is simpler than an IPv4 packet header. The only really complex things could be if you have configured IPv6 Mobility, and the router needs to use the related extension headers: Hop-by-Hop Options, Routing, and Mobility.

If the packet destination is the router itself (e.g. routing protocol data), the other extension headers which are used by the packet destination may be examined and used, especially the Authentication Header for OSPFv3.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.