Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE...

63
U NIVERSIDADE F EDERAL DE G OIÁS I NSTITUTO DE I NFORMÁTICA MICAEL O LIVEIRA MASSULA C ARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos Mais Curtos Goiânia 2014

Transcript of Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE...

Page 1: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

UNIVERSIDADE FEDERAL DE GOIÁSINSTITUTO DE INFORMÁTICA

MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO

Roteamento em Redes em Malha SemFio com Balanceamento de Carga e

Caminhos Mais Curtos

Goiânia2014

Page 2: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

UNIVERSIDADE FEDERAL DE GOIÁS

INSTITUTO DE INFORMÁTICA

AUTORIZAÇÃO PARA PUBLICAÇÃO DE DISSERTAÇÃO

EM FORMATO ELETRÔNICO

Na qualidade de titular dos direitos de autor, AUTORIZO o Instituto de Infor-mática da Universidade Federal de Goiás – UFG a reproduzir, inclusive em outro formatoou mídia e através de armazenamento permanente ou temporário, bem como a publicar narede mundial de computadores (Internet) e na biblioteca virtual da UFG, entendendo-seos termos “reproduzir” e “publicar” conforme definições dos incisos VI e I, respectiva-mente, do artigo 5o da Lei no 9610/98 de 10/02/1998, a obra abaixo especificada, sem queme seja devido pagamento a título de direitos autorais, desde que a reprodução e/ou publi-cação tenham a finalidade exclusiva de uso por quem a consulta, e a título de divulgaçãoda produção acadêmica gerada pela Universidade, a partir desta data.

Título: Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga eCaminhos Mais Curtos

Autor(a): Micael Oliveira Massula Carvalho de Mello

Goiânia, 19 de Dezembro de 2014.

Micael Oliveira Massula Carvalho de Mello – Autor

Dr. Kleber Vieira Cardoso – Orientador

Dr. Leizer de Lima Pinto – Co-Orientador

Page 3: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO

Roteamento em Redes em Malha SemFio com Balanceamento de Carga e

Caminhos Mais Curtos

Dissertação apresentada ao Programa de Pós–Graduação doInstituto de Informática da Universidade Federal de Goiás,como requisito parcial para obtenção do título de Mestre emCiência da Computação.

Área de concentração: Ciência da Computação.

Orientador: Prof. Dr. Kleber Vieira Cardoso

Co-Orientador: Prof. Dr. Leizer de Lima Pinto

Goiânia2014

Page 4: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO

Roteamento em Redes em Malha SemFio com Balanceamento de Carga e

Caminhos Mais Curtos

Dissertação defendida no Programa de Pós–Graduação do Instituto deInformática da Universidade Federal de Goiás como requisito parcialpara obtenção do título de Mestre em Ciência da Computação, aprovadaem 19 de Dezembro de 2014, pela Banca Examinadora constituída pelosprofessores:

Prof. Dr. Kleber Vieira CardosoInstituto de Informática – UFG

Presidente da Banca

Prof. Dr. Leizer de Lima PintoInstituto de Informática – UFG

Prof. Dr. José Ferreira de RezendeCOPPE – UFRJ

Prof. Dr. Vinicius da Cunha Martins BorgesInstituto de Informática – UFG

Page 5: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Todos os direitos reservados. É proibida a reprodução total ou parcial dotrabalho sem autorização da universidade, do autor e do orientador(a).

Micael Oliveira Massula Carvalho de Mello

Graduou-se em Sistemas de Informação pela Universidade Federal de Goiás(2009-2012). Durante sua graduação, participou do Programa Institucionalde Iniciação Científica (PIBIC) da Universidade Federal de Goiás (UFG) ede projetos de pesquisa sob a coordenação do professor Dr. Kleber VieiraCardoso. No período do mestrado, participou do Projeto GT-ATER, fases 1 e2, desenvolvido no Instituto de Informática (INF) da Universidade Federal deGoiás (UFG) em parceria com a Rede Nacional de Ensino e Pesquisa (RNP).

Page 6: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Dedico esta dissertação a Deus, aos meus pais, a minha namorada, aos meus

irmãos e a toda a minha família e amigos, por todo apoio e carinho.

Page 7: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Agradecimentos

A Deus pela graça da vida e por tudo que me proporciona.Aos meus pais, Walter e Junair, por todo seu amor, carinho, compreensão, apoio, orienta-ção e paciência.À Ludmila, minha namorada e futura esposa, por todo seu amor, carinho, compreensão eapoio.Aos meus irmãos, Raissa e Uriel, por todo seu amor, carinho e apoio.Ao Prof. Kleber Vieira Cardoso, por sua orientação, amizade, paciência e confiança.Ao Prof. Leizer de Lima Pinto, por sua orientação, contribuição e confiança.Aos Profs. José Ferreira de Rezende e Vinicius da Cunha Martins Borges, por aceitar oconvite, pela presença na banca e contribuições à dissertação.Aos meus amigos e colegas: Vínicius, Diego, Danillo, Éder, Tolentino, Ramon, Brosig,Nogueira, Márcio, Marques, Felipe, Maikon e todos os demais; pela amizade, apoio emomentos de descontração.Aos colegas e amigos do grupo de pesquisa Labora: Lafaiet, Vivian, Bruno, Cleber, Otto,Pedro, Mario, Warley, Fausto, Camila, André e todos os demais; pela amizade, apoio emomentos de descontração.À equipe da secretaria: Berenice, Edir, Enio, Mirian, Patrícia e todos os demais; pelaatenção, paciência e suporte operacional.Ao INF/UFG, pelas instalações e equipamentos utilizados.Agradeço à Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES),pelo suporte financeiro.

Page 8: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Aquilo que nós mesmos escolhemos é muito pouco: a vida e as circuns-tâncias fazem quase tudo.

John Ronald Reuel Tolkien (1892 - 1973),Citação atribuída.

Page 9: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Resumo

de Mello, Micael Oliveira Massula Carvalho. Roteamento em Redes em MalhaSem Fio com Balanceamento de Carga e Caminhos Mais Curtos. Goiânia,2014. 61p. Dissertação de Mestrado. Instituto de Informática, UniversidadeFederal de Goiás.

Redes em Malha Sem Fio - Wireless Mesh Networks (WMNs) são infraestruturas compropriedades autonômicas, como auto-organização e autorrecuperação, que podem serimplementadas com tecnologias amplamente disponíveis e de custo acessível. Além desuas aplicações atuais, como redes comunitárias e redes de acesso à Internet, as WMNspodem auxiliar na comunicação de Internet das Coisas e constituir infraestruturas robus-tas para redes inteligentes de energia, dentre outros usos. No entanto, WMNs geralmenteapresentam questões relativas a desempenho devido a fatores como sobrecarga em de-terminadas partes da rede e interferências nos enlaces sem fio. Nesse contexto, é impor-tante que sejam utilizadas soluções que promovam balanceamento de carga na rede e queminimizem as interferências entre os enlaces sem fio. A pesquisa nessa área tem mos-trado que uma das abordagens mais promissoras consiste em tratar de maneira conjuntao roteamento e a atribuição de canais. Porém, a maior parte dos trabalhos dependem deconhecimento prévio do tráfego da rede e tratam fluxos com baixa granularidade. Nestadissertação, tratamos o problema de desempenho em WMNs, em especial as que possuemmúltiplos rádios e múltiplos canais disponíveis, utilizando uma abordagem conjunta, massem as restrições anteriores. Nossa proposta é uma heurística conjunta, cuja principal con-tribuição está no roteamento, o qual persegue um compromisso entre o balanceamento decarga e o comprimento dos caminhos seguidos pelos fluxos. Implementamos nossa pro-posta no Network Simulator 3 (ns-3) e a comparamos com outros trabalhos da literatura.Verificamos que nossa heurística apresenta ganhos de vazão na maior parte dos cenáriosavaliados, além de promover maior justiça entre os fluxos que concorrem pelos recursos.

Palavras–chave

Redes em malha sem fio, Roteamento com balanceamento de carga, Atribuiçãode canais, Abordagem conjunta de roteamento e atribuição de canais, Comprimento doscaminhos

Page 10: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Abstract

de Mello, Micael Oliveira Massula Carvalho. Routing in Wireless MeshNetworks with Load-balancing and Shortest Paths. Goiânia, 2014. 61p. MSc.Dissertation. Instituto de Informática, Universidade Federal de Goiás.

Wireless Mesh Networks (WMNs) are infrastructures with autonomic properties, such asself-organization and self-recovery, which can be developed with widely available tech-nologies and low cost solutions. Besides their current applications, such as communitynetworks and broad-band Internet access, WMNs can offer contributions in the context ofthe Internet of Things and help to build robust infrastructures to smart energy networks,among other uses. However, WMNs usually have performance issues due to overload incertain parts of the network and interference in wireless links. In this context, it is im-portant that solutions are used to promote load-balancing and to mitigate interferencebetween wireless links. Research in this area shows that one of the most promising appro-aches are in the subject of the joint routing and channel assignment. However, most of theprevious works depends on the knowledge of the network traffic and handle flows withlow granularity. In this thesis, we handle the performance problem in WMNs, in particularthose having multiple radios and multiple available channels, using a joint approach, butwithout the mentioned restrictions. Our proposal is a joint heuristic, whose main contri-bution is the routing, which pursues the compromise between load-balancing and the pathlength of the network flows. We have developed our proposal in the Network Simulator3 (ns-3) and have compared it with other works in literature. We found that our heuristicprovides throughput improvements in most of the analyzed scenarios, besides promotegreater justice between the flows that compete for resources.

Keywords

Wireless mesh networks, Load-balancing routing, Channel assignment, Jointrouting and channel assignment, Path length

Page 11: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Sumário

Lista de Figuras 10

Lista de Tabelas 12

Lista de Algoritmos 13

Lista de Acrônimos 14

1 Introdução 15

2 Fundamentos e trabalhos relacionados 182.1 Roteamento com balanceamento de carga 192.2 Atribuição de canais 202.3 Abordagem conjunta de roteamento e atribuição de canais 212.4 Conclusão 23

3 Proposta 243.1 Modelo 243.2 Bottleneck, Path length and Routing overhead heuristic – BPR 263.3 Routing and Channel Assignment, Joint Improvement heuristic – RCAJI 293.4 Outra solução para a abordagem conjunta 303.5 Conclusão 33

4 Avaliação 354.1 Cenários e experimentos 354.2 Análise de propriedades da rede 36

4.2.1 Gargalo 364.2.2 Comprimento dos caminhos 384.2.3 Quantidade de atualizações de rotas 39

4.3 Desempenho da rede 404.3.1 Impacto da quantidade de fluxos 424.3.2 Impacto da quantidade de rádios 444.3.3 Impacto da quantidade de canais 45

4.4 Conclusão 45

5 Considerações finais e trabalhos futuros 55

Referências Bibliográficas 57

Page 12: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Lista de Figuras

2.1 Exemplo de WMN utilizada como infraestrutura de acesso à Internet. 18

3.1 Caso no qual o re-roteamento é realizado na remoção de rota de um fluxoque terminou. 29

3.2 Primeiro caso no qual o re-roteamento não é realizado na remoção derota de um fluxo que terminou. 29

3.3 Segundo caso no qual o re-roteamento não é realizado na remoção derota de um fluxo que terminou. 30

4.1 Comprimento dos caminhos seguidos pelos fluxos. 39(a) Topologias de tipo A. 39(b) Topologias de tipo B. 39(c) Topologias de tipo C. 39

4.2 Atualizações de rotas. 40(a) Topologias de tipo A. 40(b) Topologias de tipo B. 40(c) Topologias de tipo C. 40

4.3 Vazão agregada ao variar a quantidade de fluxos presentes na rede. 43(a) Topologias de tipo A. 43(b) Topologias de tipo B. 43(c) Topologias de tipo C. 43

4.4 Justiça ao variar a quantidade de fluxos presentes na rede. 47(a) Topologias de tipo A. 47(b) Topologias de tipo B. 47(c) Topologias de tipo C. 47

4.5 Quantidade de trocas de canais ao variar a quantidade de fluxos presen-tes na rede. 48(a) Topologias de tipo A. 48(b) Topologias de tipo B. 48(c) Topologias de tipo C. 48

4.6 Vazão agregada ao variar a quantidade de rádios disponíveis. 49(a) Topologias de tipo A. 49(b) Topologias de tipo B. 49(c) Topologias de tipo C. 49

4.7 Vazão mínima ao variar a quantidade de rádios disponíveis. 50(a) Topologias de tipo A. 50(b) Topologias de tipo B. 50(c) Topologias de tipo C. 50

4.8 Justiça ao variar a quantidade de rádios disponíveis. 51

Page 13: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

(a) Topologias de tipo A. 51(b) Topologias de tipo B. 51(c) Topologias de tipo C. 51

4.9 Vazão agregada ao variar o número de canais disponíveis. 52(a) Topologias de tipo A. 52(b) Topologias de tipo B. 52(c) Topologias de tipo C. 52

4.10 Vazão mínima ao variar o número de canais disponíveis. 53(a) Topologias de tipo A. 53(b) Topologias de tipo B. 53(c) Topologias de tipo C. 53

4.11 Justiça ao variar o número de canais disponíveis. 54(a) Topologias de tipo A. 54(b) Topologias de tipo B. 54(c) Topologias de tipo C. 54

Page 14: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Lista de Tabelas

4.1 Parâmetros do simulador. 364.2 Estatísticas sobre o gargalo da rede. 374.3 Estatísticas sobre os enlaces dos nós vizinhos a dois saltos do gateway. 38

Page 15: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Lista de Algoritmos

3.1 BPR - Adicionar rota para um novo fluxo 283.2 BPR - Remover rota para fluxo que terminou 313.3 JRCAR - Roteamento com balanceamento de carga 323.4 JRCAR - Atribuição de canais 34

Page 16: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Lista de Acrônimos

BPR Bottleneck, Path length and Routing overhead. 16, 26, 29–31, 33, 55

JRCAR Joint Routing, Channel Assignment and Rate allocation. 22, 23, 30, 31, 33, 35–38, 40, 42–46, 55, 56

ns-3 Network Simulator 3. 16, 33, 35, 36, 40, 42, 45, 55, 56

OLSR Optimized link state routing protocol. 33, 35, 40, 42–46

RCAJI Routing and Channel Assignment, Joint Improvement. 16, 17, 30, 31, 33, 35–38,40, 42–46, 55, 56

WMN Wireless Mesh Network. 18–21, 24WMNs Wireless Mesh Networks. 15, 16, 18–21, 23, 25, 55, 56

Page 17: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

CAPÍTULO 1Introdução

Redes em Malha Sem Fio - Wireless Mesh Networks (WMNs) surgiram comoum paradigma de comunicação de redes de próxima geração com o objetivo de oferecermelhores serviços [1]. As WMNs formam um backbone sem fio de múltiplos saltos, como objetivo de fornecer conectividade aos equipamentos clientes. Esses clientes podemusar a infraestrutura oferecida para realizarem comunicações com redes externas, comopor exemplo, a Internet.

Constituídas por elementos capazes de se auto-organizar e auto-configurar [1], asWMNs têm capacidade de cobrir uma grande área a um baixo custo. Essas característicastornam as WMNs uma tecnologia com potencial para inúmeras aplicações, como porexemplo, redes domésticas, redes comunitárias, redes empresariais e acesso à Internetpara áreas onde a infraestrutura cabeada é de difícil implantação [1, 21]. Além disso,WMNs podem estar conectadas a diferentes sistemas de comunicações heterogêneos,como por exemplo, redes de sensores e redes de celulares. Isso também as tornam umainfraestrutura adequada para cidades inteligentes [14, 41].

Desempenho é um problema frequente nas WMNs, uma vez que o númerode nós e o tráfego da rede podem aumentar de maneira significativa. O tráfego darede pode ser definido como um conjunto de fluxos gerados por diferentes tipos deaplicações. Enquanto infraestrutura de acesso, a maior parte dos fluxos nas WMNs temcomo origem ou destino os gateways da rede. Dessa forma, é natural que os enlacessem fio próximos aos gateways sejam potenciais pontos de gargalo. Com o intuito demelhorar o desempenho, o roteamento deve escolher caminhos para cada fluxo de maneiraa minimizar os gargalos da rede. Ou seja, é vantajoso que o roteamento realize decisõesque promovam balanceamento de carga [5]. Além disso, é importante que o roteamentobusque minimizar o número de saltos entre origem e destino de cada fluxo [17], poiscaminhos com muitos saltos podem elevar o atraso e reduzir a vazão dos fluxos.

Outro fator que afeta o desempenho das WMNs é a interferência presente nosenlaces de comunicação sem fio, a qual pode ser reduzida com a utilização de canaisou faixas de frequência ortogonais. O padrão 802.11b/g prevê a utilização de até 3canais ortogonais, enquanto o padrão 802.11a permite o uso de até 12 canais. Além

Page 18: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

16

disso, o baixo custo atual da tecnologia 802.11 torna viável utilizar múltiplos rádiosem cada equipamento, possibilitando o uso de múltiplos canais simultaneamente. Nessecontexto, a atribuição de canais passa a desempenhar a importante função de maximizara capacidade da rede.

O roteamento e a atribuição de canais têm um alto grau de acoplamento, pois am-bos são sensíveis à carga nos enlaces de comunicação e ambos se afetam mutuamente [3].A atribuição de canais define a largura de banda dos enlaces de comunicação, afetando oroteamento na escolha de caminhos, uma vez que o roteamento tende a aproveitar a lar-gura de banda disponível. Por outro lado, o roteamento define o tráfego que passa pelosenlaces de comunicação, influenciando a atribuição de canais em suas decisões. Caso oroteamento sobrecarregue uma determinada região da rede, a atribuição de canais preci-sará realizar uma nova seleção de canais de maneira a maximizar a vazão e minimizar onível de interferência dessa região. Assim, é importante definir uma estratégia na qual oroteamento e a atribuição de canais cooperem para melhorar o desempenho da rede.

Nesta dissertação, abordaremos a questão de desempenho em WMNs commúltiplos rádios e múltiplos canais, tendo como foco a abordagem conjunta de roteamentoe atribuição de canais. Algumas soluções foram propostas baseadas nessa abordagem [34,33, 13, 3, 16]. Dentre esse conjunto de soluções, consideramos a heurística proposta porGálvez et al. [16] como a mais avançada no estado da arte, pois a mesma trata o problemano nível de fluxos TCP sem a necessidade de conhecimento prévio do tráfego da rede.

Apresentamos, então, a heurística Routing and Channel Assignment, Joint Im-

provement (RCAJI) como uma solução para a abordagem conjunta de roteamento e atri-buição de canais em WMNs com múltiplos rádios e múltiplos canais. A principal con-tribuição da heurística RCAJI está em sua heurística de roteamento, a Bottleneck, Path

length and Routing overhead (BPR), pela qual se busca um compromisso entre o balan-ceamento de carga e o comprimento dos caminhos. Assim como Gálvez et al. [16], a BPRtrata o problema no nível de fluxos TCP sem conhecimento prévio do tráfego da rede.

Os objetivos desta dissertação são: apresentar um modelo matemático multiobje-tivo para o problema de roteamento com balanceamento de carga e caminhos mais curtos;descrever em detalhes a heurística RCAJI, apresentando seus algoritmos; realizar a com-paração entre a heurística RCAJI e outras soluções presentes na literatura; e apresentar ediscutir a avaliação de desempenho realizada com os resultados obtidos a partir do simu-lador de redes Network Simulator 3 (ns-3).

O restante desta dissertação está organizada da seguinte maneira: no Capítulo 2,apresentamos os fundamentos envolvidos no desenvolvimento desta dissertação e osprincipais trabalhos que apresentam soluções para roteamento, para atribuição de canaise para a abordagem conjunta de roteamento e atribuição de canais; no Capítulo 3,descrevemos formalmente o problema de roteamento com balanceamento de carga e

Page 19: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

17

descrevemos em detalhes a heurística RCAJI; no Capítulo 4, apresentamos e discutimos aavaliação de desempenho realizada; no Capítulo 5, apresentamos as considerações finaise as perspectivas para trabalhos futuros.

Page 20: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

CAPÍTULO 2Fundamentos e trabalhos relacionados

Uma Rede em Malha Sem Fio - Wireless Mesh Network (WMN) pode ser defi-nida como uma infraestrutura com capacidades de auto-organização e auto-configuraçãoque mantém dinamicamente a conectividade da malha [2]. As WMNs surgiram como umparadigma de comunicação com o objetivo de fornecer melhores serviços aos usuários ecustos mais baixos aos operadores [1]. Além disso, as WMNs têm o potencial para queo acesso ubíquo a Internet de alta velocidade seja alcançado [21]. Um exemplo de WMNpode ser visto na Figura 2.1.

Figura 2.1: Exemplo de WMN utilizada como infraestrutura deacesso à Internet.

Uma WMN é composta por roteadores da malha (mesh routers) e clientes damalha (mesh clients). Os mesh routers formam um backbone sem fio para fornecer umarede de múltiplos saltos. Além disso, alguns mesh routers podem assumir o papel degateway para acesso a outras redes, como por exemplo, a Internet. Os mesh clients sãoequipamentos típicos de usuários finais, como notebooks e smartphones, ou até mesmo

Page 21: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

2.1 Roteamento com balanceamento de carga 19

equipamentos sensores ou de monitoramento, como sensores de temperatura, umidade ecâmeras de vigilância. Os mesh clients se associam aos mesh routers para ter acesso àInternet ou realizar comunicações internas (cliente a cliente).

Três principais arquiteturas são previstas para WMNs [1]: WMNs infraestrutu-radas, WMNs clientes e WMNs híbridas. As WMNs infraestruturadas são o tipo maiscomum de WMNs, no qual os mesh routers formam o backbone sem fio para que os mesh

clients estabeleçam suas comunicações. Por esta razão, a proposta dessa dissertação foidesenvolvida no contexto de WMNs infraestruturadas. Nas WMNs clientes, os mesh rou-

ters são excluídos da arquitetura e seus papéis passam a ser realizados pelos mesh clients.Nas WMNs híbridas, os mesh routers são mantidos com seus papéis originais, porém osmesh clients também podem colaborar na criação da infraestrutura da malha, agindo comosimples clientes ou como mesh routers.

Naturalmente, para que as comunicações com a Internet ou dentro da própriaWMN sejam realizadas, é necessária a utilização de um protocolo de roteamento narede. Basicamente, o objetivo do roteamento é escolher rotas para os fluxos da rede erealizar o encaminhamento dos pacotes desses fluxos em cada salto do backbone sem fio.Adicionalmente, o protocolo de roteamento pode realizar o balanceamento de carga como intuito de minimizar pontos de gargalo e consequentemente melhorar o desempenho darede.

2.1 Roteamento com balanceamento de carga

A maior parte do tráfego das WMNs, as quais fornecem uma infraestrutura paraacesso à Internet, tem como origem ou destino os mesh routers que agem como gateways

da rede. Dessa forma, os enlaces sem fio próximos a esses gateways são potenciais pontosde gargalo. Isso implica que fluxos que passam pelos gargalos terão vazão reduzida, o queleva a uma redução da vazão agregada e da justiça da rede. Assim, o balanceamento decarga passa a ter um papel importante no desempenho da rede [5].

Algoritmos centralizados foram propostos com o intuito de realizar o roteamentocom balanceamento de carga em ambientes com um único gateway, distribuindo o tráfegoda rede através de sub-árvores, onde o gateway é a raiz [9, 10, 18]. Nessa abordagem,as rotas ficam restritas à estrutura da árvore, impedindo que o balanceamento de cargausufrua do aspecto denso presente em WMNs [39, 6] e, portanto, limitando o potencialde ganho de desempenho do balanceamento de carga.

Para usufruir do aspecto denso comum às WMNs, diversas métricas para rotea-mento ciente de carga foram desenvolvidas para melhorar o balanceamento de carga narede [7], tais como WCETT-LB [24], ILA [35], CWB [28] e NLR [42]. Essas métricasusam dados como comprimento de fila, tempo de canal ocupado e número de fluxos para

Page 22: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

2.2 Atribuição de canais 20

detectar congestionamento nos enlaces de comunicação. A métrica é propagada pelo pro-tocolo de roteamento para que algoritmos distribuídos do mecanismo de roteamento pos-sam realizar suas decisões. Essa abordagem normalmente causa alta oscilação nas rotasda rede, devido a alta variação nos valores das métricas [32].

Mecanismos de roteamento com balanceamento de carga foram desenvolvidoscom base em uma abordagem de seleção de múltiplos caminhos para um único fluxo [26,30]. Essa abordagem tem como característica selecionar rotas paralelas simultâneaspara um fluxo, fazendo com que os pacotes desse fluxo sejam enviados por múltiploscaminhos. Essa abordagem pode oferece um balanceamento de carga que pode serteoricamente melhor. Porém, mecanismos de camada de transporte como o TCP sãoafetados drasticamente, pois a chegada de pacotes fora de ordem e as variações no atrasona entrega dos pacotes aumentam consideravelmente.

Somente o roteamento com balanceamento de carga não é suficiente para mitigaro problema de desempenho das WMNs. Os enlaces de comunicação sem fio disputamo acesso ao meio para realizar suas comunicações. Dessa forma, é importante aplicarabordagens como escalonamento de enlaces ou heurística de atribuição de canais paramitigar as interferências entre os enlaces de comunicação da rede [29].

2.2 Atribuição de canais

A utilização de um único canal ou frequência de comunicação em uma WMNé de pouca utilidade prática devido ao reuso espacial extremamente limitado [40], o queleva a reduções significativas da vazão à medida que o tamanho da rede aumenta [15]. Autilização de múltiplos canais é possível através de um único rádio com trocas frequentesde canais. Essa abordagem tem uso restrito, pois cria instabilidade na conectividade darede e gera atraso adicional decorrente da frequente troca de canais [36, 33], afetandoa vazão da rede. Por outro lado, o uso de múltiplos rádios permite que múltiplos canaissejam utilizados simultaneamente na formação dos enlaces sem fio [36]. Além disso, aredução dos custos dos equipamentos do conjunto de padrões IEEE 802.11 tem tornadoeconomicamente viável o uso de múltiplos rádios.

As WMNs de múltiplos rádios e múltiplos canais preveem a utilização de canaisortogonais para atribuição de canais [15]. Isso permite um reuso espacial muito melhorque a abordagem de canal único, porém ainda muito limitado devido a quantidade decanais disponíveis. O padrão 802.11b/g opera na faixa de 2,4 GHz e fornece até 3 canaisortogonais e o padrão 802.11a, opera na faixa de 5 GHz e prevê a utilização de até 12canais ortogonais.

Algoritmos centralizados para atribuição de canais são encontrados em diversostrabalhos na literatura e podem ser classificados em três abordagens principais [15]:

Page 23: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

2.3 Abordagem conjunta de roteamento e atribuição de canais 21

modelar a rede através de um grafo [25, 38, 37, 31], modelar a rede através de fluxos [34,22, 3] e modelar a rede em partições [8, 4]. Os algoritmos propostos para as abordagensde modelar a rede através de um grafo e modelar a rede em partições têm em comum oobjetivo de minimizar o nível de interferência da rede. Os algoritmos que modelam a redeatravés de fluxos tendem a alocar mais largura de banda para enlaces de comunicação quesão mais utilizados, ou seja, são cientes de carga.

Há também na literatura trabalhos que propuseram protocolos e algoritmosdistribuídos para atribuição de canais em WMNs de múltiplos rádios e múltiplos ca-nais [33, 11, 27]. Nessa abordagem, cada mesh router executa uma instância do algoritmoe aplica decisões locais com base em informações do próprio mesh router e/ou de sua vi-zinhança. Além disso, esses algoritmos aplicam estratégias como selecionar o canal commenor carga, menor interferência, ou menor uso para rádios com maior prioridade.

Algoritmos centralizados tendem a obter soluções melhores que os algoritmosdistribuídos porque têm visão global da rede, porém dependem de informações datopologia da rede e necessitam de mecanismos para disseminar as decisões relativasà atribuição de canais. Por outro lado, algoritmos distribuídos agem localmente e nãodependem de informações de toda a rede, porém necessitam de protocolos para obterinformações de nós vizinhos ou agir com algum grau de cooperação com os mesmos.Independentemente da abordagem escolhida, é importante que a atribuição de canais eo roteamento estejam alinhados dentro da mesma estratégia. Esse tipo de abordagemconjunta tem sido utilizada para maximizar o desempenho da rede [36].

2.3 Abordagem conjunta de roteamento e atribuição decanais

Na abordagem conjunta de roteamento e atribuição de canais tratamos a interde-pendência e o alto acoplamento entre o roteamento e a atribuição de canais [3]. Ambas asabordagens de forma separada são sensíveis à carga nos enlaces de comunicação forma-dos entre os mesh routers da WMN. Enquanto o roteamento com balanceamento de cargabusca aliviar a sobrecarga dos enlaces de comunicação, a atribuição de canais visa alocarcanais com mais banda aos enlaces mais sobrecarregados. Existem outros tipos de abor-dagem conjunta que envolvem controle de potência, alocação de taxa, escalonamento deenlaces e diversos outros mecanismos que podem maximizar o desempenho da rede [36].Escolhemos tratar a abordagem conjunta de roteamento e atribuição de canais, pois emWMNs de múltiplos rádios e múltiplos canais o roteamento e a atribuição de canais sãomecanismos básicos e necessários para que os enlaces sejam formados e o encaminha-mento dos pacotes na rede seja realizado.

Page 24: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

2.3 Abordagem conjunta de roteamento e atribuição de canais 22

Nesse contexto, a abordagem conjunta de roteamento e atribuição de canaisconsiste em encontrar uma combinação de caminhos para fluxos e canais para rádiosem cada mesh router de modo que a vazão da rede seja maximizada. Adicionalmente,é desejável que a justiça da rede também seja maximizada. Encontrar uma combinaçãoótima para esses dois fatores é um problema NP-Difícil dada a explosão combinatória amedida que a rede aumenta [3, 16].

Raniwala et al. [34] propuseram uma solução centralizada para essa abordagemconjunta. O algoritmo de atribuição de canais desenvolvido pelos autores aloca canais commais banda para enlaces de comunicação mais carregados. Para a solução de roteamentoos autores empregaram algoritmos como o Shortest Path Routing e o Randomized Multi-

path Routing. Conhecimento prévio do tráfego da rede é fornecido como entrada para oalgoritmo de atribuição de canais.

Raniwala et al. [33] também desenvolveram uma solução distribuída. Os algorit-mos de roteamento e atribuição de canais realizam decisões locais em cada mesh router

da rede. Na atribuição de canais, cada mesh router seleciona os canais menos utilizadosem torno de sua vizinhança, enquanto o roteamento constrói sub-árvores para realizar obalanceamento de carga. Novamente, conhecimento prévio do tráfego da rede é necessá-rio.

Alicherry et al. [3] desenvolveram uma modelagem matemática para a aborda-gem conjunta de roteamento e atribuição de canais. Eles desenvolveram um algoritmoaproximado para obter uma solução de roteamento, escalonamento de enlaces e atribui-ção de canais com o intuito de maximizar a vazão da rede. Os autores aplicam primeirouma solução de programação linear para o algoritmo de roteamento para depois aplicarum algoritmo aproximado para escalonamento de enlaces e atribuição de canais. O tráfegoda rede precisa ser previamente conhecido.

Gardellin et al. [13] propuseram uma solução baseada em divisão e conquista. Arede é dividida em partes menores, a solução ótima de cada parte é calculada e em seguidatodas as soluções são combinadas. Conhecimento do tráfego da rede, da alocação de taxae da potência de sinal recebida em cada rádio de cada mesh router são necessários.

Gálvez et al. [16] desenvolveram a heurística Joint Routing, Channel Assignment

and Rate allocation (JRCAR) para resolver conjuntamente roteamento e atribuição decanais. Heurísticas separadas para roteamento e atribuição de canais são apresentadas.Ambas levam em conta a carga nos enlaces de comunicação. A estratégia da heurísticaconsiste em resolver primeiro o roteamento e na sequência realizar a atribuição de canais.O roteamento é tratado no nível de fluxos de aplicações TCP, ou seja, um fluxo éidentificado como endereço de origem, endereço de destino, porta de origem e porta dedestino.

Selecionamos a heurística JRCAR como trabalho principal a ser comparado

Page 25: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

2.4 Conclusão 23

com nossa proposta. Entendemos que ela representa o estado da arte das soluções daabordagem conjunta de roteamento e atribuição de canais, pois a mesma, realiza oroteamento no nível de fluxos TCP e não depende de conhecimento prévio do tráfegoda rede. Detectamos duas deficiências nessa solução: 1) para realizar o roteamento, aJRCAR aplica uma ordenação sobre os fluxos da rede que prioriza os fluxos cujos destinosestão mais próximos aos gateways sem fio. Essa ordenação gera caminhos longos parafluxos cujos destinos estão mais afastados dos gateways sem fio, pois esses fluxos serãoos últimos a serem roteados e, portanto, tendem a contornar os gargalos; 2) a solução deroteamento é executada frequentemente para todos os fluxos da rede. Isso pode gerar umgrande número de mudanças de rotas, pois a ordem na qual os fluxos são roteados podemudar quando novos fluxos surgem ou quando fluxos antigos terminam.

2.4 Conclusão

Apresentamos neste capítulo os principais fundamentos envolvidos com o temadesta dissertação. Apresentamos uma visão geral dos principais conceitos e fundamentossobre WMNs. Discutimos as principais abordagens, envolvendo roteamento e atribuiçãode canais, que influenciam a vazão em WMNs. Apresentamos as principais soluçõesencontradas na literatura para roteamento, atribuição de canais e para a abordagem deambas.

No próximo capítulo, apresentamos o modelo de rede e a formulação do pro-blema de roteamento com balanceamento de carga e caminhos mais curtos. Apresentamostambém, a proposta desenvolvida para resolver conjuntamente roteamento e atribuição decanais.

Page 26: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

CAPÍTULO 3Proposta

Neste capítulo, apresentamos a formulação do problema de otimização de rote-amento com balanceamento de carga e caminhos mais curtos. Introduzimos a heurísticaBottleneck, Path length and Routing overhead (BPR) como uma solução para o problemade otimização definido. Desenvolvemos a BPR para prioritariamente minimizar o gargaloda rede e, como critério secundário, minimizar o comprimento dos caminhos seguidospelos fluxos da rede.

Por fim, introduzimos a heurística Routing and Channel Assignment, Joint

Improvement (RCAJI) como uma solução para a abordagem conjunta de roteamentoe atribuição de canais. A heurística RCAJI faz uso dos algoritmos da heurística BPRpara roteamento com balanceamento de carga e do algoritmo de atribuição de canais daheurística JRCAR, desenvolvida por Gálvez et al. [16].

3.1 Modelo

Os cenários considerados neste trabalho assumem enlaces sem fio estáveis elivres de interferências externas de outras redes, com boa qualidade de sinal e capacidadehomogênea em termos de vazão. Além disso, consideramos apenas o tráfego do backbone

sem fio da WMN, excluindo os mesh clients da topologia, e que também temos visãoglobal da rede.

Inicialmente, modelamos a topologia da rede como um grafo direcionado G =

(V,E). Nesse grafo, cada vértice representa um mesh router e cada aresta representaum enlace de comunicação. Existe uma aresta entre dois vértices s,d ∈ V se o vérticed consegue receber transmissões do vértice s. Seja esd uma aresta direcionada de s para d.Assumimos conectividade simétrica, isto é, esd ∈ E se e somente se eds ∈ E. Adicionamosum vértice virtual I para representar o(s) gateway(s) de acesso à Internet. Seja F umconjunto de fluxos da Internet. A origem de um fluxo f ∈ F é denotada por s f e o destinoé denotado por d f . Um fluxo sempre tem como origem ou destino o nó virtual I.

O problema de roteamento com balanceamento de carga consiste em selecionarum caminho para um fluxo de forma que a carga seja uniformemente distribuída por toda

Page 27: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.1 Modelo 25

a rede. Ao realizar o balanceamento de carga caminhos longos podem ser selecionados,uma vez que esses caminhos tendem a contornar as arestas sobrecarregadas [12]. EmWMNs, caminhos longos podem degradar o desempenho das aplicações, uma vez que oatraso fim-a-fim aumenta [17]. Além disso, ao selecionar caminhos longos mais enlacessão ativados simultaneamente, o que pode elevar o nível de interferência e a contenção darede. Assim, em WMNs que possuem as características descritas previamente, é desejávelque uma solução de roteamento estabeleça um compromisso entre o balanceamento decarga e o comprimento dos caminhos. Nesse contexto, o problema pode ser dividido entredois objetivos conflitantes: minimizar o gargalo da rede e minimizar o comprimento docaminho de cada fluxo. Definimos como gargalo da rede a aresta pela qual está passandoa maior quantidade de fluxos. Naturalmente, podemos ter mais de uma aresta como sendoo gargalo da rede.

Supondo que conhecemos o comprimento do menor caminho para cada fluxof ∈ F , que vamos chamar de n f , definimos abaixo o problema multiobjetivo combalanceamento de carga e caminhos mais curtos, que estamos interessados neste trabalho:

minimizar maxesd ∈E

{∑

f ∈Fa f

sd

}(3-1)

minimizar ∑esd ∈E

a fsd,∀ f ∈ F, (3-2)

sujeito a: ∑es f d ∈E

a fs f d = ∑

esd f ∈Ea f

sd f= 1,∀ f ∈ F (3-3)

∑esd ∈E

a fsd = ∑

eds∈Ea f

ds,∀d ∈V −{

d f ,s f},∀ f ∈ F (3-4)

∑esd ∈E

a fsd ≤ Γη f ,∀ f ∈ F (3-5)

a fsd ∈ {0,1} ,∀esd ∈ E and ∀ f ∈ F, (3-6)

onde a variável binária a fsd é igual a 1 se o fluxo f ∈ F passa pela aresta esd , caso contrário

seu valor é 0. Em (3-5), o parâmetro Γ é um fator de esticamento proposto por Gaoet al. [12], utilizado para limitar o comprimento máximo dos caminhos seguidos pelosfluxos.

Enquanto a função objetivo em (3-1) busca minimizar o número de fluxos na(s)aresta(s) mais congestionada(s), gargalo da rede, as funções objetivo em (3-2) buscamminimizar o comprimento do caminho para rotear cada fluxo f ∈ F . As duas restriçõesem (3-3) garantem que cada fluxo f sai de sua origem, s f , e chega ao seu destino, d f ,

Page 28: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.2 Bottleneck, Path length and Routing overhead heuristic – BPR 26

respectivamente. As restrições (3-3), (3-4) e (3-6) garantem que o tráfego de um fluxosegue por exatamente um caminho entre sua origem e seu destino, ou seja, uma sequênciade arestas únicas. Isso é necessário para evitar a entrega de pacotes fora de ordem evariações no atraso que podem causar impacto significativo em fluxos TCP. A restrição(3-5) garante que o comprimento de um caminho não será maior que o limite impostopelo parâmetro Γ.

3.2 Bottleneck, Path length and Routing overhead heuris-tic – BPR

Desenvolver um algoritmo exato, para buscar uma solução ótima para o pro-blema de otimização multiobjetivo descrito na Seção 3.1, não é factível em cenários ondea dinamicidade da rede é alta, pois a ordem na qual os fluxos são roteados impacta nasolução final. Para se obter a solução ótima é necessário analisar todas as possibilidadesde ordenação do roteamento dos fluxos, o que não é viável, pois caso um novo fluxo sejainiciado ou um fluxo antigo termine todas as possibilidades deverão ser analisadas nova-mente. Nesse contexto, desenvolvemos a BPR como uma solução para o roteamento defluxos que prioritariamente realiza o balanceamento de carga e como critério secundáriominimiza o comprimento do caminho de cada fluxo da rede. A BPR opera apenas quandoum novo fluxo é iniciado, executando o Algoritmo 3.1, ou quando um fluxo termina, exe-cutando o Algoritmo 3.2. Ambos algoritmos operam apenas sob os fluxos que passampelas arestas que são gargalo da rede.

Para cada fluxo que é iniciado na rede, o Algoritmo 3.1 é executado. As entradasdesse algoritmo são o novo fluxo NF , o conjunto de arestas E do grafo G e o conjuntode caminhos candidatos CC. O conjunto de caminhos candidatos é composto por todosos possíveis caminhos entre a Internet e o mesh router destino ou origem do fluxo.Os elementos desse conjunto estão ordenados em ordem crescente de comprimentode caminho e estão limitados pelo fator de esticamento Γ. Os caminhos candidatossão calculados apenas quando a topologia da rede muda. A saída do algoritmo é oconjunto de arestas E com seus pesos atualizados. Através das informações contidas emE conseguimos obter o caminho seguido por cada fluxo e a quantidade de fluxos passandoem cada aresta esd ∈ E.

A primeira operação executada pelo Algoritmo 3.1 (linha 1) é calcular o gargaloda rede antes da adição da rota do caminho para o novo fluxo NF . Em seguida, na linha 2,procuramos o caminho com mínimo gargalo (CCMG) para NF , levando em conta o estadoatual da rede (descrito pelo conjunto de arestas da rede E) e os caminhos candidatospara NF . De posse do CCMG, adicionamos a rota para NF e atualizamos o estado da

Page 29: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.2 Bottleneck, Path length and Routing overhead heuristic – BPR 27

rede (linha 3). Em seguida, na linha 4, calculamos novamente o gargalo da rede. Casoo gargalo da rede sofra elevação (linha 5), realizaremos o re-roteamento dos fluxos quepassam pelo gargalo (linhas 6 e 7). Para cada fluxo que passa pelo gargalo, realizamos aremoção da rota seguida por esse fluxo (linha 9), calculamos um novo CCMG (linha 10)e o adicionamos, atualizando novamente o estado da rede (linha 11). Caso não haja umadiminuição do gargalo ou a seleção de um caminho com menor comprimento (linha 13),não aplicaremos as mudanças e voltaremos ao estado anterior da rede (linha 14). Casohaja uma diminuição do gargalo da rede interrompemos a operação de re-roteamento(linha 18), encerrando o algoritmo.

A estratégia adotada no Algoritmo 3.1 consiste em adicionar rotas para os fluxosrealizando o balanceamento de carga na ordem em que eles surgem na rede. Sempre quehouver uma elevação no gargalo, a operação de re-roteamento é realizada com o intuitode procurar novos caminhos com mínimo gargalo para os fluxos que passam pelo gargalo.Dessa forma, garantimos o controle do gargalo da rede. Os caminhos selecionados semprepossuem o menor comprimento possível, uma vez que o conjunto de caminhos candidatosCC está ordenado pelo comprimento dos caminhos. Assim, o Algoritmo 3.1 busca semprediminuir o gargalo da rede e o comprimento dos caminhos. Princípios similares ao dessaestratégia são também aplicados na remoção da rota de um fluxo que terminou.

O Algoritmo 3.2 é executado sempre que o fim de um fluxo é detectado na rede.Como entradas desse algoritmo, temos o fluxo FT que terminou, o conjunto de arestasE do grafo G e o conjunto de caminhos candidatos CC (o mesmo que foi utilizado noAlgoritmo 3.1). Como saída do algoritmo, temos o conjunto de arestas E atualizado coma remoção da rota do fluxo FT . Ou seja, teremos a informação do caminho seguido porcada fluxo e a quantidade de fluxos passando em cada aresta esd ∈ E, da mesma formaque ocorre no Algoritmo 3.1.

Quando o algoritmo 3.2 é iniciado (linha 1), o caminho CRFT utilizado pelofluxo FT que terminou é removido e o estado da rede (conjunto de arestas da redeE) é atualizado. Em seguida, o gargalo da rede (linha 2) e o gargalo do CRFT (linha3) são calculados. O re-roteamento será realizado caso a diferença entre o gargaloda rede e o gargalo do CRFT (linha 4) seja exatamente igual a 2. Essa diferençasignifica que há uma oportunidade a ser aproveitada pelo balanceamento de carga epode ser visualizada na Figura 3.1. Uma diferença inferior a 2 significa que não há oque melhorar no balanceamento de carga, caso que pode ser visualizado na Figura 3.2.Nesse caso evitamos uma atualização de rota, uma vez que o balanceamento da redenão mudará. Também não realizamos o re-roteamento caso a diferença seja superior a2, caso demonstrado pela Figura 3.3. Uma diferença superior a 2 significa que nenhumcaminho candidato disponível pôde ocupar a oportunidade disponível em uma ação dere-reroteamento anterior. Isso ocorre pois os caminhos candidatos não possuem todos os

Page 30: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.2 Bottleneck, Path length and Routing overhead heuristic – BPR 28

Algoritmo 3.1: BPR - Adicionar rota para um novo fluxoEntrada: NF - novo fluxo; E - arestas da rede; CC caminhos candidatosSaída: E - arestas da rede atualizadasGARGALOANT ERIOR← gargaloDaRede(E)1

CCMG← caminhoComMinimoGargalo(NF,E,CCNF)2

adicionaRota(NF,E,CCMG)3

GARGALOATUAL← gargaloDaRede(E)4

se GARGALOATUAL > GARGALOANT ERIOR então5

FLUXOS← f luxosPassandoPeloGargalo(E)6

para cada F em FLUXOS faça7

ET EMP← E8

CAMINHOREMOV IDO← removeRota(F,E)9

CCMG← caminhoComMinimoGargalo(F,E,CCF)10

adicionaRota(F,E,CCMG)11

GARGALONOVO← gargaloDaRede(E)12

se !(GARGALONOVO < GARGALOATUAL) e13

!(CCMG <CAMINHOREMOV IDO) entãoE← ET EMP14

continue15

fim16

se GARGALONOVO < GARGALOATUAL então17

pare18

fim19

fim20

fim21

retorna E22

caminhos possíveis, pois os mesmos são limitados pelo fator de esticamento Γ.O re-roteamento dos fluxos que passam pelo gargalo (linhas 5 e 6) é realizado

da mesma forma que no Algoritmo 3.1: a rota do fluxo corrente é removida (linha 8),um caminho com mínimo gargalo CCMG é calculado (linha 9) e, em seguida, umarota é adicionada para esse fluxo (linha 10). Após essas operações, o gargalo do CRFT

é recalculado (linha 11). Caso não haja elevação do gargalo do CRFT (linha 12), ouseja, a oportunidade deixada não foi aproveitada, ou o CCMG não é menor que ocaminho removido do fluxo corrente, as alterações não são realizadas (linha 13). Casoa oportunidade seja aproveitada (linha 16), o re-roteamento é encerrado (linha 17) e oalgoritmo 3.2 termina suas operações.

De forma semelhante ao Algoritmo 3.1, o objetivo do Algoritmo 3.2 é diminuiro gargalo da rede e o comprimento dos caminhos para os fluxos da rede. Oportunidadespara melhorar o balanceamento de carga surgem à medida que os fluxos que terminamsão removidos. O algoritmo aproveita essas oportunidades selecionando os caminhoscom menor gargalo e, eventualmente, com menor caminho. Vale ressaltar que ambos os

Page 31: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.3 Routing and Channel Assignment, Joint Improvement heuristic – RCAJI 29

Figura 3.1: Caso no qual o re-roteamento é realizado na remoçãode rota de um fluxo que terminou.

Figura 3.2: Primeiro caso no qual o re-roteamento não é realizadona remoção de rota de um fluxo que terminou.

algoritmos realizam o re-roteamento apenas dos fluxos que passam pelas arestas que sãogargalo da rede. Além disso, mudanças de rotas são realizadas apenas se o gargalo e/ouo comprimento do caminho são reduzidos. Isso significa, que evitamos que o númerode mudanças de rotas seja excessivamente alto. Isso é importante para um algoritmo deatribuição de canais, pois altas variações na carga dos enlaces de comunicação podemresultar em um número alto de mudanças de canais.

3.3 Routing and Channel Assignment, Joint Improvementheuristic – RCAJI

A estratégia que escolhemos para aplicar a abordagem conjunta de roteamento eatribuição de canais leva em consideração a carga distribuída nos enlaces de comunicaçãosem fio. A heurística BPR, apresentada na seção anterior, distribui os fluxos na rede demaneira a minimizar o gargalo e o comprimento dos caminhos. Ao realizar as operações

Page 32: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.4 Outra solução para a abordagem conjunta 30

Figura 3.3: Segundo caso no qual o re-roteamento não é realizadona remoção de rota de um fluxo que terminou.

de adicionar (Algoritmo 3.1) ou remover (Algoritmo 3.2) rotas para fluxos da rede, aheurística BPR fornece o estado da rede atualizado com a quantidade de fluxos quepassam em cada enlace de comunicação. Dessa maneira, a solução de atribuição de canaisacoplada a heurística BPR é baseada na carga dos enlaces de comunicação.

Acoplamos o algoritmo de atribuição de canais da heurística JRCAR, desenvol-vido por Gálvez et al. [16], à heurística BPR e nomeamos nossa solução para a abordagemconjunta de roteamento e atribuição de canais de RCAJI. O algoritmo de atribuição de ca-nais da JRCAR é ciente de carga e utiliza a quantidade de fluxos para identificar a cargaem cada enlace da rede. Assim, não é necessário realizar adaptações nesse algoritmo ouna BPR para que eles funcionem em conjunto. De maneira semelhante a Gálvez et al., uti-lizamos a saída produzida pela heurística de roteamento como entrada para o algoritmo deatribuição de canais. Assim, a RCAJI executa primeiro o roteamento e depois a atribuiçãode canais.

Apesar de adotar a mesma estratégia e o mesmo algoritmo de atribuição decanais da JRCAR, a heurística RCAJI consegue oferecer à rede um desempenho melhor.Isso ocorre pois a heurística BPR além de realizar o balanceamento de carga tambémseleciona caminhos mais curtos que a heurística de roteamento e balanceamento de cargada heurística JRCAR. Ao selecionar caminhos mais curtos menos enlaces são ativadossimultaneamente. Além disso, a heurística BPR mantém o número de mudanças de rotasmais baixo que a heurística JRCAR.

3.4 Outra solução para a abordagem conjunta

A heurística JRCAR, proposta por Gálvez et al. [16], é composta por doisalgoritmos: o Algoritmo 3.3, para roteamento com balanceamento de carga; e o Algoritmo3.4, para atribuição de canais. A proposta dos autores consiste em aplicar primeiro oalgoritmo de roteamento sobre todos os fluxos da rede e em seguida aplicar o algoritmo

Page 33: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.4 Outra solução para a abordagem conjunta 31

Algoritmo 3.2: BPR - Remover rota para fluxo que terminouEntrada: FT - fluxo que terminou; E - arestas da rede; CC caminhos candidatosSaída: E - arestas da rede atualizadasCRFT ← removeRota(FT,E)1

GARGALOATUAL← gargaloDaRede(E)2

GARGALOCRFT ← gargaloDoCaminho(E,CRFT )3

se GARGALOATUAL−GARGALOCRFT == 2 então4

FLUXOS← f luxosPassandoPeloGargalo(E)5

para cada F em FLUXOS faça6

ET EMP← E7

CAMINHOREMOV IDO← removeRota(F,E)8

CCMG← caminhoComMinimoGargalo(F,E,CCF)9

adicionaRota(F,E,CCMG)10

NOVOGARGALOCRT F ← gargaloDoCaminho(E,CRFT )11

se !(NOVOGARGALOCRFT > GARGALOCRFT ) e12

!(CCMG <CAMINHOREMOV IDO) entãoE← ET EMP13

continue14

fim15

se NOVOGARGALOCRFT > GARGALOCRFT então16

pare17

fim18

fim19

fim20

retorna E21

de atribuição de canais para definir o canal utilizado em cada enlace da rede. A JRCAR éexecutada frequentemente, com intervalo de tempo fixo.

O Algoritmo 3.3, para roteamento com balanceamento de carga, tem comoentradas a lista LF de todos os fluxos presentes na rede, o conjunto de arestas E da rede eo conjunto de caminhos candidatos CC. A primeira ação do algoritmo (linha 1), é ordenara lista LF em ordem crescente de oportunidades. As oportunidades são a quantidade decaminhos disponíveis para um fluxo F , a qual é obtida pela cardinalidade do conjunto decaminhos candidatos para esse fluxo: |CCF |. Após a ordenação dos fluxos, o algoritmodistribui os fluxos da rede (linha 2), selecionando para cada fluxo F um caminho CCMG

com mínimo gargalo (linhas 3). Após a seleção do CCMG a rota é aplicada na rede (linha4).

Assim como na heurística de roteamento BPR (componente da RCAJI), oscaminhos do conjunto CCF estão ordenados em ordem crescente de comprimento. Dessaforma, o CCMG também é o caminho com menor gargalo e comprimento possíveis.Porém, a ordenação imposta faz com que os fluxos com mais oportunidades, i.e. quepossuem mais caminhos disponíveis, sejam roteados por caminhos mais longos. A razão

Page 34: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.4 Outra solução para a abordagem conjunta 32

é que esses fluxos são os últimos a serem roteados e tendem a contornar os gargalos paramanter o balanceamento de carga da rede.

Algoritmo 3.3: JRCAR - Roteamento com balanceamento de cargaEntrada: LF - lista de fluxos da rede; E - arestas da rede; CC caminhos candidatosSaída: E - arestas da rede atualizadasFLUXOS← ordena(LF)1

para cada F em FLUXOS faça2

CCMG← caminhoComMinimoGargalo(F,E,CCF)3

adicionaRota(F,E,CCMG)4

fim5

retorna E6

A atribuição de canais é realizada aplicando o Algoritmo 3.4. As entradas dessealgoritmo são o conjunto de arestas E da rede (anteriormente atualizadas pelo algoritmode roteamento), a atribuição de canais anterior X e a lista de canais disponíveis CD.Inicialmente (linha 1), o algoritmo obtém o conjunto U de arestas não direcionadas apartir do conjunto de arestas E. Em sequência (linhas 2 e 3), o conjunto U é ordenadoem ordem decrescente de utilização (quantidade de fluxos que passam pela aresta) e aquantidade de relocações é iniciada com 0 (zero). Após essas inicializações, tentativas denovas atribuições de canais serão realizadas para cada aresta UMN de U (linha 4). Caso aquantidade de relocações atinja o máximo permitido (linha 5), o algoritmo é encerrado eretorna a nova atribuição de canais X (linha 6). Somente arestas com alguma utilizaçãorecebem novos canais (linha 8).

Para selecionar um novo canal para uma determinada aresta UMN de U , oalgoritmo realizará a análise de cada canal disponível. Nas linhas 9 e 10, o valor domelhor canal (VALORMELHOR) é iniciado com 0 (zero) e o canal atual (CANALATUAL)recebe o canal corrente da aresta UMN (XUMN ). Na sequência, cada canal candidato(CANALCANDIDATO) disponível será analisado (linha 11). O canal candidato não seráanalisado caso exista alguma restrição de interface que impeça a troca de canal nos mesh

routers M e N, vértices da aresta UMN (linha 12). A restrição é detectada caso os trêscenários a seguir ocorram: 1) se o mesh router não transmite no canal candidato, 2)se mais de uma aresta utiliza o canal atual e 3) se todos os rádios do mesh router jáestão atribuídos com canais diferentes. Se a restrição não é atendida, o canal candidato éanalisado, levando em conta uma estimativa de interferência (linhas 15 a 23). A estimativaé calculada utilizando a expressão descrita na linha 36. Caso o valor do canal analisadoseja menor que o melhor valor detectado (linha 24), o melhor canal (CANALMELHOR)é atualizado (linha 26). Após analisar todos os canais candidatos, o reajuste de canal érealizado (linhas 29 a 32).

Page 35: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.5 Conclusão 33

O cálculo da estimativa de interferência da linha 36 do Algoritmo 3.4 envolve autilização e a PER (Packet Error Rate) de cada aresta direcionada que compõe as arestasnão direcionadas UMN e UPQ. Ao calcular a PER entre dois pares de arestas direcionadasEmn e Epq quaisquer, obtemos uma estimativa de perda de pacotes que as transmissõesrealizadas em um enlace Epq experimentam na presença das transmissões realizadas emum enlace Epq. Assim, a estimativa de qualidade do canal é obtida ao combinar a cargade tráfego (utilização das arestas) e a estimativa de perda de pacotes.

3.5 Conclusão

Apresentamos neste capítulo o modelo de rede utilizado e a formulação doproblema de otimização de roteamento com balanceamento de carga e caminhos maiscurtos. Descrevemos em detalhes a heurística BPR, apresentando os algoritmos quea compõe. Por fim, descrevemos a estratégia da heurística RCAJI para a abordagemconjunta de roteamento e atribuição de canais, a qual é formada da junção da heurísticaBPR com o algoritmo de atribuição de canais da JRCAR.

No próximo capítulo, discutimos a avaliação de desempenho realizada no si-mulador de redes ns-3. Realizamos comparações entre a heurística RCAJI, a heurís-tica JRCAR e um algoritmo tradicional de roteamento para redes em malha sem fio, oOptimized link state routing protocol (OLSR) [19].

Page 36: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

3.5 Conclusão 34

Algoritmo 3.4: JRCAR - Atribuição de canaisEntrada: E - arestas da rede; X - atribuição de canais anterior; CD - canais

disponíveisSaída: X - atribuição de canais atualizadaU ← arestasNaoDirecionadas(E)1

U ← ordena(U)2

RELOCACOES← 03

para cada UMN em U faça4

se RELOCACOES == RELOCACOESPERMIT IDAS então5

retorna X6

fim7

se UMN > 0 então8

VALORMELHOR← 09

CANALATUAL← XUMN10

para cada CANALCANDIDATO em CD faça11

se existeRestricaoDeInter f aces(M,CANALATUAL,CANALCANDIDATO)12

ou existeRestricaoDeInter f ace(N,CANALATUAL,CANALCANDIDATOentão

continue13

fim14

VALOR← 015

para cada UPQ em U, excluindo UMN faça16

se XUPQ ==CANALATUAL então17

VALOR←VALOR+ inter f erencia(UMN ,UPQ)18

fim19

senão20

VALOR←VALOR− inter f erencia(UMN ,UPQ)21

fim22

fim23

se VALOR <VALORMELHOR então24

VALORMELHOR←VALOR25

CANALMELHOR←CANALCANDIDATO26

fim27

fim28

se VALORMELHOR < DELTA então29

XUMN ←CANALMELHOR30

REAJUST ES← REAJUST ES+131

fim32

fim33

fim34

retorna X35

inter f erencia(UMN ,UPQ)← EMNEPQPER(EMN ,EPQ)+36

EMNEQPPER(EMN ,EQP)+ENMEPQPER(ENM,EPQ)+ENMEQPPER(ENM,EQP)

Page 37: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

CAPÍTULO 4Avaliação

Neste capítulo, apresentamos a avaliação de desempenho realizada com o simu-lador de redes ns-3. Foram realizadas comparações entre a heurística RCAJI, propostadesta dissertação, a heurística JRCAR, proposta por Gálvez et al. [16], e o algoritmoOLSR [19]. Descrevemos os cenários e experimentos realizados e realizamos as discus-sões com os resultados obtidos.

4.1 Cenários e experimentos

Foram estabelecidos três tipos de topologias aleatórias para construção doscenários de simulação. Esses tipos de topologias foram criados com a mesma metodologiautilizada por Gálvez et al. [16]. Todos os nós da rede são mesh routers estacionários e háapenas um gateway sem fio, que representa a fronteira com a Internet, localizado no centroda rede. As topologias do tipo A são compostas por 25 nós espalhados em uma área de500m x 500m, as do tipo B por 45 nós espalhados em uma área de 700m x 700m e asdo tipo C por 80 nós espalhados em uma área de 1000m x 1000m. As posições dos nósda rede são aleatoriamente selecionadas, porém respeitam algumas restrições. Todas astopologias devem ser conexas e a distância mínima entre os nós da rede deve ser 100m.A conectividade entre nós é definida pelo modelo de camada física Yans do ns-3 [23], oqual configuramos para que nós a 150m um do outro tenham conectividade.

Os parâmetros do simulador podem ser visualizados na Tabela 4.1. Para selecio-nar a potência de transmissão utilizamos a metodologia a seguir. Configuramos um par denós separados por uma distância de 175m. Utilizamos uma folga de 25m a mais entre osnós, a qual representa 50% da diferença entre a distância mínima e a máxima para qual-quer par de mesh routers da rede. Em seguida, configuramos um dos nós para transmitirpacotes UDP à taxa máxima com as retransmissões de camada de enlace desabilitadas.Por fim, experimentamos diferentes valores inteiros de potência de transmissão até nãohaver perda de pacotes. Dessa forma, os enlaces onde os nós estão separados pela distân-cia mínima (100m) e máxima (150m) apresentam valores próximos de SNR e valores decapacidade do canal praticamente iguais.

Page 38: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.2 Análise de propriedades da rede 36

Tabela 4.1: Parâmetros do simulador.

Padrão IEEE 802.11b taxa de transmissão fixa em 11 MbpsModelo de propagação Log-distance, expoente = 2,7RTS/CTS desabilitadoPotência de transmissão 22 dBmLimiar de detecção de energia (EDth) -96 dBm, valor padrão do ns-3Limiar de detecção de portadora (CSth) -99 dBm, valor padrão do ns-3

Os fluxos da rede têm como origem o gateway no centro da topologia. Osdestinos dos fluxos são os demais mesh routers, os quais são selecionados aleatoriamente.Um único mesh router pode ser destino de mais de um fluxo, sendo que esses fluxos serãodiferenciados por suas portas de origem e destino.

Dividimos a avaliação de desempenho em duas partes. Na primeira parte, ana-lisamos algumas propriedades da rede, considerando aspectos como valor do gargalo,comprimento dos caminhos seguidos pelos fluxos e a quantidade de atualizações de rotas.Na segunda parte, analisamos o desempenho da rede, considerando aspectos como vazãoe justiça entre os fluxos da rede.

4.2 Análise de propriedades da rede

Nesta parte da avaliação, executamos experimentos no simulador de redes ns-3sem gerar tráfego de pacotes. O intuito foi avaliar algumas propriedades da rede que têmpotencial para causar um impacto sensível no desempenho da rede. Somente os algoritmosde roteamento das heurísticas RCAJI e JRCAR foram considerados nessa análise.

Geramos 30 cenários aleatórios para cada combinação de topologia e quantidadede fluxos. Para as topologias do tipo A geramos cenários com 5, 10, 15, 20 e 25 fluxos.Para as topologias dos tipos B e C geramos cenários com 10, 20, 30, 40 e 50 fluxos. Foramgerados 150 cenários diferentes por topologia, totalizando 450 cenários. Os experimentosconsistiam em simular a adição de um fluxo por instante de tempo até atingir o númeromáximo de fluxos potenciais do cenário.

4.2.1 Gargalo

A Tabela 4.2 mostra as estatísticas sobre o gargalo da rede (número de fluxospassando pela aresta com maior utilização). Em todos os cenários, as heurísticas tiveramdesempenhos similares. A RCAJI proporciona uma pequena queda no gargalo da redenos seguintes cenários: topologias do tipo A com 10 fluxos, topologias do tipo B com 10

Page 39: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.2 Análise de propriedades da rede 37

fluxos e topologias do tipo C com 50 fluxos. Houve um pequeno aumento no gargalo noscenários de topologias do tipo C com 30 fluxos. Esses resultados mostram que a RCAJIconsegue manter o gargalo da rede em um nível satisfatório, uma vez que Gálvez et al.

mostraram que a JRCAR mantém o gargalo da rede próximo ao ótimo [16].

Tabela 4.2: Estatísticas sobre o gargalo da rede.

Número de fluxos por cenárioTopologia A 5 10 15 20 25

MédiaJRCAR 1,200 2,300 3,467 4,067 5,133RCAJI 1,200 2,167 3,467 4,067 5,133

Desvio padrãoJRCAR 0,407 0,5349 0,973 0,521 0,681RCAJI 0,407 0,461 0,973 0,640 0,681

ModaJRCAR 1 2 3 4 5RCAJI 1 2 3 4 5

Topologia B 10 20 30 40 50

MédiaJRCAR 2,167 4,200 5,667 8,100 10,300RCAJI 2,133 4,200 5,667 8,100 10,300

Desvio padrãoJRCAR 0,379 0,551 0,661 1,155 1,601RCAJI 0,346 0,551 0,661 1,155 1,601

ModaJRCAR 2 4 6 8 10RCAJI 2 4 6 8 10

Topologia C 10 20 30 40 50

MédiaJRCAR 2,500 4,500 6,100 9,000 11,433RCAJI 2,500 4,500 6,133 9,000 11,400

Desvio padrãoJRCAR 0,682 0,820 1,062 2,034 2,112RCAJI 0,682 0,820 1,042 2,034 2,127

ModaJRCAR 2 4 6 8 10RCAJI 2 4 6 8 10

Como a heurística RCAJI busca minimizar o gargalo da rede e o comprimentodos caminhos, melhorias em outras propriedades da rede são esperadas. Analisamostambém a vizinhança dos nós até no máximo dois saltos do gateway sem fio. Os enlacessem fio dessa região causam muita interferência nos enlaces sem fio em volta do gateway.Dessa forma, é importante minimizar a ativação de enlaces nessa região para melhoraro desempenho geral da rede. A Tabela 4.3 mostra estatísticas sobre o número de fluxospassando por essa região. Como pode ser observado, a RCAJI consegue melhorar deforma consistente essa propriedade, uma vez que não só a média é menor, mas também onúmero máximo e mínimo na maior parte dos cenários.

Page 40: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.2 Análise de propriedades da rede 38

Tabela 4.3: Estatísticas sobre os enlaces dos nós vizinhos a doissaltos do gateway.

Número de fluxos por cenárioTopologia A 5 10 15 20 25

MédiaJRCAR 4,733 10,300 16,766 21,233 27,866RCAJI 4,633 10,233 15,366 20,866 24,600

MínimoJRCAR 2 6 13 15 18RCAJI 2 7 10 12 17

MáximoJRCAR 9 16 21 29 35RCAJI 8 15 20 28 32

Topologia B 10 20 30 40 50

MédiaJRCAR 10,633 22,533 35,166 48,933 62,800RCAJI 10,766 21,566 33,466 43,266 53,733

MínimoJRCAR 9 20 28 41 54RCAJI 6 17 29 34 45

MáximoJRCAR 14 30 44 56 78RCAJI 15 29 38 53 65

Topologia C 10 20 30 40 50

MédiaJRCAR 11,066 23,700 35,000 48,333 59,300RCAJI 10,900 22,133 34,366 43,733 55,166

MínimoJRCAR 9 19 31 37 49RCAJI 8 18 27 39 46

MáximoJRCAR 15 28 41 59 71RCAJI 16 28 42 53 66

4.2.2 Comprimento dos caminhos

A Figura 4.1, apresenta a PMF (Probability Mass Function) e a CDF (Cumula-

tive Distribution Function) do comprimento dos caminhos seguidos pelos fluxos. Comoesperado, o número de nós presente em cada topologia afeta o comprimento dos cami-nhos. O caminho mais longo seguido por um fluxo foi 12 e pode ser observado nastopologias do tipo C. Além disso, a média do comprimento dos caminhos é maior nastopologias do tipo C do que nas topologias dos tipos A e B.

A heurística RCAJI sempre tem a porcentagem de caminhos mais curtos maiorque a heurística JRCAR. Por exemplo, nas topologias A, aproximadamente 54% doscaminhos selecionados pela RCAJI são de 1 ou 2 saltos, enquanto que esse valor é de48% para a heurística JRCAR. A RCAJI também evitou caminhos muito longos. Porexemplo, nas topologias do tipo C, o comprimento do caminho mais longo selecionadopela RCAJI é 11, enquanto que na JRCAR esse valor é 12. A RCAJI consegue seguir

Page 41: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.2 Análise de propriedades da rede 39

caminhos mais curtos devido ao processo de re-roteamento dos fluxos que passam pelogargalo. Ao realizar esse processo, caminhos com mínimo gargalo e menor comprimentopossível são selecionados, dando oportunidade para que fluxos possam ser roteados porcaminhos mais curtos.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

1 2 3 4 5 6 7 0

0.2

0.4

0.6

0.8

1

PM

F

CD

FComprimento do caminho

JRCARJRCARRCAJIRCAJI

(a) Topologias de tipo A.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

1 2 3 4 5 6 7 8 9 10 11 0

0.2

0.4

0.6

0.8

1

PM

F

CD

F

Comprimento do caminho

JRCARJRCARRCAJIRCAJI

(b) Topologias de tipo B.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

1 2 3 4 5 6 7 8 9 10 11 12 0

0.2

0.4

0.6

0.8

1

PM

F

CD

F

Comprimento do caminho

JRCARJRCARRCAJIRCAJI

(c) Topologias de tipo C.

Figura 4.1: Comprimento dos caminhos seguidos pelos fluxos.

4.2.3 Quantidade de atualizações de rotas

Naturalmente, as atualizações de rotas geradas por um protocolo de roteamentotendem a impactar o desempenho da rede. Dessa forma, é importante que a quantidade deatualizações de rotas seja mantida baixa, mesmo em condições em que o tráfego da redeseja dinâmico ou o número de nós e fluxos cresça.

A Figura 4.2 mostra a quantidade de atualizações de rotas aplicadas por ambasas heurísticas. Uma atualização de rota é computada de acordo com o número de mesh

routers afetados quando um novo caminho é selecionado por um fluxo. Por exemplo, sea rota s©– x©– d© muda para s©– d©, então 1 atualização de rota é computada, pois o mesh

router x foi adicionado na rota. Porém, se a rota s©– x©– d© muda para s©– y©– d©, então 2rotas são computadas, pois o mesh router x não faz parte mais da rota e o mesh router y

foi adicionado na rota.

Page 42: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.3 Desempenho da rede 40

A quantidade de atualizações de rotas gerada pela RCAJI é muito menor doque a gerada pela JRCAR. A menor diferença de porcentagem foi aproximadamente25% e pode ser observada nas topologias do tipo A com 5 fluxos. A maior diferençade porcentagem foi de aproximadamente 88%, presente nas topologias dos tipos B e Ccom 50 fluxos. De modo geral, a RCAJI tende a seguir uma tendência linear, enquantoque a JRCAR segue uma tendência exponencial. Isso ocorre porque a JRCAR executafrequentemente seu algoritmo de roteamento para todos os fluxos, enquanto que a RCAJIexecuta seus algoritmos apenas quando novos fluxos surgem ou antigos terminam, agindoapenas sobre os fluxos que passam pelo gargalo.

100

1000

5 10 15 20 25

Rot

as a

tual

izad

as

Quantidade de fluxos

JRCARRCAJI

(a) Topologias de tipo A.

100

1000

10 20 30 40 50

Rot

as a

tual

izad

as

Quantidade de fluxos

JRCARRCAJI

(b) Topologias de tipo B.

100

1000

10 20 30 40 50

Rot

as a

tual

izad

as

Quantidade de fluxos

JRCARRCAJI

(c) Topologias de tipo C.

Figura 4.2: Atualizações de rotas.

4.3 Desempenho da rede

Nesta parte da avaliação, executamos experimentos no simulador de redes ns-3com tráfego efetivo de pacotes. O intuito foi avaliar o desempenho da rede em termosde vazão agregada dos fluxos e justiça entre os fluxos. Analisamos o desempenho daheurística RCAJI, da heurística JRCAR e do algoritmo OLSR.

Page 43: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.3 Desempenho da rede 41

Geramos 60 cenários aleatórios para cada combinação de topologia e parâmetroanalisado. Variamos a quantidade de fluxos presentes na rede, a quantidade de rádios pormesh router e a quantidade de canais ortogonais disponíveis para atribuição. A carga detráfego é composta por fluxos TCP gerados no gateway, com seleção aleatória do mesh

router de destino. Os fluxos foram iniciados em um instante de tempo, também aleatório,entre 30,0 e 32,5 segundos. Cada fluxo transporta 512KB de dados, onde o tamanho decada pacote é 2048 bytes. Após o transporte dos dados de todos os fluxos, a simulaçãoé encerrada. São apresentados os valores médios dos resultados dos 60 cenários comintervalo de confiança de 95%.

Inicialmente, calculamos a vazão média de cada fluxo da rede utilizando aEquação 4-1:

ρ f =b f

Tf − t f, (4-1)

onde ρ f é a vazão do fluxo f ∈ F , b f é a quantidade de bits que foram transportados nofluxo, Tf é o tempo de fim da transmissão do fluxo e t f é o tempo de início da transmissãodo fluxo. Apresentamos nos resultados a vazão agregada média dos fluxos de todos oscenários, a qual é obtida utilizando a Equação 4-2:

Vam =1

Cn

Cn

∑i=1

∑f∈F

ρ f , (4-2)

onde Vam é a vazão agregada média dos fluxos, ρ f é a vazão de cada fluxo f ∈F , i descreveo cenário e Cn descreve a quantidade de cenários. Para justiça, utilizamos o índice dejustiça proposto por Raj Jain [20], o qual é obtido a partir da Equação 4-3:

θ =(∑ f∈F ρ f )

2

n∗∑ f∈F(ρ f )2 , (4-3)

onde θ representa o índice de justiça, ρ f é a vazão de cada fluxo f ∈ F e n descreve aquantidade total de fluxos presentes na rede. Apresentamos nos resultados a justiça médiade todos os cenários, a qual é obtida utilizando a Equação 4-4:

Jm =1

Cn

Cn

∑i=1

θ, (4-4)

onde Jm é a justiça média, θ é o índice de justiça entre os fluxos da rede de um cenário,i descreve o cenáro e Cn a quantidade de cenários.

Utilizamos duas abordagens para a atribuição de canais: a atribuição dinâmicade canais (ADC) e a atribuição estática de canais (AEC). Ambas as abordagens utilizam o

Page 44: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.3 Desempenho da rede 42

Algoritmo 3.4 da JRCAR. A atribuição dinâmica de canais é realizada em intervalos fixosde 1 segundo. A atribuição estática de canais é executada apenas com uma atribuiçãoinicial de canais e permanece com a mesma durante toda a simulação. A atribuição inicialde canais é realizada atribuindo pesos às arestas da rede, levando em consideração adistância em saltos entre o gateway e os mesh routers. Para atribuir o peso em cada arestaa Equação 4-5 é utilizada:

Emn = (ds(I,m)+ds(I,n)

2)−1, (4-5)

onde Emn representa o peso da aresta, ds(I,m) é a distância mínima em saltos entre aInternet e o mesh router m e ds(I,n) é a distância mínima em saltos entre a Internet e omesh router n. O peso de uma aresta é inversamente proporcional à media entre a distânciamínima em saltos entre seus vértices e o gateway. Ou seja, arestas mais próximas aogateway são priorizadas na atribuição inicial de canais. Para o algoritmo OLSR incluímossomente a atribuição estática de canais.

As rotas selecionadas pelas heurísticas RCAJI e JRCAR são aplicadas atravésde um protocolo de roteamento pela origem implementado internamente no ns-3. Assim,as rotas são explicitamente incluídas nos pacotes dos fluxos. O algoritmo de roteamentodo JRCAR é executado em intervalos fixos de 1 segundo. Não incluímos o OLSR noscenários com topologias do tipo C, pois na maior parte desses cenários o OLSR nãoconseguiu realizar o transporte dos fluxos.

4.3.1 Impacto da quantidade de fluxos

Avaliamos o comportamento das soluções em cenários com diferentes quanti-dades de fluxos presentes na rede. Fixamos a quantidade de rádios disponíveis em cadamesh router no valor 5 assim como Gálvez et al. [16]) e fixamos a quantidade de canaisortogonais disponíveis em 12 o qual é o número máximo de canais ortogonais no padrão802.11, na banda de 5 GHz. Para as topologias do tipo A, geramos cenários com 5, 10,15, 20 e 25 fluxos. Para as topologias dos tipos B e C, geramos cenários com 10, 20, 30,40 e 50 fluxos.

A vazão agregada dos fluxos da rede pode ser visualizada no resultado apre-sentado pela Figura 4.3. Não há diferença significativa entre o desempenho da heurísticaRCAJI e JRCAR quando a quantidade de fluxos da rede é pequena, por exemplo 5 e 10fluxos. Porém, à medida que a quantidade de fluxos aumenta, é possível perceber que aRCAJI consegue oferecer à rede um desempenho melhor que a JRCAR. Isso fica mais evi-dente nas topologias dos tipos B e C. Além disso, observamos que o OLSR foi a soluçãoque ofereceu o pior desempenho dentre as soluções selecionadas.

Page 45: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.3 Desempenho da rede 43

0

5

10

15

20

25

5 10 15 20 25

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

2

4

6

8

10

12

14

16

18

10 20 30 40 50

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

2

4

6

8

10

12

14

10 20 30 40 50

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.3: Vazão agregada ao variar a quantidade de fluxos pre-sentes na rede.

A justiça da rede é afetada à medida que o número de fluxos aumenta, como podeser observado na Figura 4.4. Nos cenários com topologias do tipo A, as heurísticas RCAJIe JRCAR mantiveram níveis praticamente iguais de justiça em ambas as abordagens deatribuição de canais. No entanto, nos cenários com topologias dos tipos B e C, há umganho consistente, ainda que pequeno, da heurística RCAJI em relação à JRCAR. Oalgoritmo OLSR ofereceu a menor justiça para os fluxos da rede.

Como pode ser observado na Figura 4.3, as heurísticas RCAJI e JRCAR forne-ceram à rede maior vazão quando a atribuição estática de canais é aplicada. Isso ocorredevido as interrupções de conectividade nos enlaces sem fio durante a atribuição dinâmicade canais, afetando a vazão dos fluxos que passam por esses enlaces. Confirmamos estefato através de dois experimentos simples. O primeiro consistiu em configurar um par denós para transmitir um fluxo TCP em um canal fixo durante uma simulação. No segundoteste, configuramos o mesmo par de nós para realizar a mesma transmissão, porém execu-tando trocas de canais em intervalos fixos de 1 segundo. A vazão no primeiro experimentofoi de aproximadamente 2,79 Mbps e no segundo experimento foi em torno de 2,35 Mbps,ou seja, uma diferença superior a 15%. Portanto, confirmamos que a simples troca de ca-nais tem um impacto não negligenciável. Nesse contexto, a RCAJI sofre menos impacto

Page 46: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.3 Desempenho da rede 44

do que a JRCAR, pois realiza menos troca de canais, como pode ser observado na Figura4.5.

Adicionalmente, observamos que o ganho de desempenho da heurística RCAJIsobre a JRCAR é menor com a atribuição estática de canais do que com a atribuiçãodinâmica de canais. Apesar disso, há cenários importantes onde a atribuição dinâmicade canais traz vantagens. Por exemplo, uma determinada região da rede pode estar maissobrecarregada que as outras ou podem haver múltiplos gateways na rede que atendamdiferentes quantidades de fluxos. Nesses cenários, provavelmente a RCAJI oferecerá umganho mais expressivo comparado com o oferecido pela JRCAR.

4.3.2 Impacto da quantidade de rádios

Avaliamos as heurísticas em cenários com diferentes quantidades de rádios emcada mesh router. Fixamos a quantidade de canais ortogonais disponíveis para 12 e aquantidade de fluxos para 25 nos cenários com topologias do tipo A e 30 nos cenárioscom topologias dos tipos B e C.

A Figura 4.6, apresenta os resultados de vazão agregada dos fluxos da rede emfunção da quantidade de rádios. De forma geral, na presença das heurísticas RCAJI eJRCAR, o desempenho da rede melhora à medida que a quantidade de rádios aumenta,porém essa melhoria tende a ser suave ou pouco expressiva a partir de 4 rádios. Por outrolado, o OLSR segue a tendência contraria oferecendo um desempenho pior à medidaque a quantidade de rádios aumenta. Mesmo com o impacto negativo da troca de canais, aRCAJI com atribuição dinâmica de canais ofereceu desempenho superior ou praticamenteigual à heurística JRCAR com atribuição estática de canais. Novamente, a heurísticaRCAJI oferece à rede um desempenho melhor que as outras soluções, exceto nos cenáriosde topologias dos tipos A e B com 2 rádios, cenários nos quais o OLSR foi superior.

O desempenho superior do OLSR foi obtido prejudicando um conjunto de flu-xos e privilegiando outros. A Figura 4.7 mostra a vazão mínima obtida pelas soluções.Como pode ser observado, o OLSR apresenta um valor médio da vazão mínima aproxi-madamente igual a 0 (zero), ou seja, não foi possível realizar as transferências de algunsfluxos. Essa situação é ruim para a rede, pois ela deixará de atender ou atenderá mal umconjunto de usuários.

Como pode ser observado na Figura 4.8, a justiça da rede aumenta, na presençadas heurísticas RCAJI e JRCAR, à medida que o número de rádios aumenta. O OLSRofereceu a menor justiça para os fluxos da rede, ou seja, o ganho de desempenho em vazãonos cenários com 2 rádios, foi obtido ao privilegiar alguns fluxos. Com poucos rádios (2 e3), as heurísticas com emprego de atribuição dinâmica de canais forneceram uma justiçamelhor à rede. A JRCAR foi superior apenas nos cenários com 2 rádios das topologias do

Page 47: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 45

tipo B e 3 rádios das topologias do tipo C. Com mais rádios (5 e 6), a heurística RCAJIconsegue uma justiça superior com ambas as abordagens de atribuição de canais.

4.3.3 Impacto da quantidade de canais

Nesta avaliação, variamos a quantidade de canais ortogonais disponíveis emcada mesh router. Fixamos a quantidade de canais ortogonais disponíveis para 12 e aquantidade de fluxos para 25 nos cenários com topologias do tipo A e 30 nos cenárioscom topologias dos tipos B e C.

Na Figura 4.9, podemos observa a vazão agregada dos fluxos da rede em funçãoda quantidade de canais. Na presença das heurísticas RCAJI e JRCAR, a vazão aumentalinearmente à medida que a quantidade de canais aumenta. Porém, o mesmo não acontececom o OLSR, que de forma geral, oferece vazões mais baixas com mais canais. Comopode ser observado, a heurística RCAJI supera a heurística JRCAR de forma consistenteem todos os cenários. Novamente, a RCAJI com atribuição dinâmica de canais obtevedesempenho semelhante ao da JRCAR com atribuição estática de canais.

Nos cenários de topologias do tipo A com 4 canais (Figura 4.9), o OLSR ofereceaos fluxos da rede uma vazão sensivelmente maior. Investigamos e observamos quenovamente há um problema de injustiça na rede. Como pode ser observado na Figura4.10, o OLSR novamente apresenta um valor médio da vazão mínima próximo a 0 (zero).Adicionalmente, calculamos a quantidade de fluxos que experimentaram vazões muitobaixas. Para isso, selecionamos como valor de referência a média da vazão mínima obtidapela JRCAR com atribuição dinâmica de canais, a qual representa na média a pior vazãomínima obtida pelas heurísticas que empregam balanceamento de carga. Enquanto aheurística JRCAR ofereceu para 64 fluxos vazão menor ou igual a 0,1 Mbps, o OLSRofereceu o mesmo para 271 fluxos (aproximadamente 4 vezes mais).

Como pode ser observado na Figura 4.11, as heurísticas RCAJI e JRCAR,oferecem uma justiça maior aos fluxos da rede à medida que a quantidade de canaisaumenta. A heurística RCAJI consegue manter um ganho consiste em todos os cenáriose com ambas as abordagem de atribuição de canais. A RCAJI com atribuição dinâmicade canais foi a que forneceu maior justiça aos fluxos da rede, exceto nos cenários com 8canais das topologias do tipo B, onde a RCAJI com atribuição estática de canais foi umpouco melhor. Novamente, o OLSR ofereceu a menor justiça para a rede.

4.4 Conclusão

Neste capítulo, apresentamos a avaliação de desempenho realizada com o si-mulador de redes ns-3. Analisamos algumas propriedades da rede, como o gargalo, o

Page 48: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 46

comprimento dos caminhos e a quantidade de atualizações de rotas. Também avaliamos avazão e a justiça que as soluções ofereceram para os fluxos da rede, analisando o impactoda quantidade de fluxos, rádios e canais.

Ao realizar a comparação entre as heurísticas RCAJI e JRCAR, observamos quea heurística RCAJI consegue minimizar o comprimento dos caminhos e a quantidadeatualização de rotas, mantendo o mesmo nível de gargalo que a JRCAR. Além disso,quando comparada com a JRCAR e o algoritmo OLSR, a heurística RCAJI consegueproporcionar à rede melhor desempenho em termos de vazão e justiça. Na comparaçãoentre a RCAJI e a JRCAR, observamos ganhos expressivos quando aplicamos a atribuiçãodinâmica de canais e ganhos menos significativos, porém consistentes, quando aplicamosa atribuição estática de canais.

Page 49: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 47

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

5 10 15 20 25

Just

iça

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

10 20 30 40 50

Just

iça

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

10 20 30 40 50

Just

iça

Quantidade de fluxos

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.4: Justiça ao variar a quantidade de fluxos presentes narede.

Page 50: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 48

0

5

10

15

20

25

30

35

40

45

50

5 10 15 20 25

Qua

ntid

ade

de tr

ocas

de

cana

is

Quantidade de fluxos

JRCARRCAJI

(a) Topologias de tipo A.

0

50

100

150

200

250

10 20 30 40 50

Qua

ntid

ade

de tr

ocas

de

cana

is

Quantidade de fluxos

JRCARRCAJI

(b) Topologias de tipo B.

0

50

100

150

200

250

300

350

10 20 30 40 50

Qua

ntid

ade

de tr

ocas

de

cana

is

Quantidade de fluxos

JRCARRCAJI

(c) Topologias de tipo C.

Figura 4.5: Quantidade de trocas de canais ao variar a quantidadede fluxos presentes na rede.

Page 51: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 49

0

5

10

15

20

25

2 3 4 5 6

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

2

4

6

8

10

12

14

16

18

2 3 4 5 6

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

2

4

6

8

10

12

14

2 3 4 5 6

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.6: Vazão agregada ao variar a quantidade de rádios dis-poníveis.

Page 52: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 50

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

2 3 4 5 6

Vaz

ão m

ínim

a (M

bps)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

0.05

0.1

0.15

0.2

0.25

0.3

2 3 4 5 6

Vaz

ão m

ínim

a (M

bps)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

2 3 4 5 6

Vaz

ão m

ínim

a (M

bps)

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.7: Vazão mínima ao variar a quantidade de rádios dispo-níveis.

Page 53: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 51

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

2 3 4 5 6

Just

iça

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

2 3 4 5 6

Just

iça

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

2 3 4 5 6

Just

iça

Quantidade de rádios

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.8: Justiça ao variar a quantidade de rádios disponíveis.

Page 54: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 52

0

5

10

15

20

25

4 6 8 10 12

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

2

4

6

8

10

12

14

16

18

4 6 8 10 12

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

2

4

6

8

10

12

14

4 6 8 10 12

Vaz

ão a

greg

ada

(Mbp

s)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.9: Vazão agregada ao variar o número de canais dispo-níveis.

Page 55: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 53

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

4 6 8 10 12

Vaz

ão m

ínim

a (M

bps)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

0.05

0.1

0.15

0.2

0.25

0.3

4 6 8 10 12

Vaz

ão m

ínim

a (M

bps)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

4 6 8 10 12

Vaz

ão m

ínim

a (M

bps)

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.10: Vazão mínima ao variar o número de canais disponí-veis.

Page 56: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

4.4 Conclusão 54

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

4 6 8 10 12

Just

iça

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(a) Topologias de tipo A.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

4 6 8 10 12

Just

iça

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

OLSR

(b) Topologias de tipo B.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

4 6 8 10 12

Just

iça

Quantidade de canais

JRCAR ADCJRCAR AECRCAJI ADCRCAJI AEC

(c) Topologias de tipo C.

Figura 4.11: Justiça ao variar o número de canais disponíveis.

Page 57: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

CAPÍTULO 5Considerações finais e trabalhos futuros

Nesta dissertação, abordamos o problema de desempenho em WMNs infraes-truturadas com múltiplos rádios e múltiplos canais. Direcionamos nossos estudos para aabordagem conjunta de roteamento e atribuição de canais. A maioria das soluções encon-tradas na literatura para essa abordagem conjunta, dependem de conhecimento prévio dotráfego da rede e trabalham com uma abordagem de menor granularidade quanto aos flu-xos da rede. Porém, encontramos a heurística JRCAR, desenvolvida por Gálvez et al. [16],que se diferencia desses trabalhos justamente por não depender do conhecimento préviodo tráfego da rede e tratar fluxos com maior granularidade, no caso, fluxos de aplicaçõesTCP. Apesar disso, encontramos algumas deficiências na JRCAR, as quais exploramosquando desenvolvemos o trabalho.

Desenvolvemos a heurística BPR como uma solução para o problema de otimi-zação multiobjetivo de roteamento com balanceamento de carga e caminhos mais curtos.Mostramos que a BPR pode melhorar o desempenho da rede quando aplicada como partede uma solução para a abordagem conjunta de roteamento e atribuição de canais. Para de-monstrar esse benefício, desenvolvemos a heurística RCAJI como uma solução para essaabordagem.

Os trabalhos dessa dissertação resultaram nas seguintes atividades:

• Estudo de soluções, no contexto de WMNs, para roteamento, para atribuição decanais e para a abordagem conjunta de roteamento e atribuição de canais.• Formulação do problema de otimização multiobjetivo para roteamento com balan-

ceamento de carga e caminhos mais curtos.• Desenvolvimento da heurística BPR como uma solução para o problema de otimi-

zação multiobjetivo formulado.• Desenvolvimento da heurística RCAJI como uma solução para a abordagem con-

junta de roteamento e atribuição de canais.• Implementação das heurísticas RCAJI e JRCAR no simulador de redes ns-3.

As principais dificuldades enfrentadas durante as atividades dessa dissertaçãoestão listadas a seguir:

Page 58: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

56

• O ns-3 é um arcabouço para simulação em redes sem fio poderoso, porém bastantecomplexo. Foram necessárias modificações em seu núcleo para desenvolver oprotocolo de roteamento pela origem utilizado pelos algoritmos de roteamento daJRCAR e RCAJI.• Foi difícil replicar a heurística JRCAR, uma vez que seu código fonte não foi

disponibilizado pelos autores.

Apesar do problema de desempenho em WMNs ser bastante explorado, vislum-bramos algumas possibilidades de trabalhos futuros. Além disso, podemos estender a ava-liação de desempenho realizada nesta dissertação. A seguir estão listadas algumas suges-tões para trabalhos futuros:

• Avaliar o comportamento das soluções em ambientes com múltiplos gateways.• Avaliar o comportamento das soluções em cenários com maior dinamicidade dos

fluxos da rede.• Implementar e avaliar a heurística RCAJI em ambiente real.• Descrever o modelo da rede considerando que uma aresta seja mapeada como um

enlace sem fio gerado por um rádio. Da forma como a rede foi modelada, umaaresta esd existe, se existe conectividade entre os vértices s e d. Dessa forma, otráfego de mais de uma aresta pode estar associado a um mesmo rádio, podendoprejudicar o balanceamento de carga da rede. Podemos evitar esse tipo de situaçãose realizarmos o balanceamento de carga do enlace.

Page 59: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Referências Bibliográficas

[1] AKYILDIZ, I. F.; WANG, X.; WANG, W. Wireless mesh networks: a survey.

Computer Networks, 47(4):445–487, 2005.

[2] AKYILDIZ, I.; WANG, X. A survey on wireless mesh networks. Communications

Magazine, IEEE, 43(9):S23–S30, 2005.

[3] ALICHERRY, M.; BHATIA, R.; LI, L. E. Joint channel assignment and routing for

throughput optimization in multiradio wireless mesh networks. Selected Areas

in Communications, IEEE Journal on, 24(11):1960–1971, 2006.

[4] AVALLONE, S.; AKYILDIZ, I. A channel assignment algorithm for multi-radio

wireless mesh networks. In: Computer Communications and Networks, 2007.

ICCCN 2007. Proceedings of 16th International Conference on, p. 1034–1039, 2007.

[5] BEJERANO, Y.; HAN, S.-J.; KUMAR, A. Efficient load-balancing routing for

wireless mesh networks. Computer Networks, 51(10):2450–2466, 2007.

[6] BICKET, J.; AGUAYO, D.; BISWAS, S.; MORRIS, R. Architecture and evaluation

of an unplanned 802.11b mesh network. In: Proceedings of the 11th Annual

International Conference on Mobile Computing and Networking, p. 31–42, 2005.

[7] BORGES, V. C.; CURADO, M.; MONTEIRO, E. Cross-layer routing metrics for mesh

networks: Current status and research directions. Computer Communications,

34(6):681–703, 2011.

[8] BRZEZINSKI, A.; ZUSSMAN, G.; MODIANO, E. Enabling distributed throughput ma-

ximization in wireless mesh networks: A partitioning approach. In: Proceedings

of the 12th Annual International Conference on Mobile Computing and Networking,

p. 26–37, 2006.

[9] CHOI, H.-G.; HAN, S.-J. Domain load balancing routing for multi-gateway

wireless mesh networks. Wirel. Netw., 16(8):2105–2122, 2010.

Page 60: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Referências Bibliográficas 58

[10] DAI, H.; HAN, R. A node-centric load balancing algorithm for wireless sensor

networks. In: Global Telecommunications Conference, 2003. GLOBECOM ’03. IEEE,

p. 548–552 Vol.1, 2003.

[11] DAS, S.; PUCHA, H.; KOUTSONIKOLAS, D.; HU, Y.; PEROULIS, D. Dmesh: Incorpo-

rating practical directional antennas in multichannel wireless mesh networks.

Selected Areas in Communications, IEEE Journal on, 24(11):2028–2039, 2006.

[12] GAO, J.; ZHANG, L. Tradeoffs between stretch factor and load balancing ratio

in routing on growth restricted graphs. In: Proceedings of the Twenty-third Annual

ACM Symposium on Principles of Distributed Computing, p. 189–196, 2004.

[13] GARDELLIN, V.; DAS, S. K.; LENZINI, L.; CICCONETTI, C.; MINGOZZI, E. G-pamela:

A divide-and-conquer approach for joint channel assignment and routing in

multi-radio multi-channel wireless mesh networks. Journal of Parallel and Distri-

buted Computing, 71(3):381–396, 2011.

[14] GIL-CASTINEIRA, F.; COSTA-MONTENEGRO, E.; GONZALEZ-CASTANO, F.; LOPEZ-

BRAVO, C.; OJALA, T.; BOSE, R. Experiences inside the ubiquitous oulu smart

city. Computer, 44(6):48–55, 2011.

[15] GUPTA, P.; KUMAR, P. The capacity of wireless networks. Information Theory,

IEEE Transactions on, 46(2):388–404, 2000.

[16] GÁLVEZ, J. J.; RUIZ, P. M. Efficient rate allocation, routing and channel as-

signment in wireless mesh networks supporting dynamic traffic flows. Ad Hoc

Networks, 11(6):1765–1781, 2013.

[17] HE, B.; XIE, B.; AGRAWAL, D. P. Optimizing deployment of internet gateway in

wireless mesh networks. Computer Communications, 31(7):1259–1275, 2008.

[18] HSIAO, P.-H.; HWANG, A.; KUNG, H.; VLAH, D. Load-balancing routing for

wireless access networks. In: INFOCOM 2001. Twentieth Annual Joint Conference

of the IEEE Computer and Communications Societies. Proceedings. IEEE, p. 986–

995 vol.2, 2001.

[19] JACQUET, P.; MUHLETHALER, P.; CLAUSEN, T.; LAOUITI, A.; QAYYUM, A.; VIENNOT,

L. Optimized link state routing protocol for ad hoc networks. In: Multi Topic

Conference, 2001. IEEE INMIC 2001. Technology for the 21st Century. Proceedings.

IEEE International, p. 62–68, 2001.

[20] JAIN, R. The Art of Computer Systems Performance Analysis: Techniques for

Experimental Design, Measurement, Simulation, and Modeling. Wiley- Intersci-

ence, 1991.

Page 61: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Referências Bibliográficas 59

[21] KARRER, R.; PESCAPE, A.; HUEHN, T. Challenges in second-generation wireless

mesh networks. EURASIP Journal on Wireless Communications and Networking,

2008(1):274–790, 2008.

[22] KODIALAM, M.; NANDAGOPAL, T. Characterizing the capacity region in multi-

radio multi-channel wireless mesh networks. In: Proceedings of the 11th Annual

International Conference on Mobile Computing and Networking, p. 73–87, 2005.

[23] LACAGE, M.; HENDERSON, T. R. Yet Another Network Simulator. In: Proceeding

from the 2006 Workshop on Ns-2: The IP Network Simulator, p. 1–10, 2006.

[24] MA, L.; DENKO, M. A routing metric for load-balancing in wireless mesh

networks. In: Advanced Information Networking and Applications Workshops, 2007,

AINAW ’07. 21st International Conference on, 2007.

[25] MARINA, M.; DAS, S. A topology control approach for utilizing multiple channels

in multi-radio wireless mesh networks. In: Broadband Networks, 2005. BroadNets

2005. 2nd International Conference on, p. 381–390, 2005.

[26] NANDIRAJU, N.; NANDIRAJU, D.; AGRAWAL, D. Multipath routing in wireless mesh

networks. In: Mobile Adhoc and Sensor Systems (MASS), 2006 IEEE International

Conference on, p. 741–746, 2006.

[27] NAVEED, A.; KANHERE, S.; JHA, S. Topology control and channel assignment in

multi-radio multi-channel wireless mesh networks. In: Mobile Adhoc and Sensor

Systems, 2007. MASS 2007. IEEE Internatonal Conference on, p. 1–9, 2007.

[28] NGUYEN, L. T.; BEURAN, R.; SHINODA, Y. A load-aware routing metric for

wireless mesh networks. In: Computers and Communications, 2008. ISCC 2008.

IEEE Symposium on, p. 429–435, 2008.

[29] PATHAK, P.; DUTTA, R. A survey of network design problems and joint design

approaches in wireless mesh networks. Communications Surveys Tutorials, IEEE,

13(3):396–428, 2011.

[30] RADUNOVIC, B.; GKANTSIDIS, C.; KEY, P.; RODRIGUEZ, P. An optimization fra-

mework for opportunistic multipath routing in wireless mesh networks. In: IN-

FOCOM 2008. The 27th Conference on Computer Communications. IEEE, p. –, 2008.

[31] RAMACHANDRAN, K.; BELDING, E.; ALMEROTH, K.; BUDDHIKOT, M. Interference-

aware channel assignment in multi-radio wireless mesh networks. In: INFOCOM

2006. 25th IEEE International Conference on Computer Communications. Procee-

dings, p. 1–12, 2006.

Page 62: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Referências Bibliográficas 60

[32] RAMACHANDRAN, K. N.; SHERIFF, I.; BELDING, E. M.; ALMEROTH, K. C. Routing

Stability in Static Wireless Mesh Networks. In: Proceedings of the 8th International

Conference on Passive and Active Network Measurement, p. 73–83, 2007.

[33] RANIWALA, A.; CKER CHIUEH, T. Architecture and algorithms for an ieee 802.11-

based multi-channel wireless mesh network. In: INFOCOM 2005. 24th Annual

Joint Conference of the IEEE Computer and Communications Societies. Proceedings

IEEE, p. 2223–2234 vol. 3, 2005.

[34] RANIWALA, A.; GOPALAN, K.; CHIUEH, T.-C. Centralized channel assignment and

routing algorithms for multi-channel wireless mesh networks. SIGMOBILE Mob.

Comput. Commun. Rev., 8(2):50–65, 2004.

[35] SHILA, D.; ANJALI, T. Load-aware traffic engineering for mesh networks. In:

Computer Communications and Networks, 2007. ICCCN 2007. Proceedings of 16th

International Conference on, p. 1040–1045, 2007.

[36] SI, W.; SELVAKENNEDY, S.; ZOMAYA, A. Y. An overview of channel assignment

methods for multi-radio multi-channel wireless mesh networks. Journal of

Parallel and Distributed Computing, 70(5):505–524, 2010.

[37] SUBRAMANIAN, A.; GUPTA, H.; DAS, S. Minimum interference channel assign-

ment in multi-radio wireless mesh networks. In: Sensor, Mesh and Ad Hoc Com-

munications and Networks, 2007. SECON ’07. 4th Annual IEEE Communications So-

ciety Conference on, p. 481–490, 2007.

[38] TANG, J.; XUE, G.; ZHANG, W. Interference-aware topology control and qos

routing in multi-channel wireless mesh networks. In: Proceedings of the 6th ACM

International Symposium on Mobile Ad Hoc Networking and Computing, p. 68–77,

2005.

[39] VAN DRUNEN, R.; VAN GULIK, D.-W.; KOOLHAAS, J.; SCHUURMANS, H.; VIJN, M.

Building a wireless community network in the netherlands. In: USENIX/Freenix

Conference, p. 219–230, 2003.

[40] XU, S.; SAADAWI, T. Does the ieee 802.11 mac protocol work well in multihop

wireless ad hoc networks? Communications Magazine, IEEE, 39(6):130–137,

2001.

[41] YOVANOF, G.; HAZAPIS, G. An architectural framework and enabling wireless te-

chnologies for digital cities & intelligent urban environments. Wireless Personal

Communications, 49(3):445–463, 2009.

Page 63: Roteamento em Redes em Malha Sem Fio com Balanceamento … · MICAEL OLIVEIRA MASSULA CARVALHO DE MELLO Roteamento em Redes em Malha Sem Fio com Balanceamento de Carga e Caminhos

Referências Bibliográficas 61

[42] ZHAO, L.; AL-DUBAI, A. Y.; MIN, G. An efficient neighbourhood load routing

metric for wireless mesh networks. Simulation Modelling Practice and Theory,

19(6):1415–1426, 2011.