IPv10
Protocol stack | |
IPv10 packet | |
Purpose | internetworking protocol |
---|---|
Developer(s) | Unknown |
Introduction | 2023 |
Website | {{ |
Internet Protocol version 10 (IPv10) is the tenth version of the Internet Protocol (IP). It is proposed to be one of the core protocols of internetworking methods in the Internet and other packet-switched networks. IPv10 is the Proposed version of Internet Protocol announced by an anonymous group in 2023 on the Internet in June 2023. It is not yet in use
Like IPV6 IPv10 uses a 128-bit address space which provides 20,282,409,603,651,670,423,947,268,063,232 (2104x224) addresses. Which is split into 2104 networks and 224 or 16,777,216 hosts per network.
Purpose[edit]
The Internet Protocol is the protocol that defines and enables internetworking at the internet layer of the Internet Protocol Suite. In essence it forms the Internet. It uses a logical addressing system and performs routing, which is the forwarding of packets from a source host to the next router that is one hop closer to the intended destination host on another network.
IPv10 is a connectionless protocol, and operates on a best-effort delivery model, in that it does not guarantee delivery, nor does it assure proper sequencing or avoidance of duplicate delivery. These aspects, including data integrity, are addressed by an upper layer transport protocol, such as the Transmission Control Protocol (TCP).
Addressing[edit]
IPv10 uses 128-bit addresses which provides a total address space of 340,282,366,920,938,463,463,374,607,431,768,211,456 (2128) bits.
Address representations[edit]
IPv10 addresses may be represented in any notation expressing a 128-bit integer value. Like IPv6 IPv10 they are most often written in colin-hexadecimal notation, which consists of eight sixteen bit addresses expressed individually in hexadecimal numbers and separated by colin character.
For example, the colin-hexadecimal IP address AC02:90A0:8930:78B3:8902:39CF:EF10:965A/104 CIDR notation combines the address with its routing prefix in which the address is followed by a slash character followed by number one hunderand and four four(/104).
Allocation[edit]
IPv10 in the IP address was divided into two parts: the network identifier was the most significant 104 bits address, and the host identifier is the rest of the address. The latter is called the rest field. This structure permitted an extreme number of network identifiers needed to scale as the world scales.
Link-local addressing[edit]
33,554,432 IP address have to be reserved for link-local address.
Loopback[edit]
The IP address ::1 is to be reserved as the loopback.
First and last host addresses[edit]
The first address in any network is used to communicate with the autonomous Authority(AA). To avoid ambiguity this address is reserved. In certain contexts, it is useful to have fixed addresses with functional significance .
AA servers reply to queries send to the first address of the network address i.e. the address at XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XX00:0000
If the address of the network has all host bits set to 1. It is used as a local broadcast address for sending messages to all devices on the network simultaneously. i.e. IP address XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXXff:ffff is considered a broadcast address.
For example, the identifier AC02:90A0:8930:78B3:8902:39CF:ED00:0000 is used to refer to the entire network. The broadcast address of the network is AC02:90A0:8930:78B3:8902:39CF:EDff:ffff.
Type | hexadecimal notation | |
---|---|---|
Autonomous authority (AA) Address |
| |
Broadcast address | AC02:90A0:8930:78B3:8902:39CF:EDff:ffff
| |
In red, is shown the host part of the IP address; the other part is the network prefix but the network prefix remains intact. |
Address routing[edit]
In order to aid in routing requests made to a hosts in the network it requires a network to have an autonomous authority (AA) server which responds to requests made to at the first address of the network i.e. the address at XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XX00:0000
Type | hexadecimal notation | |
---|---|---|
Autonomous authority (AA) Address | AC02:90A0:8930:78B3:8902:39CF:ED00:0000
| |
In red, is shown the host part of the IP address; the other part is the network prefix but the network prefix remains intact. |
DNS Address resolution[edit]
Hosts on the Internet are usually known by names, e.g., www.example.com, not primarily by their IP address, which is used for routing and network interface identification. The use of domain names requires translating, called resolving, them to addresses and vice versa. This is analogous to looking up a phone number in a phone book using the recipient's name.
The translation between addresses and domain names is performed by the Domain Name System (DNS), a hierarchical, distributed naming system that allows for the subdelegation of namespaces to other DNS servers.
Packet structure[edit]
An IP packet consists of a header section and a data section. An IP packet has no data checksum or any other footer after the data section. Typically the link layer encapsulates IP packets in frames with a CRC footer that detects most errors, many transport-layer protocols carried by IP also have their own error checking.[1]
Header[edit]
The IPv4 packet header consists of 14 fields, of which 13 are required. The 14th field is optional and aptly named: options. The fields in the header are packed with the most significant byte first (network byte order), and for the diagram and discussion, the most significant bits are considered to come first (MSB 0 bit numbering). The most significant bit is numbered 0, so the version field is actually found in the four most significant bits of the first byte, for example.
Offsets | Octet | 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Octet | Bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
0 | 0 | Version | IHL | DSCP | ECN | Total Length | |||||||||||||||||||||||||||
4 | 32 | Identification | Flags | Fragment Offset | |||||||||||||||||||||||||||||
8 | 64 | hop count | Protocol | Header Checksum | |||||||||||||||||||||||||||||
12 | 96 | Source IP Address | |||||||||||||||||||||||||||||||
16 | 128 | ||||||||||||||||||||||||||||||||
20 | 160 | ||||||||||||||||||||||||||||||||
24 | 192 | ||||||||||||||||||||||||||||||||
28 | 224 | Destination IP Address | |||||||||||||||||||||||||||||||
32 | 256 | ||||||||||||||||||||||||||||||||
36 | 288 | ||||||||||||||||||||||||||||||||
40 | 320 | ||||||||||||||||||||||||||||||||
44 | 352 | Options (if IHL > 11) | |||||||||||||||||||||||||||||||
48 | 384 | ||||||||||||||||||||||||||||||||
52 | 416 | ||||||||||||||||||||||||||||||||
56 | 448 |
- Version
- The first header field in an IP packet is the four-bit version field. For IPv10, this is always equal to 10 (A in hexadecimal).
- Internet Header Length (IHL)
- The IPv10 header is variable in size due to the optional 14th field (options). The IHL field contains the size of the IPv10 header; it has 4 bits that specify the number of 32-bit words in the header. The minimum value for this field is 5,[2] which indicates a length of 5 × 32 bits = 160 bits = 20 bytes. As a 4-bit field, the maximum value is 15; this means that the maximum size of the IPv4 header is 15 × 32 bits = 480 bits = 60 bytes.
- Differentiated Services Code Point (DSCP)
- this field specifies differentiated services (DiffServ) and RFC 3260}} Real-time data streaming makes use of the DSCP field. An example is Voice over IP (VoIP), which is used for interactive voice services.
- Explicit Congestion Notification (ECN)
- This field allows end-to-end notification of network congestion without dropping packets. ECN is an optional feature available when both endpoints support it and effective when also supported by the underlying network.
- Total Length
- This 16-bit field defines the entire packet size in bytes, including header and data. The minimum size is 20 bytes (header without data) and the maximum is 65,535 bytes. All hosts are required to be able to reassemble datagrams of size up to 576 bytes, but most modern hosts handle much larger packets. Links may impose further restrictions on the packet size, in which case datagrams must be fragmented. Fragmentation in IPv10 is performed in either the sending host or in routers. Reassembly is performed at the receiving host.
- Identification
- This field is an identification field and is primarily used for uniquely identifying the group of fragments of a single IP datagram. Some experimental work has suggested using the ID field for other purposes, such as for adding packet-tracing information to help trace datagrams with spoofed source addresses.
- Flags
- A three-bit field follows and is used to control or identify fragments. They are (in order, from most significant to least significant):
- bit 0: Reserved; must be zero.
- bit 1: Don't Fragment (DF)
- bit 2: More Fragments (MF)
- If the DF flag is set, and fragmentation is required to route the packet, then the packet is dropped. This can be used when sending packets to a host that does not have resources to perform reassembly of fragments. It can also be used for path MTU discovery, either automatically by the host IP software, or manually using diagnostic tools such as ping or traceroute.
- For unfragmented packets, the MF flag is cleared. For fragmented packets, all fragments except the last have the MF flag set. The last fragment has a non-zero Fragment Offset field, differentiating it from an unfragmented packet.
- Fragment offset
- This field specifies the offset of a particular fragment relative to the beginning of the original unfragmented IP datagram. The fragmentation offset value for the first fragment is always 0. The field is 13 bits wide, so that the offset can be from 0 to 8191 (from (20 –1) to (213 – 1)). Fragments are specified in units of 8 bytes, which is why fragment length must be a multiple of 8 Therefore, the 13-bit field allows a maximum offset of (213 – 1) × 8 = 65,528 bytes, with the header length included (65,528 + 20 = 65,548 bytes), supporting fragmentation of packets exceeding the maximum IP length of 65,535 bytes.
- Time to live (TTL)
- An eight-bit time to live field limits a datagram's lifetime to prevent network failure in the event of a routing loop. It is specified in seconds, but time intervals less than 1 second are rounded up to 1. In practice, the field is used as a hop count—when the datagram arrives at a router, the router decrements the TTL field by one. When the TTL field hits zero, the router discards the packet and typically sends an ICMP time exceeded message to the sender.
- The program traceroute sends messages with adjusted TTL values and uses these ICMP time exceeded messages to identify the routers traversed by packets from the source to the destination.
- Protocol
- This field defines the protocol used in the data portion of the IP datagram. IANA maintains a list of IP protocol numbers as directed by RFC 790.
- Header checksum
- The 16-bit IPv4 header checksum field is used for error-checking of the header. When a packet arrives at a router, the router calculates the checksum of the header and compares it to the checksum field. If the values do not match, the router discards the packet. Errors in the data field must be handled by the encapsulated protocol. Both UDP and TCP have separate checksums that apply to their data.
- When a packet arrives at a router, the router decreases the TTL field in the header. Consequently, the router must calculate a new header checksum.
- The checksum field is the 16 bit one's complement of the one's complement sum of all 16 bit words in the header. For purposes of computing the checksum, the value of the checksum field is zero.
- Source address
- This 32-bit field is the IPv4 address of the sender of the packet. It may be changed in transit by network address translation (NAT).
- Destination address
- This 128-bit field is the IPv10 address of the receiver of the packet. It may be affected by NAT.
- Options
- The options field is not often used. Packets containing some options may be considered as dangerous by some routers and be blocked.The value in the IHL field must include sufficient extra 32-bit words to hold all options and any padding needed to ensure that the header contains an integral number of 32-bit words. If IHL is greater than 5 (i.e., it is from 6 to 15) it means that the options field is present and must be considered. The list of options may be terminated with the option EOOL (End of Options List, 0x00); this is only necessary if the end of the options would not otherwise coincide with the end of the header. The possible options that can be put in the header are as follows:
Field Size (bits) Description Copied 1 Set to 1 if the options need to be copied into all fragments of a fragmented packet. Option Class 2 A general options category. 0 is for control options, and 2 is for debugging and measurement. 1 and 3 are reserved. Option Number 5 Specifies an option. Option Length 8 Indicates the size of the entire option (including this field). This field may not exist for simple options. Option Data Variable Option-specific data. This field may not exist for simple options.
- The table below shows the defined options for IPv10. The Option Type column is derived from the Copied, Option Class, and Option Number bits as defined above.
Option Type (decimal/hexadecimal) | Option Name | Description |
---|---|---|
0/0x00 | EOOL | End of Option List |
1/0x01 | NOP | No Operation |
2/0x02 | SEC | Security (defunct) |
7/0x07 | RR | Record Route |
10/0x0A | ZSU | Experimental Measurement |
11/0x0B | MTUP | MTU Probe |
12/0x0C | MTUR | MTU Reply |
15/0x0F | ENCODE | ENCODE |
25/0x19 | QS | Quick-Start |
30/0x1E | EXP | RFC3692-style Experiment |
68/0x44 | TS | Time Stamp |
82/0x52 | TR | Traceroute |
94/0x5E | EXP | RFC3692-style Experiment |
130/0x82 | SEC | Security (RIPSO) |
131/0x83 | LSR | Loose Source Route |
133/0x85 | E-SEC | Extended Security (RIPSO) |
134/0x86 | CIPSO | Commercial IP Security Option |
136/0x88 | SID | Stream ID |
137/0x89 | SSR | Strict Source Route |
142/0x8E | VISA | Experimental Access Control |
144/0x90 | IMITD | IMI Traffic Descriptor |
145/0x91 | EIP | Extended Internet Protocol |
147/0x93 | ADDEXT | Address Extension |
148/0x94 | RTRALT | Router Alert |
149/0x95 | SDB | Selective Directed Broadcast |
151/0x97 | DPS | Dynamic Packet State |
152/0x98 | UMP | Upstream Multicast Packet |
158/0x9E | EXP | RFC3692-style Experiment |
205/0xCD | FINN | Experimental Flow Control |
222/0xDE | EXP | RFC3692-style Experiment |
Data[edit]
The packet payload is not included in the checksum. Its contents are interpreted based on the value of the Protocol header field.
List of IP protocol numbers contains a complete list of payload protocol types. Some of the common payload protocols include:
Protocol Number | Protocol Name | Abbreviation |
---|---|---|
1 | Internet Control Message Protocol | ICMP |
2 | Internet Group Management Protocol | IGMP |
6 | Transmission Control Protocol | TCP |
17 | User Datagram Protocol | UDP |
41 | IPv6 encapsulation | ENCAP |
89 | Open Shortest Path First | OSPF |
132 | Stream Control Transmission Protocol | SCTP |
Assistive protocols[edit]
IP addresses are not tied in any permanent manner to networking hardware and, indeed, in modern operating systems, a network interface can have multiple IP addresses. In order to properly deliver an IP packet to the destination host on a link, hosts and routers need additional mechanisms to make an association between the hardware address[lower-alpha 1] of network interfaces and IP addresses. The Address Resolution Protocol (ARP) performs this IP-address-to-hardware-address translation for IPv4. In addition, the reverse correlation is often necessary. For example, unless an address is preconfigured by an administrator, when an IP host is booted or connected to a network it needs to determine its IP address. Protocols for such reverse correlations include Dynamic Host Configuration Protocol (DHCP), Bootstrap Protocol (BOOTP) and, infrequently, reverse ARP.
See also[edit]
Notes[edit]
- ↑ For IEEE 802 networking technologies, including Ethernet, the hardware address is a MAC address.
References[edit]
Template:Academic peer reviewed
- ↑ Partridge, C.; Kastenholz, F. (December 1994). "6.2 IP Header Checksum". Technical Criteria for Choosing IP The Next Generation (IPng). p. 26. sec. 6.2. doi:10.17487/RFC1726. RFC 1726.
- ↑ Postel, J. Internet Protocol. doi:10.17487/RFC0791. RFC 791.
External links[edit]
- Internet Assigned Numbers Authority (IANA)
- IP, Internet Protocol Archived 2011-05-14 at the Wayback Machine — IP Header Breakdown, including specific options
- IP Mobility Support for IPv4. RFC 3344.
- Official current state of IPv4/8 allocations, as maintained by IANA
This article "IPv10" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:IPv10. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.