質問: ポートとソケットの違いは何ですか? これは私の組織のソフトウェアエンジニアの一人が提起した質問です。私は最も広い定義に興味があります。
回答: ソケットは、データi/oのためにカーネルによってユーザアプリケーションに提供される抽象概念です。ソケットの型はそのプロトコルの取り扱い、ipc通信などによって定義されます。したがって、誰かがtcpソケットを作成した場合、ソケットへのデータの読み取りやソケットへのデータの書き込みなどの操作ができます。単純なメソッドと、tcp変換、低レベルネットワークプロトコルへのパケット転送などの低レベルプロトコル処理は、カーネル内の特定のソケット実装によって行われます。利点は、ユーザがプロトコル特有の新種の扱いを心配する必要がなく、通常のバッファのようにソケットにデータを読み書きするだけでよいことです。 ipcの場合も同様です。ユーザーはソケットに対してデータを読み書きするだけで、カーネルは作成されたソケットのタイプに基づいてすべての下位レベルの詳細を処理します。ipと一緒のポートはソケットにアドレスを提供するようなものですが、必須ではありませんが、ネットワーク通信に役立ちます。