Probablemente hayas oído hablar de puertos abiertos y sockets si estás configurando una red doméstica. Pero ¿qué son estos, en realidad?
La creación de redes es la base de la comunicación, la transferencia de datos e Internet tal como lo tenemos hoy. Muchos de los servicios que utilizas en Internet dependen de conceptos como puertos y sockets. Aunque un puerto y un socket tienen funciones similares, son conceptos muy diferentes.
¿Qué es un puerto?
Un puerto se utiliza para la comunicación en redes informáticas. Es por donde los datos salen o entran de una computadora específica. Se utilizan diferentes puertos para diferentes servicios y procesos. Y para identificar estos puertos con sus servicios, se utiliza un número de puerto. Hay 65,535 puertos disponibles y algunos aún no están en uso.
Los servicios reciben números de puerto para identificarlos fácilmente. Por ejemplo, los servicios web tienen asignados los puertos 80, 443 y 8080, los servicios de correo tienen los números de puerto 25, 465 y 2525, mientras que el protocolo de transferencia de archivos tiene el número de puerto 21.
¿Qué es un socket?
En pocas palabras, un socket es el punto final de la comunicación. Es donde comienza o inicia una conexión. Debe haber dos sockets en cualquiera de los puntos de conexión para que exista cualquier comunicación: uno desde el dispositivo de envío o servidor y otro desde el dispositivo de recepción o cliente. Un socket se compone de unadirección IP y un número de puerto. Entonces, un socket generalmente se ve así: 192.168.245.129:8080.
¿Cuál es la diferencia entre un puerto y un socket?
He aquí un ejemplo de la diferencia entre un puerto y un socket. Imagínate que vas a un centro comercial. La dirección del centro comercial se puede comparar con la dirección IP de un dispositivo en particular. En ese centro comercial, diferentes vendedores ofrecen diferentes servicios. Cada local del centro comercial ofrece un servicio específico y tiene un número para identificarlo. Por ejemplo, el local # 5 podría estar vendiendo sombreros. El servicio que ofrece es el puerto, y el número de habitación es el número de puerto.
Supongamos que el centro comercial está en 3 Ajayi Street, Lagos, y quieres comprar un sombrero. Vas al local # 5 en 3 Ajayi Street, Lagos. Cuando llegas a la puerta, ese es nuestro socket. No es la conexión sino el punto final de la conexión. La conexión empieza desde la puerta de tu casa hasta la puerta del centro comercial. Entonces, un puerto identifica un servicio o proceso, mientras que un socket define dónde comienza o termina una conexión.
Otra diferencia entre un puerto y un socket es que un puerto puede identificar el mismo proceso o servicio en otra computadora. Por el contrario, un socket es específico para una computadora en particular porque contiene la dirección IP y el número de puerto al que se conecta.
Esto significa que un puerto específico siempre ofrecerá el mismo servicio (como vender sombreros), mientras que un socket es la dirección que se conecta a un servicio específico en una computadora específica (como la tienda de sombreros en 3 Ajayi Street, Lagos).
Puertos y Seguridad
Ahora que conoces la diferencia entre
puertos y sockets, es vital mantenerlos seguros, ya que son aberturas para tu
dispositivo. Asegúrate de que todos los puertos que no estén en uso estén
cerrados para evitar riesgos y vulnerabilidades.