- Trending Categories
- Data Structure
- Operating System
- C Programming
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Internet Protocol version 6 (IPv6) Header
Internet protocol version 6 (IPv6) headers is the next generation of the internet protocol designed to replace the current version, or Internet Protocol Version 4 (IPv4). IPv6 fixes many problems in IPv4, such as the limited number of available IPv4 addresses.
- IPv6 uses 128-bit addresses; an address space is large enough to last for the predictable future. IPv6 added many improvements to IPv4 in areas such as routing and network auto-configuration.
- IPv6 is a progressive step from IPv4, some IPv4 functions that do not work were removed from IPv6.
- IPv6 is an Internet Protocol for packet-switched internetworking; it provides end-to-end datagram transmission across multiple IP networks.
Decomposition of IPv6 address representation into binary form
The following illustration shows how an IPv6 address can be represented in binary form −
IPv6 Header Format
Let's take a look at the format of an IPv6 Header −
|Version (4-bits)||Priority/T raffic Class (8-bits)||Flow Label (20-bits)|
|Payload Length (16-bits)||Next Header (8-bits)||Hop Limit (8-bits)|
|Source Address (128-bits)|
|Destination A ddress (128-bits)|
- Version (4-bits) − IPv6 constant 6 contains bit sequence 0110.
- Priority/ Traffic Class (8-bits) − The priority/ traffic class field indicates the priority of the IPv6 packet which is similar to the service field of the IPv4 packet. This helps the routers to handle the traffic based on the priority of the packet. The least priority packet will be discarded if congestion occurs on the router.
- Flow Label (20-bits) − Flow label field is used to identify the flow of packets belonging to a particular communication for which the sender requests special handling, such as real-time service. For example, audio and video transmission is treated as a flow but the file transfer and email might not be treated as flows.
- Payload Length (16-bits) − The 16-bit (Unsigned Integer) payload length field contains the length of the data field in octets/bits in the IPv6 packet header. It sets an upper limit on the maximum packet payload to 64 kilobytes. In case a higher packet payload is required, a Jumbo payload extension header is provided in the IPv6 protocol.
- Next Header − The 8-bit Next Header field identifies the type of header immediately in the IPv6 header and is located at the beginning of the data field (payload) of the IPv6 packet. This field generally specifies the transport layer protocol used by a packet's payload. The two most common types of Next Headers are TCP (6) and UDP (17). The Next Header field is similar to the IPv4 Protocol field.
- Time to Live (TTL)/Hop Limit (8 bits) − The 8-bit Hop Limit field is decremented by one, by each node (a router) that forwards a packet. If the Hop Limit field is decremented to zero, the packet is discarded. The main function of this field is to identify and discard packets that are stuck in an indefinite loop due to any routing information errors. In the case of IPv6 protocol, the fields for handling fragmentation do not form a part of the basic header. They are put into a separate extension header.
- Source address − It is of 128 bits and contains the IPv6 address of the originating node of the packet.
- Destination address − It is of 128 bits and contains the IPv6 address of the recipient node of the packet.
IPv6 Extension Headers
- In IPv6 extension headers, options are placed in separate extension headers that are placed between the IPv6 header and the transport-layer header in a packet.
- Unlike IPv4 options, IPv6 extension headers can be of arbitrary length. Also, the number of options that a packet carries is not limited to 40 bytes.
- IPv6 options are always an integer multiple of 8 octets long. The integer multiple of 8 octets retains the alignment of subsequent headers.
Some of the IPv6 extension headers are −
- Routing – Extended routing, such as IPv4 loose source route
- Fragmentation – Fragmentation and reassembly
- Authentication – Integrity and authentication, and security
- Encapsulating Security Payload – Confidentiality
- Hop-by-Hop options – Special options that require hop-by-hop processing
- Destination options – Optional information to be examined by the destination node
- Serial Line Internet Protocol (SLIP)
- Internet Control Message Protocol (ICMP)
- What is the IPv6 Protocol in Computer Network?
- What is Invisible Internet Protocol (I2P)?
- What is Adaptive Internet Protocol (AIP)?
- What is IPv6?
- How to install the latest version of Git on CentOS 7.x/6.x?
- Difference between IPv4 and IPv6
- What is Wireless Fidelity 6 (WiFi 6)?
- Protocol and Protocol Hierarchies
- Transition from IPv4 to IPv6 address
- Why is IPv6 preferred over IPv4?
- Cable Internet
- ipaddress - IPv4/IPv6 manipulation library in Python
- Difference between Kerberos Version 4 and Version 5