Showing posts with label IPv6. Show all posts
IPv6 Address Types
Overview
With the coming wide scale implementation of IPv6, it has become vital that network engineers become familiar with IPv6 and how it operates. While there are many different parts of IPv6 that mimic the same behaviors of IPv4, there are some subtle changes that engineers must be aware of. This article takes a look at the IPv6 address types and how they compare with the existing IPv4 address types.IPv6 Address Types
Like IPv4, IPv6 has three different address types that are commonly used; these include:- Unicast
- Multicast
- Anycast
Unicast
The IPv6 unicast address type operates in the same way as IPv4; a unicast address is used to send traffic from one source device to one destination device. This is the most used address type as most traffic (currently) is sourced from one place and destined for one other place; this may change as network telephone and video services become used more.Multicast
The IPv6 multicast address type also operates in the same was as with IPv4; a multicast address is used to send traffic to a group of devices. This is used when there is a single source that needs to send traffic to multiple destinations; this traffic can be treated differently by the intermediate devices compared with unicast. If this same traffic would be sent via unicast methods, these devices would need to process each traffic stream from source to destination separately causing additional traffic delay.Another large difference between IPv4 and IPv6 is with the IPv4 broadcast address type. IPv4 utilized a broadcast address type that allowed devices the ability to send a single packet that would then be delivered to all devices on the local subnet. While this capability was very useful, it would also cause all devices on the local subnet to process the packet. This was not a problem when the device was the anticipated target. However, in most situations, the majority of the devices that received the packet were NOT the anticipated targets and thus caused a considerable amount of processing waste. With IPv6 the capabilities that used the IPv4 broadcast address type are replaced by a number of different multicast addresses, for example, FF01::1 is used to speak with all local nodes and FF01::2 is used to speak with all local routers.
Anycast
The IPv6 anycast address type is where IPv4 and IPv6 differ. The anycast address type offers something that was not offered with IPv4 which is the ability to send a packet to the closest device. When using anycast, a group of devices are given the same anycast address; when a source looks to send a packet to that address, the routing protocol will calculate the closest match to the source device and send the traffic there.Summary
While there are some differences between the address types for IPv4 and IPv6, for the most part these differences are easy to understand. One important change is the removal of a broadcast mechanism; this mechanism was commonly abused and caused a great deal of excess overhead on local devices. The idea is that without this ability, devices will be able to spend less time processing those packets that it does not care about and use this time for those that it does. Once IPv6 replaces IPv4 on the majority of devices, these design decisions will be truly proven one way or the other. The content of this article will hopefully help the reader understand the differences between the two IP versions and help in the continuing transition to IPv6.The IPv6 Header
The IPv6 Header
As shown in Figure 1, the IPv6 header has been designed to be simple and
easy to process. This enables IPv6 devices the ability to spend the
majority of their time dealing with the data contained within the packet
and not the packet header itself.
Version :
The version field is 4 bits long and is used to tell the processing equipment the version of the IP header that can be expected; when building an IPv6 header the value of the Version field is 6 (0110).Traffic Class :
The Traffic Class field is an 8 bit field that is used to signify the importance of the data contained within this specific packet. With IPv4, this information was signified with the TOS field and supported both IP precedence and Differentiated Services Code Point (DSCP). The Traffic Class field used with IPv6 supports DSCP solely; this specification uses the first 6 bits to indicate the Per Hop Behavior (PHB) of the contained data; these PHB’s are defined in RFC 2474 and its additions.Flow Label :
Before understanding the Flow Label the definition of a flow must be understood. Think of a flow as a stream of traffic that is coming from one source and destined for one or more destinations; a flow will contain multiple packets which can each be treated exactly the same way by intermediate routing devices. The Flow Label is used to identify these flows and enables these intermediate routing devices to treat all of the packets within the flow the same, this reduces processing time and because of this delay.Payload Length :
The Payload Length field is used to indicate the total size of the payload contained within the IPv6 packet. This is then used by the processing devices to ensure that the packet has been completely received. It is important to note that this differs from how the Length field is used with the IPv4 header which contains the length for the whole IPv4 packet.Next Header :
The Next Header field can be used in two different ways depending on the makeup of the specific IPv6 packet. The first is to indicate the protocol that is contained within the packet. The second is a little more complex; IPv6 has the ability to add extension headers after the main IPv6 packet header. These extension headers are used to indicate that the packet has specific options attached to it; this information was contained within the Options (or IP Options) IPv4 header field.Hop Limit :
The Hop Limit field is very simple and replaces the Time to Live (TTL) field that is contained within IPv4 packets. The value that is placed within the field limits the total number of hops that the specific packet is allowed to travel, for example if the value was 2, the packet could only travel a total of 2 additional hops before being discarded.Source Address and Destination Address
The source and destination fields contain the original IPv6 device source address and the original IPv6 destination address. This information is then used by all intermediate devices to route the packet to its expected destination and to return traffic to the original source should a problem occur.Summary
While the IPv6 header is different in its structure from the IPv4 header, its function is exactly the same. Knowledge of the IPv6 header has become mandatory knowledge for most network engineers as the transition to IPv6 is here for many organizations. Hopefully the information contained within this article will help in becoming more familiar with IPv6 and how it operates.
Tag :
IPv6

