Arquitectura Cliente-Servidor
A arquitectura cliente-servidor é un modelo de comunicación moi utilizado en informática, sobre todo en redes e desenvolvemento de aplicacións. Consiste basicamente na interacción entre dous tipos de compoñentes:
- Cliente. É o dispositivo ou aplicación que solicita servizos ou recursos. Pode ser un navegador web, unha aplicación móbil, ou calquera programa que precise acceder a información ou funcionalidades que non ten localmente.
- Servidor É a aplicación que proporciona os servizos ou recursos solicitados polos clientes. Pode almacenar páxinas web, bases de datos, arquivos, ou realizar operacións complexas. Está deseñado para atender múltiples clientes ao mesmo tempo.
Funcionamento básico
- O cliente envía unha petición. Para realizar esta petición o cliente indica a dirección IP do servidor (podo ser que indique o nome de dominio) e o porto de escoita do servidor. Estes coñécense como IP destino e porto destino. Na propia petición o cliente indica a súa dirección IP e o seu porto de escoita para poder recibir a resposta. Estes coñécense como dirección IP e porto orixe.
- O servidor recibe esa petición, procesa a solicitude e devolve unha resposta a IP orixe e porto orixe.
- O cliente amosa esa resposta ao usuario.
Comunicación entre aplicacións no mesmo equipo
Este modelo tamén é moi habitual utilizalo para que se comuniquen dúas aplicacións no mesmo equipo. Neste caso indícase como IP tanto orixe como destino a 127.0.0.1 ou o nome de dominio localhost.
Características principais
- Separación de funcións: O cliente manexa a interface coa persoa usuaria, mentres o servidor realiza o traballo de fondo.
- Centralización: Os datos e servizos están nun servidor centralizado, o que facilita o control e mantemento.
- Escalabilidade: Pódense engadir máis clientes sen cambiar o servidor, ou mellorar o servidor para soportar máis carga.
- Dependencia da rede: Require conexión entre cliente e servidor, xeralmente a través de internet ou dunha rede local.
Servizos máis comúns
Na seguinte táboa faise unha relación dos servizos máis comúns e os seus portos de escoita predeterminados.
| Servizo / Aplicación | Función Principal | Porto(s) Predeterminados |
|---|---|---|
| HTTP | Navegación web sen cifrar | TCP 80 |
| HTTPS | Navegación web cifrada | TCP 443 |
| FTP | Transferencia de arquivos | TCP 20 (datos), TCP 21 (control) |
| SSH | Acceso remoto seguro | TCP 22 |
| DNS | Resolución de nomes de dominio | UDP 53 (ás veces TCP) |
| MySQL | Base de datos relacional | TCP 3306 |
| PostgreSQL | Base de datos relacional | TCP 5432 |
| PlayStation Network (PSN) | Conexión á rede, multixogador | TCP 3478–3480, UDP 3478–3479 |
| Minecraft (Java Edition) | Servidor de xogo | TCP 25565 |