Sunday, August 23, 2009

RFC 791 - IP

Published in September, 1981, RFC 791 specifies the Standard Internet Protocol, IP, laid out by the Department of Defense, DOD. According to Postel, 1981, the "document is based on six earlier editions of the ARPA Internet Protocol Specification." RFC 791, according to Postel, 1981, "revises the addressing, error handling, option codes, and the security, precedence, compartments, and handling restriction features of the internet protocol.”

The Internet Protocol has been designed to be used for intercommunication of data blocks called datagrams within a packet-switched network. The protocol enables the splitting apart and reassembly of long datagrams, to allow fro transmission on networks that only have the ability to transmit small packets of data. The Internet Protocol does not provide the services of error control, flow control, or sequencing. It relies on the supporting networks to provide these services. The protocol is called on by protocols such as TCP and UDP to send their packets. Their packets provide the source and destination information that IP wraps and creates the datagram to be sent over the network through the local network interface.

The internet protocol provides two basic functions, addressing and fragmentation. The address fields in the header of the datagram are use to direct the datagram to its destination. IP is concerned with addresses, it is up to higher level protocols to map names to addresses and it is up to lower level procedures to map local net addresses to routes. There are also fields in the header which are used to break the data into smaller sections and reassemble the sections when they arrive at the destination. The fragmentation field can specify "don't fragment." If the datagram can not be delivered without fragmenting than it is discarded. The purpose of fragmentation is to allow a datagram to cross "small packet" networks when traveling to its destination. The identification field is used by a receiving network to reassemble a datagram; this field is a number sequence in the number of fragments of the datagram. When the receiver has all fragments it can then reassemble the datagram based on the identification field.

The Internet Protocol provides for four key mechanisms, type of service, time to live, options, and header checksum, to provide is services. Type of Service is used to let the network know the type of service required for the data. The network uses this information in order to decide the route the data will take to its destination. Time to Live is a value set by the sender that determines how long, or through how many hops the data should take to be delivered. If delivery is not achieved by this time, the datagram is destroyed. The Options mechanism provide for datagram timestamps, security, and special routing. The Header Checksum provides for checking the header for errors, if errors are detected, then the detecting party deletes the datagram.

The Internet Protocol of course has a specifically formatted header as shown in the diagram from Kozierok, 2005:





References

Kozierok, C. (2005). The TCP/IP Guide. Retrieved August 19, 2009, from http://www.tcpipguide.com

Postel, J. (1981, September). Internet Control Message Protocol - DARPA Internet Program Protocol Specification. RFC 791. University of Southern California/Information Sciences Institute.

No comments:

Post a Comment