2. Funções do nível deFunções do nível de
transportetransporte
• Garantir que os segmentos são entregues eGarantir que os segmentos são entregues e
confirmados.confirmados.
• Retransmitir os segmentos que não foramRetransmitir os segmentos que não foram
confirmados.confirmados.
• Colocar os segmentos na sequência correta noColocar os segmentos na sequência correta no
destino.destino.
• Fornecer mecanismos de prevenção e controlo deFornecer mecanismos de prevenção e controlo de
congestão.congestão.
2
4. Funcionamento da camadaFuncionamento da camada
de transportede transporte (2/2)(2/2)
• Os protocolos da camada de transporte apenasOs protocolos da camada de transporte apenas
são implementados nas estações terminaissão implementados nas estações terminais
(extremo a extremo).(extremo a extremo).
• A camada de transporte faz a transferência daA camada de transporte faz a transferência da
informação extremo a extremo, separando asinformação extremo a extremo, separando as
camadas responsáveis pelo meio físico dascamadas responsáveis pelo meio físico das
camadas que tratam da aplicaçãocamadas que tratam da aplicação
4
5. ProtocolosProtocolos (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 ProtocolUser 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
6. Diferenças entre TCP eDiferenças entre TCP e
UDPUDP
• O TCP garante o transporte fiável entre estações, oO 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 orientadoDiz-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
7. Métodos de ligação por TCPMétodos de ligação por TCP
e UDPe UDP
• PortasPortas
o 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
• SocketsSockets
o Combinação de um endereço IP, e o número da porta associada a um
protocolo da Camada 4
7
8. Protocolo TCPProtocolo TCP
• À medida que a camada de transporte enviaÀ medida que a camada de transporte envia
segmentos procura garantir que estes não sejamsegmentos procura garantir que estes não sejam
perdidos.perdidos.
• Se a memória disponível para guardar segmentosSe a memória disponível para guardar segmentos
no receptor se esgotar, o receptor é forçado ano receptor se esgotar, o receptor é forçado a
descartá-los, levando à perda de segmentosdescartá-los, levando à perda de segmentos
8
9. Controlo de FluxoControlo de Fluxo
9
• O controlo de fluxo evita que um emissor rápidoO 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 doisOs dois hostshosts estabelecem uma taxa de transferênciaestabelecem uma taxa de transferência
de dados satisfatória para ambos.de dados satisfatória para ambos.
10. Estabelecimento, manutençãoEstabelecimento, manutenção
e finalização de sessõese finalização de sessões
• Antes de um processo de aplicação enviar dadosAntes 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
11. 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
12. Estabelecimento, manutençãoEstabelecimento, manutenção
e finalização de sessõese finalização de sessões
• Os níveis de Transporte nos dois extremos comunicantesOs níveis de Transporte nos dois extremos comunicantes
trocam mensagens através da rede para verificar se atrocam 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 aDepois 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 aOs dois extremos continuam a comunicar de modo a
verificarem se os segmentos são recebidosverificarem se os segmentos são recebidos
correctamente.correctamente.
12
13. Estabelecimento, manutençãoEstabelecimento, 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 segmentos
o 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 aVárias aplicações podem partilhar a
mesma ligação de transporte.mesma ligação de transporte.
Processo conhecido por multiplexagemProcesso conhecido por multiplexagem 13
14. Multiplexagem eMultiplexagem e
demultiplexagemdemultiplexagem
• O processo deO processo de multiplexagemmultiplexagem faz-se no sentidofaz-se no sentido
camada de transporte -> camada de rede (enviocamada 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 dePor 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
16. 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
17. Protocolo UDPProtocolo UDP
• Utilizado para aplicações em tempo real, jáUtilizado para aplicações em tempo real, já
que privilegia a velocidade e aque privilegia a velocidade e a
simplicidade (cabeçalhos pequenos).simplicidade (cabeçalhos pequenos).
• Não garante a entrega dos pacotes noNão garante a entrega dos pacotes no
destino, nem faz o controlo de erros oudestino, 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
18. Protocolo UDPProtocolo UDP
• O UDP é um protocolo simples que troca datagramasO UDP é um protocolo simples que troca datagramas
sem garantia de entrega.sem garantia de entrega.
• Confia aos protocolos das camadas superiores oConfia 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 camadaA fiabilidade é garantida pelos protocolos da camada
de Aplicação.de Aplicação.
18
19. 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