19
Camada de transporte Camada de transporte 1

Camada4

Embed Size (px)

Citation preview

Camada de transporteCamada de transporte

1

Funções do nível de Funções do nível de transportetransporte

• Garantir que os segmentos são entregues e Garantir que os segmentos são entregues e confirmados.confirmados.

• Retransmitir os segmentos que não foram Retransmitir os segmentos que não foram confirmados.confirmados.

• Colocar os segmentos na sequência correta no Colocar os segmentos na sequência correta no destino.destino.

• Fornecer mecanismos de prevenção e controlo de Fornecer mecanismos de prevenção e controlo de congestão.congestão.

2

Funcionamento da camada de transporte (1/2)

3

Funcionamento da camada Funcionamento da camada de transporte de transporte (2/2)(2/2)

• Os protocolos da camada de transporte apenas Os protocolos da camada de transporte apenas são implementados nas estações terminais são implementados nas estações terminais (extremo a extremo).(extremo a extremo).

• A camada de transporte faz a transferência da A camada de transporte faz a transferência da informação extremo a extremo, separando as informação extremo a extremo, separando as camadas responsáveis pelo meio físico das camadas responsáveis pelo meio físico das camadas que tratam da aplicaçãocamadas que tratam da aplicação

4

Protocolos Protocolos (1/2)(1/2)

• TCP (TCP (Transmission Control ProtocolTransmission Control Protocol))o Responsável pelo envio dos dados de forma correta, na sequência

apropriada e sem erros, pela rede.o Utilizado em aplicações de e-mail e transferência de ficheiros

• UDP (UDP (User Datagram Protocol User Datagram Protocol ))o Não garante que o pacote chegue ao destino, nem de forma ordenada,

nem sem erros. Não fornece um serviço fiável.o Utilizado em aplicações em tempo real

5

Diferenças entre TCP e Diferenças entre TCP e UDPUDP

• O TCP garante o transporte fiável entre estações, o O TCP garante o transporte fiável entre estações, o UDP não o faz.UDP não o faz.

• Diz-se que o TCP disponibiliza um serviço orientado Diz-se que o TCP disponibiliza um serviço orientado à ligação e o UDP um serviço não orientado à à ligação e o UDP um serviço não orientado à ligação.ligação.

6

Métodos de ligação por TCP Métodos de ligação por TCP e UDPe UDP

• PortasPortaso DNS (53/UDP)o POP3 (110/TCP)o FTP (21/TCP)o http (80/TCP)

• http://packetlife.net/media/library/23/common-ports.pdfhttp://packetlife.net/media/library/23/common-ports.pdf

• SocketsSocketso Combinação de um endereço IP, e o número da porta associada a um

protocolo da Camada 4

7

Protocolo TCPProtocolo TCP• À medida que a camada de transporte envia À medida que a camada de transporte envia

segmentos procura garantir que estes não sejam segmentos procura garantir que estes não sejam perdidos.perdidos.

• Se a memória disponível para guardar segmentos Se a memória disponível para guardar segmentos no receptor se esgotar, o receptor é forçado a no receptor se esgotar, o receptor é forçado a descartá-los, levando à perda de segmentosdescartá-los, levando à perda de segmentos

8

Controlo de FluxoControlo de Fluxo

9

• O controlo de fluxo evita que um emissor rápido O controlo de fluxo evita que um emissor rápido sobrecarregue os buffers de um receptor lento.sobrecarregue os buffers de um receptor lento.

• O TCP fornece mecanismos para controlo de fluxo.O TCP fornece mecanismos para controlo de fluxo.

• Os dois Os dois hostshosts estabelecem uma taxa de transferência estabelecem uma taxa de transferência de dados satisfatória para ambos.de dados satisfatória para ambos.

Estabelecimento, manutenção Estabelecimento, manutenção e finalização de sessõese finalização de sessões

• Antes de um processo de aplicação enviar dados Antes de um processo de aplicação enviar dados a outro é necessário o estabelecimento da ligaçãoa outro é necessário o estabelecimento da ligação

o Processo three-way handshake

10

Estabelecimento, manutenção e finalização de sessões

1. O cliente envia uma trama de sincronismo (X) a solicitar a sincronização;

2. Se o servidor estiver acessível envia uma trama de Acknowledgment (X+1) e outra de sincronismo (Y) com os parâmetros da sincronização;

3. O cliente ao receber a confirmação envia uma trama de Acknowledgment (Y+1) que informa o destinatário que ambos os extremos concordam com o estabelecimento da ligação.

11

Estabelecimento, manutenção Estabelecimento, manutenção e finalização de sessõese finalização de sessões

• Os níveis de Transporte nos dois extremos comunicantes Os níveis de Transporte nos dois extremos comunicantes trocam mensagens através da rede para verificar se a trocam mensagens através da rede para verificar se a transferência é autorizada por ambos.transferência é autorizada por ambos.

• Depois da ligação ter sido estabelecida pode ter início a Depois da ligação ter sido estabelecida pode ter início a transferência de informação.transferência de informação.

• Os dois extremos continuam a comunicar de modo a Os dois extremos continuam a comunicar de modo a verificarem se os segmentos são recebidos verificarem se os segmentos são recebidos correctamente.correctamente.

12

Estabelecimento, manutenção Estabelecimento, manutenção e finalização de sessõese finalização de sessões

• Várias aplicações podem enviar segmentosVárias aplicações podem enviar segmentoso A camada de Transporte vai utilizar a política

primeiro a chegar, primeiro a ser servido.o Os segmentos que cheguem primeiro serão os

primeiros a serem processados.o Estes segmentos podem ser encaminhados para

o mesmo ou diferentes destinos.

• Várias aplicações podem partilhar a Várias aplicações podem partilhar a mesma ligação de transporte.mesma ligação de transporte.

Processo conhecido por multiplexagemProcesso conhecido por multiplexagem 13

Multiplexagem e Multiplexagem e demultiplexagemdemultiplexagem

• O processo de O processo de multiplexagemmultiplexagem faz-se no sentido faz-se no sentido

camada de transporte -> camada de rede (envio camada de transporte -> camada de rede (envio de informação).de informação).o Consiste na recolha de dados dos diferentes sockets e na criação dos

segmentos a serem colocados na camada de rede.

• Por outro lado, o processo de Por outro lado, o processo de demultiplexagemdemultiplexagem faz- faz-

se em sentido contrário, camada de rede -> se em sentido contrário, camada de rede -> camada de transporte (recepção de informação).camada de transporte (recepção de informação).o Consiste na entrega correcta dos segmentos recebidos da rede aos

sockets respectivos.

14

Estabelecimento, manutenção Estabelecimento, manutenção e finalização de sessõese finalização de sessões

15

Socket TCP• Multiplexagem e desmultiplexagem

Socket contém 4 campos:IP de origem, porta de origem, IP de destino, porta de destino

Socket contém 4 campos:IP de origem, porta de origem, IP de destino, porta de destino16

Protocolo UDPProtocolo UDP• Utilizado para aplicações em tempo real, já Utilizado para aplicações em tempo real, já

que privilegia a velocidade e a que privilegia a velocidade e a simplicidade (cabeçalhos pequenos). simplicidade (cabeçalhos pequenos).

• Não garante a entrega dos pacotes no Não garante a entrega dos pacotes no destino, nem faz o controlo de erros ou destino, nem faz o controlo de erros ou congestionamento.congestionamento.

Não fornece um serviço fiávelNão fornece um serviço fiável

17

Protocolo UDPProtocolo UDP• O UDP é um protocolo simples que troca datagramas O UDP é um protocolo simples que troca datagramas

sem garantia de entrega.sem garantia de entrega.

• Confia aos protocolos das camadas superiores o Confia aos protocolos das camadas superiores o

tratamento de erros e a retransmissão de informação.tratamento de erros e a retransmissão de informação.

• Não utiliza janelas nem confirmações (ACKs).Não utiliza janelas nem confirmações (ACKs).

• A fiabilidade é garantida pelos protocolos da camada A fiabilidade é garantida pelos protocolos da camada

de Aplicação.de Aplicação.

18

Socket UDPSocket UDP

Socket contém 2 campos:IP de destino, porta de destino

Socket contém 2 campos:IP de destino, porta de destino19