Winsock ( WIN dows SOCKおよび) は、TCP/IP を実装することを目的とした Windows 上の DLL 関数の動的ライブラリです。特に、BSD ソケットを介したデータ パケットの送受信をサポートします。
Winsock を使用するアプリケーションは数多くあります: ブラウザー、電子メールマネージャー、Apache など。
歴史的
Microsoftのオペレーティング システムの古いバージョン (つまり、 Windows 3.x GUIを備えたMS-DOS ) では、 NetBIOS (元々は「IBM」のテクノロジー) に基づいた限られたネットワーク機能しかありませんでした。特に、Microsoft は TCP/IPプロトコル スタックを完全に無視しました。大学や民間企業は、MIT、FTP ソフトウェア、 Sun Microsystems 、Ungermann-Bass、Excelan などの MS/DOS 用の TCP/IP 製品を作成しています。
問題は、Microsoft 以外の TCP/IP実装にはそれぞれ独自の API があったことでした。米国空軍は、TCP/UDPトランスポート層上の NetBIOS 実装であるRFC 1001/1002を開発しました。 FTP Software 社も、この分野の標準化を試みていました。
Winsock は、1991 年 10 月に JSB Software (後の Stardust Technologies) の Martin Hall によって提案されました。この仕様の初版は、Microdyne (後のSun Microsystems) の Martin Hall、Mark Towfiq、Sun Microsystems の Geoff Arnold、および Henry によって作成されました。マイクロソフト社のサンダース氏。

テクノロジー
Winsock の初期仕様では、API と SPI (サービス プロバイダー インターフェイス) の 2 つのインターフェイスが定義されています。
Winsock は BSD ソケットに基づいていますが、Windowsプログラミングモデルに準拠する追加関数 ( WSAGetLastError()関数など) を提供します。
仕様
- バージョン 1.0 (1992 年 6 月)
- バージョン 1.1 (1993 年 1 月)
- いくつかの修正が含まれており、特定の箇所がより明確になります。最も重要な変更は、 gethostname()関数の実装でした。
- Winsock 2 は Winsock 1.1 を拡張したものです。彼はとりわけ次のように付け加えた。
- プロトコルに依存しない名前解決のサポート、
- マルチキャスト
- サービスの質。
- また、 Novell Netwareの IPX/SPX や DECNet など、さまざまなプロトコルの仕様も定義されました。この新しい仕様により、複数のプロセス間でソケットを共有できるようになります。ソケットのグループを作成することもできます。
- バージョン 2.0.x (1994 年 5 月)
- バージョン 2.1.0 (1996 年 1 月)
- バージョン 2.2.0 (1996 年 5 月)
- バージョン 2.2.1 (1997 年 5 月) およびバージョン 2.2.2 (1997 年 8 月)
- 2000 年 12 月、Windows 2000 では、 IPv6 がRFC 2553 (1999 年 3 月から、後にRFC 3493に置き換えられた) の最初の実装となりました。これは、名前解決のためのプロトコルに依存しない API であり、これは Windows XP の Winsock の一部になります。

実装
Microsoft の実装
- Microsoft は Winsock 1.0 を実装していません。
- Winsock のバージョン 1.1 は、Wolverine for Windows for Workgroups という名前でアドオン製品として提供されました。後続のバージョンでは、Windows 95 および Windows NT 3.x に組み込まれました。
- Winsock のバージョン 2 は、Windows 95 のアドオンとして出荷されました。これは、Windows 98、Windows NT 4.0、およびそれ以降のバージョンの Windows に含まれていました。
- Winsock 2.x の最新バージョンは、新しいバージョンの Windows にバンドルされているか、サービス パックの一部です。
その他の実装
- アルファベット順: 3Com 、Beame & Whiteside、DEC、Distinct、FTP Software、Frontier、 IBM 、 Novell 、Microdyne、NetManage、Sun Microsystems、Trumpet Software International
- Trumpet Winsock は非常に古い Windows 3.0 にもインストールできます
ソース
元の抜粋: Ababa、Bernard D.、comp.protocols.tcp-ip.ibmpc、FAQ、1993。Usenet: news:news.answers 。 http://www.foldoc.orgをよろしくお願いします。

