Network Control Protocol (ARPANET)

Last updated

The Network Control Protocol (NCP) was a communication protocol for a computer network in the 1970s and early 1980s. It provided the transport layer of the protocol stack running on host computers of the ARPANET, the predecessor to the modern Internet.

Contents

NCP preceded the Transmission Control Protocol (TCP) as a transport layer protocol used during the early ARPANET. NCP was a simplex protocol that utilized two port numbers, establishing two connections for two-way communications. An odd and an even port were reserved for each application layer application or protocol. The standardization of TCP and UDP reduced the need for the use of two simplex ports per application to one duplex port. [1] :15

There is some confusion over the name, even among the engineers who worked with the ARPANET. [2] Originally, there was no need for a name for the protocol stack as a whole, so none existed. When the development of TCP started, a name was required for its predecessor, and the pre-existing acronym 'NCP' (which originally referred to Network Control Program, the software that implemented this stack) was organically adopted for that use. [3] [4] Eventually, it was realized that the original expansion of that acronym was inappropriate for its new meaning, so a new quasi-backronym was created, 'Network Control Protocol' — again, organically, not via a formal decision. [5] [6]

History

On the ARPANET, the protocols in the physical layer, the data link layer, and the network layer used within the network were implemented on separate Interface Message Processors (IMPs). The host usually connected to an IMP using another kind of interface, with different physical, data link, and network layer specifications. The IMP's capabilities were specified by the Host/IMP Protocol in BBN Report 1822, which was written by Bob Kahn. [7] [8]

Under the auspices of Leonard Kleinrock at University of California Los Angeles (UCLA), [9] Stephen D. Crocker, then a graduate student in computer science at UCLA, formed and led the Network Working Group (NWG). Working with Jon Postel and others, they designed a host-to-host protocol, known as the Network Control Program, which was developed in the ARPANET's earliest RFC documents in 1969 after a series of meetings on the topic with engineers from UCLA, University of Utah, and SRI. [10] [nb 1] Crocker said "While much of the development proceeded according to a grand plan, the design of the protocols and the creation of the RFCs was largely accidental." [nb 2] After approval by Barry Wessler at ARPA, [11] who had ordered certain more exotic elements to be dropped, [12] it was finalized in RFC  33 in early 1970, [13] and deployed to all nodes on the ARPANET in December 1970. [14] [15]

NCP codified the ARPANET network interface, making it easier to establish, and enabling more sites to join the network. [16] [17] It provided connections and flow control between processes running on different ARPANET host computers. Application services, such as remote login and file transfer, would be built on top of NCP, using it to handle connections to other host computers. Other participants in the NWG developed these application-level protocols, TELNET and FTP. [nb 3] [18] [19]

Since lower protocol layers were provided by the IMP-host interface, NCP essentially provided a transport layer consisting of the ARPANET Host-to-Host Protocol (AHHP) and the Initial Connection Protocol (ICP). AHHP defined procedures to transmit a unidirectional, flow-controlled data stream between two hosts. The ICP defined the procedure for establishing a bidirectional pair of such streams between a pair of host processes. Application protocols (e.g., FTP) accessed network services through an interface to the top layer of NCP — a forerunner to the Berkeley sockets interface.

Network Control Program

Network Control Program (usually given as NCP) was the name for the software on hosts which implemented the Network Control Protocol of the ARPANET. [20] [5]

It was almost universally referred to by the acronym, NCP. This was later taken over to refer to the protocol suite itself. [3] [4]

NCPs were written for many operating systems, including Multics, TENEX, UNIX and TOPS-10, and many of those NCPs survive (although of course they are now used by only vintage computer enthusiasts).

Transition to TCP/IP

On January 1, 1983, in what is known as a flag day , NCP was officially rendered obsolete when the ARPANET changed its core networking protocols from NCP to the more flexible and powerful TCP/IP protocol suite, marking the start of the modern Internet. [21] [22] [23] [24]

See also

Notes

  1. Crocker said "NCP" later came to be used as the name for the protocol, but it originally meant the program within the operating system that managed connections. The protocol itself was known blandly only as the host-host protocol.'
  2. RFCs began as informal technical notes, "requests for comments", of the Networking Working Group (NWG).
  3. The NPL team also envisaged the need for levels of data transmission in 1968. Both were early examples of the protocol layering concept incorporated in the OSI model.

Related Research Articles

<span class="mw-page-title-main">History of the Internet</span>

The history of the Internet has its origin in the efforts of scientists and engineers to build and interconnect computer networks. The Internet Protocol Suite, the set of rules used to communicate between networks and devices on the Internet, arose from research and development in the United States and involved international collaboration, particularly with researchers in the United Kingdom and France.

The Internet Protocol (IP) is the network layer communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet.

The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suite are the Transmission Control Protocol (TCP), the User Datagram Protocol (UDP), and the Internet Protocol (IP). Early versions of this networking model were known as the Department of Defense (DoD) model because the research and development were funded by the United States Department of Defense through DARPA.

<span class="mw-page-title-main">Steve Crocker</span> American computer scientist and Internet pioneer (born 1944)

Stephen D. Crocker is an American Internet pioneer. In 1969, he created the ARPA "Network Working Group" and the Request for Comments series. He served as chair of the board of the Internet Corporation for Assigned Names and Numbers (ICANN) from 2011 through 2017.

Telnet is a client/server application protocol that provides access to virtual terminals of remote systems on local area networks or the Internet. It is a protocol for bidirectional 8-bit communications. Its main goal was to connect terminal devices and terminal-oriented processes.

A datagram is a basic transfer unit associated with a packet-switched network. Datagrams are typically structured in header and payload sections. Datagrams provide a connectionless communication service across a packet-switched network. The delivery, arrival time, and order of arrival of datagrams need not be guaranteed by the network.

The end-to-end principle is a design framework in computer networking. In networks designed according to this principle, guaranteeing certain application-specific features, such as reliability and security, requires that they reside in the communicating end nodes of the network. Intermediary nodes, such as gateways and routers, that exist to establish the network, may implement these to improve efficiency but cannot guarantee end-to-end correctness.

<span class="mw-page-title-main">ARPANET</span> Early packet switching network (1969–1990)

The Advanced Research Projects Agency Network (ARPANET) was the first wide-area packet-switched network with distributed control and one of the first computer networks to implement the TCP/IP protocol suite. Both technologies became the technical foundation of the Internet. The ARPANET was established by the Advanced Research Projects Agency of the United States Department of Defense.

<span class="mw-page-title-main">Interface Message Processor</span> Computer network device

The Interface Message Processor (IMP) was the packet switching node used to interconnect participant networks to the ARPANET from the late 1960s to 1989. It was the first generation of gateways, which are known today as routers. An IMP was a ruggedized Honeywell DDP-516 minicomputer with special-purpose interfaces and software. In later years the IMPs were made from the non-ruggedized Honeywell 316 which could handle two-thirds of the communication traffic at approximately one-half the cost. An IMP requires the connection to a host computer via a special bit-serial interface, defined in BBN Report 1822. The IMP software and the ARPA network communications protocol running on the IMPs was discussed in RFC 1, the first of a series of standardization documents published by what later became the Internet Engineering Task Force (IETF).

<span class="mw-page-title-main">Bob Braden</span> American computer scientist (1934–2018)

Robert T. Braden was an American computer scientist who played a role in the development of the Internet. His research interests included end-to-end network protocols, especially in the transport and network layers.

An Internet Experiment Note (IEN) is a sequentially numbered document in a series of technical publications issued by the participants of the early development work groups that created the precursors of the modern Internet.

A network host is a computer or other device connected to a computer network. A host may work as a server offering information resources, services, and applications to users or other hosts on the network. Hosts are assigned at least one network address.

In computer networking, a port or port number is a number assigned to uniquely identify a connection endpoint and to direct data to a specific service. At the software level, within an operating system, a port is a logical construct that identifies a specific process or a type of network service. A port at the software level is identified for each transport protocol and address combination by the port number assigned to it. The most common transport protocols that use port numbers are the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP); those port numbers are 16-bit unsigned numbers.

The internet layer is a group of internetworking methods, protocols, and specifications in the Internet protocol suite that are used to transport network packets from the originating host across network boundaries; if necessary, to the destination host specified by an IP address. The internet layer derives its name from its function facilitating internetworking, which is the concept of connecting multiple networks with each other through gateways.

A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any variation of a physical quantity. The protocol defines the rules, syntax, semantics, and synchronization of communication and possible error recovery methods. Protocols may be implemented by hardware, software, or a combination of both.

In computer networking, the link layer is the lowest layer in the Internet protocol suite, the networking architecture of the Internet. The link layer is the group of methods and communications protocols confined to the link that a host is physically connected to. The link is the physical and logical network component used to interconnect hosts or nodes in the network and a link protocol is a suite of methods and standards that operate only between adjacent network nodes of a network segment.

<span class="mw-page-title-main">Elizabeth J. Feinler</span> American information scientist (born 1931)

Elizabeth Jocelyn "Jake" Feinler is an American information scientist. From 1972 until 1989 she was director of the Network Information Systems Center at the Stanford Research Institute. Her group operated the Network Information Center (NIC) for the ARPANET as it evolved into the Defense Data Network (DDN) and the Internet.

<span class="mw-page-title-main">ARPANET encryption devices</span> Security tools used on ARPANET

The ARPANET pioneered the creation of novel encryption devices for packet networks in the 1970s and 1980s, and as such were ancestors to today's IPsec architecture, and High Assurance Internet Protocol Encryptor (HAIPE) devices more specifically.

The Protocol Wars were a long-running debate in computer science that occurred from the 1970s to the 1990s, when engineers, organizations and nations became polarized over the issue of which communication protocol would result in the best and most robust networks. This culminated in the Internet–OSI Standards War in the 1980s and early 1990s, which was ultimately "won" by the Internet protocol suite (TCP/IP) by the mid-1990s when it became the dominant protocol suite through rapid adoption of the Internet.

References

  1. Stevens, W. Richard (1994). TCP/IP Illustrated Volume I. Vol. 1. Reading, Massachusetts, USA: Addison-Wesley Publishing Company. ISBN   0-201-63346-9.
  2. Crocker, Stephen (27 June 2022). "Separation of TCP and IP". elists.isoc.org. Retrieved 5 August 2022.
  3. 1 2 "Internetting or Beyond NCP" (PDF). Retrieved 4 August 2022.
  4. 1 2 Proposed Revisions to the TCP (PDF). IEN 18. Retrieved 4 August 2022.
  5. 1 2 Reynolds, J.; Postel, J. (1987). The Request For Comments Reference Guide. doi: 10.17487/RFC1000 . RFC 1000. Over the next few months we designed a symmetric host-host protocol, and we defined an abstract implementation of the protocol known as the Network Control Program. ("NCP" later came to be used as the name for the protocol, but it originally meant the program within the operating system that managed connections. The protocol itself was known blandly only as the host-host protocol.)
  6. Mail Transfer Protocol. doi: 10.17487/RFC0772 . RFC 772 . Retrieved 5 August 2022.
  7. Hafner & Lyon 1996 , pp.  116, 149
  8. Interface Message Processor: Specifications for the Interconnection of a Host and an IMP (PDF) (Report). Bolt Beranek and Newman (BBN). Report No. 1822.
  9. Meeting of the ARPA Computer Network Working Group at UCLA, November 16, 1967
  10. RFC 6529. doi: 10.17487/RFC6529 .
  11. RFC   53
  12. Heart, F.; McKenzie, A.; McQuillian, J.; Walden, D. (January 4, 1978). Arpanet Completion Report (PDF) (Technical report). Burlington, MA: Bolt, Beranek and Newman. p. III-63.
  13. Crocker, S.; Carr, S.; Cerf, V. (12 February 1970). New HOST-HOST Protocol. p. 4. doi: 10.17487/RFC0033 . RFC 33. Processes within a HOST communicate with the network through a Network Control Program (NCP). - Earliest RFC reference to NCP acronym. Explicit definition of NCP as Network Control Program.
  14. Crocker, Stephen. "NCP -- Network Control Program". Living Internet.com. Retrieved 22 February 2022.
  15. UGC -NET/JRF/SET PTP & Guide Teaching and Research Aptitude. High Definition Books. p. 319.
  16. "NCP, Network Control Program". LivingInternet. Retrieved 2022-12-26.
  17. UGC -NET/JRF/SET PTP & Guide Teaching and Research Aptitude. High Definition Books. p. 319.
  18. Hauben, Ronda (2004). "The Internet: On its International Origins and Collaborative Vision". Amateur Computerist. 12 (2). Retrieved May 29, 2009.
  19. Reynolds, J.; Postel, J. (1987). The Request For Comments Reference Guide. doi: 10.17487/RFC1000 . RFC 1000.
  20. New HOST-HOST Protocol. doi: 10.17487/RFC0033 . RFC 33 . Retrieved 2022-08-04.
  21. Postel, J. (November 1981). "The General Plan". NCP/TCP transition plan. IETF. p. 2. doi: 10.17487/RFC0801 . RFC 801 . Retrieved February 1, 2011.
  22. Danesi, Marcel (2013). Encyclopedia of Media and Communication. University of Toronto Press. ISBN   9781442695535.
  23. "Marking the birth of the modern-day Internet". Google Official Blog. 1 January 2013. Retrieved 19 September 2015.
  24. "Internet celebrates 40th birthday: but what date should we be marking?". The Telegraph. 2 September 2009. Retrieved 19 September 2015.

Sources

Further reading