Você está na página 1de 4

Protocolos TCP e UDP Protocolo TCP

• Transmission Control Protocol


– Protocolo de transporte orientado à conexão.
– Transferência de dados confiável fim-a-fim
• recuperação de dados perdidos, duplicados
• organização dos dados recebidos fora de ordem
– Usa o conceito de porta.
– Protocolo orientado a stream.
– Conexão full-duplex.

Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo TCP


• TCP reside em cima do IP e permite múltiplos programas de
• A necessidade de uma comunicação segura: aplicação se comunicarem concorrentemente.
– pacotes podem ser perdidos ou destruídos • Uso de número de portas de protocolo para identificação e
– pacotes entregues fora de ordem circuitos virtuais.
– pacotes entregues com atraso • Interage com as aplicações e direciona para a camada de
inter-rede (IP)
– pacotes duplicados – portas permitem identificar um protocolo de aplicação (FTP, Telnet,
HTTP,...)
172.16.108.1:80
Endereço IP Porta
da máquina
Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo TCP


• Retransmissão
– Uma cópia da mensagem a ser transmitida é colocada
numa fila de retransmissão
– Se dentro de um instante de tempo não for recebida
uma confirmação de recebimento (ACK), o protocolo
envia novamente a mensagem
• Cada computador cria um socket e se associa a ele – Caso contrário, ele retira a mensagem da fila de
• Cada socket tem um endereço, chamado de porta retransmissão
– alguns endereços de portas são conhecidos
– ex.: SMTP (25), FTP (21 e 23), HTTP (80), ...
Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes
Protocolo TCP Protocolo TCP
• Controle de fluxo
• Segurança
– É verificado o tamanho do quadro que o receptor pode
receber – É adicionado um checksum a cada segmento
transmitido
– Baseado nesta informação, o transmissor atualiza a sua
janela de transmissão (calcula o número de segmentos a – Quando estes segmentos são recebidos:
• são verificados
enviar)
• os segmentos danificados são descartados e serão
– Janela Deslizante: retransmitidos
• Cada octeto é numerado.
• O tamanho da janela determina o número de octetos que
podem ser transmitidos sem reconhecimento.
• Através do mecanismo de PIGGYBACK pode-se reconhecer
um bloco de octetos via um segmento de dados.
Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo TCP


• Formato das Mensagens • Portas: Identificam os processos origem e destino.
0 4 10 16 24 31
• Número de seqüência: número do primeiro octeto do
PORTA ORIGEM PORTA DESTINO
campo de dados.
NÚMERO DE SEQÜÊNCIA • Número do ACK: número do octeto que é esperado pelo
NÚMERO DO ACKNOWLEDGEMENT destino, sendo todos os octetos de número inferior
HLEN RESERVADO BITS DE CÓDIGO WINDOW reconhecidos.
CHECKSUM URGENT POINTER • HLEN: Tamanho em bytes do cabeçalho TCP (números de
palavras de 32 bits).
OPÇÕES IP PADDING
• Bits de código: indica o propósito e conteúdo do
DADOS
segmento: URG, ACK, PSH, RST, SYN, FIN
DADOS

Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo TCP


• Window: Tamanho em octetos da janela que é aceito pelo • Estabelecimento da Conexão
emissor. – Three-way handshake
• Checksum: verificador de erros de transmissão, dados e
Host 1 Host 2
cabeçalho.
• Urgent Pointer: fornece a posição dos dados urgentes envia SYN seq=x
dentro do campo de dados. recebe SYN
• Opção: Pode conter negociações de opções tal como o envia SYN seq=y, ACK x+1
recebe SYN + ACK
MSS (Maximum Segment Size). envia seq=x+1,
ACK y+1 recebe ACK

Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes
Protocolo TCP Protocolo TCP
• Encerramento da Conexão • Exemplo
– Estabelecimento de conexão
Host 1 Host 2

envia FIN seq=x


SEQ(100), FLAGS(SYN)
recebe FYN
envia seq=y, ACK x+1 SEQ(300), FLAGS(ACK,SYN), ACK(101)
recebe ACK
SEQ(100), FLAGS(ACK), ACK(301)
envia FYN, seq=y, ACK x+1
recebe FIN + ACK
envia seq=x+1,
ACK y+1 recebe ACK

Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo TCP


– Troca de dados • Encerramento da conexão

SEQ(101), FLAGS(ACK), ACK(301), DATA(50)


FIN(202)
SEQ(301), FLAGS(ACK), ACK(152), DATA(10)
ACK(203)
SEQ(152), FLAGS(ACK), ACK(312), DATA(20)
FIN(452), ACK(203)
SEQ(172), FLAGS(ACK), ACK(312), DATA(30)
ACK(453)
SEQ(312), FLAGS(ACK), ACK(203), DATA(90)

SEQ(403), FLAGS(ACK), ACK(203), DATA(50)

Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Protocolo TCP Protocolo UDP


• Porta padrão • Protocolo de Transporte não orientado à conexão.
– FTP (21) • Não implementa nenhum mecanismo de recuperação de
– FTP-DATA (20) erros.
– TELNET (23) • São identificados os processos origem e destino através do
conceito de porta.
– SMTP (25)
• O campo de Checksum é opcional.
– NNTP (119)
• Utilizado em aplicações em que a entrega imediata é mais
– ..... importante do que a entrega precisa
– Ex.: transmissão de voz ou de vídeo
• Recebe pedidos de transmissão das aplicações das estações
de origem e entrega para o IP
Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes
Protocolo UDP Protocolo UDP
• Formato da Mensagem • Multiplexação, demultiplexação e portas
– Toda a multiplexação e demultiplexação entre UDP e
0 16 31
programas de aplicação ocorre através do mecanismo
PORTA ORIGEM PORTA DESTINO
de portas.
TAMANHO DA MENSAGEM CHECKSUM
Porta 1 Porta 2 Porta 3
DADOS

UDP: demultiplexação

IP
Redes de Computadores Profa. Cristina Nunes Redes de Computadores Profa. Cristina Nunes

Você também pode gostar