Comunicación mediante sockets Flashcards
¿Qué es un socket?
Consiste en una abstracción de un enchufe, básica de la manera que dos procesos (en dos máquinas distintas) intercambien datos.
Arquitectura Cliente-Servidor
Este elemento abstracto, 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 comunicación.
La comunicación mediante sockets puede entenderse como una tubería (bidireccional), donde en un extremo entran datos y en el otro extremo salen esos datos (la fiabilidad, orden de los datos, etc., estará dada por el protocolo a utilizar, p.ej. TCP o UDP).
¿Qué es un protocolo y cómo funciona bajo la arquitectura Cliente-Servidor?
Conjunto de reglas y estándares que permiten la comunicación y transferencia de datos en una red.
Un conjunto de reglas que permiten la comunicación
Solicitar un recurso
Solicitar una operación
Iterar en un proceso de varios pasos.
¿Qué es un puerto?
Son números de 16 bits que identifican un canal de comunicación específica en una red. El contexto de las redes de computadoras, un pureto permite que un dispositivo pueda diferenciar entre múltiples aplicaciones o procesos.
¿Qué tipos de puertos existen?
Están clasificados de la siguiente manera:
Los puertos del sistema, también llamados puertos conocidos, de 0-1023 (Son asignados por IANA - Internet Assigned Numbers Authority). En Linux requieren acceso de superusuario.
Los puertos de usuario, también llamados puertos registrados, desde 1024-49151 (Son asignados por IANA). Aquí están enumerados puertos correspondientes a aplicaciones como 1194/udp OpenVPN , 1433/tcp Microsoft-SQL-Server, 3306/tcp MySQL , 6881/tcp BitTorrent, etc. etc. etc.
Los puertos dinámicos, también llamados puertos privados o efímeros, de 49152-65535 (nunca asignados).