quinta-feira, 7 de outubro de 2010

Os modelos OSI e TCP/IP

Usamos camadas em redes para a divisão do problema. Com essa divisão, podemos analizar cada aspecto de uma rede, tanto na hora de planejar quanto na hora de isolar um problema até a sua solução. Cada camada descreve uma tecnologia e conceitos que serão apresentados durante uma carreira em redes.

Antigamente, as redes eram "presas" a padrões definidos por diferentes fabricantes, ou seja, se uma rede rodava tecnologia de um fabricante, logo a interconexão com uma outra rede, de outro fabricante não seria possível. A partir daí surgiu a necessiadde de padronizar as tecnologias para que vários produtos de diferentes fabricantes abrissem a possibilidade de várias redes comunicarem entre si, independente de fabrinate, sistema operacional, etc etc

Os benefícios de criar modelos em camadas são:

  • Reduzir a complexidade;
  • Definir padrões;
  • Facilitar o entendimento;
  • Promover um rápido desenvolvimento de produtos;
  • Facilitar a engenharia modular;
O modelo OSI

Datando na década de 70, o modelo OSI começou a ser definido. Contudo, mais tarde, o padrão para as comunicações foi mudado para o TCP/IP, ficando o modelo OSI apenas para referência, tanto para estudos quanto para o desenvolvimento de produtos/tecnologias.

Uma dica que eu peguei para decorar as camadas, principalmente do modelo OSI, foi simplesmente decorar as iniciais de cada camada em sequência, ficando uma pronúncia assim: AASTRÉF. Depois fui procurando lembrar o que cada letra significava, junto com a sua função do modelo OSI.

  • Aplicação: É a camada mais próxima do usuário. Nela basicamente encontramos os nossos aplicativos de email, web browser, instant messaging, tranferência de arquivos, etc. Também encontramos os protocolos os quais cada tipo de aplicação depende para o seu funcionamento, como o HTTP para web, SMTP/POP/IMAP para o email, 23 para o Telnet, 22 para o SSH...
  • Apresentação: É onde são definidos os formatos das informações. Exemplo, um arquivo mp3 deverá ser aberto por um player multimídia, enquanto um arquivo PDF pode ser aberto pelo Adobe Reader, e assim por diante. Esta camada também cuida de aspectos de criptografia.
  • Sessão: Estabelece e mantém fluxos em uma comunicação.
  • Transporte: Fornece serviços como estabelecimeto/fechamento de conexão, controle de fluxo, recuperação de erros e segmentação de grandes quantidades de dados em partes menores para a transmissão. Essa camada cuida da confiabilidade da mensagem, como podemos ver em cada serviço oferecidao por ela. É onde vemos também os protocolos famosos TCP e UDP.
  • Rede: É onde temos o endereçamento lógico, a decisão de roteamento e o encaminhamento dos pacotes. É onde encontramos o protocolo IP e os roteadores.
  • Enlace: Temos o enderaçamento lógico (MAC address) também define o acesso ao meio, além de fazer os dados em formato de quadros para a transmissão no meio. Também define meios para reconhecer erros de transmissão.
  • Física: É onde encontramos as propriedades físicas de cada meio, como óptico, cabos conectores e a transmissão de bits. 
O modelo TCP/IP

O modelo TCP/IP foi o sucessor do modelo OSI devido a sua popularidade atualmente é utilizado como modelo de protocolo. O modelo TCP/IP têm quatro camadas. Comparando com o modelo OSI, a camada de aplicação do modelo TCP/IP engloba as três últimas camadas, enquanto a camada de acesso á rede do modelo TCP/IP engloba a camada física e de enlace do modelo OSI, deixando somente as camadas de rede e transporte parecidas com o modelo OSI.






Abaixo, segue uma comparação entre as camadas do modelo OSI e do TCP/IP:




Encapsulamento

O processo para o envio e recepção de dados em rede é camado de encapsulamento. Conforme um usuário envia uma mensagem via IM ou email, esses dados (PDUs - Protocol Data Units) irão descer as camadas até chegar na rede, onde serão enviados ao destino. Chegando ao destino, esta mensagem é "remontada" (desencapsulada) até chegar na camada de aplicação, onde temos um outro usuário. Para cada camada, esses dados tem um nome e um tipo de informação específica, como endereço IP de origem, destino, portas TCP/UDP, quadros, etc...

O processo de encapsulamento/desencapsulamento

Cada PDU tem um tipo específico de informação. No caso retratado na figura abaixo, os dados são criados e logo são encapsulados em um segmento para o transporte. Cada segmento contém informações como número de porta TCP/UDP de origem/destino. Este segmento logo é envolvido em um pacote, onde contém as informações de endereçamento IP de origem/destino que será encaminhado pela rede. Após isso, o pacote é encapsulado em um quadro (Camada de enlace), onde será entregue ao meio, em forma de bits!



Quando a mensagem chega no destino, cada camada é responsável por desencapsular a mensagem até a camada de aplicação, fazendo com que os dados sejam legíveis ao nosso olhar.

Até o próximo post!

Um comentário: