sábado, 2 de junho de 2012

PROTOCOLO DE COMUNICAÇÃO

Para reduzir a complexidade do projeto, a maioria das redes foi organizada como uma série de camadas ou níveis, que são colocados um em cima do outro. O objetivo de cada camada é oferecer determinados serviços para as camadas superiores, ocultando detalhes da implementação desses recursos. A camada n de uma máquina se comunica com a camada n da outra máquina. As regras usadas nesse diálogo são chamadas de protocolo da camada n. Basicamente, um protocolo é um conjunto de regras sobre o modo como se dará a comunicação entre as partes envolvidas.
A figura acima mostra uma rede com camadas. As entidades que ocupam as mesmas camadas em diferentes máquinas são chamadas de pares (peers). São os pares que se comunicam usando o protocolo. Os dados não são diretamente transferidos da camada n de uma máquina para a camada n da outra. Cada camada transfere os dados e as informações de controle para a camada imediatamente abaixo dela, até a última camada ser alcançada. Abaixo da camada 1 está o meio físico, através do qual se dá a comunicação propriamente dita. Uma das considerações mais importantes é a definição clara das interfaces entre as camadas. É preciso que cada camada execute um conjunto de funções bem definido. Isto reduz o volume de informações a ser passado de uma camada para outra e simplifica a substituição de uma camada por uma implementação diferente. Um conjunto de camadas de protocolos é chamado de arquitetura de rede. A especificação de uma arquitetura deve conter informações suficientes para permitir que um implementador desenvolva o software ou construa o hardware de cada camada de modo que ele transmita corretamente o protocolo adequado. Não há, no entanto, a necessidade de que as interfaces de todas as máquinas de uma rede sejam iguais, desde que cada uma delas possa usar todos os protocolos. Uma lista de protocolos usados por um determinado sistema é chamado de pilha de protocolos. Usando como exemplo uma rede com 5 camadas, uma mensagem M produzida por uma aplicação executando na camada 5 é transmitida para a camada 4. A camada 4 coloca um cabeçalho na frente da mensagem para identificá-la e envia o resultado à camada 3. O cabeçalho inclui informações de controle, como números de seqüência para permitir que a camada 4 da máquina de destino repasse as mensagens na ordem correta, para o caso das camadas inferiores não conseguirem manter a seqüência. Algumas camadas não impõem limite ao tamanho da mensagem transmitida, enquanto outras impõem. Assim, as camadas que limitam o tamanho da mensagem que elas podem enviar devem dividir as mensagens em unidades menores, chamadas pacotes, anexando um cabeçalho de sua camada a cada pacote. A camada 3 divide então as mensagens e transmite os pacotes à camada 2. A camada 2 adiciona, além de um cabeçalho, um fecho (trailer), e envia a unidade resultante à camada 1, para que ela possa ser transmitida fisicamente. Na máquina receptora, a mensagem será movida para cima de camada em camada, com os cabeçalhos sendo excluídos durante o processo.

Nenhum comentário:

Postar um comentário