Loading article…
コンピュータネットワークプログラミングでは、コンピュータネットワークを介してプロセスが相互に通信できるようにするコンピュータプログラムを記述します。[1]
コネクション指向通信とコネクションレス通信
非常に一般的に、ほとんどの通信は、コネクション指向とコネクションレスに分けられます。通信がコネクション指向かコネクションレスかは、アプリケーション プログラミング インターフェイス(API)ではなく、通信プロトコルによって定義されます。コネクション指向プロトコルの例には、伝送制御プロトコル(TCP)やSequenced Packet Exchange (SPX)などがあり、コネクションレス プロトコルの例には、ユーザー データグラム プロトコル(UDP)、「raw IP」、Internetwork Packet Exchange (IPX)などがあります。
クライアントとサーバー
コネクション指向の通信では、通信相手は通常、異なる役割を担います。一方の相手は通常、着信接続を待機しており、この相手は通常「サーバー」と呼ばれます。もう一方の相手は接続を開始する側であり、この相手は通常「クライアント」と呼ばれます。
コネクションレス通信の場合、通常、一方の当事者 (「サーバー」) は着信パケットを待機し、もう一方の当事者 (「クライアント」) は、通常、「サーバー」に非請求パケットを送信する当事者として理解されます。
人気のプロトコルとAPI
ネットワーク プログラミングは、従来、 OSI/ISO モデルのさまざまなレイヤーをカバーしています(アプリケーション レベルのプログラミングのほとんどは L4 以上に属します)。次の表には、さまざまな OSI/ISO レイヤーに属する一般的なプロトコルと、それらの一般的な API の例がいくつか含まれています。
参照
参考文献
- W. Richard Stevens: UNIX ネットワーク プログラミング、第 1 巻、第 2 版: ネットワーク API: ソケットと XTI、Prentice Hall、1998 年、ISBN 0-13-490012-X
- ^ 「第 12 章 - ネットワーク プログラミング」。COMP1406 (PDF)。2017 年。2020 年 3 月 5 日のオリジナル(PDF)からアーカイブ。
ネットワーク プログラミングでは、コンピューター ネットワークを介して他のプログラムと通信するプログラムを作成します。
