MÓDULO 7 – Modelo OSI
A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada camada de uma rede é oferecer determinados serviços a camadas de níveis superiores, abstraindo-as dos detalhes de implementação de algum recurso.
A camada X de uma máquina comunica-se com a camada X de outra máquina através de protocolos, que são basicamente um acordo entre as partes que estão se comunicando e estabelecendo como será feita a comunicação.
A comunicação de máquinas diferentes não é feita diretamente de uma para outra, cada camada transfere seus dados e informações de controle para a camada que está em um nível abaixo dela, até que seja alcançada a camada de nível mais baixo. Depois de alcançado, a camada de nível mais baixo, utiliza o meio físico que é por onde são feitas as comunicações.
Observamos na figura acima que entre cada par de camadas existe uma interface, ela é que define as operações e serviços que a camada inferior tem que oferecer a camada superior. Um conjunto de camadas, interfaces e protocolos são conhecidos como arquitetura de rede.
Um serviço é um conjunto de operações que uma camada inferior tem a oferecer a uma camada superior, o serviço relaciona-se a uma interface entre duas camadas.
Um protocolo é um conjunto de regras que controlam o formato dos pacotes e mensagens que são trocados pelas entidades contidas nas camadas, essas entidades utilizam os protocolos para implementar suas definições e serviços.
Na maioria das vezes, os serviços e os protocolos são confundidos, só que eles são totalmente distintos, pois os serviços estão relacionados às interfaces entre as camadas, e os protocolos estão relacionados aos pacotes envidados entre as entidades de máquinas diferentes.
Com o objetivo de obter uma padronização na conectividade e máquinas de diferentes fabricantes, a Organização Internacional de Normalização (ISO), aprovou no inicio da década de 80, um modelo para sistemas de arquiteturas abertas, que visava permitir a comunicação entre computadores heterogêneos, independente da tecnologia de implementação.
Esse modelo recebeu a denominação de OSI (Open System Interconnection), que serve de base para a implementação de qualquer tipo de rede. Para alcançar os objetivos de escalabilidade, compatibilidade, portabilidade que são exigidos na elaboração de um modelo, são necessárias algumas etapas obrigatórias como:
As camadas do modelo OSI são as seguintes:
7.2.1 A Camada Física
A camada física trata da transmissão de bits brutos pelo canal de comunicação, especificando detalhes como nível de tensão, modulação, conectores e a distância máxima que os canais podem utilizar. O seu projeto deve garantir que quando um lado envia um bit 1, o outro lado recebe um bit 1 e não um bit 0. Não existe nenhuma preocupação com o significado dos dados, endereços, CRCs e outros valores. O Hub é um dispositivo de redes que opera exclusivamente na camada física, pois ele simplesmente repete os sinais recebidos por todas as portas, não sendo levado em conta o seu significado. Outros dispositivos que operam na camada física são os transmissores e os receptores localizados na placa de rede.
Características da camada física:
7.2.2 A Camada de Enlace de Dados
A camada de enlace é responsável pela transmissão e recepção de frames, que são conjuntos de dados que acompanham informações de endereçamento e correção de erro. Na camada de enlace ocorre a detecção e opcionalmente a correção de erros, que ocorreram na camada física, com isso busca-se tornar um canal de comunicação não confiável em um canal de comunicação confiável para uso nas camadas superiores.
A camada de enlace também é responsável por um controle do fluxo de dados, ela evita que um transmissor envie mais informações que o receptor pode processar, utilizando mecanismos que permite ao transmissor conhecer os espaço em buffer do receptor em um dado momento.
7.2.3 A Camada de Rede
A camada de rede tem como função controlar as operações de rede de um modo geral. Sua principal característica é o roteamento de pacotes entre a fonte e o destino. Em redes de longa distância para uma mensagem chegar ao seu receptor, ela passa por diversos nós intermediários no seu caminho, e a camada de rede tem como tarefa escolher o melhor caminho para essa mensagem percorrer. A escolha da melhor rota a ser seguida é baseada em tabelas estáticas e dinâmicas que são atualizadas pelo roteador.
Principais funções da camada de rede:
7.2.4 A Camada de Transporte
A função básica da camada de transporte é receber os dados da camada acima, dividi-lo em unidades menores, caso exista a necessidade, repassar para a camada de rede e assegurar que eles cheguem corretamente à outra extremidade.
A camada de transporte faz uma interface entre as camadas 1,2 e 3 que estão vinculadas a rede e aos dispositivos de rede, e as camadas 5,6 e 7 que operam em alto nível e são totalmente independentes da rede.
Sob condições normais, a camada de transporte cria conexões distintas para cada conexão de transporte requisitada pelo nível superior, e se essas conexões necessitarem de uma alta velocidade de transmissão, ela cria múltiplas conexões de rede, dividindo os dados para aumentar a velocidade de transmissão.
A camada de transporte trabalha com conexões lógicas fim a fim, ou seja, um programa na origem pode se comunicar com um programa similar no destino. Diferente das camadas anteriores que se comunicam somente com o nó vizinho.
Principais características da camada de transporte:
7.2.5 A camada de Sessão
A camada de sessão permite que usuários de diferentes computadores estabeleçam sessões entre eles, essas sessões encarregam-se do gerenciamento do fluxo de dados, podendo, por exemplo, recomeçar uma transmissão do ponto onde ela parou, caso tenha sido interrompida. Pode suspender e reiniciar fluxos de dados e definir se aplicativos podem enviar e receber dados.
Características da camada de sessão:
7.2.6 A Camada de Apresentação
A camada de apresentação leva em conta a codificação dos dados, e também eventuais conversões (EX: ASCII / UNICODE), isso torna possível à comunicação entre computadores com diferentes representações de dados. A camada de apresentação também é responsável por outros aspectos de representação de dados, como criptografia e compressão de dados.
7.2.7 A Camada de Aplicação
A camada de aplicação fornece aos usuários uma interface que permite acesso a diversos serviços de aplicação. Contém uma série de protocolos comumente necessários para os usuários, ou seja, fornece um conjunto de funções usadas pelos aplicativos que operam sobre o modelo OSI.