Winsock プログラミングに関する考慮事項
Windows Sockets 2 は、Windows Sockets 1.1 の機能をさまざまな領域で拡張します。 次の表は、主な機能の変更点の一部をまとめたものです。
特徴 | 説明 |
---|---|
Windows ソケット 2 のアーキテクチャ | Windows ソケット 2 アーキテクチャの説明。 |
ソケット ハンドル | 必要に応じて、ソケット ハンドルを Windows Sockets 2 のファイル ハンドルにすることができます。 標準の Windows ファイル I/O 関数でソケット ハンドルを使用できます。 |
複数のトランスポート プロトコルへの同時アクセス | アプリケーションで使い慣れたソケット インターフェイスを使用して、インストールされている多数のトランスポート プロトコルへの同時アクセスを実現できるようにします。 |
プロトコルに依存しない名前解決 | 現在存在する無数の名前解決ドメイン (DNS、SAP、X.500 など) を照会して操作するための標準化された一連の関数が含まれています。 |
プロトコルに依存しないマルチキャストとマルチポイント | アプリケーションは、トランスポートが提供するマルチポイントまたはマルチキャスト機能の種類を検出し、一般的な方法でこれらの機能を使用します。 |
重複した I/O | Windows 環境で確立されたモデルに従って、ソケット I/O の重複するパラダイムが組み込まれています。 |
分散/収集 I/O | Windows 環境で確立されたモデルに従って、ソケット I/O の重複するパラダイムに散布/収集機能を組み込みます。 |
サービスの品質 (QoS) | アプリケーションが帯域幅や待機時間などのパラメーターに必要なサービス レベルをネゴシエートするために使用する規則を確立します。 その他の QoS 関連の機能強化には、ネットワーク固有のサービス品質拡張機能のメカニズムが含まれます。 |
プロバイダー固有の拡張メカニズム | WSAIoctl 関数を使用すると、サービス プロバイダーはプロバイダー固有の機能拡張を提供できます。 |
共有ソケット | WSADuplicateSocket 関数が導入され、プロセス間でのソケット共有が可能になります。 |
接続のセットアップと破棄 | アプリケーションは、着信接続要求を受け入れるかどうかを決定する前に、呼び出し元の識別子やサービスの品質などの呼び出し元情報を取得できます。 (これをサポートするプロトコルの場合)、接続の破棄時にエンドポイント間でユーザー データを交換することもできます。 |
グレースフル シャットダウン、残留オプション、ソケット クロージャ | アプリケーションには、ソケット接続 (シャットダウン シーケンス) をシャットダウンするためのオプションがいくつかあります。 |
プロトコルに依存しない帯域外データ | ストリーム ソケットの抽象化には、帯域外 (OOB) データの概念が含まれます。 |
デバッグおよびトレース機能 | Windows Sockets 2 では、特別に考案されたバージョンのWs2_32.dllと個別のデバッグ/トレース DLL がサポートされています。 |
Windows ソケットの互換性の問題 | Windows Sockets 2 では、擬似ブロッキングを処理する場合を除き、Windows Sockets 1.1 のすべてのセマンティクスと関数呼び出しが引き続きサポートされます。 |
Winsock エラーの処理 | Winsock エラーを取得してアプリケーションで処理する方法。 |