El proceso cliente-servidor
Cliente-servidor es el modelo estándar de comunicaciones para que dos computadoras entren en contacto a través de una red o de Internet. El único modelo adicional es el punto-a-punto (peer-to-peer), donde ambos extremos en la conexión actúan como cliente y servidor simultáneamente. La regla básica de una transacción en cliente-servidor es que el servidor tiene un recurso que el cliente quiere. La comunicación se produce para que el cliente pueda adquirir ese recurso.
Proceso
El cliente abre la comunicación. Un servidor nunca se pone en contacto con otras computadoras. Si ningún cliente se pone en contacto con el servidor, sólo escucha y espera las peticiones entrantes. El primer contacto de cliente a servidor se llama una solicitud, mientras que la contestación del servidor se llama respuesta.
Seguridad
La naturaleza de los diferentes comportamientos de los clientes y servidores permite que las medidas de seguridad protejan mejor al cliente. Puesto que no se espera que el cliente reciba nunca una conexión entrante no solicitada, el cortafuegos en esa computadora podrá bloquear cualquier comunicación entrante a menos que sea una respuesta a una solicitud ya enviada desde el cliente. Los servidores solo esperan conexiones entrantes y no podrán funcionar si están bloqueadas. Otras medidas de seguridad, principalmente los servidores proxy, protegen los servidores.
Tráfico
La comunicación cliente-servidor por lo general genera más tráfico desde el servidor al que el cliente que desde el cliente al servidor. Esto es porque el contacto de cliente a servidor es generalmente una simple petición. La respuesta de servidor a cliente puede contener una gran cantidad de datos. Un ejemplo de esto es el proceso de acceso a una página web. El cliente en este caso es el navegador web en la computadora del usuario. Cuando el usuario escribe una dirección web, el navegador busca la dirección IP del dominio web en la dirección, que es el sitio web, y envía una solicitud para obtener la página específica en la dirección al servidor web de esa dirección IP. El servidor web devuelve la página, que contiene mucha más información que la solicitud inicial del cliente. Este es el motivo por el cual los proveedores de servicios de Internet tienen mucho más ancho de banda a disposición de sus clientes para descarga que para carga. La solicitud está en la dirección de carga y la respuesta está en la dirección de descarga.
Cliente-servidor multinivel
La petición de un cliente puede requerir la entrada desde muchos servidores. Esto se conoce como arquitectura cliente-servidor de varios niveles. Un ejemplo de esto es cuando un cliente contacta con un servidor de aplicaciones. El servidor de aplicaciones hace que la aplicación esté disponible para el cliente y el cliente solicita un archivo de otro servidor a través de esa aplicación. El servidor que contiene el archivo puede estar protegido por un servidor proxy, que responde a la solicitud haciendo referencia al servidor de archivos. El propio archivo en sí puede contener elementos dinámicos que requieren referencia a una base de datos para preparar el archivo antes de que pueda ser entregado. El acceso a la base de datos requiere el contacto con otro servidor. Por tanto, muchos servidores funcionan para cumplir con la petición de un cliente.