Table 3.2 list all the fields. Each field is described in the order it appears in the header, starting with the version field.
The ‘Version’ field has 4 bits and identifies the version of the IP protocol. This enables the operating system receiving the datagram to relay it to the right stack. The current Internet Protocol has the value of ‘4’ in the version field of the IP datagram while IPv6 has the value of ‘6’, obviously.
Table 3.3 lists the current assignments of version numbers [IANAVERSIONNUMBERS]. Version 5 is an experimental streaming protocol, discussed briefly in Chapter 14. Version 6 was assigned to the SIP (and later SIPP) proposal that later was chosen as the basis of the new IP protocol: it was then renamed IPv6. Versions 7, 8 and 9 were assigned to competitive proposals of SIP and these assignments are now being deprecated because they are not used. Since it is a 4 bit field, only 16 assignments are possible.
The ‘Traffic class’ field has 8 bits. It is defined as ‘Type of Service’ in IPv4 and the bits were initially assigned to serve different levels of service for the datagrams [RFC791]. The processing of these bit assignments in IPv4 stacks is more or less ...