Sockets Flashcards
¿Qué es un socket?
En computacion, un socket es un concepto abstracto que basicamente permite que dos procesos puedan intercambiar flujos de datos.
Esta abstraccion es provista por el sistema operativo para el uso por parte de las aplicaciones
¿Por qué esta definido un Socket?
IP Origen: Identifica a la máquina desde donde se envía el paquete IP
Puerto Origen: Identifica al proceso que envía el paquete IP en la máquina de origen.
IP Destino: Identifica a la maquina que recibe el paquete IP.
Puerto Destino: Identifica al proceso al cual va dirigido el paquete IP en la máquina de destino.
Protocolo: Identifica al protocolo de comunicación. (Es un codigo especificado en el encabazado del paquete, 6 para TCP y 17 para UDP)
Arquitectura cliente-servidor mediante sockets
El socket permite interconectar procesos bajo el modelo de arquitectura cliente-servidor.
- El proceso servidor es pasivo y espera conexiones entrantes.
- El proceso cliente es activo y es el que inicia la comunicacion.
La comunicacion mediante sockets puede entenderse como una tubería (bidireccional) donde en un extremo entran datos y en el otro extremo salen esos datos.
¿Cómo se desarrolla un servicio mediante Sockets?
- Un protocolo permitira que cliente y servidor operen de manera coordinada.