domingo, 25 de setembro de 2011

TCP x UDP

    Bom Noite pessoal vou falar pra vocês um pouco sobre os protocolos TCP e UDP.
    O TCP (Transmission Control Protocol) é um protocolo que fornece um serviço de entrega de pacotes confiável e orientado por conexão, ou seja, significa que todos os aplicativos baseados em TCP como protocolo de transporte, antes de iniciar a troca de dados, precisam estabelecer uma conexão. Assim, para um computador cliente iniciar uma conversa com um servidor, é necessário enviar um sinal denominado SYN para o servidor. O servidor então responde enviando um sinal SYN combinado com um sinal de nome ACK para confirmar a conexão. O cliente responde com outro sinal ACK, fazendo com que a conexão esteja estabelecida e pronta para a troca de dados. Depois da conexão estabelecida, para enviar um arquivo, por exemplo, deve se encontrar uma rota entre a origem e o destino (função do IP), depois dessa rota ser encontrada o TCP divide o arquivo em pacotes de tamanhos menores e tem que garantir que esses pacotes sejam entregues sem erros e sem alterações, e garantir a ordem de chegada deles, se o pacote 3 chegar antes do pacote 2, o TCP tem que aguardar a chegada do pacote 2 e entregá-los na ordem correta. Também pode acontecer de alguns pacotes serem perdidos durante o transporte, então o TCP tem que informar à origem o pacote não foi recebido no tempo esperado e solicitar que ele seja retransmitido.    
      O UDP (User Datagram Protocol) é um protocolo simples de camada de transporte, também fornece os serviços de broadcast e multicast, permitindo que um único cliente envie pacotes para vários outros na rede.  Ele é usado por alguns programas ao invés do TCP para o transporte rápido de dados entre hosts. Entretanto o UDP não fornece garantia de entrega e nem verificação de dados. Por essas características, pode parecer que o UDP é inútil, mas não é. Há aplicações em que é preferível entregar os dados o mais rapidamente possível, mesmo que algumas informações se percam no caminho. É o caso, por exemplo, das transmissões de vídeo pela internet (streaming), onde a perda de um pacote de dados não interromperá a transmissão. Por outro lado, se os pacotes não chegarem ou demorarem a chegar, haverá congelamentos na imagem.
     Por ser um serviço sem conexão, um cliente UDP pode criar um socket, enviar um datagrama para um servidor e imediatamente enviar outro datagrama com o mesmo socket para um servidor diferente. Da mesma forma, um servidor poderia ler datagramas vindos de diversos clientes, usando um único socket.

TCP x UDP

     O TCP garante entregar, mas não diz quando isso vai acontecer. O UDP não garante nem confirma sua entrega, mas oferece comunicação de ponto a mais de um ponto e é mais rápido. Também, não existe um serviço de garantia de largura de banda, ou seja, nenhum dos protocolos garante uma taxa de transmissão mínima a uma aplicação, e nenhum dos protocolos oferece um serviço de temporização, ou seja, entrega dos dados em até n unidades de tempo.

Referências:
Clube do Hardware. Como o Protocolo TCP/IP Funciona Parte 1. Disponível em
http://www.clubedohardware.com.br/artigos/1351. Acesso em 25 de Setembro de 2011.



Info Wester. Portas TCP e UDP. Disponível em
http://www.infowester.com/portastcpudp.php. Acesso em 25 de Setembro de 2011.

 Wikipédia. TCP/IP. Disponível em http://pt.wikipedia.org/wiki/TCP/IP. Acesso em 25 de Setembro de 2011.

Hardware. TCP/IP. Disponível em http://www.hardware.com.br/termos/tcp-ip Acesso em 25 de Setembro de 2011.

 Wikipédia. User Datagrama Protocol. Disponível em  
http://pt.wikipedia.org/wiki/Protocolo_UDP Acesso em 25 de Setembro de 2011. 


Por Michelly Pessôa

Nenhum comentário:

Postar um comentário