This paper  presents a discussion on the design philosophies of the internet protocol presented in . It enumerates the main and specific goals of the internet and explains how the proposed internet protocol serves its purpose. This paper also provides a lot of suggestions regarding on how to improve the original design of the protocol.
According to the paper, the main goal of the Internet architecture (Internetwork architecture ) was to develop an effective communication scheme for independent network architectures. As a background history, the initial motivation was to connect the original ARPANET to ARPA packet radio network. This is to provide radio network users an access to large scale machines in ARPANET.
According to , In order to support an effective internet communication scheme, the following properties should hold true.
- Survivability: The internet should continue to work even if there will be gateway or network failures. Between two communicating processes, there should be no interruption (or failure) between their communication not unless there will be a total partitioning of the two communicating processes. As a solution for this, the state information must be protected. The paper presents a fate-sharing model for this matter. The model suggests that “it is acceptable to lose the state information associated with an entity if the same, the entity itself is lost.” The advantages of this model are (1) It’s easy to implement and (2) It protects intermediate entities from failure. However this model has consequences, the entities should not contain state information about ongoing connections so packet switches should be stateless.
- Should support different types of services: The original TCP was published 15 years before the publication of this paper . The basic functionality of the internetnetwork TCP was remote login and file transfer. Although the internetwork TCP support each service, it doesn’t adapt depending on its priorities. File transfer for example, was less concerned with delay but is very concerned with bandwidth. Remote login however is more concerned with low delay and less with the bandwidth. Another example is audio streaming, it is more concerned with low delay but It doesn’t care if all the data is received. To support different types of services, this paper suggests a two layer protocol: the TCP and IP. It also introduces the concept of UDP, which is for services that need high speed no with a little concern with data accuracy.
- Should support a variety of networks: The internet architecture supports a wide variety of networks because of their minimum set of assumptions. Their basic assumption is that a network is capable of transmitting a packet or a datagram. Including a lot of assumptions of network informations is undesirable because these communication protocols would have to be re-engineered for the specific network type. Thus, limiting the types of networks that are supported.
The internet communication protocol must permit distributed management of its resources, cost effective, permit host attachment easily, and must be accountable. Take note that the ordering of the goals is based on its importance, which may not apply today. The last goals are said to be less important than first three goals mentioned above. And therefore, they are not given much attention in the original communication protocol.
This paper introduces the concept of the datagram, which in essence a packet which doesn’t guarantee the success of its transmission. In a wide variety of applications, the datagram serves its purpose in providing an optimized transmission of data. However, this paper doesn’t address the issue of the least priority goals of the original TCP, like data accountability and resource management. The author made a statement about not having a solution for these goals using the concept of the datagram.
 Vinton G. Cerf and Robert E. Icahn. 2005. A protocol for packet network intercommunication.SIGCOMM Comput. Commun. Rev. 35, 2 (April 2005), 71-82. DOI=10.1145/1064413.1064423 http://doi.acm.org/10.1145/1064413.1064423