Viabilizando Aplicações Multimídia na Internet. Prof. André Drummond. Depto de Ciência da Computação

Documentos relacionados
Redes de Computadores

Multimédia, Qualidade de Serviço (QoS): O que são?

Redes de Computadores Aula 1

Redes de Computadores Aula 1

Redes de Computadores e a Internet

Redes de Computadores. Introdução

Redes de Computadores e a Internet. Prof.: Agostinho S. Riofrio

Estrutura da Internet

ncia de Redes NGN - NEXT GENERATION NETWORK Hugo Santana Lima hugosl@nec.com.br Porque Telefonia IP?

REDES DE COMPUTADORES INTRODUÇÃO / REVISÕES PARTE 2. Departamento de Informática da Faculdade de Ciências e Tecnologia da UNL 2008 / 2009

Redes de Computadores LTI

3 Qualidade de serviço na Internet

Gerenciamento de redes

Curso de especialização em Teleinformática Disciplina Sistemas Distribuídos Prof. Tacla

Redes de Computadores Aula 3

INTRODUÇÃO ÀS REDES DE COMPUTADORES

Fluxos Multimédia Armazenados

Redes de Computadores e a Internet

Capítulo 7 CAMADA DE TRANSPORTE

REDES DE COMPUTADORES

Parte I: Introdução. Aplicações IP quentes. O que é um protocolo? Serviços da Internet. Visão Geral:

Tipos de Redes. Redes de Dados. Comunicação em Rede Local. Redes Alargadas. Dois tipos fundamentais de redes

Protocolos Multimídia. Alunos: Roberto Schemid Rafael Mansano

Aplicações e redes multimédia

Tipos de Redes. Dois tipos fundamentais de redes

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Redes de Computadores Aula 1

Redes de Computadores

Recomendações da Cisco para Implantação de QoS para VOIP

Capítulo1: introdução

Redes de Computadores I Internet - Conceitos

INTRODUÇÃO A REDES DE COMPUTADORES. Alan Nakai

Camada de Transporte. Protocolos TCP e UDP

Redes de Computadores

Redes de Computadores. Camada de Transporte

Visão geral da arquitetura do roteador

A Camada de Transporte

Redes de Computadores

2 Q Prof. Roberto Jacobe

Qualidade de Serviço de Vídeo em Redes de Dados. Instituto Superior Técnico Novembro de 2004

Redes de Telecomunicações (11382)

Redes Multimídia. Professor: Renê Furtado Felix Redes II - UNIP 1

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010

Qualidade de serviço. Determina o grau de satisfação do usuário em relação a um serviço específico Capacidade da rede de atender a requisitos de

Redes de Computadores e a Internet

Redes de Computadores

Redes de computadores e a Internet

TECNOLOGIA WEB INTERNET PROTOCOLOS

Redes WAN. Prof. Walter Cunha

Introduction to Network Design and Planning

CAMADA DE TRANSPORTE

Solutions. Adição de Ingredientes. TC=0.5m TC=2m TC=1m TC=3m TC=10m. O Tempo de Ciclo do Processo é determinado pelo TC da operação mais lenta.

Contribuição acadêmica

Capítulo 1 Introdução

Arquiteturas de Rede. Prof. Leonardo Barreto Campos

Redes de Computadores. Trabalho de Laboratório Nº7

Redes de Computadores

Tópicos Especiais em Redes Alta Performance. Paulo Aguiar DCC/UFRJ

Capítulo 7 Redes multimídia

Prof. Dr. Valter Roesler: Universidade Federal do Rio Grande do Sul

PROJETO DE REDES

CAMADA DE REDE. UD 2 Aula 3 Professor João Carneiro Arquitetura de Redes 1º e 2º Semestres UNIPLAN

MultiProtocol Label Switching - MPLS

Efficient Locally Trackable Deduplication in Replicated Systems. technology from seed

UNIVERSIDADE. Sistemas Distribuídos


Transmissão de Voz em Redes de Dados (VoIP)

P L A N O D E D I S C I P L I N A

1 Redes de comunicação de dados

Capítulo II - Mecanismos para se prover QoS. Prof. José Marcos C. Brito

Redes WAN Conceitos Iniciais. Prof. Walter Cunha

Redes de computadores. Redes para Internet

Introdução ao VoIP Codecs

Redes de Computadores. Protocolos de comunicação: TCP, UDP

Fernando Albuquerque - fernando@cic.unb.br ADMINISTRAÇÃO TCP/IP. Fernando Albuquerque fernando@cic.unb.br

Redes de Computadores I - Protocolos de Controle: ICMP. por Helcio Wagner da Silva

Cap. 2 O nível aplicação. (3ª parte)

REDES CONVERGENTES PROFESSOR: MARCOS A. A. GONDIM

Redes de Computadores. Camada de Transporte de Dados: protocolos TCP e UDP Prof. MSc Hugo Vieira L. Souza

Rede de Computadores II

Prof. Marcelo Cunha Parte 5

Capítulo 1: Redes de computadores e a Internet. Capítulo1. Redes de. computadores. computador. e a Internet. es e a Internet

Redes de computadores e a Internet. Capítulo 1

Instituto Federal de Santa Catarina Redes de Computadores Aula 02 - Comutação, Estrutura da rede, Protocolos

Comunicação de Dados

Camada de transporte. Camada de transporte

Prof. Marco Aurélio Amaral Henriques (Deptº de Eng. de Computação e Automação Industrial - DCA)

Arquitetura TCP/IP. Parte VI Entrega de pacotes sem conexão (IP) Fabrízzio Alphonsus A. M. N. Soares

MÓDULO 8 Modelo de Referência TCP/IP

Capítulo 7 Redes Multimídia

Transporte. Sua função é: Promover uma transferência de dados confiável e econômica entre máquina de origem e máquina de destino.

Aula 1 Fundamentos. Prof. Dr. S. Motoyama

Redes WAN. Redes de Longa Distância Prof. Walter Cunha

Redes de Computadores

Protocolos Multimídia na Internet. Parte 1 - Conceitos

6 de Julho de Exercício 23 Para que servem portas na camada de transporte?

Redes de Computadores

Controle de Congestionamento em TCP Parte 2. Prof. Dr. S. Motoyama

Redes de computadores e a Internet

Transcrição:

Viabilizando Aplicações Multimídia na Internet Prof. André Drummond Depto de Ciência da Computação

Material utilizado na maioria dos slides Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009.

Multimídia e Qualidade de Serviço: O que é isso? Aplicações multimídia: vídeo e audio em rede ( mídia contínua ) QoS Rede provê à aplicação o nível de desempenho necessário para que a aplicação funcione.

Agenda Classificar aplicações multimídia Serviço provido pela Internet Identificar os serviços de rede que as aplicações necessitam Obtendo o melhor do serviço de melhor esforço

CLASSIFICAR APLICAÇÕES MULTIMÍDIA

Aplicações Multimídia em Rede Classes de aplicações MM: 1) fluxo armazenado 2) fluxo ao-vivo 3) interativo, tempo-real Jitter é a variabilidade do retardo dos pacotes pertencentes a um mesmo fluxo Características fundamentais: Typicamente sensível ao retardo retardo fim-a-fim retardo jitter Tolerante a falhas: perdas infrequentes não são relevantes Inverso do que ocorre com a transmissão de dados.

Multimídia de Fluxo Armazenado Fluxo armazenado: mídia armazenada na fonte transmitida para o cliente streaming: reprodução no cliente inicia antes da chegada de todos os dados restrição de tempo para dados que ainda precisam ser transmitidos: em tempo para reprodução

Multimídia de Fluxo Armazenado: O que é isso? Cumulative data 1. video recorded 2. video sent network delay 3. video received, played out at client time streaming: nesse momento, o cliente executa a primeira parte do vídeo, enquanto o servidor ainda está enviando a última parte do vídeo

Multimídia de Fluxo Armazenado: Interatividade Videocassete: cliente pode congelar, voltar, avançar, usar a barra de rolagem do tempo 10 seg retardo inicial OK 1-2 seg reposta ao comando OK restrição de tempo para dados que ainda precisam ser transmitidos: em tempo para reprodução

Multimídia de Fluxo Ao-Vivo Exemplos: rádio pela Internet evento esportivo ao-vivo Streaming (como fluxo armazenado) buffer para playback (replay) playback pode ocorrer dezenas de segundos após a transmissão ainda possui restrição de tempo Interatividade impossível avançar possível voltar e congelar!

Multimídia Interativa de Tempo-Real applicações: telefonia IP, vídeo conferência, mundos interativos distribuídos requisito de retardo fim-a-fim: áudio: < 150 mseg bom, < 400 mseg OK inclui retardo da aplicação (empacotamento) e da rede retardos mais altos perceptíveis, dificulta a interatividade

Algumas palavras sobre compressão de áudio analog signal sampled at constant rate telephone: 8,000 samples/sec CD music: 44,100 samples/sec each sample quantized, i.e., rounded e.g., 2 8 =256 possible quantized values each quantized value represented by bits 8 bits for 256 values example: 8,000 samples/sec, 256 quantized values --> 64,000 bps receiver converts bits back to analog signal: some quality reduction Exemplo de taxas CD: 1.411 Mbps MP3: 96, 128, 160 kbps Internet telephony: 5.3 kbps and up

Algumas palavras sobre compressão de vídeo video: sequence of images displayed at constant rate e.g. 24 images/sec digital image: array of pixels each pixel represented by bits redundancy spatial (within image) temporal (from one image to next) Exemplos: MPEG 1 (CD-ROM) 1.5 Mbps MPEG2 (DVD) 3-6 Mbps MPEG4 (often used in Internet, < 1 Mbps) Pesquisa: Vídeo em camadas (escalável) adapta as camadas a quantidade de banda deisponível

SERVIÇO PROVIDO PELA INTERNET

Camadas da Internet (TCP/IP) Transporte: reponsável pela transferência de dados entre aplicações Protocolos: TCP, UDP Rede: reponsável pelo roteamento dos dados da origem até o destino Protocolo IP transporte rede

Estrutura da Internet: rede de redes Um pacote passa por várias redes desde a origem até o destino! Large Content Distributor (e.g., Akamai) IXP Tier 2 ISP Tier 2 ISP Tier 2 ISP Tier 1 ISP IXP Large Content Distributor (e.g., Google) Tier 2 ISP Tier 2 ISP Tier 1 ISP Tier 2 ISP Tier 2 ISP Tier 1 ISP Tier 2 ISP Tier 2 ISP

Exemplo real de uma rota na Internet traceroute: gaia.cs.umass.edu to www.eurecom.fr 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms cabo transoceânico

O núcleo da rede Malha de roteadores interconectados

Como ocorre o retardo na rede? Pacotes são enfileirados nos buffers dos roteadores packet arrival rate to link exceeds output link capacity packets queue, wait for turn packet being transmitted (delay) A d nodal = d proc + d queue + d trans + d prop B packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers

Como ocorre a perda de pacotes? queue (aka buffer) preceding link in buffer has finite capacity packet arriving to full queue dropped (aka lost) lost packet may be retransmitted by previous node, by source end system, or not at all A buffer (waiting area) packet being transmitted B packet arriving to full buffer is lost

Quantidade de banda disponível? per-connection endend throughput: min(r c,r s,r/10) in practice: R c or R s is often bottleneck R s R s R s R R c R c R c 10 connections (fairly) share backbone bottleneck link R bits/sec

Protocolos de Transporte da Internet Entrega confiável (TCP) controle de congestionamento controle de fluxo estabelecimento de conexão Entrega não confiável (UDP) extensão do IP Serviços não disponíveis garantia de entrega garantia de retardo garantia de banda application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical

Multimídia Sobre a Internet TCP/UDP/IP: serviço de melhor esforço sem garantias de retardo, perda e banda??????? Mas vc disse que as aplicações multimídia requerem QoS para funcionarem!???? As aplicações multimídia de hoje utilizam técnicas no nível da aplicação para mitigar os efeitos do retardo, perdas e pouca banda

SERVIÇOS DE REDE QUE AS APLICAÇÕES NECESSITAM

Multimídia de Fluxo Armazenado application-level streaming techniques for making the best out of best effort service: client-side buffering use of UDP versus TCP multiple encodings of multimedia Media Player jitter removal decompression error concealment graphical user interface w/ controls for interactivity

Multimídia na Internet: abordagem simplista audio, video not streamed: audio or video stored in file files transferred as HTTP object received in entirety at client then passed to player no, pipelining, long delays until playout!

Multimídia na Internet: abordagem de fluxo browser GETs metafile browser launches player, passing metafile player contacts server server streams audio/video to player

Transmitindo de um Servidor de Fluxo allows for non-http protocol between server, media player UDP or TCP for step (3), more shortly

Multimídia de Fluxo: Client Buffering Cumulative data constant bit rate video transmission variable network delay client video reception buffered video constant bit rate video playout at client client playout delay time Armazenamento no cliente, o retardo de reprodução compensa o retardo e jitter adicionado pela rede

Multimídia de Fluxo: Client Buffering variable fill rate, x(t) constant drain rate, d buffered video Armazenamento no cliente, o retardo de reprodução compensa o retardo e jitter adicionado pela rede 7-30

Multimídia de Fluxo: UDP ou TCP? UDP TCP server sends at rate appropriate for client (oblivious to network congestion!) often send rate = encoding rate = constant rate then, fill rate = constant rate - packet loss short playout delay (2-5 seconds) to remove network jitter error recover: time permitting send at maximum possible rate under TCP fill rate fluctuates due to TCP congestion control larger playout delay: smooth TCP delivery rate HTTP/TCP passes more easily through firewalls

Multimídia de Fluxo: taxas dos clientes 1.5 Mbps encoding 28.8 Kbps encoding Q: how to handle different client receive rate capabilities? 28.8 Kbps dialup 100 Mbps Ethernet A: server stores, transmits multiple copies of video, encoded at different rates

OBTENDO O MELHOR DO SERVIÇO DE MELHOR ESFORÇO 33

Aplicações Multimídia em Tempo-Real PC-2-PC phone Skype PC-2-phone Dialpad Net2phone Skype videoconference with webcams Skype Polycom Going to now look at a PC-2-PC Internet phone example in detail

Multimídia Interativa: Internet Phone Introduce Internet Phone by way of an example speaker s audio: alternating talk spurts, silent periods. 64 kbps during talk spurt pkts generated only during talk spurts 20 msec chunks at 8 Kbytes/sec: 160 bytes data application-layer header added to each chunk. chunk+header encapsulated into UDP segment. application sends UDP segment into socket every 20 msec during talkspurt

Internet Phone: Retardo e Perda de Pacotes perda pela rede: IP datagram lost due to network congestion (router buffer overflow) perda pelo retardo: IP datagram arrives too late for playout at receiver delays: processing, queueing in network; endsystem (sender, receiver) delays typical maximum tolerable delay: 400 ms tolerância a perdas: depending on voice encoding, losses concealed, packet loss rates between 1% and 10% can be tolerated.

Retardo Jitter Cumulative data constant bit rate transmission variable network delay (jitter) client reception buffered data constant bit rate playout at client client playout delay time Considera retardo fim-a-fim de 2 pacotes consecutivos: mais ou menos 20 ms

Internet Phone: Retardo de Reprodução Fixo receiver attempts to playout each chunk exactly q msecs after chunk was generated. chunk has time stamp t: play out chunk at t+q. chunk arrives after t+q: data arrives too late for playout, data lost tradeoff in choosing q: large q: less packet loss small q: better interactive experience

Retardo de Reprodução Fixo sender generates packets every 20 msec during talk spurt. first packet received at time r first playout schedule: begins at p second playout schedule: begins at p

Retardo de Reprodução Adaptativo (1) Objetivo: minimize playout delay, keeping late loss rate low Abordagem: adaptive playout delay adjustment: estimate network delay, adjust playout delay at beginning of each talk spurt. silent periods compressed and elongated. chunks still played out every 20 msec during talk spurt. dynamic estimate of average delay at receiver: where u is a fixed constant (e.g., u =.01).

Reprodução Adaptativa (2) Q: Como o receptor determina quando o pacote é o primeiro em uma rajada de fala? if no loss, receiver looks at successive timestamps. difference of successive stamps > 20 msec -->talk spurt begins. with loss possible, receiver must look at both time stamps and sequence numbers. difference of successive stamps > 20 msec and sequence numbers without gaps --> talk spurt begins.

Recuperação de Perda de Pacotes (1) Forward Error Correction (FEC): simple scheme for every group of n chunks create redundant chunk by exclusive OR-ing n original chunks send out n+1 chunks, increasing bandwidth by factor 1/n. can reconstruct original n chunks if at most one lost chunk from n+1 chunks retardo de reprodução: enough time to receive all n+1 packets compromisso: increase n, less bandwidth waste increase n, longer playout delay increase n, higher probability that 2 or more chunks will be lost

Recuperação de Perda de Pacotes (2) 2nd FEC scheme piggyback lower quality stream send lower resolution audio stream as redundant information e.g., nominal stream PCM at 64 kbps and redundant stream GSM at 13 kbps. Perdas não consecutivas podem ser recuperadas! can also append (n-1)st and (n-2)nd low-bit rate chunk

Recuperação de Perda de Pacotes (3) Entrelaçamento chunks divided into smaller units for example, four 5 msec units per chunk packet contains small units from different chunks se houver a perda de um pacote, ainda possui a maior parte do dado Sem redundância, mas aumenta o retardo de reprodução

Redes de Distribuição de Conteúdo (CDN) Content replication challenging to stream large files (e.g., video) from single origin server in real time solution: replicate content at hundreds of servers throughout Internet content downloaded to CDN servers ahead of time placing content close to user avoids impairments (loss, delay) of sending content over long paths CDN server typically in edge/access network origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia

Redes de Distribuição de Conteúdo (CDN) Content replication CDN (e.g., Akamai) customer is the content provider (e.g., CNN) CDN replicates customers content in CDN servers. when provider updates content, CDN updates servers origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia

CDN example 1 origin server HTTP request for www.foo.com/sports/sports.html client 2 3 CDN s authoritative DNS server DNS query for www.cdn.com HTTP request for CDN server near client www.cdn.com/www.foo.com/sports/ruth.gif origin server (www.foo.com) distributes HTML replaces: http://www.foo.com/sports.ruth.gif with sports/ruth.gif http://www.cdn.com/www.foo.com/ CDN company (cdn.com) distributes gif files uses its authoritative DNS server to route redirect requests

Resumo: Multimídia na Internet (truques) use UDP para evitar o controle congestionamento do TCP (retardo) para o tráfego sensível ao tempo lado-cliente retardo de reprodução adaptativo: compensa o retardo lado servidor ajusta o fluxo para a banda de acordo com a banda disponível no caminho entre cliente e servidor escolhe entre taxas de fluxos pre-codificados Servidores com codificação dinâmica de taxa recuperação de erros (UDP) FEC, entrelaçamento, cancelamento de erros retransmissão, permitidas pelo tempo CDN: trás o conteúdo para perto dos clientes

PROBLEMA RESOLVIDO?

Voz (VoIP) Presente Futuro

Vídeo (Stream) Presente Futuro

Resumo dos princípios de QoS QoS para aplicações em redes classificação de pacotes isolação: programação e policiamento alta eficiência de utilização admissão de chamadas Mas isso fica para próxima aula venha fazer pós-graduação!

THE END