Buscar

Camada de transporte REDES - Camada OSI

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
*
CAMADA DE TRANSPORTE
Redes de Computadores
CAMADA DE TRANSPORTE
Protocolos de transporte
Fornecem comunicação entre processos de aplicação que rodam em hospedeiros (hosts) diferentes
Implementados nos sistemas finais
Protocolos de rede
Fornecem comunicação entre hospedeiros diferentes
CAMADA DE TRANSPORTE
Principais protocolos 
UDP (User Datagram Protocol)
TCP (Transmission Control Protocol)
CAMADA DE TRANSPORTE
PDUs possuem diferentes nomes 
Segmentos (TCP ) 
Datagrama (UDP)
CAMADA DE REDE
CAMADA DE REDE
IP (Internet Protocol) 
 Provê comunicação lógica entre hosts
 É um serviço de entrega de melhor esforço
 Não garante a entrega de segmentos
 Serviço não confiável
Responsabilidade do TCP e UDP é ampliar o serviço de entrega do protocolo IP
CAMADA DE TRANSPORTE
Serviços
Multiplexação/demultiplexação
Transferência de dados (confiável ou não)
Controle de fluxo
Controle de congestionamento
Detecção de erros
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
Multiplexação/demultiplexação
Utilizam conceitos de portas (sockets)
Multiplexação
Reunir porções de dados de diferentes portas, criar segmentos e passar para camada de rede
Demultiplexação
Receber segmentos da camada de rede e entregar os dados de um segmento à porta correta, ao processo apropriado de aplicação
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
Exemplo de Multiplexação/demultiplexação (fonte: Kurose)
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
�
�
�
�
�
Texto�
�
�
�
�
TRANSPORTE
TRANSPORTE
REDE
ENLACE
FÍSICA
APLICAÇÃO
REDE
ENLACE
FÍSICA
APLICAÇÃO
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
Multiplexação/demultiplexação
portas (sockets) são identificadores exclusivos
 número de 16 bits (cada porta)
 0 – 65535 portas
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
Formato geral de um segmento TCP e UDP 
UDP
UDP
Protocolo de datagrama do usuário (User Datagram protocol)
Definido na RFC 768
Serviços	
Transferência de dados não confiável
Multiplexação/demultiplexação
Detecção de erros
Não orientado a conexão
Sem controle de congestionamento
Sem controle de fluxo
UDP
�
�
�
�
Texto�
UDP
Principais características
Melhor controle no nível da aplicação sobre quais dados são enviados e quando
Não possui controle de congestionamento
Não há estabelecimento de conexão
Não introduz atraso dessa fase
Não há estados de conexão 
Pode ter um número maior de clientes ativos
Pequena sobrecarga de cabeçalho de pacote
TCP 20 Bytes
UDP 8 Bytes
UDP – TRANSFERÊNCIA NÃO CONFIÁVEL
Transferência confiável pode ser implementada na camada de aplicação
 Confiabilidade embutida na própria aplicação
 Mecanismos de reconhecimento e retransmissão
UDP – TRANSFERÊNCIA NÃO CONFIÁVEL
Aplicações populares que usam UDP
UDP – USER DATAGRAM PROTOCOL
Socket é identificado por somente
Porta de origem
Porta de destino
MULTIPLEXAÇÃO/DEMULTIPLEXAÇÃO
Multiplexação/demultiplexação no UDP (fonte: Kurose)
UDP – DETECÇÃO DE ERROS
Usada pois nem sempre a camada de enlace utiliza verificação de erros
Realiza detecção através de uma soma de verificação (checksum) de 16 bits
UDP – FORMATO DATAGRAMA
Formato datagrama UDP (fonte: tanembaum)
UDP – FORMATO DATAGRAMA
Porta de origem (16 bits)
Porta de destino (16 bits)
Comprimento (16bits)
TCP
TCP
Protocolo de controle de transmissão (Transmission Control Protocol)
Definido nas RFCs (793, 1122, 1323, 2018 e 2581)
Serviços 
Multiplexação/Demultiplexação
Detecção de erros
Transferência de dados confiável
Controle de Fluxo
Orientado a conexão
Controle de Congestionamento
TCP – Multiplexação/Demultiplexação
Multiplexação/Demultiplexação no TCP (fonte: Kurose)
TCP – DETECÇÃO DE ERROS
Análoga ao UDP
Uso do checksum
TCP – FORMATO DO SEGMENTO
Formato do segmento TCP (fonte:Kurose)
TCP – FORMATO DO SEGMENTO
Porta de origem (16 bits)
Porta de destino (16 bits)
Número de sequencia (32 bits)
Usado na implementação do serviço confiável 
Cadeia de dados são numerados para transmissão na rede
Número de reconhecimento
Usado na implementação do serviço confiável
Permite o tratamento de segmentos fora de ordem 
Comprimento do cabeçalho (4 bits) 
Especifica o comprimento do cabeçalho TCP
Flags (6 bits)
TCP – FORMATO DO SEGMENTO
Flags (6 bits)
URG – segmento que contém dados urgentes
ACK – indica se o segmento contém um reconhecimento p/ o segmento recebido
PSH – destinatário deve passar os dados para camada de aplicação imediatamente 
RST – usado no estabelecimento da conexão
SYN - usado no estabelecimento da conexão
FIN - usado no fechamento da conexão
TCP – FORMATO DO SEGMENTO
Janela de recepção (16 bits)
Usado no controle de fluxo 
Número de bytes que o receptor está pronto para aceitar
Soma de verificação (16 bits)
Ponteiro para dados urgentes (16 bits)
Usado com a flag URG
Indica o fim dos dados urgentes 
Aplicação determina o ínicio
Opções 
Negociação de MSS
Dados 
TCP – ENVIO DE DADOS
Apresentação de três vias (3-way handshake)
 Cliente envia segmento TCP (s/ dados)
 Servidor responde com outro segmento TCP (s/ dados)
 Cliente responde novamente, podendo carregar dados (carga útil)
Conexão TCP estabelecida, os processos de aplicação enviam dados
 O TCP faz uso de buffers de envio alocados no estabelecimento da conexão
TCP deve enviar dados no buffer segundo a sua conveniência
TCP – ENVIO DE DADOS
Buffers do TCP
TCP – ESTABELECIMENTO DA CONEXÃO
Three way handshake
1 – cliente envia TCP SYN 
ao servidor, especifica número 
de sequencia inicial
2 – servidor que recebe SYN, 
responde com o segmento SYNACK,
reconhece o SYN recebido, aloca 
buffers, especifica o número de 
sequencia inicial do servidor
3 – sistema final cliente 
reconhece o ACK
TCP – FECHAMENTO DA CONEXÃO
Cliente fecha socket;
clientsocket.close(); 
1 – cliente envia TCP FIN 
ao servidor.
2 – servidor recebe FIN, 
responde com o segmento ACK,
Fecha a conexão, envia FIN.
3 – cliente recebe FIN, responde 
com ACK.
Entra “espera temporizada” – vai 
responder com ACK a FINS recebidos
4 – servidor, recebe ACK Conexão 
fechada.
TCP – RETRANSMISSÃO
A técnica de retransmissão do TCP é o reconhecimento positivo com temporizadores
Se o ACK não chegar no transmissor num tempo pré-determinado, o segmento é retransmitido
O receptor pode enviar pacotes sem dados, apenas com confirmação, quando não tem nada para transmitir
TCP – TRANSFERÊNCIA CONFIÁVEL
Retransmissão devido a um ACK perdido (fonte: kurose)
TCP – TRANSFERÊNCIA CONFIÁVEL
O TCP cria um serviço confiável sobre o IP
 IP não garante a entrega de datagramas na ordem correta
IP não garante a integridade dos dados
O serviço confiável do TCP garante
 dados não corrompidos
 sem lacunas
 sem duplicações 
Dados entregues em sequencia
Para uma transferência confiável o TCP usa
Reconhecimentos positivos
Temporizadores
Números de sequência
TCP – CONTROLE DE FLUXO/CONGESTIONAMENTO
O TCP provê um serviço de controle de fluxo para eliminar a possibilidade de o remetente saturar o buffer do destinatário
Baseado em janelas
Remetente mantém uma variável chamada janela de recepção (RcvWindow)
 A janela de recepção serve para dar ao emissor uma idéia sobre como está o buffer do receptor
O receptor informa ao emissor o seu espaço livre em buffer preenchendo o campo janela de recepção do cabeçalho de todos os segmentos enviados para o emissor
TCP – CONTROLE DE FLUXO/CONGESTIONAMENTO
�
�
�
Texto�

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais

Perguntas Recentes