Translate

segunda-feira, 25 de junho de 2012

Camada Transporte do modelo OSI

Objectivo da Camada Transporte

A camada de transporte é responsável por receber os dados enviados pela camada de Sessão e segmentá-los para que sejam enviados a camada de Rede, que por sua vez, transforma esses segmentos em pacotes.
No receptor, a camada de Transporte realiza o processo inverso, ou seja, recebe os pacotes da camada de Rede e junta os segmentos para enviar à camada de Sessão.
Isso inclui controlo de fluxo, ordenação dos pacotes e a correcção de erros, tipicamente enviando para o transmissor uma informação de recebimento, informando que o pacote foi recebido com sucesso.
O objectivo final da camada de transporte é proporcionar serviço eficiente, confiável e de baixo custo. O hardware e/ou software dentro da camada de transporte e que faz o serviço é denominado entidade de transporte.

Protocolos TCP e UDP

Protocolo TCP:
TCP significa transmission Control Protocol, ou seja é o protocolo mais usado na camada de transporte, porque fornece a garantia na entrega de todos os pacotes na sequencia em que lhe foram fornecidos sem perda nem duplicação entre um PC emissor e um PC receptor.

TCP é um protocolo orientado para a conexão, ou seja, permite o controlo do estado de transmissão.

O protocolo TCP é utilizado em aplicações como e-mail e transferência de ficheiros.

Protocolo UDP:

UDP significa User Datagram Protocol, é um protocolo não orientado para a conexão. Este protocolo é muito simples já que não fornece controlo de erros.

No protocolo UDP a informação é apenas enviada uma vez. Os pacotes que chegam corrompidos são simplesmente rejeitados, sem que o emissor saiba do problema. Por outro lado, a ausência de estruturas de controlo complexas garante ao UDP alta eficiência, já que cada pacote é composto praticamente e somente por dados.

O protocolo UDP é utilizado em aplicações em tempo real, já que privilegia a velocidade e a simplicidade.


Métodos de conexão por TCP e UDP

Quando estamos ligados á internet, temos sempre várias aplicações abertas ao mesmo tempo, e como só temos um endereço de IP como é que essas aplicações não entram em conflito?

Cada aplicação existente no computador é identificada por uma porta. Assim todas as aplicações usam portas diferentes. Tanto o TCP como o UDP dispõem de 65536 portas. Destas 65536, de 0 a 1023 consideram-se Well Known Ports (WKP), ou seja, é como se já estivessem reservadas para certas aplicações.

O uso das portas também pode ser um perigo para o computador. Por isso é que existe a firewall para proteger o PC´s com o encerramento de algumas portas. 

Sockets

Sockets são utilizados nas redes entre programas cliente-servidor. 

Usados na camada de transporte por protocolos como o TCP e o UDP, funcionam como a terminação numa ligação. Cada aplicação tem uma porta associada. 

Por sua vez, a aplicação corre num computador que tem um endereço IP. Um socket representa o conjunto dessas informações.


Multiplexagem e Desmultiplexagem

O processo de multiplexagem faz-se no sentido camada de transporte --> camada de rede. Consiste na recolha de dados dos diferentes sockets e na criação dos segmentos a serem colocados na camada de rede.

O processo de desmultiplexagem faz-se no sentido contrario, camada de rede --> camada de transporte. Consiste na entrega correcta dos segmentos recebidos da rede aos sockets respectivos.

Não orientada a ligação (UDP):

Imagine que corremos uma aplicação no nosso computador do tipo cliente-servidor e este programa utiliza o protocolo UDP quanto a aplicação do computador quer comunicar com o servidor. A camada de transporte no cliente cria um segmento com os dados a ser transmitidos, adicionando-lhe as portas de origem e destino de origem e colocando-o na camada de rede para ser encapsulado em IP. Devido ao socket em UDP apenas ser identificado por dois elementos (IP de destino, porta de destino) se mais que um cliente tentar aceder ao mesmo IP de destino e porta de destino, apesar de terem IP de origem diferente e possivelmente também portas e origens diferentes será encaminhado para o mesmo socket.

Orientada a ligação (TCP):

Este ao contrário do UDP que conta com quatro campos (IP de origem, Porta de origem, IP de destino, Porta de destino). Desta forma, quando um segmento TCP, vindo da rede, chega ao destino usando os quatro campos para o conduzir para o socket correcto. No caso de existir dois computadores a tentar aceder ao mesmo destino (IP, Porta), como são analisados também o IP de origem a porta de origem, cada um será encaminhado para sockets distintos.


2 comentários: