O Modelo TCP/IP tem o mesmo objetivo do Modelo OSI, que é a de definir um modelo padrão de camadas para a implementação de camadas na arquitetura da rede. A principal diferença entre o Modelo TCP/IP e o modelo OSI é o número de camadas, sendo que o primeiro possui 4 camadas e o segundo 7. O nome do Modelo se dá pelos 2 principais protocolos utilizados.
Um dos seus principais objetivos era habilidade de conectar várias sub-redes de maneira uniforme, queriam ainda que as conexões permanecessem intactas enquanto origem e destinos estivessem funcionando mesmo que hosts intermediários parassem.
Modelo TCP/IP
Camada 1: Camada Host / Rede
Esta camada não é bem definida pelo modelo, e nenhum livro comenta ao certo o que acontece nesta fase. Porém o que se sabe é que essa camada é responsável por estabelecer uma conexão por qualquer protocolo que possa enviar pacotes IP. E mais um porém é que este protocolo não é definido, isto é, varia de rede para rede e de host para host.
Camada 2: Camada Internet
Esta camada é responsável por permitir que hosts enviem pacotes à qualquer rede e garantam que os mesmo trafeguem até o seu destino. Ela é equivalente a camada de rede do Modelo OSI.
Por existir a necessidade de interligar várias redes diferentes, esta camada diz que toda a informação a ser transmitida deve ser divididas em pacotes antes de ser enviadas ao seu destino, tendo um padrão definido pelas próprias especificações do modelo. Ela tem como protocolo principal o protocolo IP (Internet Protocol).
Ela também tem a tarefa de fazer o roteamento dos pacotes, isto é, analisar a rota e indicar o melhor caminho, sem congestionamentos, para que o pacote chegue ao seu destino. Os pacotes enviados podem chegar todos fora de ordem deixando a tarefa de organiza-los para as camadas superiores.
Comparação: OSI vs TCP/IP
Camada 3: Camada Transporte
Esta camada é equivalente a camada de Transporte do Modelo OSI. Sua função é permitir a conversação entre dois hosts, um origem e outro destino. Como forma de garantir que os dois hosts se comuniquem, foram definidos 2 protocolos nesta camada. O UDP e o TCP.
O protocolo UDP é usado em uma entrega de pacotes de forma não confiável, pois ele não garante que os pacotes cheguem ou cheguem sem erros, definindo que o protocolo UDP é um protocolo não orientado a conexão, por essas características citadas acima.
Uma analogia pode ser feita as transmissões de rádio, pois as mesmas enviam sinais ao seu rádio porém não garantem a clareza dos sons. Ao mesmo tempo que a transmissão está limpa e clara, em um breve ou longo momento pode existir chiados. Programas de transmissão de vídeos e áudio utilizam esse protocolo.
O protocolo TCP é usado na entrega de pacotes de forma confiável. Como seu próprio nome diz (TCP - Transmission Control Protocol - Protocolo de Controle de Transmissão) é usado no controle de transmissão garantindo que o pacote chegue ao seu destino, e garantido que o mesmo esteja livre de erros. Essas características definem o protocolo como um protocolo orientado a conexão.
Caso um pacote não chegue ao seu destino ou chegue danificado, o mesmo é retransmitido. Uma analogia pode ser feita aos Ars dos correios, pois se os mesmos não chegam ao seu destino, você escreve um novo e manda novamente.
Camada 4: Camada de Aplicação
Esta camada é a camada que convivemos diariamente quando lidamos com redes. E através dela que fazemos nossas requisições para executarmos determinadas tarefas em nossa rede. Lidamos com ela através de softwares que utilizam protocolos da Camada de Aplicação para executar as tarefas que solicitamos. Alguns exemplos de protocolos são: Telnet, FTP e SMTP.
Uma vez que o dado de uma aplicação foi codificados dentro de um padrão de um protocolo da camada de aplicação ele será passado para a próxima camada da pilha IP. Na camada de transporte, aplicações irão em sua maioria fazer uso de TCP ou UDP, e aplicações servidoras são frequentemente associadas com um número de porta.