Apresentação da arquitectura de um sistema cliente/servidor
Numerosas aplicações funcionam de acordo com um ambiente cliente/servidor, o que significa que máquinas clientes (máquinas que fazem parte da rede) contactam um servidor, uma máquina geralmente muito potente em termos de capacidades de entrada/saída, que lhes fornece serviços. Estes serviços são programas que fornecem dados como a hora, ficheiros, uma conexão, etc.
Os serviços são explorados por programas, chamados programas clientes, que se executam nas máquinas clientes. Fala-se assim de cliente (cliente FTP, cliente deserviço de mensagens, etc.) quando designamos um programa que funciona numa máquina cliente, capaz de tratar de informações que recupera junto de um servidor (no caso do cliente FTP trata-se de ficheiros, enquanto para o cliente de serviço de mensagens trata-se de correio electrónico).
Vantagens da arquitectura cliente/servidor
O modelo cliente/servidor é particularmente recomendado para redes que necessitam de um grande nível de fiabilidade e as suas principais vantagens são:
- recursos centralizados : já que o servidor está no centro da rede, pode gerir recursos comuns a todos os utilizadores, como por exemplo uma base de dados centralizada, a fim de evitar os problemas de redundância e de contradição
- uma melhor segurança : porque o número de pontos de entrada que permitem o acesso aos dados é menos importante
- uma administração a nível do servidor : como os clientes têm pouca importância neste modelo, têm menos necessidade de ser administrados
- uma rede evolutiva : graças a esta arquitectura, é possível suprimir ou acrescentar clientes sem estar a perturbar o funcionamento da rede e sem modificação essencial
Inconvenientes do modelo cliente/servidor
A arquitectura cliente/servidor tem no entanto algumas lacunas, entre as quais:
- um custo elevado devido ao tecnicismo do servidor
- um elo fraco : o servidor é o único elo fraco da rede cliente/servidor, já que toda a rede está estruturada em redor dele! Felizmente, o servidor tem uma grande tolerância às avarias (nomeadamente graças ao sistema RAID)
Funcionamento de um sistema cliente/servidor
Um sistema cliente/servidor funciona de acordo com o esquema seguinte :
- O cliente emite um pedido para o servidor graças ao seu endereço IP e a porta, que designa um serviço específico do servidor
- O servidor recebe o pedido e responde com a ajuda do endereço da máquina cliente e da sua porta.