edición general
181 meneos
4035 clics
Qué es un socket y cómo funciona

Qué es un socket y cómo funciona

Un socket pertenece a un proceso y sirve como medio de comunicación entre otro proceso (sea que esté ejecutandose en la misma máquina u en otra conectada a Internet). Esto nos permite intercambiar información. Para hacer esto posible existen algunos protocolos como TCP o UDP (en el ejemplo práctico usaremos TCP ya que es el más común).

| etiquetas: sistema operativo , protocolo de transmisión , socket
Si no sabes que es Trumpet WinSock no eres suficientemente viejo
#9 jajajaja que tiempos, mi primera conexión a internet la hice contratando el servicio en una empresa de informática a 10 kilometros de mi pueblo, me dieron un disquette con el trumpet winsock para mi windows 3.11, y cada mes tenía que ir presencialmente a pagar 30.000 pesetas del año 1996 (creo) .... más adelante vi una oferta en Bankinter que si te abrías una cuenta te regalaban una conexión a internet... xD
#49 Yo también use la conexión de internet que regalaba el Bankinter con sus cuentas. Nexo creo que se llamaba (usuario@nexo.es)
#51 OSSSTIA SI!!!! EXACTO !!! xD antes era usuario de la BBS Burriana Paris Y Londres xD gracias por el recuerdo! :-D
#6 sí, cada vez se va pareciendo a un lenguaje de programación. Lastima que a estas alturas sea un Frankenstein.
Meneo porque hace mucho que no oía hablar de sockets y me ha traído recuerdos. Mierda de JavaScript
#1 ¿Por qué tanto odio a JS?
#4 ...la ignorancia tiene esas cosas... hay quien cree que Javascript es lo que era hace 10 años...
#6 uso react
#10 Pues que existencia mas miserable... un frontender que odia Javascript xD xD xD xD
#12 Como lo sabes
#12 Es que no te queda otra. O usas JavaScript o no haces un frontend. Así que no te queda otra que tragar.
#6 Javascript tiene 2 formas de desarrollo como mínimo que las puedes mezclar. No tengo mucho conocimiento de JavaScript pero es como tener 2 lenguajes diferentes en el mismo tiempo. El Ecmascript 6 que cambió un montón de cosas y lo anterior. Y puedes mezclar ambos.
#31 ECMAScript es el estandar sobre el que se basa cualquier lenguaje de programación web en el lado del cliente.
#34 Me refería a la versión. La versión 6 cambió completamente JavaScript. Metió let y const para declarar las variables e hizo anticuado el bar. Metió class, las funciones flecha (anónimas), etc.

Con lo que tienes que ahora puedes mezclar el estilo clásico con el nuevo. O puedes tener código nuevo en partes y viejo en otras. Lo cual genera el Frankenstein al que se refieren.

Por ejemplo a mi me ha costado encontrar documentación moderna. Mezclan ambas cosas en muchas guías. Lo cual si aprendes JavaScript como yo, no sabes lo que es adecuado o no. Finalmente encontré una página que explica exclusivamente el JavaScript moderno.
#35 Pues pasame esa pagina porfa :hug:
#37 javascript.info Allí tienen el tutorial con solo la parte moderna.
#38 Muchas gracias
#41 Mira mi comentario #38
#35 comparte :hug:
#34 Actionscript sin ir mas lejos era ECMAScript sin ser Javascript.
#6 A ver, hace 10 años era una mierda, y ahora es una mierda parchada.
Si en vez de dedicar tanto esfuerzo por hacer andar algo roto lo hubieran hecho de nuevo, como se debe, daría menos dolores de cabeza.
#4 De un lenguaje hecho en 10 días no pudo salir nada bueno.
#11 Pues yo debo ser un rarito porque a mí programar en JS y en TS me gusta...
#13 Sobre todo TS. Está muy bien pensado el jodido.
#13 no eres rarito, eres joven. Instalate un Netscape 4.0 en una máquina virtual, haz algo, lo vuelves por aquí
#13 #25 Incluso de aquellas era un lenguaje potencialmente bueno, por eso se ha convertido en lo que es, porque estaba la potencia ahí...
Sencillamente, la gente que lo usaba de aquellas no lo sabía.

www.crockford.com/javascript/javascript.html
#25 40 años y joven :foreveralone:

Me encanta esta web...
#53 Es la sociedad, la de noticias de "muere persona joven de tan solo 45 años" que he visto...
#53 Un chaval. En los tiempos de Netscape 4 tu colonia era nenuco.
#13 Pues yo desde que aprendi TS, cada vez me gusta menos JS.
#11 hecho en 10 días y arreglado en 25 años.
#4 Porque no usan typescript
#1 Javascript tiene WebSockets.. y son una maravilla..
developer.mozilla.org/en-US/docs/Web/API/WebSocket

Un ejemplo de uso de WebSockets :
webtorrent.io/
#5 Sabés qué hay por debajo de los websockets? Un socket real.

Websockets es un parche para mejorar la performance en la web. Si sólo es stack web fuera repensado en vez de parcharlo constantemente...
#1 A día de hoy hay infinidad de lenguajes que compilan a JavaScript, como ClojureScript, Scala.js, CoffeeScript, PureScript,…

Nadie te obliga a usar JavaScript, incluso para hacer frontend. Otra cosa es que te paguen por ello y haya necesidad.
Qué recuerdos de aquellos días en que eMule daba quebraderos de cabeza para abrir los puertos TCP y UDP, y poder así quitar la "IdBaja" que ponía la venda en los ojos a la mula. Cuando los puertos estaban correctamente abiertos (permitía la correcta comunicación cliente-cliente p2p), entonces se podía descargar/subir correctamente.
Muchos usuarios se quejaban de lo lento que era eMule, pero en la mayoría de los casos, era porque tenían la venda puesta :-)
#21 ehhh no hables en pasado!!!
#29 Te refieres a un Unix socket?
#33 se refiere, igual que el artículo aunque no hace mención alguna, a BSD sockets, que es una abstracción para diferentes métodos de comunicación (TCP/IP, UNIX, y muchos más).

De ahí que el artículo sea bastante flojillo.

Siempre recomiendo la guía de “Beej”, que lo explica todo de maravilla. Aquí en castellano (PDF!) index-of.co.uk/Programming/Beej-Programacion-en-Redes.pdf
#40 Gracias por la guía!
Os dejo este enlace porque sé que por aquí los sabéis apreciar:
tools.ietf.org/html/rfc147
Un mitjó menudet.
#7 Un calcetinete, menos mal que no he sido el único.
El agujero va dentro del pie :troll:
Un socket es un conector que permite a un procesador comunicarse con la memoria principal y periféricos de E/S. Puede estar hecho de contactos o pines.
#18 Haces honor a tu nick.
yo creía que un socket servía para incrustar gemas y runas a objetos y hacerlos más poderosos
Edito: es muy mala
(broma semántica Soxhlet = Socket)
Siempre me pasa lo mismo con python, empiezo a leerlo y digo "que bonico" sigo leyendo y pienso "faltan cosas, vaya lío" {0x1f605}
Siempre que hablo de estos temas me hago un lío utilizando de manera alternativa port o socket... luego me viene el masca, me tira de las orejas..y cambiamos de conversación - aún no estoy muy convencido de que él lo sepa a ciencia cierta...
(addenda: por lo que tengo visto un port puedes abrirlo con ninguna funcionalidad; mientras que el socket utiliza un port - entre otras cosas - dado que ahí se efectuará algún tipo de actividad....)
Vaya mierda de redacción. El primer párrafo está redactado con el culo.

Y habla de la misma máquina o internet. Será que no sabe que existen redes locales...

¿Por qué usa paréntesis para frases que podría separar pefectamente con comasbo con puntos?
Qué recuerdos cuando usaba telnet para generar sockets (conexiones)
¿? De los envíos más inexplicables que he visto en portada.
Dice que un socket es cómo un "dispositivo". Y qué es un dispositivo?
#16 Lo contrario a un disnegativo. :troll:
#16 es como un socket.

Añadimos recursividad y vamos para bingo xD
#16 Un chisme.
Con los sockets se pueden también ejecutar aplicaciones y capturar su salida, adaptandolas a muestras necesidades.
comentarios cerrados

menéame