IPv6 protocol: the ultimate evolution of IPv4, the concepts, addresses and packets you need to know
IPv6 protocol: the ultimate evolution of IPv4, the concepts, addresses and packets you need to know
Hello everyone, I am Bernie, an IT pre-sales engineer.
Since September 1981, IPv4 has become popular. As the fourth version of the Internet communication protocol, IPv4 has been the core of the network layer for more than 30 years.
It is a connectionless protocol, that is, the two communicating devices do not need to establish a stable connection channel in advance, and the system only needs to select a route for transmission.
IPv4 is easy to use, but with the rapid development of the Internet, the number of connections has increased exponentially. The 32-bit IPv4 can only provide about 4.3 billion addresses (2 to the 32nd power, 4294967296) at most. In September 2011 , 4.3 billion IPv4 addresses were used up!
So, IPv6 comes to the foreground. IPv6 claims to "mark addresses for every grain of sand on the earth", which sounds a bit big, but it actually makes sense. Because it has a length of 128 bits, the number of addresses that can be provided is 2 to the 128th power (3.4028237e+38, 256 trillion billion billion billion billion).
IPv6 Development Timeline
- In 1992, IETF (Internet Internet Engineering Task Force) put forward proposals on the development of next-generation IP addresses and formed a white paper.
- In 1994, the RFC (Request For Comments, requirements document) used to define IPv6 was published, and determined the guidelines for parallel use of IPv4 and IPv6.
- In 2003, the IETF released the IPv6 test network (6bone network) to verify the feasibility of the IPv4-to-IPv6 migration solution.
- In 2009, the 6bone network architecture used to verify the IPv6 protocol began to be implemented in 260 organizations in 39 countries around the world.
- In 2011, the operating systems of most servers and computers support IPv6.
- In 2012, the World Internet Society held the IPv6 Memorial Day, and the global IPv6 network was officially launched.
- In 2017, my country issued the "Action Plan for Promoting the Large-Scale Deployment of Internet Protocol Version 6 (IPv6)", and major companies have joined the vigorous upgrade plan.
address representation
Unlike IPv4, which uses "dotted decimal", IPv6 uses "imposed hexadecimal", and the entire address includes two aspects: the network prefix and the interface identifier. The network prefix is the network ID, the interface identifier is the host ID, and IPv6 has three representation methods.
① Fractional hexadecimal
Format: x:x:x:x:x:x:x:x, each X represents 16b in the address, expressed in hexadecimal
Example:
5BCD:E901:23C5:6789:AEC7:E
② 0 bit compression
If an IPv6 address contains a continuous segment of 0, you can compress the continuous segment of 0 into "::".
Example: AB00:0:0:0:0:0:0:1101 → AB00::1101
③ Embedded IPv4
An IPv6 address can be embedded with a piece of IPv4: the first 96 bits are the v6 address, and the last 32 bits are the v4 address x:x:x:x:dddd
Example: ::192.168.10.1 ::FF:169.167.3.1
address type
There are three types of addresses in the IPv6 protocol: Unicast Address, Multicast Address, and Anycast Address.
It should be noted that the broadcast address of IPv4 address is canceled in IPv6, and IPv6 is replaced by multicast.
unicast address
Like the unicast address in IPv4 address, it is used to uniquely identify a certain port. A datagram sent to a unicast address will be delivered to a port identified by this address.
For example, if a unicast address is used for communication, PC1 can uniquely find PC2 in a port under the same switch for communication.
multicast address
It is used to identify a group of ports, and the data packets sent to the multicast address are transmitted to all interfaces identified by this address.
For example, using the multicast address mode, PC1 can communicate with PC2/3/4 at the same time.
anycast address
A datagram sent to an anycast address is delivered to the port closest to the source node among a group of ports identified by this address.
Note: The distance mentioned here is calculated according to the routing protocol, not the physical length of the address.
IPv6 header
The overall structure of an IPv6 packet includes a header, an extended header, and upper-layer protocol data. The header includes the following content as shown in the figure.
- Version: four-digit version number, IPv6 corresponds to 6
- Traffic Class: traffic class, mainly QoS class
- Flow label: identifies the message content in the same flow
- Data length: the number of bytes contained after the current IPv6 packet header, including the extension header
- Next header: the header type of the packet following the current header
- Hop limit: decrement after forwarding once, similar to IPv4 TTL
1.6. Comparison between IPv6 and IPv4
Compared with IPv4, IPv6 is not as simple as a large number. It also has many advantages, such as supporting QoS network quality levels, and can perform route aggregation to improve route forwarding efficiency and so on. A small number of differences are listed below.
1.7. Summary
The above is a brief introduction to IPv6, and many technical details have not been mentioned. For example, IPv6 addressing technology, important basic protocol ICMPv6, etc.
In 2023, with the rapid development of Internet technology and Internet of Things technology, the number of global mobile connections has exceeded 5.5 billion, and the number of IP addresses has exceeded 4.29 billion. Both of these numbers have exceeded the total numbers of IPv4 addresses , but for IPv6, this number is not enough. With IPv6, we no longer have to worry about too many connections.