• Nenhum resultado encontrado

Otimização de Rota em Manets Multicanais e Multi-interfaces: Uma Abordagem Baseada em Computação Inteligente

N/A
N/A
Protected

Academic year: 2021

Share "Otimização de Rota em Manets Multicanais e Multi-interfaces: Uma Abordagem Baseada em Computação Inteligente"

Copied!
100
0
0

Texto

(1)

OTIMIZAÇÃO DE ROTA EM MANETS MULTICANAIS E

MULTI-INTERFACES: UMA ABORDAGEM BASEADA EM

COMPUTAÇÃO INTELIGENTE

Dissertação de Mestrado

Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao

RECIFE 2014

(2)

Universidade Federal de Pernambuco

Centro de Informática

Pós-graduação em Ciência da Computação

Carlos Eduardo Buarque Cruz Pimentel

OTIMIZAÇÃO DE ROTA EM MANETS MULTICANAIS E

MULTI-INTERFACES: UMA ABORDAGEM BASEADA EM

COMPUTAÇÃO INTELIGENTE

Trabalho apresentado ao Programa de Pós-graduação em Ciência da Computação do Centro de Informática da Univer-sidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.

Orientador: Kelvin Lopes Dias

(3)

Catalogação na fonte

Bibliotecária Joana D’Arc L. Salvador, CRB 4-572

Pimentel, Carlos Eduardo Buarque Cruz.

Otimização de rota em MANETS multicanais e multi-interfaces: uma abordagem baseada em computação inteligente / Carlos Eduardo Buarque Cruz Pimentel. – Recife: O Autor, 2014.

98 f.: fig., tab.

Orientador: Kelvin Lopes Dias.

Dissertação (Mestrado) - Universidade Federal de Pernambuco. CIN. Ciência da Computação, 2014.

Inclui referências e apêndices.

1. Redes de computadores. 2. Redes locais sem fio. 3. Inteligência artificial. 4. Inteligência coletiva. I. Dias, Kelvin Lopes (orientador). II. Título.

(4)

Dissertação de Mestrado apresentada por Carlos Eduardo Buarque Cruz Pimentel à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Otimização de Rota em MANETs Multicanais e Multi-interfaces: Uma abordagem baseada em Computação Inteligente” orientada pelo Prof. Kelvin Lopes Dias e aprovada pela Banca Examinadora formada pelos professores:

______________________________________________ Prof. Ricardo Martins de Abreu Silva

Centro de Informática / UFPE

______________________________________________ Prof. Marco Antonio de Oliveira Domingues

Depatº Acadêmico de Sistemas Eletro-Eletronico/IFP

_______________________________________________ Prof. Kelvin Lopes Dias

Centro de Informática / UFPE

Visto e permitida a impressão. Recife, 28 de fevereiro de 2014.

___________________________________________________ Profa. Edna Natividade da Silva Barros

Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.

(5)

Primeiramente, gostaria de agradecer a Deus por ter sempre me iluminado e me cercado das melhores pessoas. Agradeço à minha mãe, Tereza Cruz, e à minha namorada, Paula Morais, por me darem coragem em todos os momentos, especialmente nos mais difíceis, para não desistir do desafio que foi esta dissertação de Mestrado. Meus agradecimentos também vão para o Prof. Kelvin Dias pela sua orientação, confiança e paciência e para os alunos do seu grupo pelos momentos de ajuda.

Estendo meus agradecimentos aos familiares, ao Prof. Carlos Alexandre Mello e a Joanderson França, Péricles Miranda, Nadilma Nunes, Pedro Almeida e demais amigos que torceram e me apoiaram nessa caminhada. Por fim, agradeço ao grupo Biologia in silico do CIn-UFPE, que gentilmente cedeu sua infraestrutura computacional, e a Nadja Lins, funcionária do CIn-UFPE, que deu suporte ao uso dos equipamentos, pois o apoio deles foi de fundamental importância para a conclusão desta dissertação.

(6)
(7)

Um número cada vez maior de pessoas e de equipamentos utiliza redes sem fio para as mais diversas tarefas. Na última década, o mundo viu a popularização de redes de acesso local sem fio, WLANs (do inglês, Wireless Local Area Networks), que usam a tecnologia Wi-Fi (do inglês, Wireless Fidelity), com 6,5 milhões de pontos de acesso públicos disponíveis em 2013, podendo chegar a 10,5 milhões em 2018. Um tipo de rede, a ad hoc, torna possível o uso da tecnologia Wi-Fi em um número maior de cenários. Isso se dá pelo fato das redes ad hoc, diferentemente das convencionais, não precisarem, para funcionar, de uma infraestrutura previamente montada com um ponto central responsável por toda a coordenação da comunicação.

Com a importância das redes Wi-Fi, ad hoc ou não, muitos estudos tentam melhorar sua capacidade de vazão e um deles é o de redes multicanais e multi-interfaces. Usar essa abordagem para as redes ad hoc, especialmente as móveis, conhecidas como MANETs (do inglês, Mobile ad hoc networks), mostra-se ainda mais interessante, uma vez que elas possuem uma topologia extremamente dinâmica e são mais vulneráveis a quebras de enlace, o que impacta bastante seu desempenho. Muitos trabalhos tentam otimizar redes multicanais e multi-interfaces desse tipo, propondo, geralmente, novos protocolos para camada de enlace. Outros propõem novos protocolos de camada de rede, mas, em muitos casos, apenas usando princípios ad hoc como base para o desenvolvimento das menos dinâmicas redes mesh.

Neste trabalho, o foco foi nos aspectos do roteamento das MANETs, especialmente na recuperação de rotas. Adaptou-se o popular protocolo AODV (do inglês, Ad hoc On-Demand Distance Vector) para que ele enxergasse múltiplos canais e interfaces e buscou-se otimizá-lo em termos de fração de pacotes entregues e de atraso médio. Nessa otimização, utilizou-se uma técnica de Computação Inteligente conhecida como Otimização Multiobjetiva por Enxame de Partículas, MOPSO (do inglês, Multiobjective Particle Swarm Optimization). Também foi realizada, em separado, uma modificação na política de reparo para que ela passasse a considerar em sua decisão os valores das vazões médias das vizinhanças dso nós fonte predecessor à quebra. Para obter os resultados, todas as simulações foram feitas utilizando o The Network Simulator, ns-2, em uma versão modificada para dar suporte a múltiplos canais e interfaces.

Os resultados obtidos foram analisados em função tanto do número de interfaces quanto do clássico tempo de pausa. De maneira geral, verificou-se que o uso da MOPSO pode melhorar o atraso em até 12%, em relação à política padrão de recuperação de quebras de enlace. Por sua vez, a política que considerou a vazão, apesar de ter uma tendência em obter valores intermediários quando comparada com as outras duas, pode, em alguns casos, ser até melhor que a da MOPSO. Além de estudos gráficos, estudos estatísticos foram realizados.

(8)

Abstract

An increasing number of people and devices are using wireless networks for a multitude of different tasks. In the last decade, the world saw the popularization of wireless local area networks, WLANs, using the Wi-Fi (Wireless Fidelity) technology, with an estimated 6.5 million public hotspots available in 2013, a number expected to be 10.5 million by 2018. There is one type of network, called ad hoc, that is able to make the Wi-Fi technology be used in an even greater number of scenarios. This happens because ad hoc networks, differently than conventional ones, doesn’t need to have a previous installed infrastructure to work and all of its communication isn’t coordinate by a central point.

Because of such importance of Wi-Fi networks, ad hoc or not, many studies try to improve their throughput, with multi-channel multi-interface networks being one of them. Using this approach with ad hoc networks, especially the mobile ones, known as MANTEs, can be even more interesting given the fact that these networks have extremely dynamic topologies and are prone to link breakages, what can severely impact their performance. Many works try to optimize multi-channel multi-interface networks of this type by proposing, usually, new link layer protocols. Others propose new routing protocols but, in many cases, only using the ad hoc principles as a starting point for the development of the less dynamic mesh networks.

In the work here presented, we tried to focus on the routing aspects of MANETs, especially the ones involving route recovery. We adapted the very popular routing protocol for ad hoc networks AODV (Ad hoc On-Demand Distance Vector) so that it could be able to “see” multiple channels and interfaces and we tried to optimize it in terms of packet delivery fraction and average delay. For that optimization, an Intelligent Computing technique called Multi-objective Particle Swarm Optimization, MOPSO, was used. We also proposed, in separate, a modification to the route recovery rule so that it could take into consideration in its decision the average throughput of the source and predecessor nodes’ neighborhoods. All of the simulations made to obtain the results of this work used The Network Simulator, ns-2, in a modified version to support multiple channels and interfaces.

The results were analyzed considering varying numbers of interfaces and of pause times. In general, we could see that the MOPSO were able to optimize the average delay up to 12% when compared to the original route recovery rule. The results of the rule that considered the throughput were intermediate between the ones of the other two rules, but, in some cases, they were even better than the ones of the MOPSO. All the results were also statistically analyzed.

(9)

2.1 Rede mesh com seus pontos de acesso interligados entre si em vez de ligados

diretamente a uma estrutura cabeada de Internet. . . 20

2.2 Rede ad hoc à esquerda comparada com uma rede celular à direita. . . 21

2.3 Rede ad hoc de multicanais e multi-interfaces. . . 23

2.4 Exemplo do processo de descoberta de rotas. . . 25

2.5 Exemplo do processo de recuperação de uma rota após a quebra de um enlace. . 27

3.1 Pareto-front, com suas soluções não dominadas, em relação às soluções dominadas. 32 3.2 Componentes da velocidade agindo na mudança de posição de uma partícula i em um espaço de busca de 2 dimensões. . . 34

4.1 Arquitetura básica do ns-2. . . 40

4.2 Esquema de funcionamento do AODV em conjunto com o MOPSO-CDR. . . . 44

4.3 Arranjo experimental da abordagem que utilizou o MOPSO-CDR. . . 48

5.1 Paretos-frontdos cenários com área de 1000 x 200 m e 6 conexões para diferentes números de interfaces. . . 53

5.2 Paretos-front dos cenários com área de 1000 x 200 m e 10 conexões para diferentes números de interfaces. . . 54

5.3 Paretos-front dos cenários com área de 1000 x 1000 m e 6 conexões para diferentes números de interfaces. . . 55

5.4 Paretos-front dos cenários com área de 1000 x 1000 m e 10 conexões para diferentes números de interfaces. . . 56

5.5 Paretos-frontdos cenários com área de 1000 x 200 m e 6 conexões para diferentes tempos de pausa. . . 58

5.6 Paretos-front dos cenários com área de 1000 x 200 m e 10 conexões para diferentes tempos de pausa. . . 59

5.7 Paretos-front dos cenários com área de 1000 x 1000 m e 6 conexões para diferentes tempos de pausa. . . 60

5.8 Paretos-front dos cenários com área de 1000 x 1000 m e 10 conexões para diferentes tempos de pausa. . . 61

5.9 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200 m com 6 conexões para diferentes números de interfaces. . . 63

5.10 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200 m com 10 conexões para diferentes números de interfaces. . . 64

(10)

5.11 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 6 conexões para diferentes números de interfaces. . . 65

5.12 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 10 conexões para diferentes números de interfaces. . . 65

5.13 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 6 conexões para diferentes tempos de pausa. . . 67

5.14 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 10 conexões para diferentes tempos de pausa. . . 68

5.15 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 6 conexões para diferentes tempos de pausa. . . 68

5.16 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 10 conexões para diferentes tempos de pausa. . . 69

5.17 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 6 conexões para diferentes números de interfaces com a nova política. . 71

5.18 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 10 conexões para diferentes números de interfaces com a nova política. 71

5.19 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 6 conexões para diferentes números de interfaces com a nova política. . 72

5.20 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 10 conexões para diferentes números de interfaces com a nova política. 72

5.21 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 6 conexões para diferentes tempos de pausa com a nova política. . . 75

5.22 Comparação de fração de pacotes entregues e atraso para cenários de 1000x200

m com 10 conexões para diferentes tempos de pausa com a nova política. . . . 75

5.23 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 6 conexões para diferentes tempos de pausa com a nova política. . . 76

5.24 Comparação de fração de pacotes entregues e atraso para cenários de 1000x1000

m com 10 conexões para diferentes tempos de pausa com a nova política. . . . 76

A.1 Comparação da política de PEREIRA (2010) e da modificação feita a ela para

cenários de área de 1000 x 200 metros. . . 87

A.2 Comparação da política de PEREIRA (2010) e da modificação feita a ela para

(11)

4.1 Campos de uma entrada da tabela de roteamento do AODV. . . 42

4.2 Variações dos cenários de simulações. . . 47

4.3 Características dos cenários de simulação. . . 47

5.1 Pesos dos resultados dos Paretos-front com melhor atraso para os cenários com

diferentes números de interfaces. . . 57

5.2 Pesos dos resultados dos Paretos-front com melhor atraso para os cenários com

diferentes tempos de pausa. . . 62

5.3 Valores dos testes de hipóteses comparando os resultados do AODV com MOPSO

com os do AODV padrão para áreas de 1000 x 200 m para diferentes números

de interface. . . 66

5.4 Valores dos testes de hipóteses comparando os resultados do AODV com MOPSO

com os do AODV padrão para áreas de 1000x1000 m para diferentes números

de interface. . . 66

5.5 Valores dos testes de hipótese comparando os resultados do AODV com MOPSO

com os do AODV padrão para áreas de 1000 x 200 m e diferentes tempos de pausa. 69

5.6 Valores dos testes de hipóteses comparando os resultados do AODV com MOPSO

com os do AODV padrão para áreas de 1000 x 1000 m e diferentes tempos de

pausa. . . 70

5.7 Valores dos testes de hipóteses comparando os resultados do AODV com vazão

com os do AODV padrão para áreas de 1000 x 200 m para diferentes números

de interfaces. . . 73

5.8 Valores dos testes de hipóteses comparando os resultados do AODV com vazão

com os do AODV padrão para áreas de 1000 x 1000 m para diferentes números

de interfaces. . . 73

5.9 Valores dos testes de hipóteses comparando os resultados do AODV com vazão

com os do AODV com MOPSO para áreas de 1000 x 200 m para diferentes

números de interfaces. . . 74

5.10 Valores dos testes de hipóteses comparando os resultados do AODV com vazão com os do AODV com MOPSO para áreas de 1000 x 1000 m para diferentes

números de interfaces. . . 74

5.11 Valores dos testes de hipóteses comparando os resultados do AODV com vazão com os do AODV padrão para áreas de 1000 x 200 m para diferentes tempos de

(12)

5.12 Valores dos testes de hipóteses comparando os resultados do AODV com vazão com os do AODV padrão para áreas de 1000 x 1000 m para diferentes tempos

de pausa. . . 77

5.13 Valores dos testes de hipóteses comparando os resultados do AODV com vazão com os do AODV com MOPSO para áreas de 1000 x 200 m para diferentes

tempos de pausa. . . 78

5.14 Valores dos testes de hipóteses comparando os resultados do AODV com vazão com os do AODV com MOPSO para áreas de 1000 x 1000 m para diferentes

tempos de pausa. . . 78

A.1 Valores do teste de aderência Lilliefors para os resultados da política de

PE-REIRA (2010) para áreas de 1000 x 200 m. . . 89

A.2 Valores do teste de aderência Lilliefors para os resultados da política modificada

para áreas de 1000 x 200 m. . . 89

A.3 Valores do teste de aderência Lilliefors para os resultados da política de

PE-REIRA (2010) para áreas de 1000 x 1000 m. . . 89

A.4 Valores do teste de aderência Lilliefors para os resultados da política modificada

para áreas de 1000 x 1000 m. . . 90

A.5 Valores dos testes de hipóteses comparando os resultados da política modificada

com os da política de PEREIRA (2010) para áreas de 1000 x 200 m. . . 91

A.6 Valores dos testes de hipóteses comparando os resultados da política modificada

com os da política de PEREIRA (2010) para áreas de 1000 x 1000 m. . . 91

B.1 Valores do teste de aderência Lilliefors para os resultados do AODV padrão para

áreas de 1000 x 200 m e diferentes números de interface. . . 93

B.2 Valores do teste de aderência Lilliefors para os resultados do AODV padrão para

áreas de 1000 x 1000 m e diferentes números de interface. . . 93

B.3 Valores do teste de aderência Lilliefors para os resultados do AODV padrão para

áreas de 1000 x 200 m e diferentes tempos de pausa. . . 94

B.4 Valores do teste de aderência Lilliefors para os resultados do AODV padrão para

áreas de 1000 x 1000 m e diferentes tempos de pausa. . . 94

B.5 Valores do teste de aderência Lilliefors para os resultados do AODV com

MOPSO para áreas de 1000 x 200 m e diferentes números de interface. . . 95

B.6 Valores do teste de aderência Lilliefors para os resultados do AODV com

MOPSO para áreas de 1000 x 1000 m e diferentes números de interface. . . 95

B.7 Valores do teste de aderência Lilliefors para os resultados do AODV com

MOPSO para áreas de 1000 x 200 m e diferentes tempos de pausa. . . 96

B.8 Valores do teste de aderência Lilliefors para os resultados do AODV com

(13)

B.10 Valores do teste de aderência Lilliefors para os resultados do AODV com vazão

para áreas de 1000 x 1000 m e diferentes números de interface. . . 97

B.11 Valores do teste de aderência Lilliefors para os resultados do AODV com vazão

para áreas de 1000 x 200 m e diferentes tempos de pausa. . . 98

B.12 Valores do teste de aderência Lilliefors para os resultados do AODV com vazão

(14)

Lista de Algoritmos

1 Política de reparação de quebra de enlace no AODV. . . 26

2 Política modificada em PEREIRA (2010) de reparação de quebra de enlace no AODV. . . 29

3 Algoritmo do PSO. . . 35

4 Algoritmo do MOPSO. . . 36

5 Algoritmo do MOPSO-CDR. . . 37

6 Política de reparação de quebra de enlace no AODV utilizada em PEREIRA (2010) e PIMENTEL (2010) para levar em consideração pesos descobertos pelo PSO e MOPSO-CDR, respectivamente. . . 38

7 Política de reparação de quebra de enlace utilizada neste trabalho. . . 44

8 Política de reparação de quebra de enlace no AODV modificada para levar em consideração a vazão média das vizinhanças do nó predecessor e do nó fonte. . . 46

(15)

AODV Ad Hoc On-Demand Distance Vector

CI Computação Inteligente

DARPA Defense Advanced Research Projects Agency

DSDV Destination Sequenced Distance Vector

IA Inteligência Artificial

IEEE Institute of Electrical and Electronics Engineers

MANET Mobile ad hoc network

MOPSO Multiobjective Particle Swarm Optimization

MOPSO-CDR Multiobjective Particle Swarm Optimization - Crownding Distance Roulette

PSO Particle Swarm Optimization

PRnet Packet radio network

TTL Time to live

TCP Transmission Control Protocol

UDP User Datagram Protocol

WBA Wireless Broadband Alliance

(16)

Sumário

1 Introdução 16

1.1 Objetivos da dissertação . . . 17

1.2 Organização do documento . . . 18

2 Redes de Multicanais e Multi-interfaces 19 2.1 Redes ad hoc de multicanais e multi-interfaces . . . 21

2.2 Roteamento em MANETs e os desafios multicanais e multi-interfaces . . . 23

2.2.1 Ad Hoc On-Demand Distance Vector . . . 24

2.3 Trabalhos relacionados . . . 28

3 Otimização Multiobjetiva 30 3.1 Particle Swarm Optimizationutilizada na otimização multiobjetiva . . . 32

3.2 Trabalhos relacionados . . . 38

4 Proposta, Ferramenta de Simulação e Arranjo Experimental 39 4.1 Ferramenta de Simulação: ns-2 modificado para suportar múltiplos canais e interfaces . . . 40

4.1.1 Abordagem utilizando o MOPSO-CDR . . . 43

4.1.2 Abordagem utilizando a vazão média das vizinhanças do nó fonte e do nó predecessor . . . 45

4.2 Arranjo experimental . . . 46

4.2.1 Limitações . . . 48

5 Resultados e Discussão 50 5.1 Avaliação dos arquivos externos do MOPSO-CDR . . . 52

5.1.1 Paretos-front para diferentes números de interfaces . . . 52

5.1.2 Paretos-front para diferentes tempos de pausa . . . 57

5.2 Análise dos resultados do uso dos pesos do MOPSO-CDR na política de recupe-ração de rotas do AODV . . . 62

5.2.1 Resultados para diferentes números de interfaces . . . 62

5.2.1.1 Análise estatística . . . 65

5.2.2 Resultados para diferentes tempos de pausa . . . 66

5.2.2.1 Análise estatística . . . 69

5.3 Análise dos resultados do uso do valor da vazão na política de recuperação de rotas do AODV . . . 70

(17)

5.3.2.1 Análise estatística . . . 77

6 Conclusão 79 6.1 Trabalhos futuros . . . 80

Referências 82 Apêndice 85 A Comparação da política modificada com a política de PEREIRA (2010) 86 B Estatísticas da verificação quanto à normalidade dos resultados das simulações 92 B.1 AODV padrão . . . 93

B.1.1 Diferentes números de interface . . . 93

B.1.2 Diferentes tempos de pausa . . . 94

B.2 AODV com MOPSO . . . 95

B.2.1 Diferentes números de interface . . . 95

B.2.2 Diferentes tempos de pausa . . . 96

B.3 AODV com vazão . . . 97

B.3.1 Diferentes números de interface . . . 97

(18)

16 16 16

1

Introdução

Atualmente, vive-se uma profilefaração do uso de equipamentos de rede sem fio para os mais diversos fins. Em grande parte das situações, usam-se tecnologias como a celular ou a Wi-Fi (do inglês, Wireless Fidelity) para prover conectivade a esses equipamentos. Diante da flexibilidade, da facilidade e do baixo custo de implantação das redes Wi-Fi, também conhecidas pelo nome do seu padrão, IEEE 802.11 (CROW et al., 1997), em pouco mais de uma década, elas causaram uma revolução no acesso à Internet.

Segundo o relatório da Wireless Boradband Alliance, WBA, referente ao ano de 2013 (WBA, 2013), operadoras de todo tipo - celular, cabeada, entre outros -, estão investindo consideravelmente no uso de redes Wi-Fi para fazer delas uma parte central das suas estratégias em prover uma melhor experiência de acesso de banda larga. Ainda segundo esse relatório, em 2013, foi alcançado o número de 6,5 milhões de pontos de acesso públicos desse tipo de rede, os hotsposts públicos, ao redor do mundo, com a estimativa de que chegue, até 2018, a 10,5 milhões.

Diversas abordagens buscam aumentar ainda mais o alcance dessas redes, seja em termos dos cenários em que podem ser empregadas, seja em termos de sua capacidade de vazão. Uma das abordagens que emprega essas redes em cenários mais variados é conhecida como redes ad hoc, nas quais não há uma infraestrutura previamente montada e as tarefas de administração e de controle da comunicação não são realizadas por um único nó, mas sim por todos (FRODIGH; JOHANSSON; LARSSON, 2000). Já dentre as várias proposições que querem aumentar a vazão das redes Wi-Fi, destaca-se a de rádios de multicanais e multi-interfaces, que procura aumentar a capacidade de transmissão dos nós da rede.

Em se tratando de redes ad hoc, com a versatilidade de cenários em que elas podem ser aplicadas trazida pela sua falta de infraestrutura prévia e de centralização do controle, surge uma série de desafios, especialmente em termos de roteamento. Esses desafios podem tornar-se ainda maiores quando elas passam a ter nós móveis, dando origem ao que se conhece por MANETs (do inglês, Mobile Ad Hoc Networks), uma vez que o movimento dos nós pode ocasionar quebra de enlace em rotas ativas. Ao procurar se equipar as MANETs com capacidades multicanais e multi-interfaces para aumentar a sua capacidade, crescem os desafios de roteamento, pois, agora,

(19)

é preciso também saber por qual interface enviar dados de comunicação para que ela atinja o destino adequado. Além disso, a mudança de uma interface para outra acrescenta um novo tipo de atraso à comunicação da rede, o que pode prejudicar a chegada de pacotes da fonte até o destino.

Esses desafios apontados, em conjunto, mostram a necessidade de que a definição de rotas nessas MANETs envolva informações não só da camada de rede, mas também das inferiores, para que o roteamento nelas seja efetivo para o seu bom desempenho. Esses mesmos desafios trazem muitas oportunidades de aprimoramento, mas muitos estudos apenas usam alguns dos fundamentos ad hoc para otimizar redes mesh sem fio, (HAMAD; HASSAN, 2011; ALRAYES et al., 2013). Redes mesh sem fio buscam substituir a infraestrutura cabeada que conecta as redes Wi-Fi com a Internet justamente por uma sem fio e, apesar delas apresentarem similaridades com as MANETs, como rotas de múltiplos saltos, as redes ad hoc sem fio são muito mais dinâmicas, o que limita bastante a contribuição desses trabalhos para elas.

1.1

Objetivos da dissertação

Na trabalho de Mestrado apresentado aqui, o foco foram as MANETs e seu roteamento, mais especificamente as atividades referentes à recuperação de quebras de enlace do protocolo AODV (do inglês, Ad Hoc On-Demand Distance Vector). Dentre os vários protocolos de roteamento que existem para redes ad hoc, buscou-se utilizar o AODV de PERKINS; BELDING-ROYER; DAS (2003) por ser um dos mais populares e abordados na literatura (CHANG; GAYDADJIEV; VASSILIADIS, 2005; BOUKERCHE, 2011).

No AODV, uma vez que uma rota é estabelecida, os nós monitoram-na a fim de reparar possíveis quebras de enlace. A política de recuperação leva em consideração o número de saltos que os pacotes já percorreram até chegar ao nó predecessor à quebra e quantos saltos restam até que alcançem o destino. Se o primeiro valor for o maior, o protocolo opta por realizar a reparação pelo próprio nó predecessor, chamada de reparação local; caso contrário, a recuperação é feita a partir do nó fonte, chamada de reparação pela fonte

Essa atividade de recuperação de enlaces realizada pelo AODV impacta diretamente o desempenho da rede. Dessa forma, o objetivo do trabalho foi otimizar a fração de pacotes entregues e o atraso médio da rede modificando a política de recuperação de enlaces. Primeira-mente, ao parâmetro já levado em consideração, o número de saltos, foi adicionado um novo: a conectivadade dos nós fonte e predecessor, que representa o número de vizinhos que que eles têm. Depois disso, para realizar a otimização, foram adotadas duas abordagens: uma interdisciplinar, que utilizou uma técnica de otimização de Computação Inteligente, e outra, mais tradicional, que buscou levar em consideração na decisão da política mais um parâmetros.

Na abordagem interdisciplinar, a otimização foi feita atribuindo aos parâmetros da polí-tica de recuperação pesos que foram determinados pela técnica conhecida como Otimização por Enxame de Partículas (PSO, do inglês, Particle Swarm Optimization), (KENNEDY; EBERHART,

(20)

18 1.2. ORGANIZAÇÃO DO DOCUMENTO 1995), em sua versão multiobjetiva, a MOPSO (do inglês, Multiobjective Particle Swarm

Optimi-zation). Essa abordagem se mostra especialmente importante, pois não se vê nenhuma dessas técnicas utilizadas para melhorar, a partir do roteamento, métricas das MANETs multicanais e multi-interfaces.

A outra abordagem procurou realizar a otimização de uma maneira mais tradicional, sem uso de pesos ou de técnica de Computação Inteligente, simplesmente acrescentado aos parâmetros já usados os valores das vazões médias das vizinhanças do nó predecessor e do nó fonte, valores esses que servem para indicar qual região está apresentando maior capacidade de transferência dos dados.

Todo o desenvolvimento desse projeto foi realizado com a ferramenta conhecida como The Network Simulator, ns-2, modificado com capacidades de simular redes de multicanais e multi-interfaces. Os resultados gerados pela ferramenta foram, então, analisados de forma comparativa: os da política usando o MOPSO com a política padrão de recuperação de rotas do AODV; e, posteriormente, esses dois resultados com o da nova política que faz uso da média da vazão.

Com os resultados obtidos por essa dissertação de Mestrado, espera-se ter contribuído de maneira sólida e robusta para a área de redes de multicanais e multi-interfaces no que concerne cenários de redes ad hoc móveis, onde essa abordagem mostra-se muito promissora. Além disso, espera-se ter mostrado como a utilização de técnicas de Computação Inteligente, especificamente a PSO multiobjetiva, pode contribuir na criação de redes mais eficientes e estimulado o seu uso de forma interdisciplinar.

1.2

Organização do documento

Neste capítulo, o 1, foram apresentados alguns desafios das MANETs de multicanais e multi-interfaces, especialmente no que diz respeito ao seu roteamento, e como o projeto proposto buscou abordá-los objetivando a otimizaçao da fração de pacotes entregues e do atraso médio dessas redes. Quanto aos demais capítulos deste documento, eles organizam-se da seguinte forma: o Capítulo 2 detalha os conceitos referentes às redes multicanais e multi-interfaces, às MANETs desse tipo e ao roteamento nessas redes, especialmente o funcionamento do protocolo AODV. O Capítulo 3 detalha a ideia de otimização multiobjetiva para depois mostrar como os fundamentos da PSO podem ser aplicados a problemas desse tipo. O Capítulo 4 apresenta o detalhamento da proposta e do arranjo experimental do trabalho de Mestrado. Por sua vez, os resultados obtidos e as discussões acerca deles são mostrados no Capítulo 5. As conclusões são apresentados no Capítulo 6.

(21)

2

Redes de Multicanais e Multi-interfaces

Com tamanha popularidade das redes 802.11 e com uma demanda crescente por seus hotspots, há um grande número de pesquisas que tentam melhorá-las, seja em termos de cenários de utilização, de capacidade ou de outros aspectos, como alcance ou mobilidade. Uma das linhas de pesquisa que tentam melhorar a capacidade dessa tecnologia é a das redes de multicanais e multi-interfaces.

O IEEE 802.11 possui vários canais que não se sobrepõem entre si, sendo, no caso da versão IEEE 802.11 a, 12 o número desses canais (IEEE, 2000). Entretanto, os equipamentos de comunicação vendidos atualmente, como celulares e tablets, por possuírem geralmente uma única interface com tecnologia desse padrão, apenas podem utilizar um canal por vez. A redução de custos de hardware, entretanto, já tem tornado economicamente viável que esses equipamentos possuam diversas interfaces. Dessa forma, podem-se formar redes nas quais seus nós utilizam diversos canais de forma simultânea, através de múltiplas interfaces, aumentando, potencialmente, a capacidade delas em relação a redes convencionais.

Nesse cenário, é interessante que, em vez de fixar uma interface por canal, as interfaces sejam capazes de utilizar todos os canais disponíveis. Assim, evita-se que, no caso da rede ser composta por nós com um número menor de interfaces do que o de canais, esses não sejam desperdiçados. Em KYASANUR; VAIDYA (2005), mostrou-se que, à medida que o número de interfaces vai se igualando ao de canais, a capacidade da rede vai aumentando, comprovando a efetividade dessas redes nesse aspecto.

Entretanto, ao disponibilizar para o nó múltiplas interfaces para acesso a múltiplos canais, insere-se um novo tipo de atraso no envio de pacotes: o atraso de troca de interface. Diante desse trade-off, o estudo desse tipo de rede mostra-se imprescindível, ainda mais quando considera-se que muitos de seus conceitos e desafios são utilizados como base nas pesquisas de outros temas, como os rádios cognitivos, que procuram melhorar a utilização do espectro eletromagnético usando-o de maneira dinâmica.

Boa parte das pesquisas realizadas envolvendo múltiplos canais e interfaces foca-se em redes do tipo mesh sem fio (AKYILDIZ; WANG; WANG, 2005). Essas redes mesh buscam substituir por equipamentos sem fio as grandes estruturas cabeadas responsáveis por conectar

(22)

20

redes Wi-Fi à Internet (NANDIRAJU et al., 2007), como mostra a Figura 2.1.

Como essas redes mesh possuem características em comum com as redes ad hoc, como rotas de múltiplos saltos, muitos estudos buscam assemelhá-las (HAMAD; HASSAN, 2011; ALRAYES et al., 2013). Entretanto, há uma diferença fundamental entre as duas: redes ad hoc são redes sem uma infraestrutura de qualquer tipo - cabeada ou não - previamente montada, ou seja, os próprios nós que a compõem cuidam de tarefas de administração da comunicação.

Figura 2.1: Rede mesh com seus pontos de acesso interligados entre si em vez de ligados diretamente a uma estrutura cabeada de Internet.

Além dessa diferença fundamental, outras diferenças entre essas redes merecem destaque (TSAI; MOORS, 2006):

 Apesar das redes mesh buscarem substituir o cabeamento por equipamentos sem fio,

ainda tem-se uma infraestrutura previamente montada e, geralmente, fixa. Dessa forma, entre outras coisas, há menos mudanças na sua topologia do que em uma rede ad hoc;

 De maneira geral, os equipamentos responsáveis pelo roteamento das redes mesh

não sofrem com restrições de energia, uma vez que estão conectados a pontos de fornecimento de eletricidade;

 Redes mesh sem fio demandam melhor robustez e escalabilidade, além de uma série

de métricas, para prover seus serviços estruturais de maneira efetiva.

As características próprias das redes ad hoc fazem com que essas redes sejam utilizadas em diversos cenários, como campos de batalha e áreas de desastre. Elas também podem se beneficiar bastante do uso de várias interfaces para vários canais, o que traz novos desafios. As possibilidades e desafios que surgem com as redes ad hoc de multicanais e multi-interfaces passam a ser abordados na seção seguinte.

(23)

2.1

Redes ad hoc de multicanais e multi-interfaces

Diferentemente das redes celulares ou WLANs (do inglês, Wireless Local Area Networks) atuais, redes ad hoc não possuem um equipamento central responsável por toda a coordenação da comunicação entre seus nós, como mostrado na Figura 2.2. Nesse tipo de rede, cada um dos nós, além de ser o ponto inicial ou final de uma comunicação, cuida do repasse das informações transmitidas de e para os outros, de forma descentralizada e distribuída. Essa característica fundamental pode ser acoplada com os mais diversos padrões de transmissão sem fio e, dessa forma, faz com que essas redes tenham uma grande versatilidade de aplicações e de cenários.

Figura 2.2: Rede ad hoc à esquerda comparada com uma rede celular à direita.

As primeiras pesquisas com redes ad hoc são datadas do início da década de 70, mais precisamente 1973, quando a agência americana DARPA (sigla em inglês para Defense Advanced Research Projects Agency) começou a desenvolver a sua PRnet (do inglês, packet radio network) (JUBIN; TORNOW, 1987). Entretanto, as raízes dessas redes datam do ano de 1968, quando um projeto conhecido como ALOHA foi concebido com o intuito de interconectar as escolas do estado americano do Havaí (ABRAMSSON, 1970). Entretanto, na PRnet, diferentemente da ALOHA, a comunicação era possível através de múltiplos saltos, exatamente como nas atuais redes ad hoc.

Desde então, essas redes vêm sendo amplamente pesquisadas e aprimoradas e, dessa forma, as possibilidades de uso dessas redes não param de aumentar, das quais, três são mostradas a seguir:

 Em uma situação de guerra, para estabelecer a comunicação de uma tropa, a

(24)

22 2.1. REDES AD HOC DE MULTICANAIS E MULTI-INTERFACES nenhuma estrutura prévia para tanto. Outra vantagem é que essa comunicação não fica “refém” de um ponto central de falha, o que, nesse cenário, poderia ser foco de um ataque do lado inimigo;

 No caso de uma catástrofe em uma região, é fundamental que, o quanto antes, seja

estabelecida comunicação entre as mais diversas equipes de socorro e de ajuda. O fato de uma rede ad hoc formar-se quase que instantaneamente com o início do funcionamento apenas dos seus nós, pode ser fundamental para que muitas vidas sejam salvas;

 O acesso à Internet através de dispositivos móveis tem se mostrado uma ferramenta

transformadora em muitas comunidades ao redor do mundo (LAZUTA, 2013). Entre-tanto, montar uma rede celular ou cabeada em muitas dessas regiões pode mostrar-se extremamente custoso. Disponibilizar dispositivos que possam conectar-se entre si de maneira ad hoc pode permitir que, de maneira barata, eles alcancem um ponto já instalado com acesso à rede mundial de computadores.

As mesmas características que tornam essas redes tão versáteis, transformam-nas em um grande desafio cheio de respostas a serem dadas e outras a serem estendidas. Os desafios aumen-tam ainda mais quando outros fatores, além da falta de infraestrutura prévia e da descentralização da coordenação, passam a ser considerados.

Um desses fatores que aumentam os desafios é a mobilidade dos nós que cria o que é conhecido como MANET (do inglês, Mobile ad hoc network). A mobilidade em uma rede ad

hoctransforma a atividade de coordenação da comunicação ainda mais complexa, uma vez que

as rotas passam a ser suscetíveis a quebras ocasionadas pelo próprio movimento dos nós. Além disso, outro dificultador é que esse movimento não torna simples a obtenção da topologia da rede em um determinado instante, tornando bastante difícil o roteamento.

Outro fator que também aumenta os desafios está quando se equipa uma rede ad hoc com múltiplas interfaces para acesso a múltiplos canais, caso que é ilustrado pela Figura 2.3. As dificuldades e complexidades só aumentam quando esse conceito é unido à mobilidade das MANETs. Diversas são as peculiaridades que a adição de múltiplas interfaces a nós ad hoc traz e uma delas a escolha de qual interface deve ser usada em qual canal. Essa escolha e as suas consequentes trocas adicionam um atraso na comunicação e, para resolver isso, é natural se pensar logo em protocolos de camada de enlace. Entretanto, há também problemas referentes à definição de rotas entre os nós, uma vez que, para tanto, a interface a ser utilizada também deve ser levada em consideração.

O foco do trabalho aqui proposto é nas redes ad hoc móveis, as MANETS, de multicanais e multi-interfaces, especialmente nos aspectos envolvendo a questão do roteamento.

(25)

Figura 2.3: Rede ad hoc de multicanais e multi-interfaces.

2.2

Roteamento em MANETs e os desafios multicanais e

multi-interfaces

Em qualquer rede, as atividades envolvendo o roteamento são de importância fundamen-tal. Em redes de múltiplos saltos - quando os pacotes passam por diversos nós intermediários até chegarem ao destino - como as MANETs, são essas atividades que vão definir o caminho pelo qual um nó transmissor alcançará o receptor e também o que será feito quando, eventualmente, um dos enlaces desse caminho se quebre.

Essas atividades não são fundamentais apenas porque tornam possível que os nós se comuniquem entre si, mas também porque influenciam diretamente em aspectos de rede cruciais como percentual de pacotes entregues, atraso, entre outros. Por causa disso, a comunidade científica, ao longo dos anos, já desenvolveu um grande número de protocolos de roteamento para essas redes. Em geral, os protocolos desenvolvidos encaixam-se em uma das seguintes categorias:

 Pró-ativos - mantêm, na sua tabela de roteamento, rotas para todos os destinos,

independente da necessidade. Para tanto, eles monitoram constantemente, através do envio de pacotes de controle, a topologia da rede para identificar mudanças e refleti-las em sua tabela. Para redes dinâmicas como as MANETs, isso pode resultar em uma grande sobrecarga na rede. Um exemplo clássico dessa abordagem é o Destination Sequenced Distance Vector, DSDV (PERKINS; BHAGWAT, 1994).

 Sob demanda - popula a sua tabela de roteamento apenas com entradas das quais

necessita, quando necessita. Com isso, sobrecarrega menos com pacotes de controle as redes dinâmicas do que os pró-ativos. Por outro lado, esses protocolos atrasam

(26)

24 2.2. ROTEAMENTO EM MANETS E OS DESAFIOS MULTICANAIS E MULTI-INTERFACES o envio dos pacotes à rede. O mais popular desses protocolos é o AODV, Ad Hoc

On-Demand Distance Vector(PERKINS; BELDING-ROYER; DAS, 2003).

Quando os nós de uma MANET são equipados com múltiplas interfaces e passam a ser capazes de utilizar múltiplos canais, essa dinâmica, além da topológica da rede, deve passar a ser considerada. Agora, não basta mais saber apenas qual o próximo nó de uma rota, mas também por qual interface pode-se alcançá-lo. Sendo assim, torna-se necessário, na construção de suas rotas, uma abordagem que envolva não só a camada de rede, mas também outras camadas -especialmente, as logo abaixo -, com a intenção de obter informações e métricas que ajudem na efetividade e eficiência dessa tarefa, afinal de contas, agora o gerenciamento de interfaces passa a ser um novo tipo de atraso.

Diante de estudos que mostram a superioridade em termos de desempenho dos protoco-los sob demanda em relação aos pró-ativos, (JOHANSSON et al., 1999), e de, dos desse tipo, o AODV ser de amplo uso na literatura até para a criação de novos protocolos, (BOUKER-CHE, 2011), ele foi o protocolo escolhido para o desenvolvimento do projeto aqui apresentado. Modificações foram feitas a esse protocolo, detalhadas no Capítulo 4, de modo que ele pu-desse adequar-se, de maneira apropriada, às peculiaridades das MANETs de multicanais e multi-interfaces.

A seguir, os detalhes do AODV serão mostrados, bem como modificações já realizadas em busca de aprimorá-lo.

2.2.1

Ad Hoc On-Demand Distance Vector

Proposto em 1997, o Ad Hoc On-Demand Distance Vector, AODV, permite o rotea-mento de múltiplos saltos em MANETs, de forma dinâmica, autoinicializável e sob demanda (PERKINS; BELDING-ROYER; DAS, 2003). Esse protocolo usa números de sequência para, independente do grau de mobilidade e de tráfego da rede, garantir que os nós, quando precisarem, terão à sua disposição as rotas mais atuais para um destino. Esses números também são para garantir uma operação livre de laços, ou seja, garantir que um nó participe mais de uma vez de uma mesma rota, o que permite uma atuação eficiente nas quebras de enlaces.

Com essas informações, passa-se agora a detalhar duas das mais importantes atividades do AODV: a descoberta de rotas e a recuperação delas no caso de eventuais quebras.

Descoberta de rotas

Para a descoberta e formação de rotas, o AODV usa pacotes de mensagens conhecidos como RREQ (do inglês, Route Request) e RREP (do inglês, Route Reply). Quando necessita enviar pacotes de dados para um destino cuja rota não consta na sua tabela de roteamento, um nó envia, através de difusão, RREQs. Uma vez difundidas as mensagens, ela pode atingir um nó que possua uma rota atual para o destino - ou seja, número de sequência maior do que o do

(27)

RREQ -, o próprio destino ou um nó que não possua a rota desejada. Nos dois primeiros casos, o nó responde com um RREP diretamente ao nó gerador do RREQ e, no outro caso, o RREQ é repassado até que uma das duas primeiras situações aconteça. A Figura 2.4 mostra uma exemplo desse processo.

(a) Nó fonte envia um RREQ para seus vizinhos e eles, por não possuírem rota para o destino, o repassam.

(b) Após um RREQ alcançar o destino, um RREP é enviado no caminho reverso para chegar até a fonte e esta passar a ter a rota desejada.

(28)

26 2.2. ROTEAMENTO EM MANETS E OS DESAFIOS MULTICANAIS E MULTI-INTERFACES

Recuperação de rotas

Chegando o RREP ao nó gerador do RREQ, a rota passa a estar ativa. A partir desse momento, os nós que a compõem passam a monitorá-la a fim de recuperar eventuais quebras. Para tanto, o AODV pode utilizar mensagens conhecidas como hello, que são pacotes cujo valor do TTL (do inglês, time to live) é 1 e são de uso simples quando para identificar quebras (CHAKERES; BELDING-ROYER, 2002). Elas somente são enviadas por um nó se ele é parte de uma rota ativa e se não tiver enviado nenhum pacote de controle por difusão em determinado período de tempo: o não recebimento pelos seus vizinhos de alguma mensagem de difusão por um tempo indica a eles que o enlace se quebrou. Identificada a quebra, o nó que a precede terá duas opções: fazer ele mesmo a reparação, chamada de local, ou enviar uma mensagem conhecida como RERR (do inglês, Route Error) para o nó gerador da comunicação, o fonte, para que esse descubra uma nova rota, o que é chamado de reparação pela fonte.

O que define qual opção deve ser tomada por um nó é uma política que leva em conta o número de saltos percorridos até o predecessor à quebra e o número de saltos que ainda restavam dele até o destino. Caso o valor do primeiro seja maior que o segundo, a reparação é local, caso contrário, é pela fonte. O pseudocódigo no Algoritmo 1 mostra isso.

Entrada: número de saltos percorridos, número de saltos restantes início

se número de saltos percorridos > número de saltos restantes então fazer reparação local

fim senão

fazer reparação pela fonte fim

fim

Algoritmo 1: Política de reparação de quebra de enlace no AODV.

A Figura 2.5 ilustra tanto o processo de reparação local quanto o de reparação pela fonte uma vez que acontece uma quebra de enlace.

(29)

(a) Na reparação local, o nó predecessor à quebra é que inicia a busca de uma nova rota até o destino.

(b) Na reparação pela fonte, o nó fonte é que, após receber um RERR do nó predecessor, inicia novamente a busca de uma rota até o destino.

Figura 2.5: Exemplo do processo de recuperação de uma rota após a quebra de um enlace.

(30)

28 2.3. TRABALHOS RELACIONADOS

2.3

Trabalhos relacionados

Muitos são os trabalhos que propõem as mais diversas abordagens para o roteamento em redes de multicanais e multi-interfaces. Em KYASANUR (2005), apesar de resultados não serem apresentados, é proposto, além de uma nova estratégia de determinação de interface a ser usada, um protocolo de roteamento que realiza a descoberta de canais em duas fases levando em consideração o canal de menor custo para envio de mensagens de difusão. WU et al. (2006) propõe uma camada intermediária entre a de enlace e a de rede capaz de coordenar, conjuntamente, a seleção de canal em cada interface e a definição de rota baseada em informações do tráfego de até dois saltos de um nó.

Por outro lado, poucos são os que explicitamente abordam redes ad hoc. No trabalho de KYASANUR (2004), um novo protocolo de roteamento é proposto para redes ad hoc que, além de considerar o número de saltos de uma rota, leva em conta a diversidade de canais e o custo de mudança de interface. Por sua vez, LIN; RASOOL (2007) apresentou um algoritmo distribuído que conjuntamente resolve os problemas de determinação do canal, escalanomento e roteamento e é capaz de se adaptar automaticamente às mudanças topológicas da rede. Apesar de trabalhos como os citados existirem, a maior parte foca-se em redes mesh, usando, em alguns casos, apenas princípios ad hoc, como HAMAD; HASSAN (2011), cujo o objetivo foi reduzir o custo da difusão de mensagens em redes com pouca capacidade energética através da limitação do número de nós capazes de retransmití-las; e ALRAYES et al. (2013) que buscou ajudar roteadores mesh tanto de gateway quanto de backbone a escolherem, ao longo de um caminho, a melhor interface.

Como pode ser visto, independente do tipo de rede em foco, quase sempre é proposta uma nova abordagem, um novo protocolo, que não é interoperável com muito do que já existe atualmente. O trabalho de Mestrado aqui descrito acredita que, no caso das MANETs, mesmo com o novo desafio da multiplicidade de canais e de interfaces, é possível, em vez de partir do zero com um novo protocolo, valer-se da ampla gama de protocolos de roteamento já desenvolvidos para elas, como o AODV, equipando-o com a capacidade de “enxergar” múltiplos canais à disposição para o roteamento dos pacotes de comunicação.

No caso do AODV, por causa do impacto que a escolha de uma política de recuperação ou de outra pode ter no desempenho de uma MANET, há diversos estudos que tentam otimizá-la. Alguns levam novos parâmetros em consideração nessa política, como em PEREIRA (2010). Nele, além dos números de saltos, são levadas em consideração as conectividades tanto do nó fonte quanto do predecessor, que, nesse contexto, é uma informação obtida a partir das camada de enlace e representa o número de vizinhos que um nó possui. Assim, a política passou a ser como a mostrada no Algoritmo 2.

Além das abordagens dos trabalhos mostrados aqui, cada vez é mais comum que as propostas que buscam otimizar métricas de redes a partir de elementos do seu roteamento usem uma abordagem interdisciplinar a partir de técnicas de otimização de Computação Inteligente.

(31)

Entrada: número de saltos percorridos, número de saltos restantes, conectividade do nó fonte, conectividade do nó predecessor

início

local = número de saltos percorridos + conectividade do nó fonte fonte = número de saltos restantes + conectividade do nó predecessor se local > fonte então

fazer reparação local fim

senão

fazer reparação pela fonte fim

fim

Algoritmo 2: Política modificada em PEREIRA (2010) de reparação de quebra de enlace no AODV.

Uma dessas técnicas bastante utilizada é a PSO (do inglês, Particle Swarm Optimization), seja em sua forma de único ou multiobjetivo, nesse último caso chamada de MOPSO (do inglês, Multiobjective Particle Swarm Optimization). Esta dissertação de Mestrado procurou utilizar como abordagens de otimização através da política de recuperação tanto uma mais tradicional, como as que acrescentam novos parâmetros à política de recuperação, como uma que busca utilizar a técnica MOPSO. Essas propostas são explicadas em detalhes no Capítulo 4 e, a seguir, no Capítulo 3, os detalhes acerca dessa técnica de Computação Inteligente serão apresentados em conjunto com seus trabalhos relacionados.

(32)

30 30 30

3

Otimização Multiobjetiva

O termo Inteligência Artificial, IA, foi concebido em meados da década de 50 para designar um novo campo de estudo dentro da Computação que pretendia, e ainda pretende, resolver problemas complexos desenvolvendo sistemas que se baseiam no comportamento ou raciocínio ou dos humanos ou de uma padrão idealizado de inteligência (RUSSEL; NORVIG, 2003). Atualmente, são diversos os paradigmas e seus respectivos algoritmos que compõem esse campo tão vivo e que tanto interesse atrai da comunidade científica. Entre eles, há um conjunto que compõe o seu próprio ramo dentro da IA, conhecido por Computação Inteligente, CI.

O interesse da CI está em mecanismos adaptativos que sejam capazes de permitir ou facilitar uma abordagem inteligente em ambientes complexos e em constante mudança (ENGEL-BRECHT, 2007). Entre outros, os paradigmas que compõem esse ramo da IA são os seguintes: redes neurais, computação evolucionária, inteligência de enxames, sistemas imunes e sistemas fuzzy.

Diante dos problemas que esses paradigmas e seus algoritmos buscam resolver de forma inteligente, destacam-se os de otimização. Problemas desse tipo surgem nas mais diversas áreas do conhecimento, incluindo a de Redes de Computadores. Em muitos deles, busca-se a melhoria de um único objetivo. Entretanto, não é difícil deparar-se com problemas que buscam otimizar diversos objetivos conflitantes simultaneamente, o que é conhecido como otimização multiobjetiva.

Em uma rede de computadores, existem métricas que são muito importantes para garantir o seu bom funcionamento. Entre elas, estão a fração de pacotes entregues (quanto da comunicação de uma fonte foi efetivamente recebida por um destino) e atraso médio (tempo médio que os pacotes levam para irem da fonte até o destino). Ao mesmo tempo que é desejável que a fração de pacotes entregues seja a maior possível, quer-se que o atraso médio seja mínimo. Tem-se, nesse exemplo, um caso típico de otimização multiobjetiva para a área de Redes e que pode ser descrito, genericamente, pelas Equações 3.1, 3.2 e 3.3 a seguir (MARLER; ARORA, 2004):

otimizar F(x) = [F1(x), F2(x), ..., Fk(x)]T  3.1

(33)

sujeito tanto a

gj(x) ≤ 0 j = 1, 2, ..., m, 3.2

quanto a

hl(x) = 0 l = 1, 2, ..., e, 3.3

onde k é o número de funções objetivo, m, o número de restrições de desigualdade e e, o de

restrições de igualdade. x ∈ Rn é o vetor de variáveis de decisão, com n sendo o número de

variáveis independentes xi, e F(x) ∈ Rké o vetor das funções objetivo Fi(x) : Rn→ R.

Há determinadas aplicações de uma rede, como as que rodam sobre TCP (do inglês, Transmission Control Protocol), para as quais a fração de pacotes entregues é mais interessante; enquanto há outras, as que rodam sobre UDP (do inglês, User Datagram Protocol), que têm preferência por valores de atraso menores. Entretanto, não se pode imaginar uma rede com um atraso muito grande nem com uma fração de pacotes entregues próxima a zero. Por isso, na maioria dos casos, o interessante é que se encontre o equilíbrio entre essas métricas e a otimização multiobjetiva faz justamente isso, apresentando não uma, mas uma série de soluções. Essas soluções apresentam um trade-off entre os objetivos conflitantes e são conhecidas indi-vidualmente como Pareto-ótimo. Esse conceito pode ser definido como (MARLER; ARORA, 2004):

Definição 1. Considerando o espaço de decisão da otimização multiobjetiva como X, um ponto

x∗∈ X é Pareto-ótimo se e somente se não existir outro ponto x ∈ X, tal que F(x) ≤ F(x∗), e

Fi(x) < Fi(x∗) para pelo menos uma função.

Para efeitos práticos, esse conceito de Pareto-ótimo coincide com o de eficiência que, por sua vez, coincide com o de dominância. Sendo assim, pode-se dizer que um Pareto-ótimo é uma solução (ou ponto) não dominado pelos demais. Ao conjunto dessas soluções não dominadas, dá-se o nome de Pareto-front. A Figura 3.1 é um exemplo criado para mostrar soluções dominadas e não dominadas para o caso de otimização simultânea da fração de pacotes entregues com sucesso e da atraso de uma rede.

O trabalho de Mestrado apresentado neste documento usou os conceitos até aqui mostra-dos para otimizar MANETs de multicanais e multi-interfaces justamente visando tanto a fração de pacotes entregues quanto o atraso médio dessas redes. Diante dos mais variados paradigmas que o campo da CI oferece para aplicação desses conceitos na resolução de problemas desse tipo, destacam-se a computação evolucionária e a inteligência de enxames.

Dentro do paradigma evolucionário, um algoritmo bastante usado na área de Redes é o genético como visto em RONDEAU et al. (2004); HAURIS (2007) e FILHO; CORDEIRO (2010). Entretanto, o uso dos algoritmos genéticos encontra certa crítica por parte dos pesqui-sadores da área, pois, apesar de encontrarem bons resultados, têm custo computacional alto, o que impossibilita seu emprego em cenários práticos e reais (NEWMAN et al., 2007). A

(34)

32 3.1. PARTICLE SWARM OPTIMIZATION UTILIZADA NA OTIMIZAÇÃO MULTIOBJETIVA 1,015 1,02 1,025 1,03 1,035 Atraso (s) 1,09 1,091 1,092 1,093 1,094 1,095 1,096 1,097 Fra çã o d e p ac ote s e ntr eg ue s ( %)

Pareto-front

Soluções dominadas

Figura 3.1: Pareto-front, com suas soluções não dominadas, em relação às soluções dominadas.

inteligência de enxames, por sua vez, mostra-se como uma boa alternativa a esse custo dos algoritmos genéticos, com destaque para o algorimo da técnica PSO (do inglês, Particle Swarm Optimization), pois, segundo REYES-SIERRA; COELLO (2006), ele é de simples entendimento e implementação e tem se mostrado muito eficiente, em termos computacionais, para uma série de problemas.

Neste trabalho, a técnica PSO foi utilizada para otimização de MANETs. Entretanto, ela não pode ser utilizada em sua forma “original”, pois, assim, ela só é capaz de otimizar problemas com único objetivo. A seguir, a PSO terá seus conceitos explicados em detalhes e também será mostrado como trabalhos a utilizam para a otimização de múltiplos objetivos.

3.1

Particle Swarm Optimization utilizada na otimização

mul-tiobjetiva

Pássaros costumam voar em bando para procurar comida, locais longe de seus predadores ou melhores condições climáticas para, por exemplo, reproduzirem-se. Nessa busca, é comum vê-los fazerem movimentos tão repentinos quanto sincronizados, ora espalhando-se, ora reunindo-se novamente. Foi a partir desse modelo de comportamento natural que surgiu a inspiração para propor a técnica conhecida como otimização por enxame de partícula, cuja sigla em inglês é PSO (KENNEDY; EBERHART, 1995).

(35)

Nessa técnica, em vez dos termos “bando” e “pássaros”, são usados “enxame” e “partícu-las”, respectivamente. O enxame é formado por um número de partículas geralmente determinado de forma empírica e que percorrem um espaço de busca hiperdimensional por um número de iterações também determinado empiricamente. Ao percorrer esse espaço, as partículas usam o seu conhecimento individual conjuntamente com o dos seus vizinhos, que representa o conheci-mento que emana do enxame como todo. Dessa forma, espera-se que melhores resultados sejam obtidos de forma mais rápida.

Cada partícula pode ser vista como uma solução em potencial para o problema de otimização e é representada, no caso de uma partícula i qualquer, por três vetores de dimensão igual D, com D sendo a dimensão do espaço de busca (POLI; KENNEDY; BLACKWELL, 2007):

 ~xi: guarda o conjunto de coordenadas que indicam a posição atual da partícula no

espaço de busca;

 ~pi: também conhecido como pbesti(de “melhor anterior” em inglês: previous best),

se ~xifor melhor do que as posições que uma partícula tenha tido até então, ele passa

a ser guardado nesse vetor;

 ~vi: guarda as coordenadas que são adicionadas às da posição da partícula para que

ela se movimente no espaço como mostrado na Equação 3.4, onde t + 1 é o instante atual e t o instante anterior,

~xi(t + 1) = ~xi(t) +~vi(t + 1).  3.4 Como o conhecimento individual apenas não é suficiente para a resolução proposta pela PSO de um problema de otimização, uma partícula troca informações com suas vizinhas para

descobrir qual delas tem o melhor pbesti. Se a vizinhança de uma partícula for todo o enxame,

esse valor é chamado de gbest (de “melhor global” em inglês: global best), caso contrário, lbest (de “melhor local” em inglês: local best). Apesar da abordagem lbest apresentar uma melhor diversidade de soluções, isso vem com o custo de um maior tempo de convergência do que a abordagem gbest (ENGELBRECHT, 2007). Como para a pesquisa aqui conduzida o interessante são melhores tempos de convergência, o gbest foi utilizado e, a partir de agora, só ele será considerado.

Com o conhecimento individual e coletivo, cada partícula movimenta-se a partir do que foi descrito na Equação 3.4. Para atualizar a velocidade de uma partícula a cada iteração a Equação 3.5 é utilizada (ENGELBRECHT, 2007):

~vi(t + 1) = ~vi(t) + c1r1(t)[pbesti(t) −~xi(t)] + c2r2(t)[gbest(t) −~xi(t)],  3.5

(36)

34 3.1. PARTICLE SWARM OPTIMIZATION UTILIZADA NA OTIMIZAÇÃO MULTIOBJETIVA

onde ~vi(t) é a velocidade da partícula i no instante t, ~xi(t) é a sua posição no mesmo

instante, c1 e c2 são constantes de aceleração positivas usadas para regular a contribuição

dos componentes individual e coletivo respectivamente e r1(t) e r2(t) são valores aleatórios

no intervalo [0,1], colhidos de uma distribuição uniforme para a introdução de um elemento estocástico à técnica.

Os termos da Equação 3.5 podem ser agrupados e analisados da seguinte forma:

 a velocidade anterior, ~vi(t), ou o componente de inércia, é a memória da partícula

do seu passado mais recente, o que impede que ela mude drasticamente de direção;

 o componente individual ou cognitivo, c1r1(t)[pbesti(t) −~xi(t)], mede o

desempe-nho atual da partícula em relação ao seu desempedesempe-nho anterior, o que faz com que ela tenha uma tendência a ir para o que ela conhece como melhor;

 o componente coletivo ou social, c2r2(t)[gbest(t) −~xi(t)], por sua vez, mede o

desempenho atual da partícula em relação ao do grupo, o que a faz tentar seguir as “convenções” do grupo.

Em um espaço de busca de 2 dimensões, esses componentes agiriam como mostrado pela Figura 3.2.

Figura 3.2: Componentes da velocidade agindo na mudança de posição de uma partícula

iem um espaço de busca de 2 dimensões.

A cada iteração, cada partícula, ao ter sua posição ajustada, verifica seu desempenho em relação ao que deseja se otimizar. O valor desse desempenho é conhecido como fitness e ajuda a determinar se ela atingiu uma posição melhor em relação às anteriores e qual das partículas até o momento tem a melhor posição do enxame. Todos esses conceitos apresentados até aqui juntam-se para formar o Algoritmo 3.

(37)

Entrada: número de partículas, número de dimensões do espaço de busca, número de iterações

início

inicializar enxame h = 0

enquanto h < número de iterações faça i = 0

enquanto i < número de partículas faça j = 0

enquanto j < número de dimensões faça

atualizar ~vi

atualizar ~xi

incrementar j fim

calcular fitness da partícula i

atualizar pbesti atualizar gbest incrementar i fim incrementar h fim fim

Algoritmo 3: Algoritmo do PSO.

Apesar da PSO mostrar-se extremamente eficaz na otimização de problemas de funções lineares e variáveis contínuas, ele tem uma grande limitação: em sua versão original, como a mostrada até aqui, ele foi desenvolvido para otimizar apenas problemas de um único objetivo. Para suprir essa deficiência, foi proposta a Multiobjective Particle Swarm Optimization, MOPSO. O estudo apresentado em COELLO; LECHUGA (2002) foi um dos primeiros a modificar a PSO tornando-a capaz de lidar com múltiplos objetivos. A escolha e o interesse em modificar esse técnica em particular deu-se, entre outras coisas, pelo fato dela apresentar uma rápida convergência na busca de soluções de otimização (KENNEDY; EBERHART, 2001).

Em COELLO; LECHUGA (2002), para se achar um conjunto de soluções não dominadas e diversas para um problema de otimização, requisito quando está se tratando de múltiplos objetivos como mostrado no início do Capítulo 3, é proposto que exista um repositório, chamado de arquivo externo, onde, durante a execução do algoritmo da técnica, as partículas possam registrar e guardar seu histórico de melhores soluções encontradas. Além disso, o espaço de busca é dividido em hipercubos e cada um deles possui seu próprio fitness, permitindo que a técnica empregue uma abordagem de roleta para escolher qual dos nós dentro de um hipercubo será o líder social de suas demais partículas. Esse líder social influenciará no cálculo da velocidade de uma partícula e em sua consequente nova posição. A Equação 3.6 mostra esse cáculo:

~vi(t + 1) = ~vi(t) + c1r1(t)[pbesti(t) −~xi(t)] + c2r2(t)[sleaderh(t) −~xi(t)],  3.6

(38)

36 3.1. PARTICLE SWARM OPTIMIZATION UTILIZADA NA OTIMIZAÇÃO MULTIOBJETIVA

onde sleaderh(t) representa a posição da partícula líder social de um hipercubo h em um

momento t e todos os outros termos são como os descritos para a Equação 3.5.

O conteúdo do arquivo externo, a cada iteração, é atualizado com todas as recentes soluções não dominadas, enquanto as que passam a ser dominadas são eliminadas. Esse arquivo possui um número máximo de soluções que pode guardar e, no caso desse valor ser atingido, as soluções de áreas com menor concentração de partículas têm preferência sobre as de áreas com maior concentração. O Algoritmo 4 mostra o funcionamento básico da MOPSO.

Entrada: número de partículas, número de dimensões do espaço de busca, número de iterações

Saída: arquivo externo início

inicializar enxame gerar hipercubos h = 0

enquanto h < número de iterações faça i = 0

enquanto i < número de partículas faça j = 0

enquanto j < número de dimensões faça

atualizar ~vi

atualizar ~xi

incrementar j fim

calcular fitness da partícula i atualizar arquivo externo

atualizar pbesti incrementar i fim incrementar h fim fim

Algoritmo 4: Algoritmo do MOPSO.

Desde o surgimento da ideia de usar a PSO para problemas multiobjetivos, muitos estudos surgiram buscando aprimorála. Um deles é o Multiobjective Particle Swarm Optimization -Crowding Distance Roulette, MOPSO-CDR, de SANTANA (2009).

O nome dessa técnica se deve ao fato dela utilizar, além de roleta, a distância de uma partícula de regiões mais populosas (crowding distance). Apesar de não apresentar o conceito de hipercubos, ele usa roleta, como em COELLO; LECHUGA (2002), para escolher o líder social de uma partícula, nesse caso o gbest. A grande diferença está em dois aspectos: (1) a ordenação

do arquivo externo através de crowding distance e (2) como o pbestié atualizado.

A ordenação do arquivo externo é realizada ao final de cada iteração através da distância Euclidiana de suas soluções para regiões com maior concentração de partículas. Isso é feito para garantir que soluções de áreas com menor concentração tenham mais chances de serem

(39)

escolhidas como gbest.

Já a atualização do pbesti, verifica se a nova posição ~xida partícula é comprável com seu

atual pbesti. A partir disso, duas situações podem ocorrer:

 se os vetores forem comparáveis, aquele que apresenta a melhor solução vem a

atualizar o pbesti, se for o caso;

 no caso da comparação não ser possível, procura-se no arquivo externo por soluções

com a mínima distância Euclidiana tanto para ~xiquanto para pbestie a solução que

estiver em uma região menos populosa atualiza o pbesti.

Por apresentar melhoras nos resultados obtidos em relação a outras técnicas, a MOPSO-CDR foi a técnica de otimização escolhida para ser usada neste trabalho. O Algoritmo 5 mostra seu funcionamento.

Entrada: número de partículas, número de dimensões do espaço de busca, número de iterações, arquivo externo

Saída: arquivo externo início

inicializar enxame h = 0

enquanto h < número de iterações faça i = 0

enquanto i < número de partículas faça j = 0

enquanto j < número de dimensões faça

atualizar ~vi

atualizar ~xi

incrementar j fim

calcular fitness da partícula i atualizar arquivo externo

atualizar pbesti

atualizar gbest incrementar i fim

classificar arquivo externo por crowding distance incrementar h

fim fim

Algoritmo 5: Algoritmo do MOPSO-CDR.

A seguir, é mostrado como alguns trabalhos utilizam essas ténicas de otimização para melhorar aspectos de redes ad hoc móveis, as MANETs.

(40)

38 3.2. TRABALHOS RELACIONADOS

3.2

Trabalhos relacionados

Atualmente, já são muitos os trabalhos que empregam o algortimo da PSO para a otimização de MANETs. Em JI et al. (2005), como em outros trabalhos, ele é utilizado para otimizar a criação de clusters, conjunto de nós no qual um deles é responsável por certas tarefas de coordenação do uso de recursos entre eles, em cenários ad hoc, de forma que fosse garantido um eficiente controle de acesso ao meio (atividade da camada de enlace). Em PEREIRA (2010), já abordado antes, a política de recuperação de quebras de enlaces do AODV proposta passa a atribuir pesos a seus parâmetros, como mostrado pelo Algoritmo 6 , e a usar o PSO para encontrar os valores desses pesos a fim de otimizar o atraso da rede.

Entrada: número de saltos percorridos, número de saltos restantes, conectivadade do nó fonte, conectividade do nó predecessor, A, B, C, D

início

local = A*número de saltos percorridos + B*conectivadade do nó fonte fonte = C*número de saltos restantes + D*conectividade do nó predecessor se local > fonte então

fazer reparação local fim

senão

fazer reparação pela fonte fim

fim

Algoritmo 6: Política de reparação de quebra de enlace no AODV utilizada em PEREIRA (2010) e PIMENTEL (2010) para levar em consideração pesos descobertos pelo PSO e MOPSO-CDR, respectivamente.

Como observado neste capítulo, o algoritmo do PSO só é capaz de otimizar um único objetivo. Dessa forma, PIMENTEL (2010) passou a usar a mesma abordagem destacada pelo Algortimo 6, mas empregando o MOPSO-CDR para melhorar atraso e vazão simultanemanete. Entretanto, quando se olha para as MANETs multicanais e multi-interfaces não se vê trabalhos que busquem utilizar alguma dessas técnicas visando a melhoria de métricas da rede a partir do seu roteamento.

Este trabalho fez suas modificações na política de recuperação de rotas do AODV baseando-se nas modificações feitas em PIMENTEL (2010) e também usou a ideia de de pesos descobertos pelo MOPSO-CDR. A política utilizada por este trabalho, suas diferenças em relação às pesquisas nas quais se baseou e demais detalhes acerca dessa propostas são encontrados no próximo capítulo.

Referências

Documentos relacionados

Biólogo, mestre em ciências (Biologia celular e molecular) pelo instituto oswaldo cruz (ioc/Fiocruz) e egresso do curso técnico de Pesquisa em Biologia Parasitária do mesmo

da resposta imune que, frequentemente, resultam em anular a ação de biopatógenos, por meio da ativação do sistema complemento, opsonização dos antígenos para

Esses vírus se ligam a receptores específicos localizados na superfície da membrana celular e entram na célula hospedeira via fusão do envelope viral, com a superfície da célula em

Algumas dificuldades podem ser encontradas quando se deseja de- monstrar este tipo de organela através de microscopia ótica, já que a produção bacteriana de flagelos não é contínua

Para diminuir ao máximo a interferência das proteínas que ainda podem estar presentes na amostra, deve-se fazer uma leitura a 280 nm – comprimento de onda em que as

A membrana plasmática é formada por moléculas de lipídeos (fosfoglicerídeos e esfingolipídeos), colesterol, proteínas periféricas (localizadas somente em uma das camadas

Em algumas regiões, em continuação à lâmina basal, há uma camada de fibras reticulares (principalmente colágeno do tipo III) conjugadas a complexos de proteínas, produzidas

Como objetivos específicos pretendeu-se iden- tificar os taxa existentes nesta gruta, determinar a riqueza de es- pécies de sua comunidade; verificar a influência de fatores