Há dois fatos importantes sobre o modelo OSI a serem lembrados:
É um modelo conceitual. Isso significa que descreve um grupo idealizado, abstrato e teórico de funções de rede. Ele não descreve nada que alguém realmente criou (pelo menos nada que esteja em uso hoje).
Não é o único modelo. Existem outros modelos, principalmente o conjunto de protocolos TCP / IP (RFC-1122 e RFC-1123), muito mais próximo do que está atualmente em uso.
Um pouco da história: você provavelmente já ouviu falar dos primeiros dias da rede de pacotes, incluindo a ARPANET, a antecessora da Internet. Além dos esforços do Departamento de Defesa dos EUA para criar protocolos de rede, vários outros grupos e empresas também estavam envolvidos. Cada grupo estava desenvolvendo seus próprios protocolos no novo campo de comutação de pacotes. A IBM e as empresas de telefonia estavam desenvolvendo seus próprios padrões. Na França, os pesquisadores estavam trabalhando em seu próprio projeto de rede chamado Cyclades.
O trabalho no modelo OSI começou no final da década de 1970, principalmente como uma reação à crescente influência de grandes empresas como IBM, NCR, Burroughs, Honeywell (e outras) e seus protocolos e hardware proprietários. A idéia por trás disso era criar um padrão aberto que proporcionasse interoperabilidade entre diferentes fabricantes. Mas como o modelo ISO era de escopo internacional, tinha muitos interesses políticos, culturais e técnicos concorrentes. Demorou mais de seis anos para chegar a um consenso e publicar os padrões.
Enquanto isso, o modelo TCP / IP também foi desenvolvido. Era simples, fácil de implementar e, o mais importante, era gratuito. Você precisou adquirir as especificações padrão da OSI para criar o software. Toda a atenção e esforços de desenvolvimento gravitaram para o TCP / IP. Como resultado, o modelo OSI nunca foi implementado como um conjunto de protocolos e o TCP / IP se tornou o padrão para a Internet.
O ponto é, todos os protocolos em uso hoje em dia, o conjunto TCP / IP; protocolos de roteamento como RIP, OSPF e BGP; e protocolos host OS, como Windows SMB e Unix RPC, foram desenvolvidos sem o modelo OSI em mente. Às vezes, eles têm alguma semelhança com isso, mas os padrões OSI nunca foram seguidos durante seu desenvolvimento. Portanto, é uma tarefa tola tentar encaixar esses protocolos no OSI. Eles simplesmente não se encaixam exatamente.
Isso não significa que o modelo não tenha valor; ainda é uma boa idéia estudá-lo para que você possa entender os conceitos gerais. O conceito das camadas OSI é tão tecido na terminologia da rede, que falamos das camadas 1, 2 e 3 no discurso cotidiano da rede. A definição das camadas 1, 2 e 3 é, se você olhar um pouco, bastante bem aceita. Por esse motivo, vale a pena conhecer.
As coisas mais importantes a entender sobre o modelo OSI (ou qualquer outro) são:
- Podemos dividir os protocolos em camadas
- Camadas fornecem encapsulamento
- Camadas fornecem abstração
- Camadas separam funções de outras pessoas
Dividir os protocolos em camadas nos permite falar sobre seus diferentes aspectos separadamente. Torna os protocolos mais fáceis de entender e mais fáceis de solucionar. Podemos isolar funções específicas facilmente e agrupá-las com funções semelhantes de outros protocolos.
Cada "função" (em termos gerais) encapsula a (s) camada (s) acima dela. A camada de rede encapsula as camadas acima dela. A camada de enlace de dados encapsula a camada de rede e assim por diante.
Camadas abstraem as camadas abaixo dela. Seu navegador da web não precisa saber se você está usando TCP / IP ou outra coisa na camada de rede (como se houvesse outra coisa). Para o seu navegador, as camadas inferiores fornecem apenas um fluxo de dados. Como esse fluxo consegue aparecer está oculto no navegador. O TCP / IP não sabe (ou se importa) se você está usando Ethernet, um modem a cabo, uma linha T1 ou satélite. Apenas processa pacotes. Imagine como seria difícil projetar um aplicativo que tivesse que lidar com tudo isso. As camadas abstraem as camadas inferiores, tornando o design e a operação do software muito mais simples.
Desacoplamento: em teoria, você pode substituir uma tecnologia específica por outra na mesma camada. Desde que a camada se comunique com a camada acima e abaixo da mesma maneira, não importa como é implementada. Por exemplo, podemos remover o muito conhecido protocolo da camada 3, IP versão 4, e substituí-lo pelo IP versão 6. Todo o resto deve funcionar exatamente da mesma maneira. Para o seu navegador ou seu modem a cabo, isso não deve fazer diferença.
O modelo TCP / IP é o conjunto de protocolos TCP / IP (surpresa!). Ele tem apenas quatro camadas, e tudo o que está acima do transporte é apenas "aplicação". É mais simples de entender e evita perguntas intermináveis, como "Esta é a camada de sessão ou a camada de apresentação?" Mas também é apenas um modelo, e algumas coisas não ele também não se encaixa bem, como protocolos de encapsulamento (GRE, MPLS, IPSec, para citar alguns).
Por fim, os modelos são uma maneira de representar idéias abstratas invisíveis, como endereços, pacotes e bits. Desde que você tenha isso em mente, o modelo OSI ou TCP / IP pode ser útil para entender a rede.