IPPROTO_UDP opções de soquete
A tabela a seguir descreve IPPROTO_UDP opções de soquete que se aplicam a soquetes criados para as famílias de endereços IPv4 e IPv6 (AF_INET e AF_INET6) com o parâmetro de protocolo para a função dede soqueteespecificada como UDP (IPPROTO_UDP). Consulte as páginas de referência getsockopt e função setsockopt para obter mais informações sobre como obter e definir opções de soquete.
Para enumerar protocolos e descobrir propriedades suportadas para cada protocolo instalado, use o WSAEnumProtocols, WSCEnumProtocolsou WSCEnumProtocols32 função.
Opções
Opção | Obter | Conjunto | Tipo de optval | Descrição |
---|---|---|---|---|
UDP_CHECKSUM_COVERAGE (ws2tcpip.h) | Sim | Sim | DWORD (booleano) | Quando TRUE, os datagramas UDP são enviados com uma soma de verificação. |
UDP_NOCHECKSUM (ws2tcpip.h) | Sim | Sim | DWORD (booleano) | Quando TRUE, os datagramas UDP são enviados com a soma de verificação zero. Obrigatório para prestadores de serviços. Se um provedor de serviços não tiver um mecanismo para desabilitar o cálculo da soma de verificação UDP, ele pode simplesmente armazenar essa opção sem tomar nenhuma ação. Esta opção não é suportada para IPv6. |
UDP_RECV_MAX_COALESCED_SIZE (ws2ipdef.h; incluir ws2tcpip.h) | Sim | Sim | DWORD | Quando definido como um valor diferente de zero, vários datagramas recebidos podem ser aglutinados em um único buffer de mensagens antes de serem indicados ao seu aplicativo. O valor da opção representa o tamanho máximo da mensagem em bytes para mensagens aglutinadas que podem ser indicadas ao seu aplicativo. Mensagens não agrupadas maiores do que o valor da opção ainda podem ser indicadas. O valor padrão é 0 (sem coalescência). Os datagramas só serão aglutinados se forem originados do mesmo endereço e porta de origem. Todos os datagramas aglutinados serão do mesmo tamanho, exceto o último datagrama, que pode ser menor. Se seu aplicativo quiser recuperar os tamanhos de datagrama (exceto o último datagrama, que pode diferir) que foram agrupados, você deve usar uma API de recebimento que ofereça suporte a informações de controle (como LPFN_WSARECVMSG (WSARecvMsg)). O tamanho de todas, exceto a última mensagem, pode ser encontrado na mensagem de controle UDP_COALESCED_INFO, que é do tipo DWORD. Para segurança de tipo, seu aplicativo deve usar o WSAGetUdpRecvMaxCoalescedSize e funções de WSASetUdpRecvMaxCoalescedSize em vez da opção de soquete diretamente. |
UDP_SEND_MSG_SIZE (ws2ipdef.h; incluir ws2tcpip.h) | Sim | Sim | DWORD | Quando definido como um valor diferente de zero, os buffers enviados pelo seu aplicativo são divididos em várias mensagens pela pilha de rede. O valor da opção representa o tamanho de cada mensagem decomposta. O valor da opção é representado em bytes. O tamanho do último segmento pode ser menor do que o valor da opção. O valor padrão é 0 (sem segmentação). Seu aplicativo deve definir um valor inferior ao MTU do caminho para o(s) destino(s) para evitar a fragmentação do IP. Para segurança de tipo, seu aplicativo deve usar o WSAGetUdpSendMessageSize e WSASetUdpSendMessageSize funções em vez da opção de soquete diretamente. |
Suporte herdado do Windows para opções de IPPROTO_UDP
UDP_CHECKSUM_COVERAGE não está disponível no Windows 2000 e no Windows NT4. UDP_CHECKSUM_COVERAGE e UDP_NOCHECKSUM não estão disponíveis no Windows 9x/Me.
Comentários
No Microsoft Windows Software Development Kit (SDK) lançado para Windows Vista e posterior, a organização dos arquivos de cabeçalho foi alterada e IPPROTO_UDP nível é definido no arquivo de cabeçalho Ws2def.h que é incluído automaticamente no arquivo de cabeçalho Winsock2.h. As opções de soquete IPPROTO_UDP são definidas no arquivo de cabeçalho Ws2tcpip.h. O arquivo de cabeçalho Ws2def.h nunca deve ser usado diretamente.
Requerimentos
Exigência | Valor |
---|---|
Cabeçalho |
|