共用方式為


IPPROTO_UDP套接字選項

下表說明套用至針對 IPv4 和 IPv6 位址系列 (AF_INET 和 AF_INET6) 所建立之套接字的 IPPROTO_UDP 套接字選項,並將 通訊協定 參數套用至指定為 UDP 的 套接字 函式 IPPROTO_UDP。 如需取得和設定套接字選項的詳細資訊,請參閱 getsockoptsetsockopt 函式參考頁面。

若要列舉每個已安裝通訊協定的通訊協定和探索支援的屬性,請使用 WSAEnumProtocolsWSCEnumProtocolsWSCEnumProtocols32 函式。

選項

選擇 獲取 設置 Optval 類型 描述
UDP_CHECKSUM_COVERAGE (ws2tcpip.h) 是的 是的 DWORD (布爾值) TRUE時,UDP 數據報會以總和檢查碼傳送。
UDP_NOCHECKSUM (ws2tcpip.h) 是的 是的 DWORD (布爾值) TRUE時,UDP 數據報會以零總和檢查碼傳送。 服務提供者的必要專案。 如果服務提供者沒有停用 UDP 總和檢查碼計算的機制,它可能只會儲存此選項而不採取任何動作。 IPv6 不支援此選項。
UDP_RECV_MAX_COALESCED_SIZE (ws2ipdef.h; include ws2tcpip.h) 是的 是的 DWORD 當設定為非零值時,多個接收的數據報可能會聯合成單一訊息緩衝區,再向您的應用程式指示。 選項值代表可向您的應用程式指出之聯合訊息的位元組大小上限。 可能仍會指出大於選項值的未聯合訊息。 預設值為 0(無聯合)。 只有在數據報源自相同的來源位址和埠時,才會合併數據報。 所有合併的數據報的大小都會相同,但最後一個數據報可能較小。 如果您的應用程式想要擷取數據報大小(但最後一個數據報可能不同),則您必須使用支援控制資訊的接收API(例如 LPFN_WSARECVMSG (WSARecvMsg))。 除了最後一則訊息的大小,可以在類型為 DWORD 的 UDP_COALESCED_INFO 控件訊息中找到。 針對類型安全性,您的應用程式應該使用 WSAGetUdpRecvMaxCoalescedSizeWSASetUdpRecvMaxCoalescedSize 函式,而不是直接使用套接字選項。
UDP_SEND_MSG_SIZE (ws2ipdef.h; include ws2tcpip.h) 是的 是的 DWORD 當設定為非零值時,應用程式所傳送的緩衝區會依網路堆疊細分成多個訊息。 選項值代表每個細分訊息的大小。 選項值是以位元組表示。 最後一個區段的大小可能小於選項的值。 預設值為 0(無分割)。 您的應用程式應該設定低於目的地之路徑 MTU 的值,以避免 IP 片段。 針對類型安全性,您的應用程式應該使用 WSAGetUdpSendMessageSizeWSASetUdpSendMessageSize 函式,而不是直接使用套接字選項。

IPPROTO_UDP選項的舊版 Windows 支援

Windows 2000 和 Windows NT4 上無法使用 UDP_CHECKSUM_COVERAGE。 Windows 9x/Me 上無法使用 UDP_CHECKSUM_COVERAGEUDP_NOCHECKSUM

言論

在 Windows Vista 和更新版本的 Microsoft Windows 軟體開發工具包 (SDK) 上,頭檔的組織已變更,IPPROTO_UDP 層級定義於 Ws2def.h 頭檔中,該頭文件會自動包含在 Winsock2.h 頭檔中。 IPPROTO_UDP 套接字選項定義於 Ws2tcpip.h 頭檔中。 Ws2def.h 頭文件不應該直接使用。

要求

要求 價值
頁眉
ws2ipdef.h (包括 ws2tcpip.h), 和 ws2tcpip.h
Windows Server 2003、Windows XP 和 Windows 2000 上的 Winsock2.h