Redes de Computadores I Prof Mateus Raeder Universidade

  • Slides: 36
Download presentation
Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos

Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos Redes de Computadores I – Prof. Mateus Raeder - São Leopoldo -

Aplicações Multimídia • Crescimento de aplicações que recebem e transferem áudio e vídeo pela

Aplicações Multimídia • Crescimento de aplicações que recebem e transferem áudio e vídeo pela internet • Aplicações Multimídia também são conhecidas como “aplicações de mídia de taxa constante” – – – Vídeos de entretenimento Telefonia IP Rádio pela Internet Teleconferências Aprendizado a distância Etc. . . Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia: áudio e vídeo na rede (“mídia contínua”) Redes de Computadores I –

Aplicações Multimídia: áudio e vídeo na rede (“mídia contínua”) Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Este tipo de aplicação se difere muito das aplicações vistas anteriormente

Aplicações Multimídia • Este tipo de aplicação se difere muito das aplicações vistas anteriormente – – E-mail Imagens FTP DNS • Aplicações Multimídias são sensíveis a atrasos, mas podem tolerar perdas de dados ocasionais – Modelos de comunicação tradicionais não são uma boa escolha para estes fins – Overhead em excesso, ocasionando atrasos Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Sensíveis ao atraso – Atraso fim a fim • Acúmulo de

Aplicações Multimídia • Sensíveis ao atraso – Atraso fim a fim • Acúmulo de atrasos de processamento, fila, propagação, transmissão ao longo do trajeto entre origem e destino • Para aplicações de áudio altamente interativas (telefone por Internet, por exemplo): – Atrasos de menores do que 150 milissegundos não são percebidos pelo ouvido humano – Atrasos entre 150 e 400 milissegundos são aceitáveis (mas não ideal) – Atrasos maiores que 400 milissegundos podem atrapalhar consideravelmente a conversação Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Sensíveis ao atraso – Jitter • Variação do atraso dos pacotes

Aplicações Multimídia • Sensíveis ao atraso – Jitter • Variação do atraso dos pacotes dentro de um mesmo fluxo • Causados por atrasos aleatórios nas filas dos roteadores • Assim, o tempo entre o momento que o pacote é gerado na fonte e chega no destino pode variar de pacote para pacote • Isto chama-se variação do atraso • Exemplo – 2 pacotes consecutivos em uma rajada de voz com 20 milissegundos de diferença entre um e outro » No receptor, este tempo pode ser maior ou menor – Analogia da rodovia Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Sensíveis ao atraso – Jitter • Se for ignorada, esta variação

Aplicações Multimídia • Sensíveis ao atraso – Jitter • Se for ignorada, esta variação pode resultar em níveis inteligíveis de áudio • A variação do atraso pode ser removida com a utilização de alguns mecanismos – Números de sequência » Remetente aumenta em 1 o número de sequência para cada pacote que gera – Marcas de tempo » Remetente marca cada porção com o tempo em que foi gerada – Atraso de reprodução » Atrasar a reprodução das porções de áudio no receptor Redes de Computadores I – Prof. Mateus Raeder

Dados acumulados Variação do atraso (jitter) transmissão de áudio a uma taxa constante recepção

Dados acumulados Variação do atraso (jitter) transmissão de áudio a uma taxa constante recepção do áudio no cliente atraso variável da rede (jitter) atraso de reprodução do áudio a taxa constante no cliente tempo • Armazenamento no lado do cliente, o atraso de reprodução compensa a variação do atraso (jitter) provocados pela rede Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia Classes de aplicações de Multimídia: 1) Áudio e vídeo de fluxo contínuo

Aplicações Multimídia Classes de aplicações de Multimídia: 1) Áudio e vídeo de fluxo contínuo (Streams) armazenados 2) Áudio e vídeo de fluxo contínuo ao vivo 3) Áudio e vídeo interativos em tempo real Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Fluxo contínuo, áudio e vídeo armazenados – O cliente solicita a

Aplicações Multimídia • Fluxo contínuo, áudio e vídeo armazenados – O cliente solicita a qualquer momento arquivos de áudio e vídeos comprimidos que estão armazenados no servidor – 3 características importantes: • Mídia armazenada: o conteúdo foi pré-gravado e armazenado no servidor – Pode pausar, voltar, avançar, etc • Fluxo contínuo: o cliente inicia a reprodução alguns segundos após começar a receber os arquivos do servidor Redes de Computadores I – Prof. Mateus Raeder

Dados acumulados Fluxo Contínuo Multimídia Armazenada: Como funciona? 2. vídeo transmitido 1. vídeo gravado

Dados acumulados Fluxo Contínuo Multimídia Armazenada: Como funciona? 2. vídeo transmitido 1. vídeo gravado atraso da rede 3. vídeo recebido, reproduzido no cliente tempo Fluxo contínuo: neste instante, o cliente está reproduzindo uma parte anterior do vídeo, enquanto o servidor ainda está transmitindo as partes seguintes Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Fluxo contínuo, áudio e vídeo armazenados – O cliente solicita a

Aplicações Multimídia • Fluxo contínuo, áudio e vídeo armazenados – O cliente solicita a qualquer momento arquivos de áudio e vídeos comprimidos que estão armazenados no servidor – 3 características importantes: • Mídia armazenada: o conteúdo foi pré-gravado e armazenado no servidor – Pode pausar, voltar, avançar, etc • Fluxo contínuo: o cliente inicia a reprodução alguns segundos após começar a receber os arquivos do servidor. – Evita a necessidade de armazenar todo a mídia antes • Reprodução contínua: quando começa a reprodução, deve prosseguir normalmente, com sérias restrições aos atrasos – Devem ser recebidos a tempo de serem reproduzidos Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Áudio e vídeo de fluxo contínuo ao vivo – Semelhante à

Aplicações Multimídia • Áudio e vídeo de fluxo contínuo ao vivo – Semelhante à transmissão de rádio e televisão – Permite que sejam recebidas transmissões de qualquer parte do mundo – Como o fluxo não é armazenado, não se pode adiantar o programa que está sendo recebido – Entretanto, os dados são armazenados localmente • Pausa, retrocesso podem ser realizadas em algumas aplicações – Mesma idéia da reprodução contínua – Atrasos causam danos “mais severos” do que em mídia armazenada Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Vídeo e áudio interativos em tempo real – Permite comunicação entre

Aplicações Multimídia • Vídeo e áudio interativos em tempo real – Permite comunicação entre as pessoas em tempo real • Telefonia pela Internet • Videoconferências – Usuários podem se mover ou falar a qualquer instante – Os atrasos devem ser menores do que algumas centenas de segundos Redes de Computadores I – Prof. Mateus Raeder

Multimídia Sobre a Internet Atual TCP/UDP/IP: “serviço de melhor esforço” • sem garantias sobre

Multimídia Sobre a Internet Atual TCP/UDP/IP: “serviço de melhor esforço” • sem garantias sobre atrasos, perdas As aplicações MM na Internet atual usam técnicas da camada de aplicação para minimizar (da melhor forma) efeitos de atrasos e perdas • • Enviar áudio e vídeo por UDP Retardar a reprodução no receptor Marcas de tempo para saber quando devem ser reproduzidos Enviar informações redundantes para diminuir efeitos de perda Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Aplicações de áudio e vídeo de fluxo contínuo tornaramse popular –

Aplicações Multimídia • Aplicações de áudio e vídeo de fluxo contínuo tornaramse popular – Custo de armazenamento em disco muito baixo • Mais multimídia armazenada na Internet – Melhorias na infra-estrutura na Internet • Acesso doméstico de alta velocidade, por exemplo • Clientes solicitam arquivos de áudio e vídeo residentes no servidor – Podem servidores Web “comuns” – Podem servidores de fluxo contínuo especiais para fluxo contínuo Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Servidor, então, envia o arquivo desejado • Antes de enviar o

Aplicações Multimídia • Servidor, então, envia o arquivo desejado • Antes de enviar o arquivo de áudio/vídeo – Arquivo é segmentado – Os segmentos são encapsulados em cabeçalhos especiais para tráfego de áudio e vídeo • RTP é um protocolo padrão para este encapsulamento – Quando começa a receber o arquivo, o cliente começa a reprodução • Com interatividade (pausa, avanço, retrocesso, etc) • Esta interatividade necessita um protocolo específico – RTSP é responsável pela interatividade com o usuário Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Geralmente, é solicitado através de um cliente Web – Ou seja,

Aplicações Multimídia • Geralmente, é solicitado através de um cliente Web – Ou seja, um browser • A reprodução não está integrada com estes clientes Web – Necessidade de uma aplicação auxiliar separada para reproduzir • Comumente chamada de transdutor – Real Player, Windows Media Player, etc • Desempenham algumas funções: – – Descompressão Remoção da variação do atraso Correção de erros Interface gráfica de usuário com botões de controle • Podem ser utilizados programas especiais para inserir a interface do transdutor dentro da janela do browser – Plug-ins Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Acesso a áudio e vídeo a partir de um servidor Web

Aplicações Multimídia • Acesso a áudio e vídeo a partir de um servidor Web – Quando um áudio está no servidor Web, ele é um objeto normal dentro do sistema de arquivos (como HTML e JPEG) – Usuário quer um arquivo de áudio • • Conexão TCP é criada Envia requisição HTTP para o objeto Servidor anexa o arquivo e responde Cabeçalho indica a codificação específica • Browser analisa o tipo e chama o transdutor correspondente • Transdutor reproduz o arquivo – Objeto inteiro deve ser armazenado • Atraso inaceitável Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Assim, o servidor deve enviar o arquivo de áudio/vídeo diretamente para

Aplicações Multimídia • Assim, o servidor deve enviar o arquivo de áudio/vídeo diretamente para o transdutor – Uma conexão direta entre o servidor e transdutor – Utilização de um metarquivo • Contém informações sobre o arquivo a ser entregue Redes de Computadores I – Prof. Mateus Raeder

Aplicações Multimídia • Usuário sobre o hiperlink do arquivo de áudio/vídeo – Este link

Aplicações Multimídia • Usuário sobre o hiperlink do arquivo de áudio/vídeo – Este link não aponta para o objeto, mas sim para um metarquivo • Contém a URL do arquivo • Mensagem de resposta HTTP contém um tipo que identifica a aplicação específica (transdutor) • Browser examina o tipo e passa o metarquivo para o transdutor • Transdutor estabelece uma conexão TCP com o servidor HTTP – Solicitando o arquivo • Arquivo é enviado dentro de uma resposta HTTP Comunicação realizada via HTTP, logo, TCP Redes de Computadores I – Prof. Mateus Raeder

Fluxos a partir de um servidor de fluxo contínuo • Esta arquitetura permite o

Fluxos a partir de um servidor de fluxo contínuo • Esta arquitetura permite o uso de protocolos não-HTTP entre o servidor e o reprodutor de mídia (transdutor) • Também pode usar UDP ao invés do TCP Redes de Computadores I – Prof. Mateus Raeder

RTSP (Protocolo de fluxo contínuo em tempo real) • Usuários querem controlar a reprodução

RTSP (Protocolo de fluxo contínuo em tempo real) • Usuários querem controlar a reprodução da mídia – Avançar, pausar, reposicionar em outro ponto, etc • RTSP (real-time streaming protocol) permite este interação – Controle da transmissão pelo transdutor • Funciona fora da banda – Mensagens RTSP são enviadas fora da banda – Corrente de mídia dentro da banda – Usa a porta 544 (roda sobre TCP ou UDP) Redes de Computadores I – Prof. Mateus Raeder

Exemplo RTSP Cenário: • metarquivo enviado para o browser web • browser inicia o

Exemplo RTSP Cenário: • metarquivo enviado para o browser web • browser inicia o tocador/transdutor • Tocador/transdutor estabelece uma conexão de controle RTSP e uma conexão de dados para o servidor de mídia contínua Redes de Computadores I – Prof. Mateus Raeder

Operação do RTSP Redes de Computadores I – Prof. Mateus Raeder

Operação do RTSP Redes de Computadores I – Prof. Mateus Raeder

Exemplo de Metarquivo <title>Twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="PCMU/8000/1" src =

Exemplo de Metarquivo <title>Twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="PCMU/8000/1" src = "rtsp: //audio. example. com/twister/audio. en/lofi"> <track type=audio e="DVI 4/16000/2" pt="90 DVI 4/8000/1" src="rtsp: //audio. example. com/twister/audio. en/hifi"> </switch> <track type="video/jpeg" src="rtsp: //video. example. com/twister/video"> </group> </session> Redes de Computadores I – Prof. Mateus Raeder

Perda de Pacotes • FEC (Correção de erros e repasse) Corrente Original 1 Redundância

Perda de Pacotes • FEC (Correção de erros e repasse) Corrente Original 1 Redundância 1 1 2 Corrente Recebida 1 1 2 Corrente Reconstituída 1 2 2 3 Perda 4 3 4 3 Redes de Computadores I – Prof. Mateus Raeder 4

Perda de Pacotes • Intercalamento Corrente Original 1 2 3 4 5 6 7

Perda de Pacotes • Intercalamento Corrente Original 1 2 3 4 5 6 7 8 9 10 11 12 Corrente Intercalada 1 4 7 10 2 5 8 11 3 6 9 12 1 4 7 10 Perda 3 6 9 12 3 4 6 9 10 Corrente Recebida Corrente Reconstituída 1 7 Redes de Computadores I – Prof. Mateus Raeder 12

Protocolo de Tempo Real (RTP) • RTP = Real Time Protocol • RTP especifica

Protocolo de Tempo Real (RTP) • RTP = Real Time Protocol • RTP especifica uma estrutura de pacote para pacotes que transportam dados de áudio e de vídeo • RFC 1889. • Pacote RTP provê – Identificação do tipo da carga – Numeração da seqüência de pacotes – Marca de tempo • RTP roda nos sistemas terminais. • Pacotes RTP são encapsulados em segmentos UDP • Interoperabilidade: Se duas aplicações de telefone Internet rodarem RTP então elas poderão trabalhar em conjunto Redes de Computadores I – Prof. Mateus Raeder

RTP roda sobre UDP Bibliotecas RTP provêm uma interface da camada de transporte que

RTP roda sobre UDP Bibliotecas RTP provêm uma interface da camada de transporte que estende o UDP: • números de portas, endereços IP • verificação de erro através de segmentos • identificação do tipo da carga • numeração da seqüência de pacotes • marca de tempo Redes de Computadores I – Prof. Mateus Raeder

RTP e Qo. S • RTP não provê nenhum mecanismo para garantir a entrega

RTP e Qo. S • RTP não provê nenhum mecanismo para garantir a entrega em tempo dos dados nem nenhuma outra garantia de qualidade de serviço. • O encapsulamento RTP é visto apenas nos sistemas finais – não é visto por roteadores intermediários. – Roteadores provendo o serviço tradicional Internet de melhor esforço não fazem nenhum esforço adicional para garantir que os pacotes RTP cheguem ao destino em tempo. Redes de Computadores I – Prof. Mateus Raeder

Cabeçalho RTP Tipo da carga útil (7 bits): Usado para indicar o tipo de

Cabeçalho RTP Tipo da carga útil (7 bits): Usado para indicar o tipo de codificação que está sendo usada. Se o transmissor modificar a codificação no meio de uma conferência, o transmissor informará o receptor através do campo do tipo de carga útil. Número de Seqüência (16 bits): O número de seqüência é incrementado de um para cada pacote RTP enviado; pode ser usado para detectar a perda de pacotes e para restaurar a sequência de pacotes. Redes de Computadores I – Prof. Mateus Raeder

Cabeçalho RTP (2) Cabeçalho RTP • Campo de marca de tempo (32 bits). Reflete

Cabeçalho RTP (2) Cabeçalho RTP • Campo de marca de tempo (32 bits). Reflete o instante de amostragem do primeiro byte no pacote de dados RTP. • Campo de identificador de sincronização da fonte (SSRC) (32 bits). Identifica a fonte de um fluxo RTP. Cada fluxo numa sessão RTP deve possuir um SSRC distinto. Redes de Computadores I – Prof. Mateus Raeder

Protocolo de Controle de Tempo Real (RTCP) • Real-Time Control Protocol • Trabalha em

Protocolo de Controle de Tempo Real (RTCP) • Real-Time Control Protocol • Trabalha em conjunto com o RTP. • Cada participante numa sessão RTP periodicamente transmite pacotes de controle RTCP para todos os demais participantes. • Cada pacote RTCP contém relatórios do transmissor e/ou receptor – relatam estatísticas úteis para as aplicações. • Estas estatísticas incluem o número de pacotes enviados, o número de pacotes perdidos, jitter entre chegadas, etc. • Esta realimentação de informação para as aplicações pode ser usada para controlar o desempenho – O transmissor pode modificar as suas taxas de transmissão baseadas na realimentação. Redes de Computadores I – Prof. Mateus Raeder

RTCP - Continuação • Para uma sessão RTP há tipicamente um único endereço multicast;

RTCP - Continuação • Para uma sessão RTP há tipicamente um único endereço multicast; todos os pacotes RTP e RTCP pertencentes à sessão usam o endereço multicast. • Pacotes RTP e RTCP são diferenciados uns dos outros através do uso de números de portas distintos. • Para limitar o tráfego, cada participante reduz o seu tráfego RTCP à medida que cresce o número de participantes da conferência. Redes de Computadores I – Prof. Mateus Raeder

Exercícios • As figuras a seguir apresentam três esquemas para fluxo contínuo de mídia

Exercícios • As figuras a seguir apresentam três esquemas para fluxo contínuo de mídia armazenada. Quais as vantagens e as desvantagens de cada esquema? Redes de Computadores I – Prof. Mateus Raeder