The Internet Protocol suite, usually referred to as "TCP/IP," is a full set of internetworking protocols that operate in the network layer, the transport layer, and the application layer. While TCP/IP refers to two separate protocols called TCP and IP, Internet Protocol suite refers to the entire set of protocols developed by the Internet community. Still, most people just say "TCP/IP" when they are referring to the Internet Protocol suite. Figure I-8 illustrates how the protocols compare to the OSI model.
Note that no Internet protocols exist at the data link and physical layer. This is because the Internet protocols were designed to accommodate any underlying network technology.
The global Internet is a success because of TCP/IP. It is hard to believe that there ever was a "protocol war," but during the 1980s and early 1990s, many organizations were indecisive about which protocols to use. TCP/IP was popular in academic, military, and scientific communities, but many businesses had installed LANs using Novell SPX/IPX and Microsoft's NetBEUI/NetBIOS, or were tied to legacy protocols such as IBM SNA. The Internet protocols have been universally accepted because they support scalable internetworking, for which the global Internet is the best example.
In the late 1960s and early 1970s, the Internet began to take shape in the form of a wide area network (primarily continental United States) called ARPANET. ARPANET was funded by the DARPA (Defense Advanced Research Projects Agency). It consisted of computers that had been set up and connected using an experimental packet-switching system. At first, the systems used a client/server relationship, but it was decided that a host-to-host protocol was preferred. This protocol was called the NCP (Network Control Protocol).
By 1972, developers were connecting terminals to a variety of hosts. An early goal was to develop methods for supporting many different types of computers over many different types of transmission schemes, including low-speed, high-speed, and wireless connections. This open interoperable strategy accounts for the Internet protocol's enormous success.
Bob Kahn of DARPA and Vinton Cerf at Stanford University began developing TCP (Transmission Control Protocol) in 1973 with the objective of gaining knowledge about how the protocol would interface with existing operating systems. Originally, TCP connected large computers, not LANs and PCs. It was meant to support a nationwide system of approximately 256 networks, but this turned out to be too small in scale when LANs started appearing in the late 1970s.
Note that the original protocol was called TCP. It attempted to provide as many reliability services as possible, including connection-oriented sessions in which the sender and receiver exchange flow-control information and acknowledge the receipt of data. These reliable services help guarantee that data is received exactly as it was sent. But these services add overhead that disrupts real-time transmissions like voice, so TCP was reorganized into TCP, IP, and UDP (User Datagram Protocol), with UDP providing a way to bypass TCP for applications that don't need TCP's reliable services. Each of these protocols is discussed under its own heading.
The following RFCs provide additional information:
- RFC 768 (User Datagram Protocol, April 1980)
- RFC 791 (Internet Protocol, September 1981)
- RFC 793 (Transmission Control Protocol, September 1981)
- RFC 1122 (Requirements for Internet Hosts-Communication Layers, October 1989)
- RFC 1123 (Requirements for Internet Hosts-Application and Support, October 1989)
- RFC 1180 (A TCP/IP Tutorial, January 1991)
- RFC 1580 (Guide to Network Resource Tools, March 1994)
- RFC 1958 (Architectural Principles of the Internet, June 1996)
- RFC 2151 (A Primer on Internet and TCP/IP Tools and Utilities, June 1997)
- RFC 2700 (Internet Official Protocol Standards, August 2000)
Other Protocols and Services
While TCP, IP, and UDP provide transport and network services, many other protocols were added by the Internet community over the years, mostly at the applications level. These are listed next. Of course, hundreds of nonstandard services are also available. The protocols listed here are described in various Internet RFCs and many are described under their own heading.
- Archie A utility for gathering and indexing files on the Internet.
- ARP (Address Resolution Protocol) Dynamically maps Internet addresses to physical (hardware) addresses on local area networks.
- BGP (Border Gateway Protocol) A routing protocol that is used to exchange route information between autonomous systems (i.e., service provider networks on the Internet).
- DHCP (Dynamic Host Configuration Protocol) A protocol that dynamically assigns IP addresses to host devices when they connect to a network.
- DNS (Domain Name System) A service that resolves easy-to-remember host names into IP addresses.
- DNS (Domain Name System) A hierarchical name service that matches up Internet host names with IP addresses.
- FTP (File Transfer Protocol) A utility for transferring files between hosts on the Internet or any TCP/IP network.
- Gopher A tool for searching for and retrieving documents stored hierarchically on Internet hosts.
- HTML (Hypertext Markup Language) The markup and tagging language used to create Web pages.
- HTTP (HyperText Transfer Protocol) The file transfer protocol that is the basis of the World Wide Web.
- ICMP (Internet Control Message Protocol) A diagnostics and error-reporting protocol used to handle errors and control messages at the IP layer.
- IGMP (Internet Group Management Protocol) A protocol for managing multicast groups.
- IMAP (Internet Message Access Protocol) An Internet e-mail post office protocol that expands on the features of POP.
- IPSec (IP Security) A set of protocols that support secure and encrypted data exchange at the network layer. IPSec supports VPNs.
- IRC (Internet Relay Chat) A multiuser chat system.
- LDAP (Lightweight Directory Access Protocol) A set of protocols for accessing directory services and directory service databases.
- Listserv An automated mailing list system that users can subscribe to. Mailing lists are available on a variety of topics.
- MIME (Multipurpose Internet Mail Extensions) Provides a way to use different file formats in e-mail and other documents.
- NFS (Network File System) A shared file system developed by Sun Microsystems.
- NNTP (Network News Transfer Protocol) A protocol for managing and distributing news articles.
- OSPF (Open Shortest Path First) Another routing protocol. OSPF is now used on the Internet while RIP is still used for many internal networks.
- PING (Packet Internet Gopher) A tool for determining the reachability of a host. It sends a request to a specified host and waits for a response.
- POP (Post Office Protocol) A protocol that stores mail for users on a server and forwards that mail to them when they log on.
- PPP (Point-to-Point Protocol) A protocol for transmitting IP datagrams and other protocols over telephone links or serial lines.
- RARP (Reverse Address Resolution Protocol) A diskless host uses this protocol to find its Internet address at startup.
- RIP (Routing Information Protocol) A protocol that routers use to exchange routing information.
- RSVP (Resource Reservation Protocol) A protocol that allocates and reserves bandwidth across Internet links to support QoS.
- RTP (Real-Time Protocol) A protocol that optimizes the delivery of real-time data such as live and/or interactive audio and video.
- SIP (Session Initiation Protocol) A signaling protocol used for setting up, maintaining, and terminating multimedia sessions.
- S-HTTP (Secure HTTP) A secure version of HTTP that encrypts HTTP transmissions.
- SLIP (Serial Line Internet Protocol) A protocol for transmitting IP datagrams and other protocols over telephone links or serial lines.
- SMTP (Simple Mail Transfer Protocol) The primary protocol for exchanging e-mail messages across TCP/IP networks. Works with POP and IMAP.
- SNMP (Simple Network Management Protocol) A network management protocol used to gather information about devices on a network.
- Sockets An API (application programming interface) that applications use to access TCP/IP networking services.
- SSL (Secure Socket Layer) A protocol that secures transmissions across IP networks by encrypting data.
- Telnet A terminal protocol for logging on to remote hosts.
- TFTP (Trivial File Transfer Protocol) A simplified version of FTP that provides no security and does not use TCP's reliability features.
- Usenet A protocol that allows users to participate in newsgroups, where articles can be posted and viewed.
- Veronica A search engine similar to Archie and built with Gopher.
- WAIS (Wide Area Information Service) A distributed information service and search system.
- WHOIS A protocol that displays information about an entity or person.
Copyright (c) 2001 Tom Sheldon and Big Sur Multimedia.
All rights reserved under Pan American and International copyright conventions.