O documento discute os protocolos de transporte TCP e UDP. Explica que o TCP fornece entrega confiável de dados através de confirmações e sequenciamento, enquanto o UDP é mais rápido mas não garante entrega. Também descreve como as portas permitem que vários programas se comuniquem simultaneamente através dos protocolos.
1. Por: Emerson, Katiane, José
Trabalho – Redes
Escolas e Faculdades
Prof. Anderson– 2013 QI
2. Introdução
A função desta camada é oferecer transporte de dados confiável e efetivo
entre uma máquina origem até uma máquina destino. Há dois tipos de serviço de
transporte: orientado a conexão e não-orientado a conexão, ambos são
semelhantes aos serviços oferecidos pela camada de redes.
O estabelecimento de conexão (nestes tipos de serviços) garante que:
* Um lado saiba da existência do outro
* Haja negociação de parâmetros
* Sejam alocados recursos da entidade de transporte
O objetivo final da camada de transporte é proporcionar serviço eficiente,
confiável e de baixo custo.
3. Por que a Camada de Transporte?
A camada de rede pode não oferecer um serviço confiável, por isso a camada
de transporte isola as aplicações de quaisquer imperfeições no trânsito de
pacotes (perdas, duplicatas, etc), permitindo o desenvolvimento de rotinas
básicas que funcionam em qualquer tipo de plataforma de rede (podendo
variar entre IP, Novell, SNA).Também permite a entrega de dados à aplicações
específicas numa máquina, ou seja, a camada de transporte imuniza as camadas
superiores da tecnologia, projeto e imperfeições de rede;
* Muitas das aplicações (seus programadores) farão uso da camada de
transporte para comunicação, por isso, o serviço de transporte deve ser
adequado e fácil de usar;
* Rede (não confiável) v.s. Transporte (confiável).
4. Serviços de transporte na
internet
Entrega confiável, ordenada, ponto a ponto (TCP):
* Congestionamento;
* Controle de fluxo;
* Estabelecimento de conexão (setup).
Entrega não confiável, (“melhor esforço”), não ordenada, ponto a ponto ou
multiponto (UDP):
* Serviços não disponíveis:
* Tempo real;
* Garantias de banda;
* Multiponto confiável.
5. Endereçamento
Para estabelecer uma conexão ou enviar uma mensagem é necessário que um
processo da aplicação do cliente saiba como especificar a aplicação remota.
Necessidade de endereçamento para aplicações de rede, na camada de
transporte isso é feito a partir de portas.
Protocolo de início de conexão – deve saber com qual das aplicações na
máquina vai se comunicar;
Servidor de nomes/diretórios – alternativa que indica serviços registrados
que podem mudar de endereço de rede e transporte.
6. Pacotes e protocolos de
transporte
* IP: É um protocolo de endereçamento, um protocolo de rede. Sua
principal função é fornecer uma maneira para identificar unicamente cada
máquina da rede (endereço IP) e uma maneira de encontrar um caminho entre a
origem e o destino (Roteamento).
* TCP: É um protocolo de transporte e executa importantes funções para
garantir que os dados sejam entregues de uma maneira confiável, ou seja, sem
que os dados sejam corrompidos ou alterados. Além do TCP existe também o
UDP, o qual não faz todas estas verificações mas fornece um serviço de
entrega de pacotes não orientado a conexões.
7. Protocolos de Transporte
São implementados nos hosts finais e não nos roteadores.
Fazem controle de fluxo: necessário como na camada de enlace de dados, só
que fim-a-fim.
Diferença básica: numa pilha de transporte podem existir várias conexões ao
mesmo tempo – exige disponibilidade de buffers – não é um esquema
independente para cada link (o espaço de memória é único para todas as
conexões).
8. Protocolos de Transporte
TCP/IP
* Suas implementações normalmente são em software (bibliotecas);
* No conjunto de protocolos TCP/IP temos a oferta de serviço orientado a
conexão e confiável (protocolo TCP) e serviço não-orientado a conexão
baseado em datagrama (protocolo UDP).
Outros protocolos de transporte: protocolos OSI TP0, TP1, TP2, TP3 e TP4.
9. Protocolo TCP
Baseado na transferência de sequências de bytes entre buffers de transmissão
e recepção, não mudou muito desde sua aparição nos anos 60. Especifica o
formato dos dados e confirmações usadas na transferência daqueles,
garantindo a correta entrega dos dados de clientes a servidores e vice-versa;
sua principal função.
Implementa suporte para detecção de erros e disparo de retransmissões
quando necessário e permite que múltiplas aplicações num sistema possam se
comunicar concorrentemente.
Usando do conceito de portas, permite que vários programas estejam em
funcionamento, ao mesmo tempo, no mesmo computador, trocando
informações com um ou mais serviços/servidores.
10. Protocolo UDP
Utilizado quando o custo da conexão é mais alto do que a transferência.
RPC = Remote Procedure Call, ou, Chamada Remota de Procedimento. A ideia do
RPC é tornar uma chamada de procedimento remoto o mais semelhante
possível de uma chamada local. Nenhuma troca de mensagens é visível pelo
programador.
Além do RPC, o UDP é amplamente utilizado para outra área: aplicações
multimídia em tempo real onde temporização é o mais importante.
11. Comparando UDP e TCP:
Geralmente, as diferenças na maneira como UDP e TCP entregam os dados
assemelham-se às diferenças entre um telefonema e um cartão postal. O TCP
funciona como um telefonema, verificando se o destino está disponível e
pronto para a comunicação. O UDP funciona como um cartão postal — as
mensagens são pequenas e a entrega é provável, mas nem sempre garantida.
UDP TCP
Serviço sem conexão; nem uma sessão é Serviço orientado por conexão; uma sessão é
estabelecida entre os hosts. estabelecida entre os hosts.
UDP não garante ou confirma a entrega ou sequencia TCP garante a entrega através do uso de
de dados, confirmações e entrega sequenciada dos dados.
Os programas que usam UDP são responsáveis por Os programas que usam TCP tem garantia de
oferecer a confiabilidade necessária ao transporte transporte confiável de dados.
de dados.
UDP é rápido, necessita de baixa sobrecarga e pode O TCP é mais lento, necessita de maior sobrecarga e
oferecer suporte a comunicação ponto a ponto e pode oferecer suporte apenas à comunicação ponto
multipontos. a ponto.
Tanto UDP quanto TCP usam portas para identificar as comunicações para cada
programa TCP/IP.
12. Conceito De portas
Porta TCP:
Em resumo: O uso do conceito de portas, permite que vários programas
estejam em funcionamento, ao mesmo tempo, no mesmo computador, trocando
informações com um ou mais serviços/servidores.
Portas UDP:
A idéia é a mesma, por exemplo, se um usuário estiver utilizando vários
programas baseados em UDP, ao mesmo tempo, no seu computador, é através
do uso de portas, que o sistema operacional sabe a qual programa se destina
cada pacote UDP que chega.
13. O processo verdadeiro da evolução
é um ritmo de crescimentos e declínios,
de desenvolvimento e dissoluções que
se sucedem em ordem inelutável.
(Tom Hawrk)