Network Control Program

ネットワークコントロールプログラム (NCP) とは



ネットワークコントロールプログラム(NCP)は、初期のコンピュータネットワークであるARPANETにおいて、ホストコンピュータ上で動作するプロトコルスタックの共通要素として機能しました。NCPは、遠隔にあるホストコンピュータ間でのプロセス間接続とフロー制御を担い、今日のインターネットにおけるTCP/IPのプロトコルスタックと同様の役割を果たしていました。

NCPの役割



NCPは、電子メールやファイル転送などのアプリケーションサービスが、他のホストコンピュータとの接続を制御するために使用するインターフェースを提供しました。これにより、アプリケーションはネットワークの複雑さを意識せずに通信を行うことができました。NCPは、現代のソケットに相当する機能を提供していたと言えます。

ARPANETの構造とNCP



ARPANETでは、物理層、データリンク層、ネットワーク層のプロトコルは、ホストコンピュータとは別のInterface Message Processor(IMP)に実装されていました。ホストコンピュータは、IMPが提供する高信頼パケット転送システムを利用してネットワークに接続していました。IMPの仕様は、BBN Report 1822のHost/IMP Protocolで定義されていました。

ホストコンピュータ上のプロトコルスタックにおいて、NCPは共通層として機能しました。低レベルプロトコルはIMPによって提供されていたため、NCPは主にトランスポート層に相当する役割を担っていました。具体的には、ARPANET Host-to-Host Protocol(AHHP)とInitial Connection Protocol(ICP)から構成されていました。

AHHPは、ホスト間における単方向のフロー制御されたデータストリームを管理するためのプロトコルです。一方、ICPは、そのようなデータストリームを2つ接続することで、双方向通信を確立するプロトコルでした。アプリケーション層のプロトコル(FTPやSMTPなど)は、NCPを通してネットワークサービスにアクセスしていました。

TCP/IPへの移行とNCPの終焉



1983年1月1日ARPANETはネットワークプロトコルをNCPから、より柔軟で強力なTCP/IPへと切り替えました。この移行によって、今日のインターネットの基盤が確立されました。NCPは、TCP/IPの登場によってその役割を終えましたが、初期のインターネットの発展に大きく貢献した重要なプロトコルとして記憶されています。

NCPの意義



NCPは、初期のコンピュータネットワークにおいて、アプリケーションがネットワークを意識せずに通信を行うための抽象化を提供しました。NCPの設計思想は、その後のネットワーク技術に大きな影響を与え、特にTCP/IPへの移行は、現代のインターネットの発展に不可欠でした。NCPは、現代のインターネットの基盤を築いた重要な要素であり、その歴史的意義は計り知れません。

このように、NCPはARPANETにおける重要な役割を果たし、その後のインターネット技術の発展に大きく貢献しました。現在ではTCP/IPが主流となっていますが、NCPは初期のネットワークアーキテクチャを理解する上で欠かせない存在です。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。