Tabla de contenido:
Definición - ¿Qué significa Socket?
Un socket es un objeto de software que actúa como un punto final que establece un enlace de comunicación de red bidireccional entre un programa del lado del servidor y del lado del cliente.
En UNIX, un socket también se puede denominar como un punto final para la comunicación entre procesos (IPC) dentro del sistema operativo (OS).
En Java, las clases de socket representan la comunicación entre los programas cliente y servidor. Las clases de socket manejan la comunicación del lado del cliente, y las clases de socket del servidor manejan la comunicación del lado del servidor.
Techopedia explica Socket
La mayoría de las URL y sus conexiones se utilizan para acceder a Internet, pero a veces los programas requieren un enlace de comunicación simple entre el lado del cliente y el servidor del programa. Este rol estaría asociado a un socket que vincularía los lados del cliente y el servidor del programa.
Cuando un cliente establece comunicación con el servidor, por ejemplo, al consultar la base de datos, se establece una conexión confiable de servidor y cliente a través de un canal de comunicación TCP. En este tipo de comunicación, el cliente y el servidor pueden leer o escribir en sockets vinculados a un canal de comunicación específico.
Los enchufes se clasifican principalmente en dos tipos: activos y pasivos. Los sockets activos se conectan con los sockets activos remotos a través de una conexión de datos abierta. Si esta conexión se cierra, se destruyen los enchufes activos en cada punto final. Los enchufes pasivos no están conectados; en su lugar, esperan una conexión entrante que generará un nuevo socket activo.
Aunque existe una estrecha relación entre un socket y un puerto, el socket no es en realidad un puerto. Cada puerto puede tener un solo socket pasivo esperando conexiones entrantes y varios sockets activos, cada uno respectivo a una conexión abierta en el puerto.