The Network Control Protocol (NCP) was a
communication protocol
A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity. The protocol defines the rules, syntax, semantics and synchroniza ...
for a
computer network
A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections ar ...
in the 1970s and early 1980s. It provided the middle layers of the
protocol stack running on host computers of the
ARPANET
The Advanced Research Projects Agency Network (ARPANET) was the first wide-area packet-switched network with distributed control and one of the first networks to implement the TCP/IP protocol suite. Both technologies became the technical foun ...
, the predecessor to the modern
Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a ''internetworking, network of networks'' that consists ...
.
NCP preceded the
Transmission Control Protocol
The Transmission Control Protocol (TCP) is one of the main protocols of the Internet protocol suite. It originated in the initial network implementation in which it complemented the Internet Protocol (IP). Therefore, the entire suite is common ...
(TCP) as a
transport layer
In computer networking, the transport layer is a conceptual division of methods in the layered architecture of protocols in the network stack in the Internet protocol suite and the OSI model. The protocols of this layer provide end-to-end ...
protocol used during the early ARPANET. NCP was a
simplex protocol that utilized two
port addresses, establishing two connections, for two-way communications. An odd and an even port were reserved for each
application layer
An application layer is an abstraction layer that specifies the shared communications protocols and interface methods used by hosts in a communications network. An ''application layer'' abstraction is specified in both the Internet Protocol ...
application or protocol. The standardization of TCP and UDP reduced the need for the use of two simplex ports for each application down to one duplex port.
There is some confusion over the name, even among the engineers who worked with the ARPANET. 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 Network Control Program might refer to:
* Network Control Program (ARPANET) - the software in the hosts which implemented the original protocol suite of the ARPANET, the Network Control Protocol
* IBM Network Control Program
The IBM Network Contr ...
, the software which implemented this stack) was organically adopted for that use.
Eventually, it was realized that the original expansion of that acronym was inappropriate for its new meaning, so a new quasi-
backronym
A backronym is an acronym formed from an already existing word by expanding its letters into the words of a phrase. Backronyms may be invented with either serious or humorous intent, or they may be a type of false etymology or folk etymology. The ...
was created, 'Network Control Protocol' - again, organically, not via a formal decision.
History
NCP was first specified and described in the ARPANETs earliest
RFC documents in 1969 after a series of meetings on the topic with engineers from
UCLA
The University of California, Los Angeles (UCLA) is a public university, public Land-grant university, land-grant research university in Los Angeles, California. UCLA's academic roots were established in 1881 as a Normal school, teachers colle ...
,
University of Utah
The University of Utah (U of U, UofU, or simply The U) is a public research university in Salt Lake City, Utah. It is the flagship institution of the Utah System of Higher Education. The university was established in 1850 as the University of D ...
, and
SRI. It was finalized in in early 1970, and deployed to all nodes on the ARPANET in December 1970. It remained in use until the end of 1982; see Flag Day below.
NCP provided connections and flow control between processes running on different ARPANET host computers. Application services, such as
remote login
Remote may refer to:
Arts, entertainment, and media
* ''Remote'' (1993 film), a 1993 movie
* ''Remote'' (2004 film), a Tamil-language action drama film
* ''Remote'' (album), a 1988 album by Hue & Cry
* Remote (band), ambient chillout band
* ' ...
and the
file transfer File transfer is the transmission of a computer file through a communication channel from one computer system to another. Typically, file transfer is mediated by a communications protocol. In the history of computing, numerous file transfer protocol ...
, would be built on top of NCP, using it to handle connections to other host computers.
On the ARPANET, the protocols in the
physical layer
In the seven-layer OSI model of computer networking, the physical layer or layer 1 is the first and lowest layer; The layer most closely associated with the physical connection between devices. This layer may be implemented by a PHY chip.
Th ...
, the
data link layer
The data link layer, or layer 2, is the second layer of the seven-layer OSI model of computer networking. This layer is the protocol layer that transfers data between nodes on a network segment across the physical layer. The data link layer ...
, and the
network layer
In the seven-layer OSI model of computer networking, the network layer is layer 3. The network layer is responsible for packet forwarding including routing through intermediate routers.
Functions
The network layer provides the means of trans ...
used within the network were implemented on separate
Interface Message Processor
The Interface Message Processor (IMP) was the packet switching
In telecommunications, packet switching is a method of grouping Data (computing), data into ''network packet, packets'' that are transmitted over a digital Telecommunications netwo ...
s (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.
Since lower protocol layers were provided by the IMP-host interface, NCP essentially provided a
transport layer
In computer networking, the transport layer is a conceptual division of methods in the layered architecture of protocols in the network stack in the Internet protocol suite and the OSI model. The protocols of this layer provide end-to-end ...
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 the NCP, a forerunner to the
Berkeley sockets
Berkeley sockets is an application programming interface (API) for Internet sockets and Unix domain sockets, used for inter-process communication (IPC). It is commonly implemented as a library of linkable modules. It originated with the 4.2BS ...
interface.
Stephen D. Crocker
Stephen D. Crocker (born October 15, 1944) is the inventor of the Request for Comments series, authoring the first RFC and many more. He attended Van Nuys High School, as did Vint Cerf and Jon Postel. Crocker received his bachelor's degree (196 ...
, then a graduate student at UCLA, formed and led the Network Working Group (NWG) and specifically led the development of NCP. Other participants in the NWG developed application level protocols such as
TELNET
Telnet is an application protocol used on the Internet or local area network to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet cont ...
,
FTP, and, in the 1980s,
SMTP
The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typic ...
, among others.
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
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 suit ...
protocol suite, marking the start of the modern
Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a ''internetworking, network of networks'' that consists ...
.
See also
*
Protocol Wars
References
Further reading
*
*
** (now offline, but a later version, which is almost identical to the original version, can be foun
here
** (this does not seem to be online, but an early version, which is almost identical to the final version, can be foun
here
*
*Stevens, W. Richard. ''TCP/IP Illustrated Volume I''. Reading, Massachusetts, USA: Addison-Wesley Publishing Company, 1994. {{ISBN, 0-201-63346-9(v.1). Page 15.
Network protocols
ARPANET
fr:Network Control Program