- PR -

.Net Frameworkのソケット通信のSDKについて初歩的な質問

投稿者投稿内容
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2004-07-16 22:08
OS の立場で考えると整理をつけやすいんじゃないかなあと思います。

client - OS - Network I/F - Internet - Network I/F - OS - server

まずは両端の部分から。
クライアントでもサーバでも、ユーザランドのプログラム
(アプリケーション)が読み書きしているのがソケットですね。
アプリケーションにとっては(ひとたび繋がってしまえば)
ポート番号なんてどうでもよくて、ソケット番号だけが問題になる。
ソケット番号さえ異なっていれば、いくらでも接続できるわけです。

一方で、中央の部分の TCP/IP にとってはソケットなんて知ったこと
じゃなくて、発信元と宛先双方のIPアドレスとポート番号という
四つの情報が区別をつける材料になっています。

この仲立ちになるのが OS で。TCP/IP の四つの情報のどれかひとつでも
異なっていれば、異なるソケットに関連付けることができますね。

・・・と考えると、見通しをつけやすいのではないかと。
# アドレスファミリとかプロトコルとかについては割愛。

引用:

半人前さんの書き込み (2004-07-16 16:56) より:
締めですが、.NETのソケットサービスはWinsock32APIのマネージ版で、そのWinsock32API
は・・と結局UNIXのソケット実装まで遡らなければ私には整理がつきませんでした。


そうですね。Unix ではいい本が出ていますし。
ネットワークプログラミングのバイブルとされているのがこの本です。
 "Unix Network Programming" (邦題『UNIXネットワークプログラミング』)
TCP/IP についてはこちら。
 "TCP/IP Illustrated" (邦題『詳解TCP/IP』)

[ メッセージ編集済み 編集者: ぽんす 編集日時 2004-07-16 22:10 ]

スキルアップ/キャリアアップ(JOB@IT)