Sockets – Día 98

En mis muchos intentos de volverme blogger o creador de contenido, siempre escribi primero sobre sockets.

Los sockets en la computacion son algo interesante, en los años 90 e inicios de los 2000 era mucho mas divertido y complejo que ahora.

¿Por que se preguntaran?

Bien los sockets, es son la capacidad de destinar procesos a escuchar por conexiones de red. En los 90 no eran tan comunes las tarjetas de red, ni el internet, era mucho mas rudimentario. Si habian diversos cables que permitian conectar diversos perifericos y mediante ellos recibir bytes por canales.

Un socket es una analogia a los tomacorriente en las casas, esta alli esperando una conexion y pueden tener un numero limitado de conexiones.

Normalmente quien esta en Listening es un servidor y quien se conecta es un cliente. Y los sockets no solo aplican a conexiones de red, sino a cualquier periferico incluso los USB, que han estandarizado y simplificado la vida.

Lo mas equivalente a un socket que se puede controlar en la programacion moderna son los WebSockets, que se generan encima del protocolo HTTP.

Siempre puedes trabajar en lenguajes de bajo nivel y a nivel de sistema operativo. Pero no es lo comun a menos que desarrolles circuitos o raspberry.

Otra de las razones por la que era mas divertido, era la multiple cantidad de protocolos, ahora todo se usa sobre tcp, udp, y encima de tcp http primariamente. Pero en los noventas era una salvajada. Un juego muy popular de nostalgia es Age of Empires 2, que usaba IPX/SPX un protocolo en el cementerio.

Asi como habian muchos sistemas empresariales que creaban sus propios paquetes sobre IP.

Entonces los sockets son los fundamentos de todo ello, todos los lenguajes de programacion de uso general tienden a tenern la capacidad de crear tus propios protocolos y es un gran experimento para aprender y trabajar en los fundamentos que la IA no va a poder reemplazar hasta que tenga cuerpos roboticos.