Protocolos TCP e UDP de Transporte Para Aplicações na Internet

Quando você for profissional de Redes de Computadores, e tiver que criar suas aplicações Web (como uma rede social, um jogo ou um portal de notícias), você terá que decidir qual protocolo de transporte entre aplicações na Internet deve usar: TCP ou UDP.

Falaremos, neste tutorial de Redes, sobre estes protocolos para ajudar na sua decisão quando for criar sua aplicação.

Protocolo TCP na Internet



As três principais características do protocolo TCP são os serviços:
  • Orientado a conexão
  • Confiável de transferência de dados
  • Controle de congestionamento

Protocolo TCP: Orientado a Conexão

Antes que os processos cliente e servidor comecem a trocar informações, o protocolo TCP faz com que eles sejam obrigados a 'conversar' e se 'apresentar' antes de transferência de pacotes.
É como se um se apresentasse ao outro, dissesse o que é, o que quer e o que pretende fazer.

Ou seja, o protocolo TCP é orientado para conexão, pois prepara servidor e cliente para a conexão que terão.

Essa comunicação serve para prepara ambos os lados para a intensa troca de pacotes.
Após isso, a conexão TCP entre os sockets é estabelecida, e a transferência de dados ocorre (em esquema full duplex, ou seja, as mensagens entre cliente e servidor são enviadas ao mesmo tempo, de um pro outro).



Protocolo TCP: Transferência Confiável

Outro serviço muito importante que o protocolo TCP fornece é o da confiabilidade na transferência de dados.

Isso quer dizer que o protocolo TCP garante que os pacotes vão sair de um local e chegar no seu destino na ordem correta e sem erros.

Protocolo TCP: Controle de Congestionamento

Quando algum elemento da rede está com problemas ou sobrecarregado, o protocolo TCP faz uma espécie de gerência desse congestionamento, limitando as conexões dos emissores.

Exemplos de uso do Protocolo TCP

  • Web (HTTP)
  • E-Mal (SMTP)
  • Transferência de Arquivos (FTP)




Protocolo UDP na Internet

O protocolo TCP é seguro e eficiente, porém isso tem um custo maior (processamento, banda, tempo etc).
O procolo UDP é bem mais rápido, pois é bem mais simples e tem menos 'burocracia' que o TCP.

O protocolo de transporte UDP não é voltado para conexão, ou seja, ele simplesmente envia os pacotes, sem antes fazer uma 'intermediação' entre servidor e cliente (criando a conexão), como faz o TCP.

O protocolo UDP também não fornece nenhuma confiança na transmissão de dados. Ou seja, ao usar o protocolo UDP você não tem a garantia que os pacotes chegarão íntegros ao seu destino, muito menos na ordem enviada.

Além disso, não possui controle de congestionamento.

Então, qual a vantagem do UDP?
Por não ter todas essas checagens, garantias e 'conversas', ele é mais rápido e leve.

Assim, o protocolo UDP é usado por aplicações que exigem o máximo de vazão de pacotes e que não tenha problemas ao perder pacotes.

Exemplos de uso do protocolo UDP são os streamings (aplicações multimídia no geral), como o Youtube (se você perder um ou outro quadro do vídeo nem vai perceber, o importante é que ele carregue rápido) e serviço de telefonia na Internet (VoIP, como o Skype).

Nenhum comentário:

Veja também: