Windows Sockets: Puertos y direcciones de Socket
En este artículo se explican los términos «puerto» y «dirección» como se usa con Windows Sockets.
Port
Un puerto identifica un proceso único para el que se puede proporcionar un servicio. En el contexto actual, un puerto está asociado a una aplicación que admite Windows Sockets. La idea es identificar cada aplicación de Windows Sockets de forma única para que puedas tener más de una aplicación de Windows Sockets en ejecución en un equipo al mismo tiempo.
Algunos puertos están reservados para servicios comunes, como FTP. Debes evitar el uso de esos puertos a menos que proporcione ese tipo de servicio. La especificación de Windows Sockets detalla estos puertos reservados. El archivo WINSOCK. H también los enumera.
Para permitir que el archivo DLL de Windows Sockets seleccione un puerto utilizable, pase 0 como valor de puerto. MFC selecciona un valor de puerto mayor que 1024 decimales. Puede recuperar el valor de puerto seleccionado por MFC llamando a la función miembro CAsyncSocket::GetSockName.
Dirección de socket
Cada objeto de socket está asociado a una dirección de Protocolo de Internet (IP) en la red. Normalmente, la dirección es un nombre de equipo, como «ftp.microsoft.com» o un número de puntos, como «128.56.22.8».
Cuando se busca crear un socket, normalmente no es necesario especificar su propia dirección.
Nota:
Es posible que la máquina tenga varias tarjetas de red (o la aplicación podría ejecutarse algún día en este tipo de máquina), cada una de las cuales representa una red diferente. Si es así, es posible que tenga que proporcionar una dirección para especificar qué tarjeta de red usará el socket. Esto es seguro que es un uso avanzado y un posible problema de portabilidad.
Para más información, consulte: