User Datagram Protocol - ppt carregar
PublicouAnthony Palma Alterado mais de 4 anos atrás
Apresentação em tema: "User Datagram Protocol"— Transcrição da apresentação:
UDP Amirton Chagas Marcio Neves Petrônio Gomes Tiago Farias Victor Hazin User Datagram Protocol
2 Agenda Introdução Características Gerais Porque utilizar o UDP
Estrutura do segmento UDP Funcionamento do UDP Vantagens Deslealdade de UDP Confiabilidade em UDP Aplicações Considerações finais
3 Introdução O User Datagram Protocol (UDP) é um protocolo simples da camada de transporte Foi desenvolvido por David P. Reed em 1980 É definido na RFC 768 Surgiu da necessidade de um protocolo para prover acesso ao IP sem os serviços oferecidos pelo TCP
Protocolo Internet de transporte "sem ornamentos" e com "elementos básicos" Serviço "best effort", segmentos UDP podem ser: Perdidos Entregues fora de ordem à aplicação não-orientado à conexão: sem handshaking entre o emissor e receptor UDP Cada segmento UDP é tratado de forma independente dos outros
Não é um protocolo confiável À parte sua função de multiplexação/demultiplexação e da verificação de erros, o UDP não adiciona nada ao IP
6 Sem estabelecimento de conexão (que pode adicionar atraso)
Porque utilizar o UDP Sem estabelecimento de conexão (que pode adicionar atraso) simples: sem estado de conexão no emissor nem no receptor Cabeçalho do segmento pequeno Nenhum controle de congestionamento (que também pode adicionar atraso)
7 Estrutura do segmento UDP
O cabeçalho UDP é composto de quatro campos de 2 bytes cada: Porta de origem Porta de destino Soma de verificação (Checksum) Comprimento da mensagem Os dados provenientes da aplicação ocupam o campo de dados do segmento
8 Estrutura do segmento UDP
9 Funcionamento O UDP faz a entrega de mensagens independentes, designadas por datagramas, entre aplicações ou processos, em sistemas host. A entrega pode ser feita fora de ordem e datagramas podem ser perdidos. A integridade dos dados pode ser conferida por um "checksum" (um campo no cabeçalho de checagem por soma) baseado em complemento de um, de 16 bits
10 Funcionamento No UDP não existem checagens e nem confirmação alguma. Os dados são transmitidos apenas uma vez, incluindo apenas um frágil, e opcional, sistema de CRC de 16 bits Os pacotes que chegam corrompidos são simplesmente descartados, sem que o emissor sequer saiba do problema.
11 Vantagens Mais adequado para fluxos de dados em tempo real, especialmente aqueles que admitem perda ou corrompimento de parte de seu conteúdo, tais como vídeos ou voz. O UDP não perde tempo com criação ou destruição de conexões Maior performance em relação ao TCP por não possuir controle de congestionamento Durante uma conexão, o UDP troca apenas 2 pacotes, enquanto no TCP esse número é superior a 10
12 Vantagens Simulação de dois fluxos independentes, um TCP e um UDP, cada um em uma conexão wireless (802.11b) distinta.
13 Vantagens Suporte a broadcasting e multicasting.
Caso esses recursos sejam necessários, o UDP deverá ser utilizado. Este tipo de aplicação geralmente admitem perda de pacotes ou fazem retransmissões constantes (tal como o ocorre no protocolo DHCP). A diferença das latências de cada pacote (jitter) em UDP é muito pequena. Característica interessante para aplicações que enviem dados "ao vivo".
14 Aplicações Freqüentemente usado para aplicações multimídia de streaming Tolerante à perdas Sensível à taxa de dados Outros usos do UDP DNS Caso o pedido não seja respondido ou chegue corrompido, a aplicação simplesmente pede novamente. O uso de TCP para DNS exigiria servidores de maior poder computacional para gerenciar as conexões exigidas pelo protocolo. SNMP
15 Deslealdade de UDP UDP não possui controle de congestionamento
TCP tem... Ao competir num mesmo link, fluxos UDP podem diminuir drasticamente a performance dos fluxos TCP Perigo de usar UDP indiscriminadamente para fluxos multimídia
16 Deslealdade de UDP Resultado de simulações com dois fluxos, um TCP e um UDP, cada um enviando dados a 0,95Mbps cada uma: No mesmo canal de 2Mbps No mesmo canal de 1Mbps TCP: delay médio de 73ms e 2% de perdas UDP: delay de até 85ms e 0% de perdas TCP: delay médio de 2 segundos e 20% de perdas UDP: delay médio de 200ms e 1,28% de perdas
17 Confiabilidade em UDP É possível, no nível de aplicação, implementar confiabilidade com UDP Maior performance por não ter o controle de congestionamento de TCP -  Maior complexidade das aplicações -  Existem bibliotecas disponíveis que proveêm uma camada de confiabilidade pronta para UDP -  (RakNet) Maior custo de processamento Geralmente compensado na performance da transmissão Na prática, aproveita o melhor dos dois mundos.
18 Considerações Finais Embora o processamento dos pacotes UDP seja realmente mais rápido, quando as garantias de confiabilidade e ordenação são necessárias, é pouco provável que uma implementação em UDP obterá resultados melhores, em termos de processamento, do que o uso direto do TCP O protocolo UDP não deveria ser utilizado para fluxos de bytes confiáveis, tais como a transferência de arquivos. O abuso no uso de UDP pode levar a um colapso na rede, por seu comportamento sem controle de congestionamento
19 Referências rd_series_nice_guys_fi.html nal/node6.html html Kurose, J., Ross, K., Redes de Computadores e a Internet: uma nova abordagem