Compartir a través de


Opciones de socket e IOCTLs

En la tabla siguiente se resumen algunas de las opciones de socket para Windows Sockets 2. Se proporciona información más detallada en la sección 4 en WSPGetSockOpt o WSPSetSockOpt. Hay otras nuevas opciones de socket específicas del protocolo que se pueden encontrar en el anexo Protocol-Specific. Hay disponible una lista completa de Opciones de socket para Windows Sockets en la referencia de Winsock.

Para obtener un resumen de algunos de los Ioctl de Winsock, consulte Resumen de códigos de operación de socket Ioctl. Hay disponible una lista completa de ioCTLs de Winsock en la referencia de Winsock.

Resumen de las opciones comunes de socket

Un proveedor de servicios winsock debe reconocer todas estas opciones y (para WSPGetSockOpt) devuelven valores viables para cada uno. El valor predeterminado de cada opción se muestra en la tabla siguiente.

Valor

Tipo

Significado

Predeterminado

Nota

SO_ACCEPTCONN

BOOL

Socket está escuchando.

FALSE a menos que se haya realizado unWSPListen de.

SO_BROADCAST

BOOL

El socket está configurado para la transmisión y recepción de mensajes de difusión.

FALSO

SO_DEBUG

BOOL

La depuración está habilitada.

FALSO

(i)

SO_DONTLINGER

BOOL

Si es true, la opción SO_LINGER está deshabilitada.

VERDADERO

SO_DONTROUTE

BOOL

El enrutamiento está deshabilitado. Se realiza correctamente, pero se omite en AF_INET sockets; se produce un error en AF_INET6 sockets con WSAENOPROTOOPT. No se admite en sockets ATM (se produce un error).

FALSO

(i)

SO_ERROR

Int

Recupera el estado del error y se borra.

0

SO_GROUP_ID

GRUPO

Reservado.

NULO

Obtener solo

SO_GROUP_PRIORITY

Int

Reservado.

0

SO_KEEPALIVE

BOOL

Se envían los keepalives. No se admite en sockets ATM (se produce un error).

FALSO

(i)

SO_LINGER

Estructura persistente

Devuelve las opciones de persistencia actuales.

l_onoff es 0

SO_MAX_MSG_SIZE

Int

Tamaño máximo de salida de un mensaje para los tipos de socket de mensajes. No hay ninguna disposición para determinar el tamaño máximo del mensaje entrante. No tiene ningún significado para los sockets orientados a flujos.

Dependiente de la implementación

Obtener solo

SO_OOBINLINE

BOOL

Los datos de OOB se reciben en el flujo de datos normal.

FALSO

SO_PROTOCOL_INFOW

estructura WSAPROTOCOL_INFO

Descripción de la información del protocolo para el protocolo enlazado a este socket.

Dependiente del protocolo

Obtener solo

SO_RCVBUF

Int

El espacio total de búfer por socket reservado para las recepciones. Esto no está relacionado con SO_MAX_MSG_SIZE y no se corresponde necesariamente con el tamaño de la ventana de recepción tcp.

Dependiente de la implementación

(i)

SO_REUSEADDR

BOOL

Otros usuarios pueden usar la dirección a la que está enlazado este socket. No es aplicable en sockets ATM.

FALSO

SO_SNDBUF

Int

Espacio total de búfer por socket reservado para los envíos. Esto no está relacionado con SO_MAX_MSG_SIZE y no se corresponde necesariamente con el tamaño de una ventana de envío TCP.

Dependiente de la implementación

(i)

SO_TYPE

Int

Tipo del socket (por ejemplo, SOCK_STREAM).

Como se creó a través del socket.

PVD_CONFIG

char FAR *

Objeto de estructura de datos opaco que contiene información de configuración del proveedor de servicios.

Dependiente de la implementación

TCP_NODELAY

BOOL

Deshabilita el algoritmo nagle para el envío de fusión.

Dependiente de la implementación

(i) Un proveedor de servicios puede omitir silenciosamente esta opción en WSPSetSockOpt y devolver un valor constante para WSPGetSockSockOpt, o puede aceptar un valor para WSPSetSockSockOpt y devolver el valor correspondiente en WSPGetSockOpt sin usar el valor de ninguna manera.

 

opciones de socket

opciones de socket deSOL_SOCKET

IPPROTO_TCP opciones de socket

opciones de socket deIPPROTO_UDP

ioCTLs de Winsock