Discusión:Socket de Internet

Contenido de la página no disponible en otros idiomas.
De Wikipedia, la enciclopedia libre
Esta página le interesa al Wikiproyecto Informática.

Bien, está claro lo de asignar los puertos del router para una correcta interconexion entre programas o servidores,pero tambioen se dice que hay que nombrar una ip, de hecho en la cofiguración inetrna de mi router despues de escribir los numeros de los puerto que deso abrir tb tengo que poner una direccion ip, ahiesta el dilema, que direccion de ip debo de poner?

La del ordenador al que quieres asociar ese puerto. ▩ Platnides⋖discutirDiscusión 21:12 16 abr 2006 (CEST)

Sobre la definición de socket[editar]

No estoy muy de acuerdo en la afirmación referente a que un socket es un archivo. En mi opinión, un socket es más bien una abstracción utilizada para esconder los detalles del proceso de comunicación entre procesos, pudiendo tratar esta comunicación como si fuese un archivo (usando un descriptor de socket), utilizando los paradigmas propios del tratamiento de archivos: escribir sobre, leer desde, ...

Propongo entonces definir un socket como una abstracción de un canal de comunicación de datos entre un par de procesos, concepto con el que comienza, todo hay que decirlo, el artículo del Autor.

Por otra parte, un socket conecta dos procesos y no realmente dos programas.

Conviene señalar que la comunicación no siempre es fiable y ordenada. Además, estos dos conceptos fiable y ordenado conviene aclararlos un poco más puesto que su significado - y el Autor estará de acuerdo conmigo - (en el ámbito de los protocolos de comunicación), va mucho más allá del significado convencional de estos términos.

Tampoco estoy de acuerdo en que un socket quede definido por un número de puerto, una dirección IP y un protocolo.

El concepto de puerto va más allá del concepto de socket. Para apoyar esta afirmación, he de decir que existen protocolos (i.e. IGMP) que no usan el concepto de puerto de servicio y sin embargo se apoyan en sockets para implementar la comunicación. Además, hay que decir que la llamada al sistema para la creación de un socket, no recibe como parámetro ningún número de puerto.

Tampoco la dirección tiene por que ser una dirección IP. Los sockets no tienen por que estar basados en protocolos de la pila TCP/IP. Sería más correcto quizá, hablar de una dirección de red. En este sentido, habría que aclarar que otro de los parámetros que determinan el socket, es la familia de protocolos que se utiliza en su creación ( lo que suele llamarse dominio de protocolos o familia de direcciones).

Otro parámetro que define al socket es el tipo de socket que se va a utilizar. El tipo de socket, establece, entre otras cosas, las características de la comunicación. Si el tipo es i.e. SOCK_STREAM, podemos decir que el socket es orientado a la conexión y, normalmente, la comunicacion será fiable y ordenada, usando un flujo de bytes. No obstante, si el tipo de socket fuese SOCK_DGRAM, la comunicación sería orientada al datagrama, no será fiable y posiblemente tampoco ordenada.