DISSERTAÇÃO_GrubiRouter_ Um protocolo de roteamento para redes
88
0
0
Texto
(2) HEWERTON ENES DE OLIVEIRA. GRUBIROUTER: UM PROTOCOLO DE ROTEAMENTO ˜ DE PARA REDES OPORTUNISTAS COM PADRAO ´ MOVIMENTO SOCIOLOGICO. Disserta¸c˜ ao apresentada ` a Universidade Federal de Lavras, como parte das exigˆencias do Programa de P´ os-Gradua¸c˜ ao em Ciˆencia da Computa¸c˜ ao, ´ area de concentra¸c˜ ao em Redes de Computadores e Sistemas Embarcados, para a obten¸c˜ ao do t´ıtulo de Mestre.. Orientador Dr. Tales Heimfarth. LAVRAS - MG 2014.
(3) Ficha Catalogr´ afica Elaborada pela Coordenadoria de Produtos e Servi¸ cos da Biblioteca Universit´ aria da UFLA. Oliveira, Hewerton Enes de. GrubiRouter: Um protocolo de roteamento para redes oportunistas com padr˜ ao de movimento sociol´ ogico/ Hewerton Enes de Oliveira. – Lavras : UFLA, 2014. 87 p. : il. Disserta¸c˜ ao (mestrado) – Universidade Federal de Lavras, 2014. Orientador: Tales Heimfarth. Bibliografia. 1. Redes oportunistas. 2. Roteamento. 3. Redes tolerantes a falhas. 4. Ad Hoc. I. Universidade Federal de Lavras. II. T´ıtulo. CDD – 004.6.
(4) HEWERTON ENES DE OLIVEIRA. GRUBIROUTER: UM PROTOCOLO DE ROTEAMENTO ˜ DE PARA REDES OPORTUNISTAS COM PADRAO ´ MOVIMENTO SOCIOLOGICO. Disserta¸c˜ ao apresentada ` a Universidade Federal de Lavras, como parte das exigˆencias do Programa de P´ os-Gradua¸c˜ ao em Ciˆencia da Computa¸c˜ ao, ´ area de concentra¸c˜ ao em Redes de Computadores e Sistemas Embarcados, para a obten¸c˜ ao do t´ıtulo de Mestre.. APROVADA em 19 de mar¸co de 2014. Dr. Wilian Soares Lacerda. UFLA. Dr. Edison Pignaton de Freitas. UFSM. Dr. Tales Heimfarth Orientador. LAVRAS - MG 2014.
(5) Dedico esta disserta¸c˜ ao aos meus pais, Jos´e Leˆ oncio de Oliveira e Vicentina Enes de Oliveira, e ` a minha irm˜ a Hewellin Enes de Oliveira que me apoiaram incondicionalmente durante toda essa jornada..
(6) AGRADECIMENTOS Agrade¸co ao meu orientador professor Tales pelas dicas, conselhos e a plena disponibilidade. Agrade¸co aos meus amigos Renato Oliveira e Ana Fran¸ca pelo total apoio e amizade desde a formatura da gradua¸c˜ ao. Agrade¸co a minha namorada Alessandra Millezi pelo companheirismo e compreens˜ ao durante todo o mestrado. Agrade¸co ao Grupo de Redes Ub´ıquas pelas amizades proporcionadas durante todo o mestrado e parte da gradua¸c˜ ao. Agrade¸co aos meus colegas da primeira turma do mestrado do PPGCC da UFLA pela amizade e pela troca de experiˆencias nesses dois anos de luta. Agrade¸co a todos os meus colegas do PPGCC da UFLA pela ajuda durante as disciplinas do mestrado. Agrade¸co a todos os professores do PPGCC da UFLA pelas instru¸c˜ oes e conhecimentos passados. Agrade¸co ` a secretaria do PPGCC da UFLA pela pronta disponibilidade. Agrade¸co ` a CAPES pelo apoio financeiro concedido durante o desenvolvimento deste trabalho..
(7) RESUMO Este trabalho apresenta um protocolo de roteamento para redes oportunistas que se baseia no modelo de movimento sociol´ ogico. Neste modelo os n´ os m´ oveis tendem a frequentar regi˜ oes sociais, como restaurantes e universidades, de forma a realizar os mesmos movimentos entre as regi˜ oes repetidamente. Um desafio para este ambiente ´e realizar o roteamento de mensagens, uma vez que a topologia da rede muda frequentemente. O protocolo de roteamento apresentado mostra uma maneira de resolver este problema estabelecendo pontos de acesso no ambiente da rede. Estes pontos de acesso s˜ ao denominados de hubs, formado pela associa¸c˜ ao de v´ arios n´ os m´ oveis da rede que est˜ ao presentes nas regi˜ oes sociais. Por meio das informa¸c˜ oes de contexto, como a posi¸c˜ ao e hist´ orico de encontros com outros n´ os, ´e poss´ıvel identificar quais n´ os realizam rotas frequentes entre hubs. Dessa forma eles s˜ ao utilizados como arestas para interligar os hubs da rede e realizar a transferˆencia de mensagens entre os mesmos. Assim, rotas s˜ ao formadas na rede e utilizadas para o roteamento de mensagens. As mensagens s˜ ao encaminhas para o hub que ´e frequentado pelo destinat´ ario. A entrega ´e efetuada quando o destinat´ ario entra em contato com o hub que possui rela¸c˜ ao. O protocolo foi testado por meio de simula¸c˜ oes e comparado com outros protocolos de roteamento para redes oportunistas. Os resultados mostram que o protocolo desenvolvido obteve desempenho satisfat´orio comparado a outros m´etodos tradicionais descritos na literatura. Palavras-chave: Redes Oportunistas; Roteamento; Rede Tolerantes a Falhas; Ad Hoc..
(8) ABSTRACT This paper presents a routing protocol for opportunistic networks that is based on a sociological movement model. In this model the mobile nodes tend to attend social areas such as restaurants and universities, in order to perform the same moves repeatedly between regions. One challenge for this environment is to perform message routing, since the network topology changes frequently. The routing protocol developed shows one way to solve this problem by establishing access points in the network environment. These access points are called hubs, formed by the association of multiple mobile network nodes that are present in social areas. By means of the context information, such as position and history of encounters with other nodes, it is possible to identify which nodes perform frequent routes between hubs. Thus they are used as edges to interconnect the hubs of the network and perform the transfer of messages therebetween. Thus, routes are formed in the network and used for routing messages. Messages are gathered for the hub which is frequented by the recipient. Delivery is made when the recipient contacts the hub that has a relationship. The protocol was tested through simulations and compared with other routing protocols for opportunistic networks. The results show that the protocol developed got satisfactory performance compared to other traditional methods described in the literature. Keywords: Opportunistic Networks; Routing; Delay Tolerant Networks; Ad Hoc..
(9) LISTA DE FIGURAS Figura 1. Figura Figura Figura Figura. 2 3 4 5. Figura 6 Figura 7 Figura 8 Figura 9 Figura 10 Figura 11 Figura 12. Figura 13 Figura 14. Figura 15 Figura 16 Figura 17 Figura 18. Figura 19 Figura 20. Cen´ ario considerado para o problema. Observa-se a movimenta¸c˜ ao dos n´ os e os contatos feitos na universidade, escrit´ orio, clube, restaurante e em casa........ Estrutura de uma aplica¸c˜ ao para Redes Oportunistas. ...... Modelo da rede para dissemina¸c˜ ao de informa¸c˜ oes. .......... Algoritmo de crescimento de uma OppNet. ................... Vis˜ ao geral do simulador The ONE (KER¨ aNEN; OTT; K¨ aRKK¨ aINEN, 2009)............................................. Interface gr´ afica do simulador The ONE....................... Janela pop-up com informa¸c˜ oes detalhadas The ONE. ...... Mapa da ´ area central de Helsinki utilizado nas simula¸c˜ oes (KER¨ aNEN; OTT; K¨ aRKK¨ aINEN, 2009). ...... Exemplo de um ambiente par ao protocolo Solar-Hub. Fonte: (GHOSH; PHILIP; QIAO, 2005) ....................... Taxonomia proposto por Cao e Sun (2012),................... Vis˜ ao geral do protocolo desenvolvido.......................... Zona ˆ ancora de um item, n´ os m´ oveis e seus alcances de comunica¸c˜ ao: o conte´ udo ´e replicado entre os n´ os dentro da zona e deletados dos n´ os que est˜ ao a uma distˆ ancia maior que a do centro da regi˜ ao. (KANGASHARJU; OTT; KARKULAHTI, 2010) ................................... Cen´ ario para exemplifica¸c˜ ao do protocolo. .................... Exemplo da coleta das informa¸c˜ oes de contexto pelos n´ os N1 e N2 e transferˆencia das mesmas para os hubs com os quais os n´ os mantˆem contato. ................................... Exemplo do compartilhamento das tabelas de roteamento entre os hubs da rede. .............................. Fluxograma detalhando o funcionamento do processo de roteamento. ........................................................ Exemplo do roteamento de mensagens. ........................ Exemplo de uma rede criada pelo gerador. Notam-se os pontos fixos denominados hubs e as arestas que os conectam............................................................ Tempo m´edio para propaga¸c˜ ao completa das tabelas de roteamento em cada cen´ ario. .................................... Taxa de entrega calculada para cada protocolo. Os dados foram obtidos do experimento 1. ......................... 17 23 24 25 29 31 32 33 39 47 49. 50 51. 54 59 63 64. 68 71 73.
(10) Figura 21 Taxa de entrega calculada para cada protocolo. Os dados foram obtidos do experimento 2. ........................ Figura 22 N´ umero m´edio de mensagens de controle para cada cen´ ario. Os dados foram obtidos do experimento 1. ......... Figura 23 N´ umero m´edio de mensagens de controle para cada cen´ ario. Os dados foram obtidos do experimento 2. ......... Figura 24 Latˆencia m´edia para entrega de mensagens. Os dados foram obtidos do experimento 1................................. Figura 25 Latˆencia m´edia para entrega de mensagens. Os dados foram obtidos do experimento 2.................................. 73 76 76 78 80.
(11) LISTA DE TABELAS Tabela 1 Tabela 2 Tabela 3. Tabela 4. Tabela 5. Tabela 6 Tabela 7 Tabela 8. Tabela 9 Tabela 10a Tabela 10b Tabela 11a Tabela 11b Tabela 12a Tabela 12b. Exemplo de tabela gerada ap´ os o processamento das informa¸c˜ oes de contexto para n´ o m´ ovel N1.................... Exemplo de tabela gerada ap´ os o processamento das informa¸c˜ oes de contexto para o n´ o m´ ovel N2. ................ Exemplo de tabela de roteamento gerada no hub H1 ap´ os o processamento das informa¸c˜ oes transferidas a partir do n´ o N1................................................................ Exemplo de tabela de roteamento gerada no hub H2 ap´ os o processamento das informa¸c˜ oes transferidas a partir do n´ o N1 e N2. ........................................................ Exemplo de tabela de roteamento gerada no hub H3 ap´ os o processamento das informa¸c˜ oes transferidas a partir do n´ o N2................................................................ Exemplo de tabela gerada ap´ os o processamento das informa¸c˜ oes de contexto coletadas pelos n´ os m´ oveis. ........ Parˆ ametros para o experimento 1. Nesse experimento variou-se o n´ umero de hubs na rede. ........................... Parˆ ametros para o experimento 2. Nesse experimento variou-se o n´ umero de n´ os aleat´ orios e visitantes para observar o comportamento dos protocolos quanto a quantidade de n´ os. ................................................ Configura¸c˜ ao dos computadores utilizados na execu¸c˜ ao das simula¸c˜ oes. .................................................... Estat´ısticas sobre a taxa de entrega. Resultados obtidos do experimento 1. ................................................. Estat´ısticas sobre o overhead. Resultados obtidos do experimento 2. ..................................................... Estat´ısticas sobre o overhead. Resultados obtidos do experimento 1. ..................................................... Estat´ısticas sobre o overhead. Resultados obtidos do experimento 2. ..................................................... Estat´ısticas sobre a latˆencia para entrega de mensagens. Resultados obtidos do experimento 1........................... Estat´ısticas sobre a latˆencia para entrega de mensagens. Resultados obtidos do experimento 2............................ 54 55. 57. 57. 57 60 69. 69 70 72 72 75 75 79 79.
(12) LISTA DE SIGLAS. UFLA GRUBI OppNet Manet The ONE. Universidade Federal de Lavras Grupo de Redes Ub´ıquas Opportunistic Nertwork Mobile Ad Hoc Network The Opportunistic Network Environment.
(13) ´ SUMARIO 1 1.1 1.2 1.3 1.4 2 2.1 2.1.1 2.1.1.1 2.1.1.2 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 2.3 2.3.1 2.3.2 2.3.3 2.3.4 3 3.1 3.2 3.3 3.4 3.5 4 4.1 4.2 4.3 4.4 4.4.1 4.4.2 4.4.3. ˜ ........................................... INTRODUC ¸ AO Contextualiza¸ c˜ ao e motiva¸ c˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . O problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objetivos gerais e espec´ıficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organiza¸ c˜ ao do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ REFERENCIAL TEORICO ............................. Redes Oportunistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conceitos b´ asicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tipos de n´ os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Projetos de Redes Oportunistas . . . . . . . . . . . . . . . . . . . . . . . . . Ciclo de vida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diferen¸ cas entre MANETs e OppNets . . . . . . . . . . . . . . . . . Diferen¸ cas entre Redes Peer-to-Peer e OppNets . . . . . . O simulador The ONE para Redes Oportunistas . . . . . Configura¸ c˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sa´ıda das simula¸ co ˜es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . O mapa utilizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estado da Arte sobre Roteamento em Redes Oportunistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Taxinomia dos m´ etodos de roteamento . . . . . . . . . . . . . . . . . Roteamento com contexto o ´bvio . . . . . . . . . . . . . . . . . . . . . . . . Roteamento baseado na mobilidade dos n´ os . . . . . . . . . . . Roteamento baseado nas informa¸ co ˜es sociais . . . . . . . . . . METODOLOGIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vis˜ ao geral do protocolo GrubiRouter . . . . . . . . . . . . . . . . . . Fase 1 - Reconhecimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fase 2 - Compartilhamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controle do buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Roteamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˜ RESULTADOS E DISCUSSOES ........................ Implementa¸ c˜ ao do padr˜ ao de movimento . . . . . . . . . . . . . . Gerador de cen´ arios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configura¸ co ˜es e execu¸ c˜ ao das simula¸ co ˜es. . . . . . . . . . . . . . . Resultados obtidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . An´ alise sobre o compartilhamento das rotas . . . . . . . . . . . An´ alise sobre a taxa de entrega . . . . . . . . . . . . . . . . . . . . . . . . . An´ alise sobre o overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 14 14 15 18 18 20 20 21 22 22 24 26 27 28 29 31 33 34 35 35 37 42 48 49 52 56 61 62 66 66 67 68 70 70 71 74.
(14) 4.4.4 5 5.1. An´ alise sobre a latˆ encia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˜ ............................................. CONCLUSAO Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ REFERENCIAS. ........................................... 78 81 82 84.
(15) 14 1 1.1. ˜ INTRODUC ¸ AO Contextualiza¸ c˜ ao e motiva¸ c˜ ao O r´ apido desenvolvimento de novos e baratos dispositivos para redes. sem fio tem criado grandes oportunidades para redes de comunica¸c˜ ao em novas situa¸c˜ oes. Dispositivos equipados com tecnologia de comunica¸ca˜o sem fio s˜ ao usados pervasivamente na vida di´ aria. A ubiquidade desses dispositivos pode facilitar a comunica¸c˜ ao em situa¸c˜ oes extremas nas quais n˜ ao h´ a uma rede estruturada, por exemplo, em ´ areas afetadas por desastres naturais como terremotos. Dispositivos m´ oveis podem formar redes isoladas, conectadas por um link sem fio como ocorre com as Mobile Ad Hoc Networks (MANETs) (SINGH; SINGH; VATS, 2011). As Redes Oportunistas (OppNets) refor¸cam esta vis˜ ao considerando as caracter´ısticas das redes m´ oveis como, por exemplo, a mobilidade nos n´ os, a desconex˜ ao e as partes isoladas da rede. Os n´ os em uma OppNet exploram oportunidades de comunica¸c˜ ao que a mobilidade lhe proporciona. Um problema fundamental em OppNets ´e como realizar o roteamento de mensagens da origem at´e o destinat´ ario, considerando que o caminho entre os n´ os (caminho fim-a-fim) pode ser indeterminado durante o tempo de vida da mensagem (LILIEN et al., 2007). Como n˜ ao h´ a um caminho entre a origem e o destino, os n´ os da rede necessitam comunicar-se entre si atrav´es de conex˜ oes oportunistas e utilizar um m´etodo store-carryforward (armazena-carrega-encaminha) para realizar o encaminhamento das mensagens (NGUYEN; GIORDANO, 2009). O roteamento em OppNets pode ser melhorado obtendo conheci-.
(16) 15 mento sobre o ambiente em que o n´ o da rede se encontra, isto ´e, obtendo as informa¸c˜ oes sobre o contexto no qual o n´ o se encontra. As informa¸c˜ oes de contexto podem ser definidas como qualquer informa¸c˜ ao que pode ser usada para proporcionar um roteamento eficiente e efetivo (NGUYEN; GIORDANO, 2012). Dessa forma ´e poss´ıvel desenvolver m´etodos para realizar o roteamento em uma OppNet que utilizem essas informa¸c˜ oes e estabele¸cam rotas entre transmissor e receptor, possibilitando a transferˆencia de mensagens entre os n´ os da rede. Os protocolos presentes na literatura que utilizam essa metodologia mostraram-se promissores, por´em os mesmos enfrentam problemas de eficiˆencia como altas taxas de overhead. Assim, foi desenvolvido neste trabalho um protocolo de roteamento que utiliza as informa¸c˜ oes de contexto para realizar o roteamento na rede que minimiza os recursos utilizados e que efetua um roteamento de forma eficiente. 1.2. O problema O roteamento de mensagens entre dois n´ os pertencentes a uma rede. oportunistas de n´ os m´ oveis ´e o problema estudado neste trabalho. O problema ambienta-se em uma rede constitu´ıda por n´ os m´ oveis que possuem a capacidade de efetuar conex˜ oes sem fio entre si e armazenar informa¸c˜ oes sobre o contexto no qual est´ a envolvido, como o hist´ orico de contatos. Esses n´ os m´ oveis se comunicam por meio de uma Rede Oportunista, ou seja, utilizando conex˜ oes ocasionais em momentos de proximidade entre diferentes participantes da rede. Nesse ambiente est˜ ao presente tamb´em pontos fixos que representam localidades como um escrit´ orio ou universidade, os quais s˜ ao visitados.
(17) 16 periodicamente por um subconjunto dos n´ os m´ oveis da rede. Al´em disso alguns n´ os m´ oveis realizam movimentos entre os pontos fixos do ambiente. Assim, os n´ os realizam um padr˜ ao de movimento baseado na movimenta¸ca˜o rotineira de pessoas em seu cotidiano, denominado padr˜ ao de movimento sociol´ ogico. A Figura 1 exemplifica o ambiente utilizado para definir o problema analisado nesse projeto. Nesse cen´ ario existem n´ os m´ oveis que possuem acesso a um determinado n´ umero de recursos de hardware, como a comunica¸c˜ ao sem fio, essencial para formar uma rede oportunista. Os n´ os desse cen´ ario podem mover-se livremente em qualquer dire¸c˜ ao, pois os mesmos est˜ ao em posse de seu portador. Assim, em determinados momentos, um grupo de n´ os pode aproximar-se e afastar-se dependendo da dire¸c˜ ao do movimento de seus portadores. No cen´ ario apresentado n˜ ao ´e utilizada uma rede infraestruturada, por isso torna-se necess´ aria a intera¸c˜ ao entre os n´ os para a realiza¸c˜ ao da comunica¸c˜ ao. Por exemplo, um determinado grupo de n´ os pode pertencer a estudantes de uma determinada disciplina que possui um hor´ ario definido. Isso implica que em alguns momentos esses n´ os podem ficar pr´ oximos por um determinado intervalo de tempo. Ap´ os esse intervalo os n´ os podem novamente entrar em movimento. Al´em disso, os portadores podem ter rela¸c˜ oes sociais com colegas de trabalhos no escrit´ orio, com a sua fam´ılia em casa e com amigos em um determinado clube. Isso faz com que os n´ os tenham contato com um n´ umero diversificado de n´ os. Nesse cen´ ario deseja-se enviar uma mensagem a partir do n´ o S que frequenta a universidade para o n´ o R, o qual frequenta o escrit´ orio. O problema analisado nesse projeto trata-se de como efetuar o roteamento de.
(18) 17. R. Escritório. S. Residência. Universidade. Restaurante Clube. Nó Móvel. S. Nó móvel que deseja enviar uma mensagem. Região social. R. Nó móvel destinatário da mensagem. Figura 1 Cen´ ario considerado para o problema. Observa-se a movimenta¸c˜ ao dos n´ os e os contatos feitos na universidade, escrit´ orio, clube, restaurante e em casa.. algum n´ o m´ ovel qualquer para outro n´ o m´ ovel qualquer, considerando que os n´ os podem interagir entre si para compor uma OppNet e realizar a troca de informa¸c˜ oes, pressupondo que os n´ os realizam um padr˜ ao de movimento sociol´ ogico. Um ponto espec´ıfico do problema ´e como determinar o pr´ oximo n´ o para o qual a mensagem deve ser encaminhada..
(19) 18 1.3. Objetivos gerais e espec´ıficos O objetivo geral deste tralhado ´e desenvolver um protocolo de rote-. amento para Redes Oportunistas que utilize informa¸c˜ oes de contexto para estabelecer uma rota entre transmissor e receptor a fim de realizar a transferˆencia de mensagens de forma eficiente, minimizando os recursos utilizados. Os protocolos descritos na literatura apresentam altas taxas de overhead comprometendo sua eficiˆencia quanto ao uso de recursos e entrega de mensagens. O roteamento deve ser realizado pressupondo que os n´ os da rede realizam o padr˜ ao de movimento sociol´ ogico apresentado anteriormente. Os seguintes objetivos espec´ıficos foram estabelecidos: • Extrair dados de contexto, como encontros e posi¸c˜ oes geogr´ aficas do dispositivo e criar uma base de dados de alto n´ıvel. • Criar um m´etodo para roteamento que utilizar´ a a base de dados para estabelecer qual ´e o pr´oximo n´ o a ser utilizado no roteamento. • Desenvolver uma aplica¸c˜ ao para testar o protocolo desenvolvido. • Desenvolver um gerador de cen´ arios aleat´ orios para serem utilizados nos testes. • Avaliar o desempenho dos m´etodos propostos utilizando simula¸c˜ ao e comparar com m´etodos presentes na literatura. 1.4. Organiza¸ c˜ ao do trabalho O trabalho est´ a organizado da forma apresentada a seguir. Na Se-. ¸c˜ ao 2 ser´ a apresentado um referencial te´ orico acerca dos conceitos utilizados. Na Se¸c˜ ao 3 ser´ a exposta a metodologia do trabalho desenvolvido. Na Se¸c˜ ao 4.
(20) 19 ser˜ ao apresentadas as simula¸c˜ oes computacionais realizadas e os resultados obtidos. As conclus˜ oes e os trabalhos futuros podem ser observados na Se¸c˜ ao 5..
(21) 20 2. ´ REFERENCIAL TEORICO Os pontos relevantes para o entendimento deste trabalho est˜ ao des-. crito neste cap´ıtulo. Uma revis˜ ao bibliogr´ afica foi feita com o objetivo de estabelecer as bases para seu desenvolvimento e para obter os recentes avan¸cos na ´ area. 2.1. Redes Oportunistas As Redes Oportunistas, ou OppNets, s˜ ao redes que correspondem. a conex˜ ao oportunista de redes Ad Hoc, Peer-to-Peer (P2P) e Redes de Sensores Sem Fio (RSSFs). Elas aumentam a eficiˆencia das aplica¸c˜ oes sem fio existentes e abrem novas vertentes para o desenvolvimento de solu¸c˜ oes e aplica¸c˜ oes. S˜ ao formadas por conex˜ oes Ad Hoc entre v´ arios n´ os sem fio e m´ oveis, sendo que o tempo de conex˜ ao entre eles ´e curto, ou seja, a conex˜ ao ´e tempor´ aria. Os n´ os podem juntar-se a uma rede ou simplesmente abandon´ ala levando em considera¸c˜ ao a sua utilidade para os servi¸cos prestados pela rede em um determinado momento. De acordo com Pelusi, Passarella e Conti (2006) os conceitos das Redes Oportunistas vieram de estudos sobre as Redes Tolerantes a Falhas (Delay Tolerant Networks - DTN) que foram conduzidos pelo Internet Research Task Force (For¸ca Tarefa para Pesquisas com a Internet) que s˜ ao respons´ aveis pelo desenvolvimento das especifica¸c˜ oes das redes DTN. A arquitetura de uma DTN consiste em uma rede de n´ os que realizam uma conex˜ ao similar ` a conex˜ ao com a internet, havendo somente conex˜ oes ocasionais realizadas quando ocorre uma aproxima¸c˜ ao entre eles, ou seja, quando ocorre oportunidades de conex˜ ao. Pelusi, Passarella e Conti (2006) descrevem tamb´em que ainda n˜ ao.
(22) 21 h´ a uma clara separa¸c˜ ao de conceitos entre redes DTN e Redes Oportunistas. Os dois termos s˜ ao utilizados de forma frequente e intermitente. Em sua vis˜ ao as Redes Oportunistas representam um conceito geral que abrange as redes DTN. A topologia das OppNets varia de acordo com a mobilidade dos n´ os, inser¸c˜ ao e remo¸c˜ ao dos mesmos por alguma falha como o fim da carga da bateria. Uma OppNet deve possuir no m´ınimo duas funcionalidades b´ asicas que s˜ ao a Node Discovery e a One-Hop Exchange. A funcionalidade Node Discovery permite que os n´ os da rede pesquisem outros n´ os, dentro do alcance de seu r´ adio, para estabelecer conex˜ oes. J´ a a funcionalidade One-Hop Exchange permite a troca de informa¸c˜ oes entre os n´ os conectados. As OppNets diferem das redes tradicionais, como as MANETs (Mobile Ad Hoc Networks), na mobilidade dos n´ os e na topologia dinˆ amica da rede que se justifica no contexto da aplica¸c˜ ao. A comunica¸c˜ ao entre os n´ os da rede ´e poss´ıvel somente quando os n´ os se encontram dentro do mesmo alcance de transmiss˜ ao. As OppNets podem se auto-organizar para executar uma tarefa em conjunto e permitem detectar dispositivos vizinhos utilizando v´ arios meios de comunica¸c˜ ao como o ZigBee (FARAHANI, 2008), Bluetooth, WiFi, etc (LEE; SU; SHEN, 2007). Segundo (MAKKI, 2007), as OppNets podem ser empregadas em situa¸c˜ oes de emergˆencia, por exemplo cat´astrofes naturais. 2.1.1. Conceitos b´ asicos Nesta se¸c˜ ao definem-se alguns conceitos relacionados ` as redes opor-. tunistas e s˜ ao resumidos alguns aspectos relacionados ao projeto de uma rede oportunista..
(23) 22 2.1.1.1. Tipos de n´ os. N´ o: o n´ o de uma OppNet ´e um dispositivo que tem a capacidade de realizar comunica¸c˜ ao sem fio utilizando protocolos de compartilhamento de dissemina¸c˜ ao de informa¸c˜ oes. O n´ o ´e chamado de n´ o m´ ovel se o mesmo possuir mobilidade dentro da rede. N´ o helper : Os n´ os helpers s˜ ao n´ os que n˜ ao tˆem qualquer capacidade de criar informa¸c˜ oes para rede, mas que podem contribuir positivamente quanto ao processamento e capacidade de comunica¸c˜ ao. 2.1.1.2. Projetos de Redes Oportunistas. O projeto de OppNets, para uma determinada aplica¸c˜ ao, deve considerar alguns servi¸cos dos quais destacam-se: Presence Awareness Service: fornece ` a aplica¸c˜ ao a informa¸c˜ ao dos n´ os e dos utilizadores que est˜ ao ativos no mesmo alcance do raio de transmiss˜ ao. Esse servi¸co ´e respons´ avel por detectar a presen¸ca de n´ os vizinhos que podem agregar-se ` a rede para oferecer servi¸cos e recursos. Message Exchange Service: permite que as mensagens sejam trocadas entre os n´ os que est˜ ao no mesmo alcance do raio de transmiss˜ ao. Esse servi¸co n˜ ao verifica o sucesso ou insucesso do envio ou recebimento das mensagens deixando essa tarefa para outro servi¸co chamado Acknoledgment Service que se encontra na camada de aplica¸c˜ ao. Information Filtering Service: este servi¸co ´e respons´ avel por filtrar as.
(24) 23 informa¸c˜ oes que trafegam na rede, evitando que mensagens desnecess´ arias ou maliciosas trafeguem na rede. Security Service: servi¸co respons´ avel por manter a integridade e autenticidade das comunica¸c˜ oes; ele oferece servi¸cos de encripta¸c˜ ao e assinatura das informa¸c˜ oes. Identity Management Service: gerencia como os utilizadores s˜ ao identificados e seus status na rede. O projeto de uma aplica¸c˜ ao que utiliza uma OppNet deve seguir a estrutura apresentada na Figura 2. A Colabora¸c˜ ao Ativa ´e respons´ avel por coletar dados de contexto do ambiente e dos n´ os que est˜ ao pr´ oximos entre si, reconhecendo e definindo as responsabilidades dos mesmos na rede. A Colabora¸c˜ ao Passiva ´e um estado do n´ o respons´ avel por permitir a troca de mensagens entre ele e outros n´ os da rede, onde um n´ o servir´ a de intermedi´ ario para o envio e recebimento de mensagens (DATTA; QUARTERONI; ABERER, 2004).. Figura 2 Estrutura de uma aplica¸c˜ ao para Redes Oportunistas..
(25) 24 A dissemina¸c˜ ao de informa¸c˜ ao ´e o processo no qual a informa¸c˜ ao ´e difundida na OppNet. Ela ´e definida por protocolos de compartilhamento de informa¸c˜ oes e seguem dois passos explicados anteriormente: Node Discovery e One-Hop Exchange. Os n´ os presentes na OppNet definem seu modelo para distribui¸c˜ ao da informa¸c˜ ao. Na Figura 3 ´e poss´ıvel observar um modelo com n´ os m´ oveis e fixos. Os n´ os representados por pequenos quadrados s˜ ao pontos fixos de uma rede estruturada, eles possuem um raio de alcance maior para efetuar uma comunica¸c˜ ao sem fio. Os n´ os representados por c´ırculos s˜ ao n´ os m´ oveis com menos recursos de energia e comunica¸c˜ ao, por isso seu raio de alcance sem fio ´e reduzido. Observa-se que os n´ os m´ oveis podem conectar entre si e criar uma rede tempor´ aria para a dissemina¸c˜ ao de informa¸c˜ oes.. Figura 3 Modelo da rede para dissemina¸c˜ ao de informa¸c˜ oes.. 2.1.2. Ciclo de vida Uma OppNet inicia-se a partir de um conjunto de n´ os pr´e-definidos. no momento de sua implementa¸c˜ ao. Ap´ os isso a OppNet come¸ca a crescer ao redor desses n´ os alterando o n´ umero de indiv´ıduos e sua topologia. O.
(26) 25 crescimento ocorre atrav´es da detec¸c˜ ao de n´ os vizinhos e sua integra¸c˜ ao ` a OppNet. Na Figura 4 ´e poss´ıvel observar o algoritmo que a OppNet utiliza para realizar o crescimento da rede.. ". ". !. ". Figura 4 Algoritmo de crescimento de uma OppNet.. Os n´ os detectados s˜ao identificados e avaliados para verificar a sua utilidade na rede. Em seguida, os poss´ıveis candidatos s˜ ao convidados a participar podendo os mesmos aceitar ou rejeitar o convite. Caso algum n´ o.
(27) 26 aceite o convite, seus recursos passam a fazer parte da rede podendo, assim, serem utilizados por qualquer outro n´ o da OppNet. A partir do momento em que um n´ o deixa de ser necess´ ario ` a OppNet, o mesmo deve ser liberado e restaurado ao estado em que se encontrava antes de ser inserido na rede. Esta caracter´ıstica minimiza o crescimento desordenado da OppNet e revela o car´ ater oportunista da mesma, j´ a que apenas utiliza os recursos de um dispositivo enquanto ele pode ser u ´til, caso contr´ ario o mesmo ´e liberado. Os dispositivos wireless da OppNet fornecem acesso a esta¸c˜ oes de comunica¸c˜ oes distintas, como esta¸c˜ oes fixas para acesso a internet, o que lhe proporciona adquirir e disseminar informa¸c˜ oes e efetuar uma melhor an´ alise de dados, j´ a que possui acesso a um poder de processamento e armazenamento maior. Por causa dessa caracter´ıstica as OppNets podem estabelecer pontes entre diferentes recursos e servi¸cos dispon´ıveis (LILIEN et al., 2007). 2.1.3. Diferen¸ cas entre MANETs e OppNets As OppNets utilizam a vantagem do movimento de seus n´ os para. realizar suas conex˜ oes, o que a aproxima muito das redes MANETs. Por´em, as MANETs s˜ ao orientadas ` a camada de rede enquanto as OppNets est˜ ao orientadas ` a aplica¸c˜ ao. Uma importante diferen¸ca entre ambos tipos de redes consiste no roteamento. As MANETs focam em algoritmos de roteamentos eficientes como o modo proativo e reativo proposto por Perkins e Bhagwat (1994), al´em disso, alguns algoritmos podem utilizar informa¸c˜ oes de posi¸c˜ ao geogr´ afica para aumentar a eficiˆencia do algoritmo. Em uma MANET todos os n´ os se relacionam entre si com o prop´ osito de resolver um objetivo comum na rede, cada n´ o da rede tem sua parte de responsabilidade.
(28) 27 para resolver um determinado problema. Em redes MANETs os protocolos de roteamento tendem a manter rotas fim-a-fim entre todos os n´ os da rede conforme a topologia evolui. J´ a as OppNets s˜ ao formadas por grupos anˆ onimos de dispositivos, o que altera consideravelmente o roteamento de informa¸c˜ oes, j´ a que novos n´ os podem aderir ou serem removidos da rede. Isso impossibilita manter rotas fim-afim para realizar o roteamento. 2.1.4. Diferen¸ cas entre Redes Peer-to-Peer e OppNets Segundo Schollmeier (2001), as entidades de comunica¸c˜ oes tˆem au-. mentado seu interesse nas Redes Peer-to-Peer (P2P). Elas possuem arquitetura distribu´ıda onde os n´os da rede compartilham seus pr´ oprios recursos de hardware. Isso ´e necess´ ario para que os dispositivos possam se comunicar sem a necessidade de um intermedi´ ario. Outra caracter´ıstica das redes Peer-to-Peer ´e que elas s˜ ao criadas como uma nova camada sobre uma rede existente. Esse tipo de rede ´e denominada rede overlay. Assim como as Redes Peer-to-Peer, as OppNets possuem em seus n´ os as funcionalidades de cliente e servidor. Os n´ os de uma OppNet podem necessitar ou gerar dados para outros servi¸cos da rede. Por´em, a mobilidade dos n´ os n˜ ao ´e levada em considera¸c˜ ao nas redes P2P, pois o objetivo dessas redes ´e o compartilhamento de recursos. J´ a nas redes MANETs e OppNets, as conex˜ oes entre os diversos dispositivos s˜ ao definidas automaticamente, ou seja, s˜ ao imprevis´ıveis. Identificar e alocar recursos s˜ ao servi¸cos compartilhados entre dois n´ os o que significa um comportamento cooperativo entre ambos..
(29) 28 2.2. O simulador The ONE para Redes Oportunistas O desenvolvimento de protocolos de roteamento para Redes Opor-. tunistas d´ a-se, na maioria das vezes, por simula¸c˜ ao. Esta t´ecnica possibilita que o novo protocolo possa ser avaliado antes de ser testado em dispositivos reais, diminuindo o trabalho de programar e reprogramar os dispositivos em caso de falhas e novos testes. Neste trabalho foi utilizado o simulador The ONE (Opportunistic Network Enviroment) (KER¨ aNEN; OTT; K¨ aRKK¨ aINEN, 2009) desenvolvido para avaliar protocolos de roteamento para Redes Tolerantes a Falhas. O simulador foi implementado em Java e ´e completamete configur´ avel. Seu motor de simula¸c˜ ao consegue simular todo o ambiente onde os n´ os da rede est˜ ao imersos, incluindo o movimento dos n´ os e conex˜ oes. O The ONE possibilita tamb´em a simula¸c˜ ao de diversos protocolos de roteamento, permitindo a compara¸c˜ ao dos protocolos implementados. Uma caracter´ıstica do simulador ONE ´e seu auto n´ıvel de modularidade, como mostrado na Figura 5. Cada modelo de movimento e protocolo de roteamento s˜ ao implementados em m´ odulos independentes, que podem ser carregados dinamicamente desde que a configura¸c˜ ao da simula¸c˜ ao seja feita de forma correta. Esta caracter´ıstica facilita a implementa¸c˜ ao de novos protocolos para o simulador. Ele permite tamb´em a cria¸c˜ ao de m´ odulos de relat´ orios que facilitam a coleta dos resultados das simula¸c˜ oes, salvando-os em arquivos de relat´ orio. O simulador possui implementado diversos algoritmos de roteamento bem conhecidos na ´area de Redes Tolerantes a Falhas, incluindo o PRoPHET e o Spray and Wait o que justifica o seu uso neste trabalho. Al´em disso, ele possui uma interface gr´ afica que permite a visualiza¸c˜ ao.
(30) 29 Modelos de Movimento Movimento baseado em mapa Traços externo. Aleatório. Roteamento. etc.. Motor de Simulação. Dados de conectividade. Simulador externo de DTNs. Dados do roteamento. Lógica interna de roteamento. Gerador de eventos Arquivo externo de eventos Gerador de mensagens.. etc.. Visualização, relatórios, etc.. Processadores pós simulação. Grafos, grácos, etc.. Visualização e Retultados. Figura 5 Vis˜ ao geral do simulador The ONE (KER¨ aNEN; OTT; K¨ aRKK¨ aINEN, 2009).. da simula¸c˜ ao em tempo real, permitindo que determinados dados da rede possam ser observados durante a simula¸c˜ ao. 2.2.1. Configura¸ c˜ ao As simula¸c˜ oes s˜ ao configuradas antes de serem executadas. Elas s˜ ao. configuradas por meio de arquivos textos que descrevem o ambiente de simula¸c˜ ao, desde o n´ umero de n´os at´e a quantidade de tempo que a simula¸c˜ ao levar´ a. Os arquivos contˆem parˆ ametros sobre a interface gr´ afica, gerador de eventos e at´e sobre os m´ odulos de relat´ orios. Todos esses parˆ ametros s˜ ao lidos e configurados antes das simula¸c˜ oes ajustando o ambiente para a execu¸c˜ ao. Os arquivos de configura¸c˜ ao s˜ ao compostos por parˆ ametros que s˜ ao.
(31) 30 salvos em pares chave-valor como o seguinte: Namespace.chave = valor Os namespaces representam partes do ambiente de simula¸c˜ ao sobre o qual a configura¸c˜ ao tem efeito, geralmente s˜ ao utilizados os nomes das classes como namespaces. Os valores de cada par podem ser num´ericos (com ou sem ponto flutuante e com os sufixos “k”, “M” ou “G” para representar sua grandeza), booleanos (true ou false) ou texto. Tamb´em ´e poss´ıvel realizar coment´ arios de linha nos arquivos de configura¸c˜ ao utilizando o s´ımbolo “#”. As configura¸c˜ oes podem ser divididas em diversos arquivos o que permite a modulariza¸c˜ ao da configura¸c˜ ao de cada parte do ambiente como o cen´ ario, n´ os e o protocolo de roteamento. O primeiro arquivo de configura¸c˜ ao carregado ser´ a o “default settings.txt”, caso ele exista. Segundo Bujari, Palazzi e Bonaldo (2011), os agentes b´ asicos do simulador s˜ ao denominados n´ os que modelam um objeto m´ ovel capaz de atuar como um roteador store-and-forward (isto ´e, um pedestre, um carro ou qualquer objeto com o hardware requerido). Os n´ os com caracter´ısticas iguais podem divididos em grupos, onde cada grupo pode ser configurado independentemente. Em um mesmo grupo todos os n´ os compartilham as mesmas caracter´ısticas como a interface de r´ adio, movimento, armazenamento e protocolo de roteamento. Com esse modelo de configura¸c˜ ao ´e poss´ıvel criar um ambiente de simula¸c˜ ao heterogˆeneo com diferentes tipos de n´ os, agregando mais realidade e confiabilidade na simula¸c˜ ao..
(32) 31 2.2.2. Sa´ıda das simula¸ co ˜es O simulador oferece uma interface gr´ afica para acompanhar a exe-. cu¸c˜ ao da simula¸c˜ ao. Na interface, mostrada na Figura 6, ´e poss´ıvel observar o movimento dos n´ os e detalhes como o caminho percorrido durante a simula¸c˜ ao. Um painel com o log dos eventos tamb´em est´ a presente na parte inferior da interface, possibilitando ver as ocorrˆencias de trocas de mensagens na simula¸c˜ ao. Os eventos podem ser filtrados pelo tipo reduzindo a quantidade de informa¸c˜ oes no painel.. Figura 6 Interface gr´ afica do simulador The ONE.. Clicando sobre um n´ o ´e poss´ıvel ver informa¸c˜ oes avan¸cadas como as conex˜ oes ativas, mensagens que est˜ ao sendo recebidas e mensagens que foram entregues ao destinat´ario. Para cada mensagem entregue s˜ ao mostrados os saltos que foram necess´ arios para chegar ao destinat´ ario. Esta janela pop-up pode ser vista na Figura 7. As sa´ıdas das simula¸c˜ oes tamb´em podem ser vistas nos arquivos.
(33) 32. Figura 7 Janela pop-up com informa¸c˜ oes detalhadas The ONE.. de relat´ orio. Os arquivos s˜ao gerados pelos m´ odulos de relat´ orio. Cada m´ odulo ´e carregado dinamicamente no in´ıcio, de acordo com os parˆ ametros presentes nos arquivos de configura¸c˜ oes. Os relat´ orios s˜ ao u ´teis quando as simula¸c˜ oes s˜ ao executadas sem a interface gr´ afica, permitindo que v´ arias simula¸c˜ oes possam ocorrer em sequˆencia sem a necessidade de execut´ a-las individualmente. Os parˆ ametros das simula¸c˜ oes podem ser escritos como um arranjo nos arquivos de configura¸c˜ ao, o que permite configurar cada parˆ ametro com valores diferentes para cada simula¸c˜ ao. O The ONE j´ a possui alguns m´ odulos de relat´ orio prontos para uso, possibilitando a gera¸c˜ ao de relat´ orios relacionados a: Mensagens: n´ umero de mensagens criadas, tempo de entrega, mensagens expiradas, etc... Contatos: mostra os contatos entre os n´ os durante a simula¸c˜ ao. Conex˜ oes: mostra as mudan¸cas no estado das conex˜ oes. Com a modulariza¸c˜ ao do simulador novos m´ odulos de relat´ orio po-.
(34) 33 dem ser implementados permitindo que novos dados sejam coletados. 2.2.3. O mapa utilizado O mapa define o espa¸co e rotas nos quais os n´ os podem se mover. na simula¸c˜ ao. A Figura 8 mostra o mapa distribu´ıdo juntamente com o simulador. Trata-se do mapa do centro da cidade de Helsinki na Finlˆ andia. O mapa ´e separado em quatro partes e s˜ ao descritas em arquivos no formato WKT (Well Known Text) que ´e utilizado para representar vetorialmente objetos em mapas.. Figura 8 Mapa da ´ area central de Helsinki utilizado nas simula¸c˜ oes (KER¨ aNEN; OTT; K¨ aRKK¨ aINEN, 2009)..
(35) 34 2.3. Estado da Arte sobre Roteamento em Redes Oportunistas Segundo Nguyen e Giordano (2009), nas redes oportunistas, dispo-. sitivos m´ oveis transmitem mensagens explorando os contatos diretos, sem a necessidade de uma estrutura fim-a-fim como nas redes tradicionais. As desconex˜ oes e a alta taxa de rotatividade dos n´ os s˜ ao caracter´ısticas normais em redes oportunistas. Por isso, o roteamento ´e o principal desafio neste ambiente. A elimina¸c˜ ao da necessidade de construir caminhos simplifica muito o roteamento em redes oportunistas. Contudo, os desafios que surgem desta simplifica¸c˜ ao s˜ ao diferentes dos que ocorrem em m´etodos tradicionais de roteamento em redes convencionais. Um esquema de roteamento em OppNets deve prover os dados com alguma confiabilidade (o ideal seria prover dados com total confiabilidade) mesmo quando a conectividade da rede ´e intermitente ou quando um caminho fim-a-fim est´ a temporariamente n˜ ao dispon´ıvel. Em tais ambientes, protocolos de roteamento baseados em inunda¸c˜ ao (flooding) dominaram por algum tempo os estudos de novos m´etodos. Por´em, essa abordagem tende ter alt´ıssimo custo de consumo de energia e overhead de tr´ afego. Um fator que contribui para isso ´e que o buffer dos dispositivos s˜ ao limitados. Assim, utilizar um m´etodo que utilize a t´ecnica de inunda¸c˜ ao causaria uma alta taxa de perda de dados. O desempenho do roteamento ´e melhorado quando informa¸c˜ oes sobre a topologia da rede, ambiente e dos participantes s˜ ao explorados, isto ´e, as informa¸c˜ oes de contexto da rede. Nesta se¸c˜ ao ser´ a apresentada a taxinomia dos m´etodos propostos na literatura assim como uma revis˜ ao bibliogr´ afica desses m´etodos..
(36) 35 2.3.1. Taxinomia dos m´ etodos de roteamento Nesse trabalho ser´ a utilizada uma taxonomia dos m´etodos de rote-. amento mais simplificada utilizada por Nguyen e Giordano (2009). Essa taxonomia separa os m´etodos em classes descritas a seguir. Roteamento com contexto o ´bvio: s˜ ao protocolos de roteamento que utilizam t´ecnicas de flooding para efetuar o encaminhamento das mensagens. Roteamento baseado na mobilidade dos n´ os: as informa¸c˜ oes sobre os movimentos dos n´ os s˜ao utilizadas para determinar por qual n´ o ser˜ ao encaminhadas as mensagens. Roteamento baseado nas informa¸ co ˜es sociais: os contextos sociais dos portadores dos dispositivos s˜ ao recuperados e utilizados para determinar por qual n´ o as mensagens ser˜ ao encaminhadas. Nas se¸c˜ oes a seguir ser˜ ao discutidos os protocolos recentes encontrados na literatura. Para mais detalhes sobre esses protocolos o material apresentado por Cao e Sun (2012) pode ser consultado. 2.3.2. Roteamento com contexto o ´bvio M´etodos de roteamento baseados em flooding (inunda¸c˜ ao da rede. por meio da duplica¸c˜ ao de mensagens) pertencem ao grupo de algoritmos denominado contexto ´ obvio. Esse grupo utiliza t´ecnicas para controlar o flooding da solu¸c˜ ao. Utilizando as t´ecnicas de flooding, um n´ o envia uma mensagem para todos os outros n´ os vizinhos a ele. Cada n´ o que recebe a mensagem, repassa a mesma mensagem para todos os seus vizinhos, exceto.
(37) 36 para aquele que lhe enviou a mensagem. Cada mensagem repassada pode chegar ao seu destino por rotas e tempos diferentes. A vantagem desse m´etodo ´e a simplicidade para encontrar uma rota, n˜ ao ´e necess´ aria nenhuma informa¸c˜ ao global sobre a topologia da rede ou qualquer informa¸c˜ ao de contexto. Por´em, essa estrat´egia pode resultar em um congestionamento na rede pela quantidade de mensagens disseminadas. Al´em disso, o consumo de energia ´e alto, pois as mensagens s˜ ao transmitidas a todos os n´ os da rede. O desempenho da rede ´e particularmente importante em OppNets por causa das limita¸c˜ oes dos dispositivos. Uma t´ecnica utilizada para melhorar o desempenho do flooding ´e utilizar um contator para limitar o n´ umero de mensagens disseminadas na rede. Um exemplo dessa abordagem ´e apresentada por Vahdat e Becker (2000). Esta abordagem utiliza um campo Time-To-Live (TTL) para cada pacote. O algoritmo de roteamento Epidemic proposto, modifica o flooding tradicional. Cada n´ o mant´em uma lista de todas as mensagens que ele est´ a portando no momento, as quais as entregas ainda n˜ ao foram realizadas. Quando ele encontra algum outro n´ o, ambos trocam todas as mensagens que eles n˜ ao tˆem em comum e, desta forma, todas as mensagens s˜ ao espalhadas para todos os n´ os da rede. A mensagem ´e entregue quando o primeiro n´ o que porta uma c´ opia da mensagem encontra o destinat´ ario. A mensagem continuar´ a a ser copiada at´e que seu TTL expire. Outra abordagem para rotear pacotes em redes esparsas ´e controlar a replica¸c˜ ao utilizando a t´ecnica de spraying. No algoritmo Spray and Wait (SPYROPOULOS; PSOUNIS; RAGHAVENDRA, 2005), um n´ umero pequeno e fixo de c´ opias da mensagem ´e distribu´ıdo para um n´ umero de n´ os distintos (spraying). A partir desse momento, cada n´ o carrega a mensa-.
(38) 37 gem at´e que o destino seja encontrado ou at´e que o TTL do pacote expire. Por ter m´ ultiplos n´ os procurando pelo destinat´ ario independentemente e em paralelo, esse protocolo cria uma diversidade suficiente para explorar a rede, reduzindo assim a quantidade de recursos utilizados para transportar os pacotes. Utilizar t´ecnicas para controlar o flooding torna esse m´etodo mais eficiente, mas n˜ ao remove completamente a necessidade de replica¸c˜ ao das mensagens. Esse ponto faz com que a eficiˆencia desse m´etodo seja prejudicada, pois aumenta consideravelmente o consumo de recursos e pode causar congestionamento no tr´ afego da rede. O m´etodo proposto neste trabalho n˜ ao utilizar´ a t´ecnicas de flooding o que evitar´ a um alto consumo de recursos da rede. As mensagens ser˜ ao encaminhadas n´ o a n´ o at´e que o destinat´ ario seja alcan¸cado, evitando assim a replica¸c˜ ao desnecess´ aria das mensagens. 2.3.3. Roteamento baseado na mobilidade dos n´ os Protocolos de roteamento que se baseiam na mobilidade dos n´ os ex-. ploram as informa¸c˜ oes de contexto para determinar qual ´e o melhor n´ o para o qual um pacote deve ser encaminhado. A mobilidade dos n´ os impacta na eficiˆencia do roteamento em OppNets. Grossglauser e Tse (2002) provaram que a mobilidade incrementa o desempenho de redes Ad Hoc, especialmente no roteamento de mensagens quando t´ecnicas eficientes s˜ ao aplicadas. O m´etodo Probabilistic Routing (PRoPHET) proposto por Lindgren, Doria e Schel´en (2003) calcula a previsibilidade de entrega de uma mensagem de um n´ o para um destinat´ ario particular observando o hist´ orico de contatos, e encaminha a mensagem se e somente se aquele n´ o vizinho tem uma alta previsibilidade de entrega. O PRoPHET utiliza a “hist´ oria dos.
(39) 38 encontros e transi¸c˜ oes passadas” para estimar a probabilidade de entrega de um determinado n´ o para outro n´ o. A previsibilidade de entrega ´e a probabilidade de um n´ o encontrar um determinado destinat´ ario. Ela aumenta quando o n´ o encontra frequentemente o destinat´ ario e diminui caso contr´ ario. A informa¸c˜ ao de contexto utilizada pelo PRoPHET ´e a frequˆencia de encontros entre os n´ os, como ´e tamb´em visto nos protocolos MV (Meeting and Visits) e MaxProp (BURNS; BROCK; LEVINE, 2005; BURGESS et al., 2006). Um n´ o utiliza o MaxProp para efetuar a transmiss˜ ao de pacotes para seus pares e determinar quais pacotes dever˜ ao ser removidos quando seu buffer estiver quase cheio. Os pacotes s˜ ao enviados para seus pares de acordo com os hist´ oricos de dados que permitem calcular a probabilidade de um par conter um caminho para o destinat´ ario. No protocolo MobySpace proposto por Leguay et al. (2006), os padr˜ oes de movimento dos n´ os s˜ ao as informa¸c˜ oes de contexto que o n´ o fonte utiliza para efetuar o roteamento das mensagens. Ele confia na suposi¸c˜ ao que um n´ o ´e um bom candidato para repassar a mensagem se ele possuir um padr˜ ao de movimento similar ao padr˜ ao do destinat´ ario. O roteamento ´e feito encaminhando as mensagens para n´ os que possuem um padr˜ ao cada vez mais similar ao padr˜ ao do destinat´ ario. Para trabalhar com os padr˜ oes de movimento dos n´ os, um espa¸co Euclidiano virtual ´e usado, onde cada eixo representa um contato poss´ıvel entre dois n´ os e a distˆ ancia ao longo de um eixo mede a probabilidade em que o contato pode ocorrer. Ghosh, Philip e Qiao (2005) prop˜ oem um protocolo baseado em uma infraestrutura pr´e-definida, como lugares em que os portadores de dispositivos frequentam constantemente. Eles s˜ ao chamados de hubs. Esse m´etodo.
(40) 39 tem a vantagem de utilizar os perfis de mobilidade do usu´ ario para executar um roteamento baseado em hub-level. Com o protocolo Solar-Hub, a mensagem de um n´ o para outro ´e roteada para um ou mais hubs frequentemente visitados pelo destinat´ ario, onde o destinat´ ario poder´ a obter a mensagem quando visitar os mesmos hubs novamente. Nesse cen´ ario, ´e necess´ ario que o n´ o conhe¸ca sobre os lugares visitados pelo destinat´ ario. A Figura 9 exemplifica um ambiente para o protocolo. Esse protocolo ´e similar ao desenvolvido neste trabalho, uma an´ alise das diferen¸cas entre eles ser´ a realizada posteriormente. HUB Nível 1 - Comunicação Intra-Hub. Bar. HUB Local de trabalho. HUB Residência. Escritório. Cantina. Quartos. Cozinha. Sala de reuniões. Sala de estar. Nível 2 - Comunicação Inter-Hub. Figura 9 Exemplo de um ambiente par ao protocolo Solar-Hub. Fonte: (GHOSH; PHILIP; QIAO, 2005). Diferentemente do Spray and Wait (SPYROPOULOS; PSOUNIS; RAGHAVENDRA, 2005), na fase Focus do protocolo Spray and Focus (SPYROPOULOS; PSOUNIS; RAGHAVENDRA, 2007), al´em de aguardar para que o destinat´ ario seja encontrado, cada n´ o pode encaminhar sua c´ opia da mensagem para um n´ o potencialmente mais apropriado, utilizando.
(41) 40 para isso um m´etodo denominado utility-based. Os potenciais n´ os s˜ ao selecionados sobre um conjunto de rel´ ogios que armazenam o intervalo de tempo desde que dois n´ os se encontraram pela u ´ltima vez. Utilizar o u ´ltimo encontro como crit´erio para efetuar o encaminhamento de mensagens tamb´em est´ a presente no m´etodo proposto por Grossglauser e Vetterli (2003). Nesse m´etodo, a mobilidade ´e explorada para disseminar informa¸c˜ oes sobre a localiza¸c˜ ao do destinat´ ario. Cada n´ o mant´em um banco de dados com os tempos e locais de seus u ´ltimos encontros. Esse banco de dados ´e consultado para obter estimativas da localiza¸c˜ ao dos destinat´ arios das mensagens. Como o pacote ´e transportado pela rede, ´e poss´ıvel refinar a busca sucessivamente para obter uma melhor estimativa da localiza¸c˜ ao. As informa¸c˜ oes de contexto utilizadas no protocolo Bubble Rap (HUI; CROWCROFT; YONEKI, 2011) s˜ ao as comunidades sociais as quais os n´ os pertencem. As comunidades s˜ ao automaticamente definidas e rotuladas baseando-se nos padr˜ oes de contatos entre os n´ os. Quando um n´ o deseja enviar um mensagem a outro n´ o ele procura por n´ os que pertencem a mesma comunidade do destinat´ ario. Caso tais n´ os n˜ ao sejam encontrados, a mensagem ´e encaminhada para incrementar os n´ os soci´ aveis, os quais tˆem maiores chances de entrar em contato com a comunidade do destinat´ ario. O n´ıvel de socializa¸c˜ ao de um n´ o ´e definido por um conjunto de pares que o n´ o entra usualmente em contato. CAR (Adaptive Routing for Intermittently Connected Mobile Ad Hoc Networks) proposto por Musolesi, Hailes e Mascolo (2005) utiliza filtros de Kalman para combinar e avaliar as m´ ultiplas dimens˜ oes do contexto para efetuar decis˜ oes sobre o roteamento. O contexto ´e composto por mensura¸c˜ oes realizadas frequentemente pelos n´ os, as quais podem estar relacionadas.
(42) 41 com a conectividade, mas n˜ ao necessariamente. As conex˜ oes acontecem dentro de redes MANETs (Mobile Ad Hoc Networks), para alcan¸car n´ os fora de uma rede MANET um n´ o interessado em enviar uma mensagem ir´ a procurar pelo n´ o com maior probabilidade de sucesso para entregar a mensagem ao destinat´ ario, ou seja, o n´ o que tem um padr˜ ao de movimento no qual o n´ o destinat´ ario ´e frequentemente encontrado. Ent˜ ao o n´ o escolhido armazena temporariamente a mensagem, aguardando entrar em contato com o destinat´ ario ou entrar em uma nuvem com outros n´ os com maior probabilidade de encontrar o destinat´ ario. Al´em disso, os n´ os calculam a probabilidade de entrega pr´ oativamente, e as disseminam em suas pr´ oprias nuvens. A utiliza¸c˜ ao dos padr˜oes de movimento para determinar os pr´ oximos saltos de uma mensagem torna-se importante, j´ a que em redes oportunistas a movimenta¸c˜ ao dos n´ os ´e inevit´ avel. Os m´etodos apresentados nessa se¸c˜ ao utilizam esses padr˜ oes para efetuar a sele¸c˜ ao do pr´ oximo n´ o a ser utilizado para o repasse da mensagem. Dentre esses m´etodos dois destacam-se: Solar-Hub proposto por Ghosh, Philip e Qiao (2005) e Bubble Rap proposto por Hui, Crowcroft e Yoneki (2011). Esses m´etodos possuem uma similaridade que ´e o estabelecimento de pontos para efetuar o encaminhamento das mensagens. No Solar-Hub n˜ ao s˜ ao utilizados hubs pr´e-definidos enquanto no Bubble Rap esses pontos s˜ ao definidos automaticamente, mas possui a desvantagem de serem fixos. O m´etodo proposto neste trabalho utilizar´ a a jun¸c˜ ao do Solar-Hub e do Bubble Rap que permite que hubs sejam estabelecidos automaticamente para troca de informa¸c˜ oes de contexto entre os n´ os. Assim, n˜ ao ´e necess´ ario que os hubs sejam pr´efixados como ´e feito no protocolo Solar-Hub. As comunidades sociais apresentadas pelo protocolo Bubble Rap ser˜ ao estabele-.
(43) 42 cidas no momento em que um novo hub ´e criado e desfeitas quando o hub ´e destru´ıdo. Essa t´ecnica permite que o protocolo se adapte ao ambiente caso haja altera¸c˜ oes no comportamento da rede, como o surgimento de outro hub. 2.3.4. Roteamento baseado nas informa¸ co ˜es sociais A principal diferen¸ca entre os protocolos baseados em informa¸c˜ oes de. contexto social e os baseados na mobilidade dos n´ os ´e que esse u ´ltimo utiliza os padr˜ oes de movimento dos n´ os, as informa¸c˜ oes sobre os dispositivos ou o hist´ orico de contatos entre os n´ os. Protocolos que utilizam o contexto social n˜ ao exploram somente as informa¸c˜ oes sobre a mobilidade dos n´ os, mas tamb´em os aspectos sociais nos quais os n´ os est˜ ao envolvidos. Assim, o relacionamento social dos portadores dos dispositivos tem um papel importante na forma em que os n´ os podem encontrar-se. A vantagem dessa abordagem ´e que ela ´e mais geral do que as abordagens que utilizam as informa¸c˜ oes sobre mobilidade. Esses protocolos de roteamento podem ser utilizados com qualquer conjunto de informa¸c˜ oes de contexto, e assim eles podem facilmente serem personalizados para oferecer um servi¸co melhor para determinado ambiente. O protocolo HiBOp proposto por Boldrini et al. (2007) utiliza um conjunto de informa¸c˜ oes que descreve o perfil do n´ o e o hist´ orico dos relacionamentos sociais com outros n´ os. Em cada n´ o, as informa¸c˜ oes utilizadas para construir o contexto podem ser pessoais como o nome e endere¸co do usu´ ario. Os n´ os compartilham seus pr´ oprios dados durante os contatos e assim aprendem o contexto em que est˜ ao interessados. O protocolo assume que cada n´ o armazena localmente uma tabela denominada Identity Table.
(44) 43 (IT) que cont´em as informa¸c˜oes pessoais do usu´ ario portador do dispositivo. As ITs s˜ ao trocadas entre os n´ os quando eles entram em contato. Assim, cada n´ o possui sua pr´ opria tabela e um conjunto de tabelas de seus vizinhos que representa o contexto atual que prover´ a as informa¸c˜ oes para efetuar o roteamento. A segunda informa¸c˜ ao de contexto utilizada pelo HiBOp ´e o hist´ orico de contatos. Mesmo se um n´ o n˜ ao ´e um bom candidato para encaminhar mensagens por causa de seu contexto atual, ele ainda pode ser um bom candidato por causa de seus h´ abitos e experiˆencias passadas. Baseandose na suposi¸c˜ ao de que os humanos s˜ ao, em sua maior parte do tempo, “previs´ıveis”, ´e importante coletar informa¸c˜ oes hist´ oricas sobre cada n´ o e a recorrˆencia das mesmas no contexto atual. Cada atributo do contexto atual ´e armazenado na History Table, em conjunto com a probabilidade de encontrar o mesmo atributo no futuro. A principal ideia do HiBOp para encaminhar mensagens ´e procurar por n´ os que mostram uma maior similaridade com os atributos do contexto do destinat´ ario. Uma alta similaridade entre o contexto do n´ o e do destinat´ ario significa uma alta probabilidade que o n´ o tem para carregar a mensagem at´e a comunidade do destinat´ ario. Al´em disso, um n´ o que deseja enviar um mensagem utilizando o HiBOp especifica qualquer conjunto da IT do destinat´ ario no cabe¸calho da mensagem. Qualquer n´ o entre o n´ o fonte e o destino ´e questionado sobre a sua similaridade dos atributos, e encaminha a mensagem se algum n´ o possuir uma similaridade maior que a do portador da mensagem. No protocolo Propicman proposto por Nguyen, Giordano e Puiatti (2007), a informa¸c˜ ao de contexto de cada n´ o ´e representada por um conjunto.
(45) 44 de pares ordenados chamado de node profile, que cont´em pares evidˆencia - valor. Para cada evidˆencia ´e associado um peso que representa a sua importˆ ancia na rede. Por raz˜ oes de seguran¸ca, cada node profile cont´em o hash de cada par ordenado de evidˆencia e valores. Quando um n´ o S deseja enviar uma mensagem M para um n´ o D, ele enviar´ a para seus vizinhos o cabe¸calho da mensagem denominado hM . Esse cabe¸calho cont´em informa¸c˜ oes sobre o n´ o destinat´ ario, as quais foram inforos vizinhos madas pelo n´ o que enviou a mensagem. hM ´e encaminhado aos n´ que est˜ ao a dois saltos de distˆ ancia do n´ o S. Baseado nessa informa¸c˜ ao e em seus node profiles, os n´ os vizinhos calculam sua probabilidade de entrega (DP). S ent˜ ao enviar´ a a mensagem M somente ao vizinho que est´ a a dois saltos de distˆ ancia com um valor de DP maior que o valor do portador da mensagem. Ap´ os enviar o conte´ udo da mensagem, o n´ o S mant´em uma c´ opia da mensagem para o pr´ oximo eventual encontro. O protocolo SpatioTempo (NGUYEN; GIORDANO, 2008) ´e derivado do protocolo Propicman e tamb´em utiliza informa¸c˜ oes de contexto como os node profiles para calcular o DP de n´ os para destinat´ arios. O encaminhamento de mensagens ´e efetuado como no Propicman: o n´ o que deseja enviar uma mensagem primeiramente envia o cabe¸calho da mensagem que cont´em algumas informa¸c˜ oes sobre o destinat´ ario. Os vizinhos que est˜ ao a dois saltos de distˆ ancia calculam seus pr´ oprios DPs baseados em sua similaridade com as informa¸c˜ oes de contexto do destinat´ ario e retorna os resultados obtidos para o n´ o portador da mensagem. O n´ o portador ir´ a selecionar o vizinho a dois saltos de distˆ ancia que possui um DP maior que o seu pr´ oprio para efetuar o encaminhamento da mensagem. O m´etodo SpatioTempo ´e o primeiro a utilizar informa¸c˜ oes de con-.
(46) 45 texto temporais. Nesse m´etodo, as atividades humanas s˜ ao divididas em duas categorias principais: comportamentos peri´ odicos e n˜ ao peri´ odicos. Os comportamentos peri´ odicos incluem atividades que ocorrem frequentemente, s˜ ao atividades rotineiras de um indiv´ıduo, por exemplo, ir a` escola toda manh˜ a. Os comportamentos n˜ ao peri´ odicos s˜ ao todas as outras atividades que acontecem raramente, por exemplo, trabalhar em um feriado. Al´em disso, os autores consideram profundamente a rela¸c˜ ao social entre os usu´ arios. Eles observam o frequente contato entre pessoas e outros contatos ocasionais. Com essas informa¸c˜ oes o protocolo SpatioTempo pode classificar os destinos em dois tipos: destinos frequentes e destinos ocasionais. Para destinos ocasionais, os autores prop˜ oem o uso do protocolo Propicman, j´ a que seu esquema ´e eficiente em casos onde n˜ ao h´ a suporte para informa¸c˜oes sobre quando e para onde enviar a mensagem para um tipo espec´ıfico de destino. Para destinos frequentes, o protocolo SpatioTempo introduz os conceitos de ciclos e per´ıodos das atividades que o portador do dispositivo pode realizar. Em certos per´ıodos, os portadores podem encontrar indiv´ıduos espec´ıficos, por exemplo, colegas de classe, em outro per´ıodo ele raramente encontra outros indiv´ıduos. Essa regularidade pode ajudar os dispositivos portadores de mensagens a encontrar a melhor forma para enviar uma mensagem para um destino espec´ıfico. O protocolo desenvolvido utiliza o hist´ orico de contato, armazenando a posi¸c˜ ao geogr´ afica, tempo e identificador do n´ o para realizar o roteamento. Esse m´etodo assemelha-se ao m´etodo utilizado pelo protocolo HiBOp, por´em as tabelas geradas s˜ ao transferidas apenas para n´ os que est˜ ao em regi˜ oes geogr´ aficas denominadas hubs. Cada n´ o mant´em uma tabela que ´e proces-.
(47) 46 sada periodicamente excluindo as informa¸c˜ oes antigas. Diferentemente dos protocolos Propicman e SpatioTempo, as informa¸c˜ oes coletadas n˜ ao possuem apenas um par evidˆencia - valor. Tamb´em s˜ ao considerados o tempo em que a informa¸c˜ ao foi coletada e tamb´em sua recorrˆencia. As tabelas com as informa¸c˜ oes s˜ ao trocadas quando um n´ o encontra-se com um hub que ´e respons´ avel por gerar uma tabela de roteamento vinculada ` aquele hub. O roteamento ´e efetuado somente ap´ os todos os hubs da rede possu´ırem em sua tabela de roteamento uma entrada para o destinat´ ario de uma mensagem. Baseando-se no padr˜ ao de movimento sociol´ ogico ´e poss´ıvel realizar rotas entre hubs para realizar o encaminhamento de mensagens. O roteamento poder´ a ser realizado hub a hub at´e que a mensagem seja entregue ao destinat´ ario. Cada entrada das tabelas de roteamento presentes nos hubs possuem uma coluna que representa a qualidade de uma rota (fitness), esse valor ´e atualizado periodicamente favorecendo as rotas que s˜ ao constantemente utilizadas e torna inutiliz´ avel as demais. Para uma taxonomia com mais detalhes o trabalho de Cao e Sun (2012) poder´ a ser consultado. A Figura 10 representa a ´ arvore de classifica¸c˜ ao dos protocolos, por´em essa classifica¸c˜ ao ´e muito extensa e detalhada e por isso n˜ ao foi utilizada neste trabalho..
(48) Inundação. Figura 10 Taxonomia proposto por Cao e Sun (2012), Técnica utilizando código. Replicação tola. Nó Móvel conável. Roteamento sem assistência de infraestrutura. Predição de um salto. Roteamento Multicast. Menor caminho com variação do tempo. Híbrido. Roteamento Anycast. Spray aprimorado. Relacionamento social. Replicação de utilidade. Controle de congetionamento. Encaminhamento de utilidade. Espalhamento de nós estácionários. Roteamento com assistência de infraestrutura. Roteamento direcionado (Unicast). Roteamento em DTNs e Redes Oportunistas. Epidêmico aprimorado. Técnica utilizando código. 47.
(49) 48 3. METODOLOGIA Para efetuar o roteamento em uma OppNet foi implementado um. protocolo que utiliza as caracter´ısticas da rede para realizar a troca de mensagens. O protocolo utiliza a abordagem store-carry-forward (NGUYEN; GIORDANO, 2009) para efetuar a entrega de mensagens na rede. Al´em disso, as informa¸c˜ oes de contexto como hist´ orico de encontros e movimenta¸c˜ ao dos n´ os s˜ ao utilizadas para formar a rota correta ao destinat´ ario. O m´etodo apresenta diferen¸cas significativas sobre os m´etodos presentes na literatura. A principal diferen¸ca e mais importante ´e o estabelecimento de pontos de acessos automaticamente. Um ponto de acesso ´e alguma regi˜ ao geogr´ afica onde h´ a uma grande concentra¸c˜ ao de n´ os que podem agregar-se e formar um hub. Com essa pequena rede local ´e poss´ıvel realizar o compartilhamento de informa¸c˜ oes entre os n´ os da rede, permitindo ter acesso a informa¸c˜ oes essenciais de contexto para efetuar o roteamento de mensagens. Al´em dessas informa¸c˜ oes, os n´ os mantˆem um hist´ orico que conter´ a informa¸c˜ oes sobre localidades e contatos com outros n´ os que ocorreram recentemente. Essa informa¸c˜ ao ´e necess´ aria para formar rotas, pois cont´em dados sobre os u ´ltimos hubs em que o n´ o esteve presente. A troca de informa¸c˜oes de contexto entre os n´ os ´e feita quando os mesmos encontram-se com hubs, que coletar´ a as informa¸c˜ oes necess´ arias e formar´ a tabelas de roteamento. Quando algum n´ o da rede necessita enviar alguma mensagem, ele a entregar´ a a algum hub que efetuar´ a o roteamento baseado em suas tabelas de roteamento. Nesta se¸c˜ ao ser´ a apresentada a vis˜ ao geral do protocolo e detalhes de sua implementa¸c˜ ao..
(50) 49 3.1. Vis˜ ao geral do protocolo GrubiRouter O protocolo de roteamento desenvolvido e denominado GrubiRouter. utiliza os padr˜ oes de movimento sociol´ ogico para efetuar o roteamento de mensagens. Em meio a esse modelo de movimento existem n´ os m´ oveis movimentando-se periodicamente entre pontos fixos espec´ıficos (escrit´ orios, casas, restaurantes, etc.). Utilizando estas informa¸c˜ oes ´e poss´ıvel reconhecer as rotas e determinar quais n´ os realizam as mesmas rotas frequentemente e desta forma realizar o roteamento de mensagens. A Figura 11 mostra a vis˜ ao geral do protocolo de roteamento desenvolvido, o qual ser´ a explicado com mais detalhes a seguir. Hubs virtuais. Nós móveis. Processar histórico. Coleta Informações Transferir informações. Armazena histórico de posicionamento. Reconhece hubs. Processar Informações. Gera ou atualiza a tabela de roteamento. Roteamento. Nova mensagem. Tranferir para hub. Realizar forward através do melhor nó móvel. Figura 11 Vis˜ ao geral do protocolo desenvolvido.. Consulta tabela de roteamento.
Documentos relacionados