Saturday, May 2, 2009

Internet Protocol

The Internet Protocol (IP) is defined inRFC 791. RFC 791provides the detailed specification of the protocol, which provides the guidelines for implementations. IP hides the underlying physical network and creates a virtual network view. This concept enables different types of physical networks to be viewed as an IP network as long as they have IP as their network layer. IP runs over virtually all types of physical media today. IP is an unreliable, best-effort, and connectionless packet delivery protocol. "Best-effort" means that if something goes wrong and the packet gets lost, corrupted, misdelivered, or in any way fails to reach its intended destination, the network does nothing. It does not make any attempt to rectify the error. The Internet Protocol provides for transmitting blocks of data, called datagrams, from sources to destinations, where sources and destinations are hosts identified by fixed-length addresses. The Internet Protocol also provides for fragmentation and reassembly of long datagrams, if necessary, for transmission through "small packet" networks.

Addresses are of fixed length (in the case of IP version 4 (IPv4) it is 4 octets, and in the case of IP version 6 (IPv6) it is 16 octets). The model of operation is that an Internet module resides in each host engaged in Internet communication and in each gateway that interconnects networks. These modules share common rules for interpreting address fields and for fragmenting and assembling Internet datagrams. In addition, these modules (especially in gateways) have procedures for making routing decisions and other functions. The Internet Protocol treats each Internet datagram as an independent entity unrelated to any other Internet datagram. There are no connections or logical circuits (virtual or otherwise).

Hlen specifies the length of the header. IPv6 has a fixed-length header; hence Hlen is not required. Type of Service or TOS allows the packets to be treated differently based on application needs. The TOS field is now called as the DS (Diffserv) field. The Class field was the replacement for the TOS field in IPv6, and the Class field is also now referred to as the DS field (RFC 2474). The Length field specifies the length of the datagram, including the header. The payload length is the equivalent in IPv6, and it does not include the header. Flow label in IPv6 is used to label packets requesting special handling by routers.

The Identification field is used in fragmentation and assembly of packets. The flags indicate whether a packet is a part of a fragment and also indicate whether intermediate routers can fragment or not. In IPv6, fragmentation is done only at the endpoints, and intermediate routers do not perform fragmentation. IPv6 simplified the IP header by defining a set of extension headers. The Next Header field in the IPv6 header is used to indicate the type of next header following the IP header. Time to Live and the Hop Limit fields are used to determine how many hops a packet will survive in the Internet before it is dropped. The current value is 64, and each router along the way decrements the value by 1. The Protocol field is a demultiplexing key that identifies the higher-layer protocol. A Checksum of the IP header is calculated by considering the entire IP header. The source address and destination address allow a packet to be routed to/from hosts across the Internet.

No comments:

Post a Comment