Você está na página 1de 20

Protocolos TCP e UDP

Redes de
Computadores

Prof. Luciano Gaspary

TCP (Transmission Control Protocol)


Protocolo da camada de transporte (TCP/IP)
Orientado conexo
three-way handshaking

Transferncia de dados confivel fim-a-fim


recuperao de dados perdidos, duplicados
organizao dos dados recebidos fora de ordem

Interage com as aplicaes e direciona para a


camada de inter-rede (IP)
portas permitem identificar um protocolo de
aplicao (FTP, Telnet, HTTP,...)
Redes de
Computadores

Prof. Luciano Gaspary

TCP (Transmission Control Protocol)

Cada computador cria um socket e se associa a ele


Cada socket tem um endereo, chamado de porta
alguns endereos de portas so conhecidos
ex.: SMTP (25), FTP (21 e 23), HTTP (80), ...
Redes de
Computadores

Prof. Luciano Gaspary

TCP (Transmission Control Protocol)


Servidores Web operam normalmente na porta 80
Portanto, Web browsers sempre faro conexo com
os servidores nesta porta
Browser e servidor Web criaro uma conexo
temporria nesta porta
Identificao completa do servidor Web executando
em uma mquina

172.16.108.1:80
Endereo IP Porta
da mquina
Redes de
Computadores

Prof. Luciano Gaspary

TCP - Retransmisso
Uma cpia da mensagem a ser transmitida
colocada numa fila de retransmisso
Se dentro de um instante de tempo no for
recebida uma confirmao de recebimento, o
protocolo envia novamente a mensagem
Caso contrrio, ele retira a mensagem da fila
de retransmisso

Redes de
Computadores

Prof. Luciano Gaspary

TCP - Ordenao dos segmentos


So usados nmeros de seqncias nos
segmentos transmitidos

Redes de
Computadores

Prof. Luciano Gaspary

TCP - Controle de fluxo


verificado o tamanho do quadro que o
receptor pode receber
Baseado nesta informao, o transmissor
atualiza a sua janela de transmisso (calcula
o nmero de segmentos a enviar)

Redes de
Computadores

Prof. Luciano Gaspary

TCP - Controle de fluxo

Uma janela deslizante de tamanho 1, com um nmero de seqncia de 3 bits. (a) Inicialmente. (b)
Depois do primeiro quadro ter sido enviado . (c) Depois do primeiro quadro ter sido recebido. (d)
Depois da primeira confirmao ter sido feita

Redes de
Computadores

Prof. Luciano Gaspary

TCP - Dados corrompidos


adicionado um checksum a cada segmento
transmitido
Quando estes segmentos so recebidos:
so verificados
os segmentos danificados so descartados
pode ser solicitada a retransmisso destes
segmentos

Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP

Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
Source port e Destination port:
identificam os pontos terminais locais da conexo

Sequence number:
identifica a posio deste segmento no fluxo de
dados

Acknowledgement number:
utilizado para confirmar o recebimento de
segmentos enviados anteriormente
especifica o prximo segmento aguardado

Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
Header length:
tamanho do cabealho TCP (nmeros de palavras
de 32 bits)

URG:
seu valor igual a 1 se houver informao no
campo Urgent Pointer

ACK:
se seu valor for 1: indica que o segmento parte
de uma conversao e que o valor do campo
Acknoledgement number vlido
Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
ACK: (cont.)
se seu valor for 0 e o flag SYN for 1: indica que o
segmento uma solicitao de conexo

PSH:
campo usado pelo remetente do segmento para
indicar ao receptor que o segmento em questo
deve ser entregue imediatamente ao nvel
superior

Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
RST:
utilizado para reiniciar uma conexo que tenha
ficado confusa devido a uma falha na estao ou
por qualquer outra razo (ex.:rejeitar conexo)

SYN:
usado em conjunto com o ACK para solicitar ou
aceitar uma conexo
SYN=1 ACK=0: requisio de conexo
SYN=1 ACK=1: conexo aceita
SYN=0 ACK=1: confirmao da confirmao
Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
FIN:
usado para encerrar uma conexo
indica que o transmissor no tem mais dados para
enviar

Window size:
indica o tamanho (disponvel) do buffer do
receptor
usado pelo receptor para indicar ao transmissor
que diminua o fluxo de transmisso de dados

Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do TCP
Checksum:
verificao de erros

Urgent pointer:
usado pelo remetente para indicar onde se
encontra algum dado urgente dentro do segmento

Options:
campo para configurao de opes

Data:
dados das aplicaes (HTTP, SMTP, ...)
Redes de
Computadores

Prof. Luciano Gaspary

Troca de segmentos TCP

Redes de
Computadores

Prof. Luciano Gaspary

Primitivas de servio

CONNECT: estabelecimento de conexo


DISCONNECT: encerramento de conexo
LISTEN: aguardar pedido de conexo
SEND: enviar dados
RECEIVE: receber dados
Listen
Cliente

Redes de
Computadores

Connect
Send
Receive
Disconnect

Receive Servidor
Send
Disconnect
Prof. Luciano Gaspary

UDP (User Datagram Protocol)


Protocolo sem conexo
Entrega de datagramas no confivel
Utilizado em aplicaes em que a entrega
imediata mais importante do que a entrega
precisa
Ex.: transmisso de voz ou de vdeo

Recebe pedidos de transmisso das


aplicaes das estaes de origem e entrega
para o IP
Redes de
Computadores

Prof. Luciano Gaspary

Cabealho do UDP

Source e Destination Port:


mesma funo do TCP

UDP Length
tamanho do pacote UDP

UDP Checksum
verificao de erros
Redes de
Computadores

Prof. Luciano Gaspary

Você também pode gostar