Введение
Протокол управления сетью ARPANET (англ. Network Control Protocol, NCP) — протокол связи для компьютерной сети 1970-х и начала 1980-х годов. Он обеспечивал транспортный уровень стека протоколов, работающего на хост-компьютерах ARPANET, предшественника современного Интернета. NCP предшествовал протоколу управления передачей (TCP) как протокол транспортного уровня, использовавшийся в ранней ARPANET. NCP был симплексным протоколом, использующим два номера портов, устанавливающих два соединения для двусторонней связи. Для каждого прикладного приложения или протокола на прикладном уровне резервировались нечётный и чётный порты. Стандартизация TCP и UDP уменьшила необходимость использования двух симплексных портов для каждого приложения до одного дуплексного порта. Существует некоторая путаница в отношении названия, даже среди инженеров, работавших с ARPANET. Изначально не было необходимости в названии для всего стека протоколов, поэтому его и не существовало. Когда началась разработка TCP, его предшественнику потребовалось название, и уже существующая аббревиатура «NCP» (которая первоначально относилась к Network Control Program, программному обеспечению, реализующему этот стек) была органично принята для этой цели. Впоследствии было осознано, что первоначальное расшифровка этой аббревиатуры была неуместна для её нового значения, поэтому была создана новая квази-обратная аббревиатура — «Протокол управления сетью», также органично, без формального решения.
the ARPANET Network Control Protocol and Program
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. 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 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, 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 was created, 'Network Control Protocol' again, organically, not via a formal decision.
История
NCP был впервые специфицирован и описан в самых ранних документах RFC для ARPANET в 1969 году после серии совещаний по этой теме с инженерами из UCLA, Университета Юты и SRI. Он был окончательно разработан в начале 1970 года и развернут на всех узлах ARPANET в декабре 1970 года. Он оставался в использовании до конца 1982 года; см. раздел «День флага» ниже. NCP обеспечивал соединения и управление потоком данных между процессами, работающими на различных хост-компьютерах ARPANET. Прикладные сервисы, такие как удалённый вход и передача файлов, создавались поверх NCP, используя его для установления соединений с другими хост-компьютерами. В ARPANET протоколы физического, канального и сетевого уровней, использовавшиеся в сети, были реализованы на отдельных процессорах интерфейсных сообщений (IMP). Хост обычно подключался к IMP, используя другой тип интерфейса с различными спецификациями физического, канального и сетевого уровней. Функциональные возможности IMP были определены протоколом «Хост/IMP» в отчёте BBN 1822. Поскольку нижние уровни протокола предоставлялись интерфейсом хоста IMP, NCP по сути представлял собой транспортный уровень, состоящий из протокола «Хост-к-хосту ARPANET» (AHHP) и протокола начального соединения (ICP). AHHP определял процедуры для передачи однонаправленного потока данных с управлением потоком между двумя хостами. ICP определял процедуру установления двунаправленной пары таких потоков между парой хост-процессов. Прикладные протоколы (например, FTP) обращались к сетевым сервисам через интерфейс верхнего уровня NCP – предшественник интерфейса сокетов Berkeley. Стивен Д. Крокер, в то время аспирант UCLA, сформировал и возглавил Рабочую группу по сетям (NWG) и непосредственно руководил разработкой NCP. Другие участники NWG разработали прикладные протоколы, такие как TELNET, FTP и, в 1980-х годах, SMTP, среди прочих.
Программа управления сетью
Программа управления сетью (обычно обозначаемая как NCP) — это название программного обеспечения, установленного на хостах, которое реализовывало сетевой протокол управления ARPANET.