Sockets
- Permiten la comunicación entre dos procesos diferentes
- En la misma máquina
- En dos máquinas diferentes
- Se usan en apps que implementan el modelo cliente - servidor
- Cliente: activo porque inicia la interacción
- Servidor: pasivo porque espera recibir las peticiones de los clientes.
Tipos de sockets
- Stream sockets: usan el protocolo TCP: entrega garantizada del flujo de bytes.
- Datagram sockets: usan el protocolo UDP: la entrega no está garantizada; servicio sin conexión.
- Raw sockets: permiten a las aplicaciones enviar paquetes IP.
- Sequenced packet sockets: similares a stream sockets, pero preservan los delimitadores de registro. Utilizan el protocolo SPP (Sequenced Packet Protocol).
Arquitecturas
Arquitecturas cliente - servidor:
- Arquitectura de dos niveles: el cliente interactúa directamente con el servidor.
- Arquitectura de tres niveles: middleware
- Capa de software ubicada entre el cliente y el servidor
- Provee principalmente seguridad y balanceo de carga
Tipos de Servidor
- Iterativo: atiende las peticiones de a una a la vez.
- Concurrente: puede atender varias peticiones a la vez.