Clark, D. 1988. “The Design Philosophy of the DARPA Internet Protocols.” ACM SIGCOMM Computer Communication Review 18 (4): 106–114. doi:10.1145/52325.52336.
David D. Clark; Massachusetts Institute of Technology; Laboratory of Computer Science
From 1981 to 1989, David D. Clark served as Chief Protocol Architect in the development of the Internet. In 1988, 15 years after TCP/IP was first proposed, he wrote “The Design Philosophy of the DARPA Internet Protocols”, In it, Dr. Clark attempts to clarify what DARPA’s goals and priorities were when creating the Internet protocols. Dr. Clark also explains the design choices of the Internet protocols within the context of those stated goals and priorities.
While the top level goal of DARPA was to use a multiplexing technique to interconnect existing networks, the secondary goals determined how it would be implemented. Clark stated that the seven second level goals were:
- Internet communication must continue despite loss of networks or gateways
- The Internet must support multiple types of communication services
- The Internet architecture must accommodate a verity of networks
- The Internet architecture must support distributed management
- The Internet architecture must be cost effective
- The Internet architecture must permit host attachment with a low level of effort
- The resources used in the Internet architecture must be accountable
The goals of the Internet architecture were weighted by importance in the above order. The higher level secondary goals took precedence over the lower level goals, hence the Internet design effectively routes traffic around networks and gateways that are off line, however the design shows little accountability and security; the lowest level goal. Dr. Clark states that the first three goals had the most profound effect on the Internet, and the lower goals, because they weren’t as important, were less effectively met. Dr. Clark also, stated that had the goals been in a different order, the Internet would be very different.
Initially, TCP/IP was one protocol, however it was realized that while TCP was robust enough to work for most general services, they were able to think of examples where other protocols would be more suitable. For that reason, TCP/IP were separated and UDP was created to provide a different application layer interface. Since then, IPv6 was drafted as a standard in 1998 to address problems with address space limitations.
While Dr. Clark’s paper achieved the goal of explaining the thought process behind the development of the Internet protocols, it would be interesting to have a follow up to this document. “The Design Philosophy of the DARPA Internet Protocols”, was written in 1988, now thirty-one years later with the advantage of hindsight. Would Dr. Clark, still order the secondary goals the same way? What additional goals would he add? TCP still has the same basic functionality since its first specification in 1974. Should it be changed to incorporate more security features? From a purely academic perspective, it would be interesting to build other protocols to benchmark against TCP/IP which incorporate different features.