Modelo OSI x Pilha TCP/IP
Os modelos OSI e TCP/IP tem muito em comum pois ambos são baseados no conceito de protocolos independentes e a funcionalidade das camadas é muito semelhante. Em ambos os modelos, camadas de transporte e as demais acima dela fornecem um serviço de transporte independente de rede fim a fim, processando pedidos de comunicação, formando o provedor de transporte. As camadas acima da de transporte são voltadas para o processamento de pedidos de comunicação. Apesar de terem semelhanças fundamentais, os modelos são muito diferentes.
Existem três conceitos que são centrais no modelo OSI:
1. Serviços
2. Interfaces
3. Protocolos
O modelo OSI faz uma explícita distinção entre estes conceitos básicos. As camadas inferiores fornecem alguns serviços para as superiores. Na definição de serviço é especificado o que cada camada faz, não diz como as camadas acima acessam e como ela trabalha.
Há uma interface de camada que diz aos processos acima como acessá-lo, especificando os parâmetros e os retornos esperados, mas não fala sobre o funcionamento interno da camada. Os protocolos pares usados na camada são assunto próprio da camada. Ele pode usar quaisquer protocolos que ele queira, desde que forneça o serviço requerido e também pode mudá-los sem afetar o software nas camadas mais altas.
Estas ideias são muito próximas as modernas ideias de programação orientada a objeto. Cada objeto (camada) tem um conjunto de métodos que podem ser acessados por processos externos ao objeto. A semântica destes métodos define o conjunto de serviços oferecidos pelo objeto. Os parâmetros dos métodos e os resultados da interface do objeto. O código interno do objeto é seu protocolo e não é visível fora deste.
O modelo TCP/IP não faz esta clara distinção entre serviço, interface e protocolo, embora muitos tenham tentado mudar para tornar mais parecido com OSI. Os únicos serviços reais oferecidos pela camada de internet são ENVIAR PACOTE IP e RECEBER