La arquitectura cliente-servidor distribuye las tareas entre servidores, que proveen recursos y servicios, y clientes, que realizan peticiones a los servidores. En esta arquitectura, la capacidad de procesamiento se reparte entre clientes y servidores, y ofrece ventajas organizativas como la centralización de la gestión de información y separación de responsabilidades para clarificar y facilitar el diseño del sistema.