opsi soket IPPROTO_UDP
Tabel berikut ini menjelaskan opsi soket IPPROTO_UDP yang berlaku untuk soket yang dibuat untuk keluarga alamat IPv4 dan IPv6 (AF_INET dan AF_INET6) dengan protokol parameter ke fungsisoketyang ditentukan sebagai UDP (IPPROTO_UDP). Lihat halaman referensi fungsi getsockopt dan setsockopt untuk informasi selengkapnya tentang opsi mendapatkan dan mengatur soket.
Untuk menghitung protokol dan menemukan properti yang didukung untuk setiap protokol yang diinstal, gunakan WSAEnumProtocols, WSCEnumProtocols, atau fungsi WSCEnumProtocols32.
Pilihan
Pilihan | Dapat | Mengeset | Jenis optval | Deskripsi |
---|---|---|---|---|
UDP_CHECKSUM_COVERAGE (ws2tcpip.h) | Ya | Ya | DWORD (boolean) | Saat TRUE, datagram UDP dikirim dengan checksum. |
UDP_NOCHECKSUM (ws2tcpip.h) | Ya | Ya | DWORD (boolean) | Ketika TRUE, datagram UDP dikirim dengan checksum nol. Diperlukan untuk penyedia layanan. Jika penyedia layanan tidak memiliki mekanisme untuk menonaktifkan perhitungan checksum UDP, itu mungkin hanya menyimpan opsi ini tanpa mengambil tindakan apa pun. Opsi ini tidak didukung untuk IPv6. |
UDP_RECV_MAX_COALESCED_SIZE (ws2ipdef.h; termasuk ws2tcpip.h) | Ya | Ya | DWORD | Saat diatur ke nilai bukan nol, beberapa datagram yang diterima dapat digabungkan ke dalam satu buffer pesan sebelum ditunjukkan ke aplikasi Anda. Nilai opsi mewakili ukuran pesan maksimum dalam byte untuk pesan koalesced yang dapat ditunjukkan ke aplikasi Anda. Pesan yang tidak dikoalesse lebih besar dari nilai opsi mungkin masih ditunjukkan. Nilai defaultnya adalah 0 (tidak ada coalescing). Datagram hanya akan dikoalesced jika berasal dari alamat sumber dan port yang sama. Semua datagram yang digabungkan akan berukuran sama—kecuali datagram terakhir, yang mungkin lebih kecil. Jika aplikasi Anda ingin mengambil ukuran datagram (kecuali datagram terakhir, yang mungkin berbeda) yang digabungkan, Anda harus menggunakan API penerima yang mendukung informasi kontrol (seperti LPFN_WSARECVMSG (WSARecvMsg)). Ukuran semua kecuali pesan terakhir dapat ditemukan dalam pesan kontrol UDP_COALESCED_INFO, yang berjenis DWORD. Untuk keamanan jenis, aplikasi Anda harus menggunakan WSAGetUdpRecvMaxCoalescedSize dan fungsi WSASetUdpRecvMaxCoalescedSize alih-alih opsi soket secara langsung. |
UDP_SEND_MSG_SIZE (ws2ipdef.h; termasuk ws2tcpip.h) | Ya | Ya | DWORD | Saat diatur ke nilai bukan nol, buffer yang dikirim oleh aplikasi Anda dipecah menjadi beberapa pesan oleh tumpukan jaringan. Nilai opsi menunjukkan ukuran setiap pesan yang dipecah. Nilai opsi diwakili dalam byte. Ukuran segmen terakhir mungkin kurang dari nilai opsi. Nilai defaultnya adalah 0 (tidak ada segmentasi). Aplikasi Anda harus menetapkan nilai yang lebih rendah dari MTU jalur ke tujuan untuk menghindari fragmentasi IP. Untuk keamanan jenis, aplikasi Anda harus menggunakan fungsi WSAGetUdpSendMessageSize dan WSASetUdpSendMessageSize alih-alih opsi soket secara langsung. |
Dukungan Windows warisan untuk opsi IPPROTO_UDP
UDP_CHECKSUM_COVERAGE tidak tersedia pada Windows 2000 dan pada Windows NT4. UDP_CHECKSUM_COVERAGE dan UDP_NOCHECKSUM tidak tersedia di Windows 9x/Me.
Komentar
Pada Microsoft Windows Software Development Kit (SDK) yang dirilis untuk Windows Vista dan yang lebih baru, organisasi file header telah berubah dan tingkat IPPROTO_UDP ditentukan dalam file header Ws2def.h yang secara otomatis disertakan dalam file header Winsock2.h. Opsi soket IPPROTO_UDP ditentukan dalam file header Ws2tcpip.h. File header Ws2def.h tidak boleh digunakan secara langsung.
Persyaratan
Syarat | Nilai |
---|---|
Header |
|