implementation and performance evaluation of network coding for cooperative mobile devices morten v....

42
Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação e Avaliação de Desempenho de Rede Cooperativa de Codificação para Dispositivos Móveis ICC Workshop, 2008 Michel Albonico

Upload: internet

Post on 18-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Implementation and Performance Evaluation ofNetwork Coding for Cooperative Mobile Devices

Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen

Implementação e Avaliação de Desempenho deRede Cooperativa de Codificação para Dispositivos Móveis

ICC Workshop, 2008

Michel Albonico

Page 2: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Roteiro

• Introdução• Fundamentos da Economia de Energia• Ambiente de Testes• Network Coding Aplicado a Dispositivos

Móveis• Conclusão• Análise Crítica

Page 3: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• A Performance é medida através de throughput, delay e consumo de energia

• Sistemas puramente celular:– O dispositivo móvel é somente conectado à

estação base• Rede sem fio cooperativa:

– Além da rede celular, estabelece um link com os dispositivos próximos

Page 4: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Sistemas puramente celular:

Page 5: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Rede sem fio cooperativa:

Page 6: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Download de dados com cooperação e sem cooperação:

Page 7: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Sem cooperação:– Cada dispositivo móvel precisa receber 2

pacotes do link de cellular– Taxa de transmissão baixa– Delay e consumo de energia consideráveis

Page 8: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Cooperação I:– Dois celulares irão receber 1 pacote cada do

Link Cellular– Encaminham estes para as entidades

cooperativas– Pela rede de cooperação os pacotes são

enviados em paralelo

Page 9: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Cooperação II:– Necessita de um dispositivo intermediário

Page 10: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Cooperação e Network Coding:– Broadcast (adicionado com técnicas de

codificação) para distribuir na rede de cooperação

Page 11: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• N é igual ao número de Dispositivos Móveis no cluster

• Um ambiente com N dispositivos cooperando é N vezes mais rápido que uma rede convencional

• Em caso de erro poderá haver muita retransmissão

• Network Coding diminui isso

Page 12: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Introdução

• Network Coding evita retransmissões• Aumenta o número de pacotes (Aumento

no consumo de energia)

Page 13: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Quatro estados para o consumo de energia:– Sending (enviando)– Receiving (recebendo)– Idle (escutando o canal, diferente de

sleeping)– Coding (codificando)

Page 14: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Foram utilizados celulares N95 e os parâmetros para o mesmo

• Consumo de energia como parâmetro muito importante

Page 15: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Rede IEEE 802.11b/g:– Utilizada para cooperação– Distancia entre 3 e 30m

Page 16: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Rede Celular (2G/3G):– Usada na comunicação com a Estacao Base– sending?

Page 17: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Rede IEEE 802.11b/g:

Page 18: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Fundamentos da economia de energia

• Network Coding:– Menor consumo no processo de Idle

Page 19: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• N nós dispostos ao redor de um nó interno• N + 1 (Número de nós)

Page 20: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Um par de nós é disposto em lados opostos e tentam trocar pacotes

• Formando N/2 clusteres de cooperação

Page 21: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Os pacotes são transmitidos em slots de tempo fixo

• Somente um nó pode utilizar o canal para transmitir

• Os nós não comunicam-se diretamente, necessitam de um nó intermediário

Page 22: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• (N + 1) estados possíveis em um slot• Somente tres possíveis estados em um

determinado slot:– sending– receiving– idle

Page 23: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Tres casos difentes quanto à comunicação:– Pure Relaying– Pure network Coding– Network Conding in Team

Page 24: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Pure Relaying:– Cada nó envia para o meio e este repassa

para o destino– O número de recebimentos é igual ao número

de envios– Delay igual ao número de Slots– Sender Slots = 2N

• 1 Envia / 1 Recebe (Centro) / (N - 1) Idle• Centro Envia / 1 Recebe / (N - 1) Idle

Page 25: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Pure Relaying:

Page 26: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Pure Network Coding:– Cada transmissão para um nó específico é

ouvida por todos os demais– O nó do meio recebe as transmissões de

todos os nós externos– Codifica todos os pacotes em um único e

envia a todos por broadcast (O pacote não ficaria muito grande?)

Page 27: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Pure Network Coding:– A codificação habilita a requisição de um

novo pacote caso o mesmo seja perdido– Receiving = N - 1

• Todos menos o q enviou

– Sending Slots = N + 1• N – Todos enviam para o centro• 1 – O centro envia o broadcast

Page 28: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Pure Network Coding:

Page 29: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Network Coding in Team:– Pares pertencem a grupos– T é o número de grupos– O nó do centro recebe todos as transmissões

e cria os pacotes codificados para cada grupo– N + T Slotes para envio

• N – Todos os nós externos podem enviar• T – O nó do central envia para cada grupo

Page 30: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Network Coding in Team:

Page 31: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

• Exemplo usando 96 nós externos e 1 central (Consumo de energia)– Pure Relaying (D = 2N = 96)

sending: 192 x 1,62 = 311,04

receiving: 192 x 1,37 = 263,04

idle: 18240 x 0,979 = 17856,96

total: 18431,04 W

Page 32: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

– Pure Coding (D = N + 1 = 97)

sending: 97 x 1,62 = 157,14

receiving: 9216 x 1,37 = 12625,92

idle: 96 x 0,041 = 3,936

coding: 0,593

total: 12787,59 W

Page 33: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

– Pure Coding in Team (D = N + T = 100)

sending: 100 x 1,62 = 162,00

receiving: 2304 x 1,37 = 3156,48

idle: 7296 x 0,041 = 299,14

coding: 0,593

total: 3618,21 W

Page 34: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Ambiente de Testes

– Pure Coding in Team• Conforme cresce o número de grupos, o consumo

de energia aumenta, assim como o delay

Page 35: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Network Coding Aplicado a Dispositivos Móveis

• Existencia de um Servidor de Cooperação (Cooperation Server)

• Todos os dispositivos conectam ao servidor para obter acesso aos serviços

• Servidor detecta na vizinhança se alguém já teve acesso ao serviço e se este pode cooperar

Page 36: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Network Coding Aplicado a Dispositivos Móveis

Page 37: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Network Coding Aplicado a Dispositivos Móveis

• Aplicação no dispositivo móvel:– Pode conter fluxos de dados de diferentes

aplicações– Pacotes baixados são armazenados no flow

cache– Peer info: informações para os demais

dispositivos– Output queue: pacotes a serem enviados aos

outros dispositivos

Page 38: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Network Coding Aplicado a Dispositivos Móveis

Page 39: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Conclusões

• A combinação de redes wireless cooperativas e Network Coding traz benefícios em troughput, delay e consumo de energia

• Cuidado com idéia de Network Coding Team, pois deve haver balanceamento entre delay e consumo de energia

Page 40: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Conclusões

• O consumo de energia para o estado de idle em redes WLAN é o ponto chave de todo o processo

• Trabalhos futuros: Estratégia para Servidores de Cooperação e Network Coding em dispositivos móveis

Page 41: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Análise Crítica

• Em poucos pontos trata de questões de troughput

• Ambiente com poucos grupos ( <= 4) seriam interessantes?

• Pouco explicado como o Network Coding diminui o consumo de energia em modo idle

• Quantos hosts por grupo? Como são definidos? (Network Coding Team)

Page 42: Implementation and Performance Evaluation of Network Coding for Cooperative Mobile Devices Morten V. Pedersen, Frank H.P. Fitzek and Torben Larsen Implementação

Análise Crítica

• Descrever melhor o ambiente de testes• Já que vários pacotes são codificados em

um único, seu tamanho não torna-se muito grande?