42
ABR Adaptive bit Rate

Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

ABR Adaptive bit Rate

Page 2: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Cenário Pré ABR Opções de transporte;   CDN, P2P ou uma combinação CDN apoiada por P2P

  A audiência de conteúdo é fragmentada Múltiplas plataformas de acesso (browsers ou aplicações nativas) Múltiplas telas (tablets, móvel, desktops, smartTV) Múltiplas redes de acesso (wifi, fixa, 4G)

Page 3: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Download Progressivo

Único Arquivo 1280 x 720 pixels

Distorção para encher a janela. Buffering. Ok na tela, mas buffering. Grande mas OK, buffering. Video bufferiza devido a rede.

Dois problemas: • Qualidade das imagens • Bufferização durante a sessão

Page 4: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

ABR: Múltiplas Representações

Page 5: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

ABR: Adaptação as condições

Page 6: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Visão Geral

Page 7: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Servidor Codificador (e.g. ffmpeg)

Transcodifica o vídeo em diferentes representações   As representações combinam

Resolução   Taxa de bits

  FPS

Empacotador (e.g. mp4box) Prepara um arquivo de descrição (MPD, Playlist) da mídia versionada para ser publicado

Servidor Web (e.g apache) Atende as requisições;

Controla o acesso ao conteúdo

Desafio é reduzir custos

Page 8: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Protocolo de Comunicação   HTTP: Requisições feitas a partir da descrição do conteúdo

Torna a aplicação amigável a rede; Dinâmica de Transferência é ditada pelo TCP Cliente experimenta os efeitos dos componentes de latência;

Evita configuração no cliente para interagir com proxys/Firewalls

Usa tecnologia de cache implementada na Internet, e.g. CDN, Caches no ISP.

Page 9: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Cliente Cliente percebe as condições da sessão e requisita a qualidade mais adequada para manter a dinâmica da sessão

Condições da sessão Baseado no estado da rede Baseado no estado da aplicação

Interpretação dos estados Agressivo Conservador Moderado

Page 10: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Estado da rede Métricas observadas   Latência

Vazão

Abordagens:   Ad-hoc (limiares)

Aprendizado Máquina(TCP)

Teoria de Controle(PID)

Page 11: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Estado da Aplicação Métricas observadas

Ocupação do buffer

  Stalls (frequência/duração)

Abordagens:   Ad-hoc (Limiares)

Teoria de Controle (PID)

Page 12: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Interpretação dos estados Agressivo

Percepção instantânea do estado • A vazão alcançada com o último segmento • O nível atual do buffer

Atinge rapidamente as representações de melhor qualidade;

Tende a sofrer constantes trocas de qualidade se as condições da sessão forem transientes

Page 13: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Interpretação dos estados Conservador

Uso parcial da Percepção instantânea do estado • 70% da vazão alcançada com o último segmento • Limite mínimo para o nível do buffer

As trocas de qualidade são infrequentes.

As representações de melhor qualidade são recuperadas somente quando sessão atinge certa estabilidade;

Page 14: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Interpretação dos estados Moderado

Uso de Percepção de longo prazo da sessão • Vazão média • Ocupação média do buffer

As trocas de qualidade com segurança frequentes.

Alcança qualidades altas sempre que há uma consistência na sessão

Difícil de encontrar as métricas;

Algoritmos tendem a ser mais elaborados, observação de mais cenários.

Page 15: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Métricas de Qualidade   Como a qualidade de uma sessão é medida

Quantitativas   Taxa média de bits

Qualitativas   Stalls (travamentos)

Instabilidade (Amplitude e quantidade)

Justiça

Page 16: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Instabilidade Instabilidade do algoritmo de adaptação.

Captura o impacto da dinâmica de troca de qualidade para o usuário

  Valor entre 0-1(maior instabilidade)

Observa a instabilidade nos últimos k segmentos;

bx,t taxa de bits do segmento recebido no

instante t.

  K, tamanho da janela em segmentos

  W(i) = k-i

JIANG, J.; SEKAR, V.; ZHANG, H. Improving fairness, efficiency, and stability in http-based adaptive video streaming with festive., Dez 2012.

Page 17: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Justiça   Mede o grau de justiça no

compartilhamento do recursos;

Relação entre o recurso esperado (cenário ideal), e o recurso recebido

  Valor entre 0-1(Justo)

  N, número de clientes;

  Xi , é a razão entre a quantidade de recursos esperado pelo recursos recebido

R. Jain, D. Chiu, and W. Hawe, "A Quantitative Measure Of Fairness And Discrimination For Resource Allocation In Shared Computer Systems", DEC Research Report TR-301, September 1984.

Page 18: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Exemplos: AD-HOC

Page 19: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Algoritmo QoE-Adapt Uso de representação com baixa qualidade para enfrentar degradação da qualidade de experiência e ainda manter o valor das demais métricas alta: taxa média, estabilidade e Justiça.

Usa recursos disponíveis tanto no cliente como no servidor

  Taxa de escape, é a representação do vídeo com baixa qualidade

Ocupação do buffer, monitoramento da vazão (média/instantânea)

Page 20: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Algoritmo Entradas: •  Nível atual do buffer (B(t)) •  Qualidade atual (Ri) •  Limiar característico do stall (Θ) •  Tamanho do histórico (Δ)

Três limiares para a ocupação do buffer: •  Bmin valor mínimo esperado •  Blow valor intermediário •  Bmax vaor máximo esperado Duas medidas de vazão: •  A vazão instantânea •  Â(.) vazão média dentro do histórico

Page 21: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Cenário de Experimentação   3 e 6 clientes

compartilhando o canal

  Canal compartilhado tem taxa nominal de 3/5 Mbps

Receitas de representação

  Netflix (1000, 3600kbps)

  Ad-hoc (1600, 3660kbps)

Page 22: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Resultados   Taxa média de bits ao

longo da sessão

  H-Adapt: Algoritmo usado como Baseline

VaQoE-Adapt: Proposta usada com o versionamento BrISP

0

200

400

600

800

1000

1200

1400

1600

1800

3 6

Aver

age B

itrate

(kb/s)

Number Of Clients

H - Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

Page 23: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Paradas

0

5

10

15

20

25

30

35

40

3 6

Numb

er O

f Stal

ls

Number Of Clients

H-Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

Redução no número de paradas;

Cenários extremos: redução de +50%

Uso da taxa de fuga ajuda a aliviar o congestionamento do canal

Page 24: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Duração Paradas   O prolongamento da

sessão foi reduzido em todos os cenários

  Com seis clientes a redução foi superior a 100%.

  As paradas continuam a ocorrer mas seu impacto foi minimizado

0

50

100

150

200

250

300

350

400

3 6

Stall

s Dur

ation

(s)

Number Of Clients

H-Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

Page 25: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Instabilidade

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

3 6

Instab

ility

Number Of Clients

H-Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

Maior que as outras duas abordagens

Outra abordagens não ousam crescer suas taxas e permanecem muito tempo acessando a mesma taxa

  A proposta VaQoE-Adapt acessa a taxa mais altas e por isso eventualmente precisam acessar a taxa de fuga

Page 26: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Popularidade das altas taxas

0

5

10

15

20

25

2nd Highest bitrateHighest bitrate

2nd Highest bitrateHighest bitrate

Popu

larity

(%)

The Highest Available Bitrate

3 Clients 6 Clients

H-Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

  Taxa de acesso as duas melhores qualidades disponíveis

  De fato, o VaQoE-Adapt acessa as taxas mais altas com uma frequência maior;

Conclusão: sensação de melhora da qualidade de vídeo durante a sessão.

Page 27: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Justiça

0.8

0.85

0.9

0.95

1

1.05

1.1

3 6

Fairn

ess

Number Of Clients

H-Adapt+BrISPH-Adapt+Netflix

VaQoE-Adapt

Valores de Justiça estão próximos para as diferentes abordagens;

Quando cresce o número de clientes (3=>6), reduz a justiça da proposta VaQoE-adapt

Muito alto mesmo assim.

Page 28: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

PID Proportional Integral Derivative -

Page 29: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Princípio Feedback Aumente a variável manipulada (u) quando a variável do processo (y) for menor que o valor alvo(ysp) Reduza o valor da variável manipulada quando a variável do processo for maior que o valor alvo.

Page 30: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Tipos de controle   On-off control   Proportional control

Page 31: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Tipos de controle   PID

Variação na banda de proporcionalidade dada pela equação ao lado

Três termos   P: proporcional ao

Erro(presente)   I: proporcional a Integral do

Erro (Erro acumulado)   D: proporcional a Derivada

do Erro (estimativa do erro)

Parâmetros   K: ganho proporcional por

unidade de erro

  Ti : Intervalo da Integral (Passado)

  Td: Instante da derivada(Futuro)

P I D

Page 32: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Modelagem Descrita em “Towards Agile and Smooth Video Adaptation in Dynamic HTTP Streaming”

Usa um PI (Proportional – Integral) controler Fator D (Derivative – predição) poder amplificar o impacto das flutuações do TCP

Variável do processo (y) é o “tempo de video bufferizado” no lado do cliente;

Page 33: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Modelagem

1)

2)

3)

Page 34: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Problemática   A natural flutuação da

banda controlada pelo TCP requer ajuste do

Controlador sobre (u(t));

  Tal ajuste gera uma flutuação constante na taxa de bits que instabiliza o ocupação do buffer

Taxa de Bits • Aumenta velocidade

preenchimento buffer

Taxa de Bits • Reduz a velocidade

de preenchimento buffer

Page 35: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Linhas do Projeto

Evitar trocas de Taxas

• Variações de curto prazo e Erro na Estimativa da vazão (TCP)

Crescimento suave da taxa de Bits

• Capturar melhora consistente da vazão

Evitar travamentos reduzindo a taxa

• Rápida redução da taxa ao aumento do congestionamento

Page 36: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Modelagem Revista

Page 37: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Lógica de Troca de Taxas

Page 38: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

M? Expressa o Compromisso entre suavização e rapidez na troca das taxas;

  Um M grande implica em trocas somente quando o cenário de rede estiver consolidado (suavização)

  Um M pequeno implica em trocas sempre que uma tendência de crescimento for percebida (rapidez)

Ocupação do buffer

Page 39: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Ambiente Experimentação   Link entre Cliente e Servidor,

5Mb/s

Atraso 25 ms

  51 taxas de video de 100 kb/s a 5.1 Mb/s, espaçamento entre taxas adjacentes de 100 kb/s;

Tráfego injetado na rede para gerar congestionamento (3 níveis e flutuação em cada nível)

Page 40: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Resultados Flutuação do Buffer Flutuação da Taxa

Page 41: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Suavizando a Taxa

Page 42: Adaptive bit Rate - WordPress.com · ABR Adaptive bit Rate . Cenário Pré ABR Opções de transporte; ... Controla o acesso ao conteúdo Desafio é reduzir custos . Protocolo de

Para ser avaliado Instabilidade

Justiça

  Stall