-1

私は tcp と udp の詳細と、それらがアプリケーションにトランスポート レベルのサポートを提供する方法をすべて知っていますが、私が興味を持っているのは、tcp/udp が実際にホスト システムにどのように実装されているかです。多数のシステム/関数呼び出しによるものですか、それともバッファから継続的にデータを取得し、デバイス ドライバ バッファに書き込む前にカプセル化する実行中のデーモン プロセスですか?

4

2 に答える 2

1

これは非常に幅広い質問であり、使用しているシステムとアプリケーションが使用している機能によって異なります。

しかし、一般に、UNIX/Windows はソケットを使用して tcp を使用して通信します。システムコールを実行することにより、ソケットを使用してデータを送受信します (いくつかの異なるものがあります)。したがって、これらのシステムではユーザー空間デーモンを介してではなく、カーネルに実装されています。

于 2013-06-02T01:26:54.610 に答える
0

これは、ネットワーク プロトコル スタックの一部としてカーネル空間で実行されるモジュールです。アプリケーションは、Socket()、connect()、accept()、recv()、send() などのシステム コールを介して通信します。

于 2013-06-02T04:02:53.380 に答える