Summary Using Evolving Graphs Foremost Journeys to Evaluate Ad-Hoc Routing Protocols Julian Monteiro 1 Alfredo Goldman 1 Afonso Ferreira 2 1 Universidade de Sao Paulo Brasil 2 CNRS & INRIA Sophia Antipolis França SBRC 07 Belém/PA 1 / 27
Summary Sumário 1 Motivação Redes Móveis sem Fio Redes com Comportamento Previsível 2 Grafos Evolutivos Visão Geral Jornadas em EGs Algoritmo de Jornada Foremost 3 Experimentos Modelo de Mobilidade Random Waypoint Modelo de Mobilidade Intermitente 4 Gargalos e Congestão 5 Conclusão 2 / 27
Redes Móveis sem Fio Classificação Rede infra-estruturada Rede ad hoc Características gerais: Transmissão via rádio com altas taxas de erro Falhas deixam de ser exceção e passam a ser regra Menor capacidade de processamento e armazenamento Segurança 3 / 27
Redes Móveis ad hoc (MANETs) Rede ad hoc Comunicação sem fio de dados Não necessita infra-estrutura prévia Topologia Dinâmica Nós também atuam como roteadores Limitações: energia (geralmente são baterias) capacidade de processamento largura da banda sem fio, etc. 4 / 27
Motivação: Roteamento ótimo de dados Desafios: Como trocar dados entre pares de nós? Qual o melhor caminho a ser percorrido por um pacote? Quantidade de mensagens de controle (sobrecusto)? Existem inúmeros protocolos de roteamento: ABR, ADMR, AODV, BRP, CEDAR, CBRP, CGSR, DDM, DSDV, DSR, FSR, HSR, IARP, IERP, IMEP, LUNAR, MMBDP, MMLDP, MMRP, OLSR, RDMAR, SRMP, STAR, SSR, TORA, WPR, ZRP. 5 / 27
Motivação: Roteamento ótimo de dados Desafios: Como trocar dados entre pares de nós? Qual o melhor caminho a ser percorrido por um pacote? Quantidade de mensagens de controle (sobrecusto)? Existem inúmeros protocolos de roteamento: ABR, ADMR, AODV, BRP, CEDAR, CBRP, CGSR, DDM, DSDV, DSR, FSR, HSR, IARP, IERP, IMEP, LUNAR, MMBDP, MMLDP, MMRP, OLSR, RDMAR, SRMP, STAR, SSR, TORA, WPR, ZRP. 5 / 27
Redes com Comportamento Previsível (FSDN) Example Tipo especial de MANET com comportamento previsível As mudanças na topologia são determinísticas Sistema de satélites de orbita baixa (LEO): As trajetórias dos satélites são pré determinadas Algumas redes de sensores: Sensores podem ser desligados/ligados periodicamente Redes com comportamento cíclico ou periódico: Transporte público, etc Questão: Como otimizar algoritmos de roteamento para serem usados em redes FSDN? 6 / 27
Redes com Comportamento Previsível (FSDN) Example Tipo especial de MANET com comportamento previsível As mudanças na topologia são determinísticas Sistema de satélites de orbita baixa (LEO): As trajetórias dos satélites são pré determinadas Algumas redes de sensores: Sensores podem ser desligados/ligados periodicamente Redes com comportamento cíclico ou periódico: Transporte público, etc Questão: Como otimizar algoritmos de roteamento para serem usados em redes FSDN? 6 / 27
Modelo Combinatório de Grafos Evolutivos (EG) Objetivo Prover a noção do tempo em grafos Definição Um grafo evolutivo é uma seqüência indexada de subgrafos de um dado grafo, sendo que o subgrafo em um certo índice corresponde à conectividade da rede naquele instante de tempo 7 / 27
Exemplo de uma Rede Dinâmica B F B E F A C E A C z z z... D G D G T 1 T 2 B F z z z... B z z z... F A C A C E D z z z... E G D G z z z... T 3 T 4 Evolução de uma MANET no tempo; Os índices T n correspondem a sucessivos momentos na rede 8 / 27
Exemplo de um Grafo Evolutivo A 4 [1 3] 4 B 1 1,3 C 2 1,[3 4] E 3 1,4 2 F D G Grafo evolutivo correspondente à MANET anterior Arestas estão nomeadas com os respectivos horários de existência 9 / 27
O que é uma Jornada em EG? Jornada : Equivalente a caminhos em grafos usuais, mas incluem a noção do tempo (jornadas não podem voltar ao passado) Possíveis jornadas de custo mínimo em FSDN: 1 Jornada mais curta (shortest) 2 Jornada mais rápida (fastest) 3 Jornada foremost (que chega primeiro) 10 / 27
Exemplo de Jornadas A 4 [1 3] 4 B 1,3 C 1 2 1,[3 4] E 3 1,4 2 F D G Example (Jornadas entre os nós B e G) {B,E,G} É uma jornada mais curta e chega no instante 3 {B,C,E,F,G} É uma jornada foremost e chega no tempo 2. {B,C,E,G} É uma jornada mais rápida (sai de B e chega em G no mesmo instante 3) Observe que {B,E,F,G} não é uma jornada válida 11 / 27
Implementamos o algoritmo de Jornada Foremost Calcula o menor tempo de chegada partindo de u a todos outros nós Prefixo de uma jornada foremost não é necessariamente uma jornada foremost. Adaptação do algoritmo de caminhos mínimos de Dijkstra Nosso Objetivo: Analisar o uso de grafos evolutivos em protocolos de roteamento. 12 / 27
Detalhes da Simulação no NS2 Simulador de redes NS2 (versão 2.29) 50 nós Área de 1500 x 500m Alcance da transmissão de cada nó: 250 m Modelo de propagação de ondas: TwoRayGround Antena : Omni-directional 10 fontes de trafego constante (CBR) UDP: 2 pacotes/seg. Tamanho do pacote: 256 bytes 900 seg. de simulação 13 / 27
Comparação com Outros Protocolos Comparação dos resultados com outros 4 protocolos: DSDV, OLSR, AODV and DSR 4 metricas foram analisadas: 1 Vazão média 2 Atraso médio fim-a-fim 3 Razão de pacotes perdidos por falta de rota (NRTE) 4 Razão de pacotes perdidos por fila cheia na interface (IFQ) A métrica de pacotes perdidos foi dividida em duas categorias para termos uma melhor idéia do motivo das perdas. 14 / 27
Cenário da Simulação: Modelos de Mobilidade Esquema de movimentação dos nós Seqüência de comandos do NS2 (ex: setdest, on, off) O EG é obtido através de uma simulação prévia do cenário Usamos 2 modelos de mobilidade em nossos testes: 1 Random Waypoint (RWP) 2 Modelo Intermitente 15 / 27
Modelo de Mobilidade Random Waypoint Random Waypoint (RWP) Os nós escolhem destinos aleatórios; Se movem com velocidade constante entre 1 e 20m/s Entre movimentações, permanecem parados por um tempo: PAUSETIME Variamos o PAUSETIME entre 0 e 900 seg. É um modelo simples e muito conhecido Os resultados podem ser comparados a outros estudos 16 / 27
Random Waypoint Vazão Média Vazão média em função de PAUSETIME (mobilidade) Como esperado, o EG foremost obteve os melhores resultados nesta métrica em todas as simulaçães 4200 RWP Scenario - MaxSpeed 20 - IFQlen 50pkts 17 / 27 Average throughput (b/s) 4000 3800 3600 3400 3200 3000 egforemost 2800 olsr 2600 aodv dsr 2400 dsdv 2200 0 100 200 300 400 500 600 700 800 900 Pause Time (seconds)
Random Waypoint Razão de Perda de Pacotes Razão de perda em função de PAUSETIME (mobilidade) A quantidade de pacotes perdidos pelo EG foremost foi próxima de zero # Dropped / Sent packets 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 RWP Scenario - MaxSpeed 20 - IFQlen 50pkts egforemost olsr aodv dsr dsdv 18 / 27 0 0 100 200 300 400 500 600 700 800 900 Pause Time (seconds)
Random Waypoint Atraso Médio Fim-a-Fim Atraso médio fim-a-fim somente entre pacotes que chegaram em todos os protocolos EG foremost pode ser usado como referência 0.025 RWP Scenario - MaxSpeed 20 - IFQlen 50pkts 19 / 27 Avg end-to-end delay (s) 0.02 0.015 0.01 egforemost olsr 0.005 aodv dsr dsdv 0 0 100 200 300 400 500 600 700 800 900 Pause Time (seconds)
Modelo de Mobilidade Intermitente Modelo Intermitente Nós tem posições fixas e permanacem se desligando e ligando com determinada probabilidade: SLEEPPROBABILITY Quando desligado, o nó irá permanecer neste estado por um tempo aleatório: SLEEPTIME Analisamos os valores de SLEEPPROBABILTY (0 a 50%) e SLEEPTIME (6 a 180s) Modelo simples proposto por nós É mais adequado ao caso de redes com comportamento previsível (FSDN) 20 / 27
Modelo Intermitente Vazão Média Vazão média em função de SLEEPPROBABILITY Bons resultados para o EG foremost em cenários de alta conectividade 4500 Intermittent Scenario - HoldTime 15s - IFQlen 50pkts 4500 Intermittent Scenario - HoldTime 180s - IFQlen 50pkts 4000 4000 Average throughput (b/s) 3500 3000 2500 Max. Rate 2000 egforemost 1500 olsr aodv 1000 dsr dsdv 500 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability (%) Average throughput (b/s) 3500 3000 2500 Max. Rate 2000 egforemost 1500 olsr aodv 1000 dsr dsdv 500 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability (%) (a) HOLDTIME 15s (b) HOLDTIME 180s 21 / 27
Modelo Intermitente Perda por Falta de Rota (NRTE) Razão de pacotes perdidos por NRTE em função de SLEEPPROBABILITY O EG foremost é um limiar inferior nesta métrica # Dropped by NRTE / Sent packets 0.7 0.6 0.5 0.4 0.3 0.2 0.1 Intermittent Scenario - HoldTime 15s - IFQlen 50pkts egforemost olsr aodv dsr dsdv # Dropped by NRTE / Sent packets 0.7 0.6 0.5 0.4 0.3 0.2 0.1 Intermittent Scenario - HoldTime 180s - IFQlen 50pkts egforemost olsr aodv dsr dsdv 0 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability (%) (c) HOLDTIME 15s 0 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability (%) (d) SLEEPTIME 180s 22 / 27
Modelo Intermitente Valores altos de Perda por IFQ Perda por fila cheia (IFQ) em cenários de baixa mobilidade Surge o problema dos gargalos no EG foremost : muitos pacotes são agendados para envio no mesmo instante # Dropped by IFQ / Sent packets 0.35 0.3 0.25 0.2 0.15 0.1 0.05 Intermittent Scenario - HoldTime 180s - IFQlen 50pkts egforemost olsr aodv dsr dsdv 0 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability (%) 23 / 27 Figure: HOLDTIME 180S
Modelo Intermitente Perdas em Rajadas No instante 320s o EG foremost perde muitos pacotes # of dropped packets 800 700 600 500 400 300 200 Single Intermittent Scenery: SleepProb 50% - HoldTime 180s egforemost olsr aodv dsr dsdv 100 0 0 100 200 300 400 500 600 700 800 900 Sent Time (seconds) Figure: Cenário HOLDTIME 180S e SLEEPPROB 50% 24 / 27
Modelo Intermitente Diminuindo Perdas por IFQ Diminuindo as perdas por IFQ Alternativas experimentadas: Jitter : atraso no envio entre 0 e 0,5s SmartJitter : atraso agendado de acordo com o horário de envio Aumentar IFQ: de 50 para 500pkts 25 / 27
Modelo Intermitente Diminuindo Perdas por IFQ SmartJitter obteve bons resultados (melhora de 47%) Mas ainda muito distante do Aumento da IFQ # Dropped by IFQ / Sent packets 0.35 0.3 0.25 0.2 0.15 0.1 0.05 EG foremost - Intermittent Scenario - HoldTime 180s EG normal EG Jitter 0.5s EG SmartJitter EG IFQlen 500 pkts 0 0 0.1 0.2 0.3 0.4 0.5 Sleep Probability 26 / 27
Conclusão EG pode ser usado para analisar o desempenho de outros protocolos Alternativas simples podem ser utilizadas para diminuir gargalos Próximos trabalhos Implementar outros algoritmos de EG (jornada mais rápida e jornada mais curta) Realização de experimentos baseados em dados reais (redes de sensores sem fio) Estudar o uso de protocolos adaptativos para balancear a carga na rede 27 / 27