You are on page 1of 40

Trabalho de Formatura Supervisionado - MAC0499

Redes Tolerantes a Atrasos, Protocolos de Disseminao e Aplicaes

Adriano Tabarelli Caio Cestari Silva (Prof. Orientador: Alfredo Goldman vel Lejbman)

So Paulo, 30 de novembro de 2009

Sumrio

Introduo Observaes Importantes 1 Redes Tolerantes a Atrasos[OMR+ 07]


1.1 Premissas 1.1.1 1.1.2 1.2 1.3 1.4 1.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representao Simplicada de Redes Estticas . . . . . . . . . . . . Redes Mveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 4 5
5 5 5 6 7 7 8

Origem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Denio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Situaes-Problema no contexto das

DTNs

. . . . . . . . . . . . . . . . . .

2 Protocolos de Disseminao
2.1 Probabilsticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 2.1.2 2.1.3 2.2 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diculdades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10
10 10 11 11 13 14 14 14

No-Probabilsticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 2.2.2 2.2.3 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Diculdades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 O Simulador ONE [KOK09]


3.1 3.2 3.3 Funcionamento e Caractersticas . . . . . . . . . . . . . . . . . . . . . . . . Detalhes da Implementao . . . . . . . . . . . . . . . . . . . . . . . . . .

18
18 20 21

Interface

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Aplicaes na Comunicao interveicular


4.1 4.2 4.3 Dispositivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Simulaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 4.3.2 4.3.3 Representando mapas com

23
23 24 25 25 27 28

OpenJUMP [ope]

. . . . . . . . . . . . .

Diculdades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cenrios de Simulao . . . . . . . . . . . . . . . . . . . . . . . . .

4.3.4

Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

5 Resumo das Atividades Realizadas A Parte Subjetiva - Caio Cestari Silva


A.1 A.2 A.3 A.4 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disciplinas Relevantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32 34
34 34 35 36

Facilidades e Diculdades Projetos Futuros

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B Parte Subjetiva - Adriano Tabarelli


B.1 B.2 B.3 B.4 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disciplinas Relevantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37
37 37 38 39

Facilidades e Diculdades Projetos Futuros

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Introduo
Mobilidade: palavra-chave que rege uma crescente parcela das comunicaes do mundo contemporneo. As trocas de informaes no apenas seguem a estrutura esttica, xa ao longo do tempo - tudo dinmico, se movimenta, tem novas regies de alcance, perde conexo com certas reas, troca dados com mltiplas origens e destinos, desconecta-se, inserido em uma nova rede... Comunicaes interespaciais so um exemplo disso; nem sempre possvel trocar dados com um satlite que orbita um certo planeta, pois pode no haver sinal de transmisso e recepo para que a comunicao ocorra com sucesso. Porm, possvel determinar

certos perodos em que dados podem ser recebidos e enviados sem interrupes, devido ao carter cclico e conhecido das rbitas e dos movimentos de rotao e translao dos astros. Nesse cenrio, nota-se a intermitncia que pode ocorrer com as conexes. As antigas modelagens para as redes, com as conexes e os ns conhecidos, xos, imutveis, j so insucientes para expressar o novo contexto que surge devido mobilidade. Entra em cena um novo elemento, fator que passa a alterar inmeras vezes a estrutura de uma mesma rede: o tempo. Dessa forma, somando conexes ao tempo e instabilidade, obtemos uma representao que consegue aliar os trs fatores e representlos de forma concisa e teorizada: as Redes Tolerantes a Atrasos e Desconexes (

DTNs ),

nas quais possvel visualizar todos os elementos de uma rede num determinado instante de tempo e determinar a dinmica de conexes ali existente. Caracterizada a nova representao para as redes, um outro cenrio de mobilidade muito estudado e aplicado de forma realista o da comunicao interveicular. Nele, o

objetivo transmitir a veculos dados sobre condies do trnsito em rodovias, ocorrncia de acidentes, informaes sobre condies adversas na pista, dentre outros; como o objetivo atingir o maior nmero de veculos no menor tempo possvel, temos um novo elemento neste cenrio: o roteamento (encaminhamento) dos dados. Como modelar a situao de uma rodovia utilizando-se os conceitos das Redes Tolerantes a Atrasos e Desconexes? Quais os elementos que dicultam essa modelagem? Qual o melhor mtodo de rotear os dados para uma melhor abrangncia? So necessrios ns externos ao sistema para garantir maior conabilidade no espalhamento dos dados? As tecnologias existentes conseguem garantir transmisso convel e rpida de informaes? Todas essas questes, que emergem com o estudo aprofundado desse tema, procuraram ser respondidas de forma heurstica, com base terica, e os dados obtidos so apresentados nesse Trabalho de Concluso de Curso.

Observaes Importantes
A origem do estudo do tema deste Trabalho de Concluso de Curso um grupo de Iniciao Cientca, de mesmo professor orientador. O projeto composto pelos dois integrantes que compuseram esta monograa, alm de Cssia Garcia Ferreira, Paulo Henrique Floriano e Csar Gamboa Machado, que compuseram outras monograas com o mesmo tema-base, aprofundando-se em outros assuntos especcos. Os dados tcnicos reais que levaram aos resultados obtidos so fruto de uma parceria com o IPT (Instituto de Pesquisas Tecnolgicas), vinculado bolsa FIPT (Fundao de Apoio ao Instituto de Pesquisas Tecnolgicas), por intermdio do pesquisador Alessandro Santiago. Alguns resultados parciais obtidos com a pesquisa, alm dos constantes nesta monograa, conceberam um artigo apresentado na Lapnia, em agosto de 2009, e tiveram apoio da professora doutora Luciana Arantes, da Universidade Paris 6, na Frana. tados foram apresentados em um Os resul-

Workshop

de Comunicao Extrema, o

ExtremeCom

2009, somado a vrios outros tpicos sobre Redes Tolerantes a Atrasos e Desconexes. Antes do trmino de 2009, outros artigos pretendem ser enviados ao Simpsio Brasileiro de Computadores e Sistemas Distribudos (SBRC); um destes especco sobre o tema desta monograa e outro abrange algoritmos desenvolvidos para serem aplicados s e, possivelmente, uma anlise do compromisso entre eles.

DTNs

+ Redes Tolerantes a Atrasos[OMR 07]

1.1 Premissas
Alguns conceitos e idias so necessrios para que se compreenda o ambiente das Redes Tolerantes a Atrasos, e estas premissas tm o papel de preencher qualquer lacuna terica existente nesse sentido.

1.1.1 Representao Simplicada de Redes Estticas


Uma rede convencional (esttica) pode ser representada por um simples grafo. Cada dispositivo representado por um n e a existncia de conexo entre um par de ns representada por uma aresta. Devido perenidade da rede, um grafo que a representa constante ao longo do tempo. Como exemplo, tomemos uma rede no modelo ClienteServidor, em que os clientes no trocam dados diretamente entre si; seja o conjunto formado pelos clientes apenas pelo servidor

a, b ,

c,

e seja

o conjunto unitrio dos servidores, formado e pelas arestas

s.

O grafo

{a s, b s, c s},

ou seja,

G formado pelos ns N = S C G = (N, E), representado abaixo:

E =

b c

Figura 1: Grafo

representando uma simples rede Cliente-Servidor

1.1.2 Redes Mveis


H dois tipos de redes mveis existentes: as infra-estruturadas e as do-se basicamente pelo nvel de conhecimento da rede por cada n. Ao passo em que nas redes infra-estruturadas existe um servidor de dados que prov informaes sobre a localizao de todos os ns para algum elemento que as necessite, as redes

ad-hoc, diferencian-

ad-hoc

so caracterizadas pelo conhecimento local de cada n sobre seus vizinhos,

podendo apenas comunicar-se com estes para transmitir dados.

Antena P Celular S

a b

Conexo Direta Possvel

c
Celular T

d
(b)

(a)

Figura 2: Celulares em Redes Infra-Estruturadas e

Ad-Hoc

No exemplo acima, embora o celular o celular

possa comunicar-se via voz (trocar dados) com

diretamente, pois esto muito prximos, necessrio o intermdio da antena

para que

saiba a localizao exata de

na rede em que esto inseridos. J para a

transmisso via

Bluetooth,

que usa ondas de rdio de curto alcance para enviar dados,

isto no necessrio.

1.2 Origem
A evoluo das redes de computadores nas ltimas dcadas foi to importante quanto a prpria evoluo dos computadores. A crescente necessidade de comunicao entre

mquinas impulsionou o desenvolvimento das redes, com a implementao de novos meios fsicos de transmisso de informao e a utilizao de protocolos de comunicao adequados. Nas redes clssicas ou convencionais, cada computador (ou qualquer dispositivo eletrnico habilitado a trocar informaes com outros dispositivos) depende de uma continuidade de conexo com outro computador para que ocorra a comunicao entre eles; a perenidade da conexo possibilitada pela inexistente mobilidade dos dispositivos a ela conectados Contudo, os dispositivos que possuem alta mobilidade so muito comuns, e o modelo clssico de rede no se aplica a eles de forma adequada. Como os ns mveis podem sofrer conexes e desconexes bastante frequentes devido a diversos fatores (distncia, queda de energia, defeitos, movimentao aleatria, etc.), necessria a criao de um modelo de rede que suporte de forma satisfatria essas constantes conexes/desconexes entre os dispositivos. nesse contexto que surgem as Redes Tolerantes a Atrasos.

1.3 Denio
DTN, Delay-And-Disruption Tolerant Network, ou Rede Tolerante a Atrasos e Desconexes, uma rede ad-hoc, ou MANET (Mobile Ad-Hoc Network ), composta por
Uma conexes sem o entre os ns, que se auto-congura de acordo com a insero e remoo de novos ns em sua estrutura. Alm disso, consegue comportar-se de forma adequada mesmo com desconexes repentinas ou atrasos na transmisso de dados entre dois ns. H trs principais mecanismos responsveis por tornar adequado o comportamento de uma DTN:

Custdia de mensagens:
s
at um destino

se uma mensagem

precisa ser enviada de uma origem

t,

que no est disponvel no mesmo instante de tempo do envio,

tal mensagem custodiada (entregue como cpia) a ns intermedirios que se encarregam de entreg-la ao n de destino (ver abaixo);

M s 1-2

M' a 3 M'' b 5

M''' t

Figura 3: Custdias da mensagem M em M' e M, nos ns

a e b, at entrega no instante 5

Protocolos de roteamento especcos:

devido ao baixo ou nulo conhecimento

da rede em cada instante, os protocolos de roteamento so diferenciados, assumindo estratgias de custdia xas ou ainda analisando o comportamento da rede para prever as melhores custdias a cada instante, e;

Periodicidade:

pelo carter aleatrio da movimentao dos ns, necessrio as-

sumir alguma periodicidade em seu comportamento para que haja alguma representao num intervalo de tempo nito da rede, isto , para que no haja innitas conguraes em um mesmo sistema.

1.4 Representao
Os grafos tradicionais, que conseguem representar a situao das redes estticas, j no mais contm elementos que podem representar com delidade o cenrio das

DTNs.

Como

o fator principal de alterao da topologia da rede o tempo, insere-se esse elemento na

estrutura de um grafo tradicional, resultando em um ento, composta por:

grafo evolutivo.

Sua estrutura,

Ns - Elementos receptores, transmissores e armazenadores de informao; Arestas - Conexes entre os ns, vias de transmisso de informaes, e; Tempo - Caracterizando os perodos de existncia das arestas.

Em termos mais tericos, um grafo evolutivo uma coleo de subgrafos de um certo grafo, indexada, representando a situao das arestas e dos ns naquele dado ndice de tempo. Denota-se um grafo evolutivo por

G = (G, SG ), onde G = (V, E) um grafo com V ns e E arestas, SG = {G0 , G1 , ..., Gi }, (i N), um conjunto de subgrafos de G, onde o ndice i representa o instante de tempo, e a unio de todos os subgrafos resulta em G.

Figura 4: Representao de um grafo evolutivo

1.5 Situaes-Problema no contexto das DTNs


Em diversas situaes reais os conceitos de Redes Tolerantes a Atrasos podem ser empregados. Apesar da vasta abrangncia da Internet atualmente, diversas regies do

mundo ainda permanecem relativamente isoladas quando se trata de conectividade com redes maiores ou com a prpria Internet. Fatores econmicos e fsicos podem contribuir para que uma regio remota no disponha de acesso a rede de forma contnua; apesar disso, o acesso informao e comunicao com outras localidades de natural interesse dos povos que vivem em regies remotas. Uma alternativa encontrada para contornar tal problema de isolamento a mula de dados, que nada mais do que um meio de transporte

qualquer, capaz de carregar algum dispositivo de armazenamento de dados e desloc-lo entre vrias localidades, isoladas ou no. As informaes so carregadas pelo dispositivo de armazenamento em uma localidade de origem e transportadas at uma localidade de destino. Outra situao em que as Redes Tolerantes a Atrasos so de grande relevncia na comunicao interespacial. A conexo com satlites em rbita, estaes, naves espaciais, sondas interplanetrias e telescpios depende da movimentao destes elementos e dos prprios movimentos dos corpos celestes. As rotaes e translaes de planetas, estrelas e satlites naturais podem eventualmente gerar conexes e desconexes com centros localizados na Terra. Este cenrio de mobilidade e frequentes conexes/desconexes tpico das Redes Tolerantes a Atrasos.

Figura 5: Diferentes situaes de conexo no ambiente interespacial

O escopo do nosso trabalho, entretanto, encontra-se na comunicao interveicular. J existem tecnologias disponveis com a capacidade de transmitir informaes de um meio externo para um veculo qualquer. No entanto, o desao e alvo de diversos estudos atualmente a comunicao entre os prprios veculos, atuando tanto como receptores quanto retransmissores e/ou geradores de informaes. A utilidade de uma tecnologia

deste tipo dinamizar a transmisso de dados bsicos e at mesmo crticos do trfego rodovirio, tais como localizao de acidentes, danos na pista, condies meteorolgicas, etc. Como os veculos tm uma alta mobilidade, a comunicao entre eles tambm

passvel de frequentes conexes/desconexes, caracterizando um timo cenrio para a aplicao dos conceitos de Redes Tolerantes a Atrasos.

Protocolos de Disseminao
Em redes intermitentes, os protocolos clssicos de transmisso de dados so pouco

ecientes, pois dependem de uma estabilidade da conexo m-a-m entre dois ns. No protocolo TCP/IP, por exemplo, a camada de transporte da rede depende da constante conexo entre transmissor e receptor, tanto para envio de pacotes quanto para conrmao de recebimento de pacotes. Sabemos que em redes intermitentes essa constncia de conexo entre transmissor e receptor no um evento muito frequente e, portanto, outros protocolos de transmisso devem ser considerados a m de garantir taxas satisfatrias de entrega de pacotes. Diversos protocolos de transmisso de dados foram desenvolvidos visando superar as diculdades inerentes s redes intermitentes. Tais protocolos podem ser divididos basicamente em dois grupos: probabilsticos e no-probabilsticos; cada grupo possui caractersticas comuns, embora cada protocolo seja distinto em suas funcionalidades, como taxas de entrega, utilizao de etc.

buer,

controle de quantidade de cpias da mesma mensagem,

2.1 Probabilsticos
Os protocolos probabilsticos se baseiam em dados estatsticos calculados, principalmente, a partir de encontros entre ns, quantidade de retransmisses de uma mensagem, tempo de existncia dos pacotes na rede e da quantidade de conrmaes de recebimento emitidas por um destinatrio. Os diferentes algoritmos deste grupo utilizam tais dados para aplicar critrios e funes particulares na comunicao entre ns da rede, optando pelo melhor deles para realizar a custdia da mensagem.

2.1.1 Motivao
Uma constante preocupao dos protocolos probabilsticos de utilizar os dados da rede ao seu favor, de maneira a otimizar taxas de entrega e criao de cpias de uma mesma mensagem. Por agirem dinamicamente, efetuando clculos de probabilidade a

cada instante, estes protocolos acabam por ter comportamentos satisfatrios em termos prticos. Comparados a algoritmos que no utilizam estatsticas da rede ou pouco utilizam, estes algoritmos apresentam melhores resultados empricos no que se refere a taxas de entrega, quantidade de cpias e retransmisses de mensagens.

10

2.1.2 Diculdades
Como mencionado anteriormente, os algoritmos probabilsticos dependem de dados estatsticos da rede para a aplicao de seus critrios particulares. Em uma rede recm implementada, estes dados no existem e ento so aumentadas consideravelmente as possibilidades de erro e mensagens perdidas. O tempo de adaptao ou tempo de da rede crucial para a ecincia destes protocolos.

warmup

2.1.3 Algoritmos
Os algoritmos probabilsticos mais conhecidos e utilizados so:

Prophet [LDS04]:
O algoritmo no roteamento.

and Transitivity ) utiliza-se do histrico de encontros entre ns para tomada de decises


Cada n da rede armazena uma lista com todos os ns destinatrios A cada n destinatrio conhecidos, ou seja, todos os ns que j foram encontrados. conhecido ento atribuda uma

Prophet

Probabilistic Routing Protocol using a History of Encounters

delivery predictability

ou previsibilidade de entrega, que

inicialmente igual a zero e posteriormente recalculada durante um encontro. O clculo da previsibilidade de entrega de um n

A para um n B segue a seguinte frmula:

P(A,B) = P(A,B)old + (1 P(A,B)old ) pini


em que

0 pini 1

uma constante de inicializao.

Um mecanismo que tambm utilizado no tratamento de previsibilidades de entrega o envelhecimento. A previsibilidade de entrega entre um par de ns decrementada de acordo com o tempo decorrido desde o ltimo encontro. A seguinte equao de envelhecimento aplicada sempre que um novo encontro ocorre:

P(A,B) = P(A,B)old K
em que

0 1

a constante de envelhecimento e

quantidade de unidades de

tempo decorridas desde o ltimo encontro entre

A e B.

Em situaes que um par de ns raramente se encontra na rede, mas possui um n intermedirio com que ambos se encontram frequentemente, ento aplicada a propriedade de

transitividade.

Desde que exista um n intermedirio que se encontre frequentemente

com um determinado par de ns, este par assume uma maior relevncia na previsibilidade de entrega de um para o outro. Segue a equao de transitividade:

11

P(A,C) = P(A,C)old + (1 P(A,C)old ) P(A,B) P(B,C)


em que

B o n intermedirio entre um par de ns A e C, e 0 1 a constante de

relevncia da propriedade de transitividade.

MaxProp [BGJL06]:
O algoritmo

MaxProp

baseia-se na priorizao de pacotes para transferncia durante

as oportunidades de encontro. Para tanto, cada n da rede mantm uma estrutura de la ordenada para os pacotes, cuja ordenao funciona de acordo com a (probabilidade de entrega) de cada pacote. Alm da prpria la, cada n da rede mantm uma tabela de todos os outros ns destinatrios, contendo o peso de cada um destes. Este peso representa a frequncia de um encontro e inicialmente igual para todos os ns destinatrios; porm, na medida em que ocorrem os encontros, o peso de um n pode ser incrementado. Supondo uma

delivery likelihood

rede com apenas cinco ns, um determinado n armazenar uma lista contendo o peso dos outros quatro ns da rede, sendo inicialmente cada peso igual a de todos os pesos deve ser igual a

0, 25

(o somatrio

1).

Quando este determinado n encontrar um dos

outros ns, o peso do n encontrado incrementado em normalizados de forma que a soma de todos volte a ser

1 1.

e todos os pesos da tabela so

1
0,25

2
0,25

3
0,25

4
0,25

1
0,25 2

2
0,25 2

3
0,25 + 1 2

4
0,25 2

1
0,125

2
0,125

3
0,625

4
0,125

Figura 6: Normalizao de pesos aps um encontro com o n

Durante o encontro de um par de ns, cada n tm acesso tabela de pesos do outro, e estas so trocadas entre eles. Em suma, cada n possui, alm de sua prpria tabela de pesos, uma tabela aproximadamente atualizada de todos os outros ns e a posse destas tabelas que possibilita o clculo das probabilidades de entrega. Para isto, realizada uma busca em profundidade a partir do n de origem, levando em conta todos os caminhos possveis at o destinatrio, sendo que o custo de um caminho entre um par de ns

AeB

12

equivale a

1 pesoA (B),

com

pesoA (B)

sendo o peso que

B possui na tabela de A. Aps

o clculo do custo de todos os caminhos, toma-se o menor valor calculado para atribuir o valor de

delivery likelihood

para o pacote.

Alm do mecanismo de priorizao de pacotes, o mecanismos secundrios:

MaxProp

possui diversos outros

Durante um encontro, todas as mensagens destinadas ao n vizinho so transferidas.

acknowledgements (conrmaes de recebimento emitidas por um destinatrio) para uma eventual limpeza de buer ;
Ocorre tambm a troca de

Pacotes novos (que possuem poucos

hops ) tm prioridade nas transferncias, e; buer.

No h repetio de envio de um mesmo pacote para um mesmo n e tambm no h recebimento de pacotes que j existem no

Figura 7: Representao de custo de caminhos no protocolo

MaxProp

2.2 No-Probabilsticos
Os protocolos no-probabilsticos tm como caracterstica principal o espalhamento de pacotes. Tais protocolos supem que quanto mais cpias de um mesmo pacote forem espalhadas na rede, maior ser a probabilidade de entrega dos dados deste pacote, ou seja, aumentam-se as chances de um encontro com o destinatrio quando aumenta-se a proporo de ns com os dados a serem entregues.

13

2.2.1 Motivao
Uma das primeiras idias que surgem ao pensar no problema de entrega de pacotes em uma rede mvel o espalhamento de cpias em diversos ns; conando na mobilidade da rede, provavelmente encontra-se o destinatrio. Os protocolos no-probabilsticos possuem polticas simples de roteamento, o que torna intuitiva a implementao dos mesmos.

2.2.2 Diculdades
Quando se pensa em redes mveis reais, em que existe uma considervel limitao nos

buers

dos ns e da taxa de transmisso dos mesmos, os protocolos no-probabilsticos

comeam a perder ecincia. Como so baseados quase em sua totalidade no espalhamento de mensagens, estes protocolos podem eventualmente gerar uma inundao de mensagens na rede, ocasionando estouros de

buer

e um

overhead

de transmisso de pacotes (muitos

pacotes a serem transmitidos num curto tempo de conexo entre pares de ns).

2.2.3 Algoritmos
Os algoritmos no-probabilsticos mais conhecidos e utilizados so:

Epidmico[VB00]:
Antes do contexto das redes mveis, o algoritmo epidmico podia ser resumido em trs caractersticas: robusto, escalvel e convel; tais palavras se devem ao seu mecanismo de transmisso de mensagens, semelhante a uma doena em epidemia, contaminando todos os vizinhos a partir de um indivduo (n) infectado. Era certo que, em algum

instante, todos os ns do sistema estariam contaminados (conabilidade), independente do tamanho do mesmo (escalabilidade) e de onde a infeco houvesse iniciado (robustez). O objetivo do algoritmo epidmico a entrega de uma mensagem a um destinatrio especco - porm, para isso, torna a mensagem conhecida para uma grande parcela do sistema. Basicamente, a cada instante de tempo determinado, conhecido como ocorre a contaminao dos vizinhos, com uma certa probabilidade terizamos um algoritmo epidmico por quatro parmetros:

round,

p e, dessa forma, carac-

Tamanho do Sistema (N ):

nmero de ns do sistema;

Nmero Mximo de Transmisses (T ): quantidade mxima de custdias at o destino, ou ainda TTL (time-to-live ) das mensagens;

14

Fanout (F ): Buer (B ):
sagens.

nmero mximo ou proporo de vizinhos que sero contaminados

por um n infectado a cada

round, e;
de cada n, responsvel por armazenar as men-

tamanho do

buer

a
Figura 8: Contaminao epidmica (com

d
F = T = )

i
de uma rede esttica em 4

rounds

O desao nas redes mveis manter a escalabilidade, conabilidade e robustez do algoritmo, pois situaes especcas so grandes gargalos nesse processo. Se uma mensagem for gerada, por exemplo, por um n que raramente se comunica com outros ns do sistema, prejudica-se bastante a conabilidade do sistema - necessita-se de um maior intervalo de tempo para certeza de entrega da mensagem; porm, a mesma situao em um ambiente mais denso (com mais ns e conexes) tem mais chance de obter sucesso na entrega, o que compromete a escalabilidade e, num todo, a robustez do algoritmo.

Figura 9: Contaminao epidmica em uma

DTN, com as desconexes tracejadas

15

Devido alta troca de mensagens, o algoritmo tende a congestionar a rede, o que resolvido nas DTNs com o uso de

beacons :

pequenos indicadores da presena da mensagem

no buer do n de destino, para evitar retransmisses desnecessrias. Alm disso, outra questo o tamanho do

buer

e como os ns lidam com seu estouro; algumas polticas

priorizam mensagens mais antigas, outras priorizam mensagens mais novas, e outras ainda analisam parmetros da prpria mensagem, como o seu aceitar ou rejeitar a nova mensagem a ser transmitida.

TTL (time-to-live ), e decidem por

Spray-and-Wait [SPR05]:
O algoritmo de estouros de

Spray-and-Wait

foi desenvolvido com o intuito de limitar a quantidade

de cpias de uma mesma mensagem na rede, diminuindo a probabilidade de ocorrncia

buer

e congestionamento.

Seu funcionamento depende principalmente da determinao de um parmetro

L, que

representa o nmero mximo de ns distintos a receberem a cpia de uma determinada mensagem. Exemplicando, para cada mensagem originada so atribudos possuidor da mensagem original ir, nas prximas

L tokens ; o n

L oportunidades distintas de encontro, transmitir uma cpia da mensagem para outro n, decrementando o valor de L a cada transmisso bem sucedida. Aps o consumo desses L tokens, L + 1 ns sero portadores
de uma mesma mensagem, e estes aguardaro um encontro direto com o destinatrio para enm realizar a entrega. O clculo exato do valor de

depende de valores como o nmero de ns da rede e

o tempo esperado de uma transmisso direta ao destinatrio. Entretanto, valores satisfatrios de

esto em torno de

10%

do total de ns da rede. ou seja, de se distribuir as

A maneira de se realizar a

spray phase,

cpias, pode

variar; existem dois principais mtodos, sendo eles o

source spraying

e o

binary spraying.

No primeiro mtodo, o n de origem da mensagem ca responsvel por distribuir todas as

L cpias;

j no segundo, o n de origem repassa metade de seus

tokens que possui. O n seguinte repete o mesmo procedimento, at que a quantidade de tokens da mensagem no n seja igual a 1, entrando na wait phase.
e decrementa esse valor da totalidade dos possvel notar que o algoritmo depende de uma rede com mobilidade consideravelmente alta, pois em redes com ns pouco mveis aumentam-se as chances de um destinatrio permanecer isolado por muito tempo.

tokens

para o n seguinte

16

T1
s s

T2

T3

T4

Figura 10: Representao do algoritmo

Spray-And-Wait

com

L=2

Spray-and-Focus [SPR07]:
O algoritmo

Spray-and-Focus

se assemelha ao algoritmo

primeira fase, ou seja, na fase de distribuio de mensagens, colo tambm se baseia em um parmetro

Spray-And-Wait em sua ou spray phase. O protosource spraying


e

de quantidade de cpias a serem distribudas

e tambm possui as duas maneiras de fazer essa distribuio (

spraying ).

binary

A diferena se encontra na segunda fase (

focus phase ).

Neste protocolo, cada n ar-

mazena uma lista que contm o tempo decorrido desde o ltimo encontro com os outros ns da rede. Aps a

spray phase, os ns que possuem as cpias de uma mensagem podem

eventualmente reencaminh-las a outro n, caso este outro n tenha tido um contato mais recente com o n destinatrio.

... t ... ... 0 ... ... t ... ... 10 ... ... t ... ... 11 ...

... t ... ... 1 ... ... t ... ... 12 ...

... t ... ... 2 ...

Inst ante T

... t ... ... 15 ...


Inst ante T + 1

... t ... ... 0 ...


Inst ante T + 2

... t ... ... 1 ...

Figura 11: Exemplo de aplicao da

focus phase

17

3
O

O Simulador

ONE [KOK09]
DTN.
Implementando todos

Opportunistic Network Environment, ou ONE, uma ferramenta open source, deJava,


que simula de forma exemplar uma

senvolvida em

os mecanismos necessrios ao funcionamento de uma Rede Tolerante a Atrasos, como as custdias e os algoritmos de disseminao de mensagens, por exemplo, fornece uma ferramenta poderosa para simular situaes especcas de movimentaes de ns em caminhos pr-determinados ou aleatrios, sendo possvel customizar a execuo conforme seja necessrio.

3.1 Funcionamento e Caractersticas


O funcionamento do

ONE

depende inicialmente da construo de um cenrio de simuUm cenrio pode ser construdo por meio da insero de

lao por parte do usurio.

diversos elementos, dentre eles:

Grupos de ns Eventos Protocolos de roteamento Modelos de movimentao Relatrios Mapas

Cada grupo de ns possui caractersticas prprias, tais como velocidade de deslocamento, taxa de transmisso, tamanho de

buer,

quantidade de ns e identicador (

ID ).

Diversos grupos podem ser inseridos no cenrio, possibilitando uma variedade de ns presentes no ambiente de simulao. Os eventos a serem gerados na simulao nada mais so que mensagens (ou pacotes) com origem e destino determinados. Eles podem ser congurveis em tamanho e intervalo de criao, alm de poderem restringir quais ns podem ger-los e receb-los. Os protocolos de roteamento podem ser aplicados de maneira global ou local no ambiente de simulao, ou seja, cada grupo distinto de ns pode possuir seu prprio protocolo de roteamento.

ONE, por padro, j Spray-And-Wait, MaxProp e PRoPHET.


No

esto implementados os protocolos

Epidemic,

18

Os modelos de movimentao so padres de deslocamento de ns e podem tambm ser aplicados de forma global ou local aos grupos de ns. merecem destaque: Dentre os diversos modelos,

CarMovement :

modelo para carros, no qual o n possui um comportamento de

seguir para um destino a partir de uma origem;

BusMovement : modelo para nibus, no qual o n possui um comportamento que


alterna origem e destino continuamente (comportamento

ping-pong );

ShortestPath :

modelo em que o n possui dois pontos de origem e destino, e a

menor rota entre tais pontos calculada usando o algoritmo de

Dijkstra, e;

RandomWaypoint : modelo em que so criados diversos caminhos aleatrios entre


pares de pontos, com o n se deslocando por estes caminhos. Eles

Os relatrios so os agrupamentos de dados gerados a partir da simulao.

fornecem estatsticas essenciais para a interpretao e anlise dos diferentes cenrios construdos, sendo os principais:

Mensagens criadas:
lao;

dados de mensagens que foram geradas no intervalo de simu-

Mensagens entregues:
destinatrio, e;

dados de mensagens que alcanaram com sucesso seu

Conectividade da rede:
ns.

instantes de ocorrncia de conexo e desconexo entre

Os mapas representam o conjunto de pontos e retas nos quais os ns podem se deslo-

ONE, utilizado um formato especco de representao de mapas, o formato WKT. Basicamente, a estrutura de funcionamento do ONE, baseando-se no uxo
car. No simulador dos dados, representada abaixo:

19

Figura 12: Estrutura de funcionamento do ONE

3.2 Detalhes da Implementao


Importando-se o projeto do projetos em

Java )

ONE

para o

Eclipse

(uma ferramenta gerenciadora de

e vericando-se sua estrutura, nota-se que h diversos pacotes que o

compem; dentre eles, os principais so:

core : responsvel pelos mecanismos essenciais do simulador, lidando com conexes


(classe

Connection ), mensagens (classe Message ), movimentos (classe MovementListener ), conguraes (classe Settings ) e posies dos objetos (classe World );
contm os dados dos mapas utilizados nas simulaes;

data : doc : gui :

documentao do projeto, completa e detalhada; controle de toda a interface grca do simulador;

input : toda a leitura de dados externos ao simulador, como os mapas, o arquivo de


congurao, os roteamentos externos, etc. tratada por este pacote;

movement :
trata

abrange todos os modelos de movimentao, estendendo a classe abse implementando outra classe, caso necessrio;

MovementModel

report : gerao de todos os relatrios que podem ser congurados no cenrio, com
base nas estatsticas de conectividade, mensagens, durao da simulao, dentre outras;

routing : com as classes de roteamento, este pacote caracteriza-se por ter as classes
estendendo

ActiveRouter ;

um roteamento ativo faz com que os ns veriquem a

cada troca de mensagem se h espao no n de destino, se este o destinatrio nal da mensagem, lida com buer cheio e poltica de descarte de mensagens, etc.;

20

test :

testes unitrios e funcionais para o simulador, e; coleo de utilitrios como escaladores de mapas, conversores de formatos

toolkit :
rados.

de sada e outros

scripts

para

parsing

ou sadas mais amigveis dos resultados ge-

3.3

Interface
interface
do

De fcil compreenso, a

ONE

composta por quatro reas principais:

rea da simulao, controle da simulao, lista dos ns e se a

interface

log

de eventos. Abaixo, observa-

grca e estas quatro reas:

Figura 13:

Interface

grca do simulador

ONE

possvel notar que a simulao pode ser adiantada, pausada ou acelerada, e h tambm possibilidade de ajustar a velocidade de atualizao da

interface

grca e o nvel de

21

zoom na rea de simulao. Todas estas opes esto disponveis na parte superior da interface. O log de eventos, na parte inferior, contm informaes sobre conexes e mensagens,
como o instante de incio da conexo, o processo de custdia de uma mensagem e o trmino da conexo entre dois ns. possvel ltrar as mensagens do

log

e ainda acessar

informaes mais detalhadas sobre algum n diretamente pela rea de eventos. A rea principal exibe os ns, nomeados distintamente, os caminhos em que podem trafegar e o raio de transmisso de cada um deles; possvel notar que, durante a custdia de uma mensagem, os dois ns envolvidos permanecem ligados por um segmento de reta, indicando tal evento. direita, situa-se a lista dos ns do cenrio; possvel acessar informaes mais detalhadas sobre cada um deles clicando em sua identicao; com isso, visualiza-se quantas mensagens possui em seu

buer,

com quais ns est conectado e o status das suas men-

sagens geradas ou em custdia. Alm disso, a interface grca exibe a rota atual do n em vermelho, como pode ser visualizado na imagem abaixo.

Figura 14: Detalhes de um n especco no simulador

ONE, com a rota de movimentao

22

Aplicaes na Comunicao interveicular


Acompanhando a crescente evoluo e acessibilidade dos computadores nas ltimas

dcadas, os sistemas embarcados tambm vm se tornando cada vez mais presentes no cotidiano. A aplicao desses sistemas atualmente muito abrangente, e se estende desde avies at simples aparelhos eletrodomsticos, o que engloba, obviamente, veculos terrestres. Sistemas embarcados em veculos terrestres j desempenham importantes funes, como trocas de marcha automticas, controle de mistura de combustvel em motores hbridos, navegao por

GPS (Global Positioning System ), dentre outras.

Entretanto, um fato

pouco explorado mas que vem se tornando cada vez mais estudado a comunicao entre veculos. Diversas aplicaes podem ser consideradas quando h a possibilidade de comunicao interveicular, tais como repasse de informaes sobre o trnsito, danos na pista, acidentes, meteorologia, dentre outras. A comunicao entre veculos pode tornar o processo de transmisso de informaes mais dinmico, diminuindo a dependncia de centros transmissores ao passo em que cada carro tem a possibilidade de transmitir e receber dados. Quando so consideradas caractersticas como alcance e velocidade de propagao de informaes, a comunicao entre veculos deve ser considerada como uma forma de se otimizar tais caractersticas.

4.1 Dispositivos
Atualmente so conhecidos vrios dispositivos transmissores de informao em uma

ad-hoc ; dentre eles, merecem destaque o Bluetooth, embarcados na maioria dos telefones celulares, e a WLAN (Wireless Local Area Network ), inserida no contexto dos
rede roteadores presentes em muitos locais pblicos. disponvel tambem a Alm dessas duas tecnologias, est sobre a

DSRC (Dedicated Short-Range Communication ),

WLAN,

que embora tenha um custo mais elevado, atinge melhores resultados em desempenho e rea de alcance do sinal de transmisso. As caractersticas dos trs dispositivos citados, em termos de taxa de transmisso de dados e alcance do sinal, so as seguintes:

Bluetooth de Classe 2 - Alcance mdio de 22 metros e taxas de transmisso de


at 128kB/s;

Bluetooth de Classe 3 - Alcance mdio de 100 metros e taxa de transmisso de


384kB/s; 23

WLAN DSRC

- Alcance mdio de 33 metros e taxas de transmisso de at 1,4MB/s na

verso 802.11b, e;

- Alcance mdio de 1km e taxas de transmisso de at 2,5MB/s.

Bluetooth com classe de caractersticas superiores, o mais encontrado nos aparelhos celulares brasileiros o de Classe 2. Com relao WLAN, h uma maior
Embora haja um necessidade de espao, pois o aparelho que envia e recebe dados, juntamente com a antena, tem dimenses superiores ao pequeno

Bluetooth

embarcado. Para a

DSRC

tem-se uma

mesma utilizao de espao, porm as antenas e o equipamento, por fornecerem maior desempenho, tm custo mais elevado.

4.2 Proposta
Dado um cenrio real de rodovia brasileira, com distncias reais, uxos de veculos reais e modelos de movimentao prximos aos reais, estudar o melhor algoritmo de disseminao e o melhor dispositivo para que, gerada uma mensagem de alerta em um carro aleatrio, esta atinja o maior nmero de veculos do sistema em menor tempo. Deseja-se avaliar, tambm, o impacto de

RSUs (RoadSide Units, ou Unidades ao Longo da Via) na

abrangncia de veculos e no tempo para espalhamento da mensagem. Gracamente:

Figura 15: rodovirio

Simulao da transmisso de uma mensagem de alerta em um ambiente

Foi escolhido o cenrio da regio de Ribeiro Preto, correspondendo as rodovias concessionadas Autovias, Intervias, Tringulo do Sol, TEBE e Vianorte como caminhos onde

24

os ns so movimentados. Estes ns representam uxos oriundos dos pedgios de cada uma dessas rodovias, fornecidos pelo IPT, com classicao de veculos por classe (carros e caminhes com eixos) e horrios da passagem do volume pelas praas de pedgios, onde algumas torres de transmisso foram eventualmente colocadas.

4.3 Simulaes
Para a aplicao de dados e gerao de resultados foi necessria a escolha de uma ferramenta convel e compatvel com o nosso contexto de Redes Tolerantes a Atrasos. O simulador

ONE, primeiro a ser explorado, ganhou apreo por sua boa estrutura de cdigo SUMO
(Simulation of Urban MObility) tambm realiza

e documentao, o que nos permitiu modicaes nas classes a nosso contento e de forma simples; em contrapartida, o

simulaes de forma bem satisfatria, embora no tenha uma estrutura de implementao altura do

ONE, escolhido em denitivo para obteno dos resultados.

4.3.1 Representando mapas com OpenJUMP [ope]


O simulador pas.

ONE suporta o formato WKT (Well-Know Text ) de representao de maA linguagem WKT permite de forma simples e direta descrever objetos geomtricos WKT :

como pontos, retas, polgonos e composies destes mesmos objetos, o que se encaixa de forma adequada na representao de mapas rodovirios em duas dimenses. Um exemplo simples da linguagem

POINT (202 POINT (105 POINT (306 POINT (200 LINESTRING LINESTRING LINESTRING

598) 485) 484) 399) (105 485, 200 399, 306 484, 202 598, 105 485) (202 598, 200 399) (105 485, 306 484)

O exemplo acima um conjunto de 4 pontos distintos e diferentes retas que os interligam. Segue o mapa produzido a partir deste exemplo:

25

Figura 16: Mapa gerado a partir do exemplo de cdigo

No entanto, a simplicidade de se construir objetos geomtricos bsicos esbarra na complexidade em que estes se organizam ao representar um determinado mapa. ferramenta bastante til para contornar a edio manual dos mapas o programa desenvolvido em Uma

Java

OpenJUMP, um

e de cdigo aberto, que possui uma interface simples

de edio de objetos geomtricos e exporta o resultado nal para diversos formatos, em especial o

WKT. OpenJUMP

Com o auxlio de uma segunda ferramenta livre e muito popular na Internet, o

Maps,
como

Google

foi possvel obter a imagem da regio e suas principais rodovias, e ento us-la

background

no

para posteriormente iniciar o desenho.

Figura 17: Regio de Ribeiro Preto no

Google Maps

A utilizao do

OpenJUMP

bastante intuitiva. Com a imagem de fundo estabele-

cida, construmos pontos sobre as rodovias desejadas e, aps todos os pontos necessrios serem construdos, ligam-se estes pontos de acordo com a forma da rodovia.

26

Como as rodovias da regio possuem diferentes concesses de administrao e diferentes dados relevantes, foi preciso que cada rodovia fosse representada de forma independente. No

OpenJUMP

possvel a separao do desenho em camadas e a interligao

de pontos de camadas distintas, funcionalidade esta que permitiu a modularizao do desenho nal. Uma diculdade do

OpenJUMP WKT,

trabalhar adequadamente com escalas. Porm, esta

diculdade foi contornada com a construo de um script em mapa representado em

Perl

que, a partir de um

realiza uma transformao linear para aplicar uma dese-

jada escala, que pode ser obtida a partir de uma relao da escala da imagem de fundo utilizada e a escala utilizada na

interface

do prprio

OpenJUMP.

Figura 18: Mapa modularizado no

OpenJUMP

4.3.2 Diculdades
Ao simularmos os uxos de todas as rodovias (em torno de 50 mil ns), notamos que a velocidade de simulao reduziu-se consideravelmente, o que nos impediu de utilizarmos todos os veculos e obtermos um resultado global para toda a regio. Em vez disso, nos focamos na Rodovia Tringulo do Sol, analisando seus uxos nos pedgios. Outro problema foi organizar de forma realista os ns em cada trecho da estrada; por haver trs trechos contguos, com interseces (a rodovia assemelha-se, de fato, a um tringulo), determinamos os uxos em cada trecho contguo, com alguma probabilidade de troca de trecho pelos veculos. Como modelo de movimentao, assumimos o CarMovement com parmetro circular, ou seja, os carros seguem uma rota circular e retornam ao ponto inicial, indenidamente, at que tomem uma nova direo e continuem a se mover nesta outra rota. A gerao aleatria da mensagem, caso a semente de aleatoriedade no seja alterada,

27

no confere uma boa gama de resultados, pois as simulaes tm um grande vis ao produzirem a mesma sequncia pseudo-aleatria de nmeros que determinam o n gerador do evento (mensagem). Para isso, necessrio alterar a semente de aleatoriedade e calcular a mdia dos resultados gerados, exibindo tambm a maior e a menor ocorrncia de um resultado dadas diversas sementes aleatrias. Uma particularidade da mensagem que ela precisa obrigatoriamente de um destinatrio; deste modo, construmos um destinatrio

dummy, em um ponto no alcanvel,

para todas as mensagens geradas. Como este nunca atingido, a mensagem no para de se propagar e atingimos os objetivos esperados. As

DTNs

assumem uma conexo entre dois ns como sendo a possibilidade de en-

vio e recebimento por ambas as partes; portanto, um elemento precisa estar contido no raio de transmisso do outro. Isso diculta a modelagem de estruturas como as antenas ao longo da via, que apenas repassariam as mensagens aos ns que alcanam, sem necessidade de receberem conrmaes ou outros dados. possvel contornar a diculdade inserindo ns com raios de transmisso innitos, porm isto torna a simulao muito lenta desnecessariamente; esta foi a nica diculdade que no foi vencida na elaborao deste trabalho.

4.3.3 Cenrios de Simulao


Finalizado o estudo da representao do ambiente de simulaes, foram denidos os seguintes cenrios de simulao:

Para avaliao dos protocolos:


de roteamento, apenas, e;

cenrio padro, distribudo com o prprio

ONE,

com as conguraes bsicas e modicaes apenas no nmero de ns e no algoritmo

Para avaliao das tecnologias:

cenrio da Rodovia Tringulo do Sol, entre 200

e 600 veculos, com proporo de 30% de caminhes com velocidade mdia reduzida, 15 minutos de durao (tempo mximo de relevncia de uma mensagem), gerao em um veculo (carro ou caminho) aleatrio, protocolo epidmico de propagao sem limite de transmisso de ns ou tempo de vida da mensagem.

Um exemplo da execuo do

ONE

para avaliar uma certa tecnologia na Rodovia

Tringulo do Sol pode ser observado abaixo:

28

Figura 19: Simulao no cenrio da Rodovia Tringulo do Sol

4.3.4 Resultados
A primeira etapa de resultados compreendeu o estudo dos conceitos de Redes Tolerantes a Atrasos e a anlise/comparao dos diversos protocolos de roteamento quando tratados pacotes com origem e destino especicados. Com todo o ferramental secundrio, como

parsers

software

de plotagem de grcos (

gnuplot ),

e o simulador

ONE

foram

coletados dados de diversas simulaes.

Figura 20: Grco representando o total de mensagens custodiadas em funo do nmero de ns da rede

29

O grco exposto na gura 20 expressa o total de mensagens custodiadas (encaminhadas) em funo do nmero de ns presentes na rede. importante notar que, de fato, o protocolo

Epidemic

apresenta maiores quantidades de mensagens custodiadas em re-

lao aos demais protocolos. Outra curva que se destaca no grco a curva do protocolo

Spray-And-Wait ; devido natureza do protocolo de dependncia de encontros diretos com


o destinatrio para entrega de mensagem, a quantidade total de mensagens custodiadas ca restrita ao nmero de mensagens espalhadas na

spray phase.

Figura 21: Grco representando a taxa de entrega em funo do nmero de ns da rede

O grco exibido na gura 21 expressa a taxa total de mensagens entregues com sucesso (total de mensagens entregues divido pelo total de mensagens criadas) em funo do nmero de ns da rede. O protocolo que apresentou melhor desempenho foi o protocolo

MaxProp, com taxas acima de 80% a partir de aproximadamente 70 ns presentes na rede. Outro protocolo que merece destaque o protocolo Spray-And-Wait ; nas condies
da simulao o protocolo apresentou taxas de entrega superiores a protocolos mais complexos, como o J os

trega. O

buers,

PRoPHET e o Spray-And-Focus. protocolos Epidemic e Spray-And-Focus apresentaram taxas inferiores de endesempenho do protocolo Epidemic se deve principalmente pela limitao dos Spray-And-Focus , de longe, o que causa maior mais renado que o protocolo Spray-And-Wait,
se mostrou mais adequado ao contexto de co-

pois este assume um comportamento convel apenas quando no h limitao

dos mesmos. O desempenho do protocolo estranheza: apesar de ser um protocolo

apresentou taxas de entrega inferiores nas condies da simulao. Dos protocolos estudados, o

Epidemic

30

municao interveicular, pois se deseja o maior espalhamento possvel de uma mesma mensagem numa rede interveicular, isto , que a maior quantidade possvel de veculos seja noticada de um determinado evento em um menor espao de tempo. Dentre outros resultados, obtivemos o seguinte grco ao aplicarmos o protocolo epidmico s diferentes tecnologias de transmisso de dados:

Figura 22: Grco representando o alcance de um n aleatrio

broadcast

de um evento nico gerado em

O grco exibido na gura 22 representa o alcance de

broadcast

de um evento nico

em funo da quantidade de ns presentes na rede. Em outras palavras, expressa quantos ns foram noticados de um evento gerado por algum n aleatrio no tempo de simulao. Deste resultado, obtivemos a conrmao de que a tecnologia envolvida na implementao de uma rede de comunicao interveicular de suma importncia para a eccia da mesma. Tecnologias como

Bluetooth

(Classe 2 e Classe 3) e

WLAN

apresentaram um

alcance consideravelmente menor, no mesmo tempo de simulao, que o alcance obtido pela tecnologia

DSRC. Esta, por exemplo, atinge um nvel de aproximadamente 100% de

alcance a partir da faixa de 400 ns presentes na rede, independentemente da posio do n gerador do evento. Tambm importante ressaltar que as variaes das curvas se devem principalmente aleatoriedade dos eventos gerados, o que pode alterar signicativamente o alcance de uma mensagem na rede. No entanto, possvel observar que as curvas raramente se cruzam e que ento h consistncia sobre a superioridade de uma tecnologia sobre outra.

31

Resumo das Atividades Realizadas


Em um ano de estudo, desenvolvimento, pesquisa e debates, muitas foram as atividades

realizadas no s por ns, autores deste Trabalho de Concluso de Curso, como por nosso grupo de Iniciao Cientca. Dentre elas, de forma sucinta, vale citar a seguinte sequncia:

Estudo dos conceitos de Redes Tolerantes a Atrasos. Estudo dos possveis contextos nos quais os fundamentos de Redes Tolerantes a Atrasos podem ser ou j esto sendo aplicados.

Anlise e comparao dos diferentes protocolos de roteamento aplicveis em Redes Tolerantes a Atrasos.

Participao no desenvolvimento e testes de novos algoritmos especcos para redes mveis com conhecimento prvio das conectividades futuras (Shortest, Foremost, Fastest).

Estudo e aprendizado da utilizao de um simulador adequado a redes mveis (ONE).

Construo de cenrios especcos e prximos da realidade para utilizao no simulador ONE, com o auxlio da ferramenta OpenJUMP para representao de mapas rodovirios nacionais em formato WKT.

Estudo das diversas tecnologias atuais com possibilidade de integrarem uma Rede Tolerante a Atrasos real.

Anlise das simulaes obtidas com o cenrio prximo da realidade construdo e implementando as caractersticas dos dispositivos e tencologias atuais.

Do mais, nosso trabalho ainda est sendo continuado com o desenvolvimento de um artigo a ser submetido para o Simpsio Brasileiro de Redes de Computadores(SBRC), em dezembro de 2009. O tema deste artigo corresponde exatamente ao trabalho descrito nesta monograa.

32

Referncias
[BGJL06] J. Burgess, B. Gallagher, D. Jensen, and B.N. Levine. for vehicle-based disruption-tolerant networks. In 111, 2006. [KOK09] Ari Kernen, Jrg Ott, and Teemu Krkkinen. The ONE Simulator for DTN Maxprop: Routing

Proc. IEEE Infocom, pages

SIMUTools '09: Proceedings of the 2nd International Conference on Simulation Tools and Techniques, New York, NY, USA, 2009.
Protocol Evaluation. In ICST. [LDS04] A. Lindgren, A. Doria, and O. Schelen. Probabilistic routing in intermittently connected networks.

Lecture Notes in Computer Science, pages 239254, 2004. Minicursos do Simposio Brasileiro

+ [OMR 07] C.T. Oliveira, M.D.D. Moreira, M.G. Rubinstein, L. Costa, and O. Duarte.
Redes tolerantes a atrasos e desconexoes. In

de Redes de Computadores (SBRC 2007), 2007.


[ope] [SPR05]

OpenJUMP - Open Java Unied Mapping Platform. http://openjump.org. Thrasyvoulos Spyropoulos, Konstantinos Psounis, and Cauligi S. Raghavendra. Spray and wait: an ecient routing scheme for intermittently connected

WDTN '05: Proceedings of the 2005 ACM SIGCOMM workshop on Delay-tolerant networking, pages 252259, New York, NY, USA,
mobile networks. In 2005. ACM. [SPR07] Thrasyvoulos Spyropoulos, Konstantinos Psounis, and Cauligi S. Raghavendra. Spray and focus: Ecient mobility-assisted routing for heterogeneous

and correlated mobility. IEEE, 2007. [VB00] A. Vahdat and D. Becker. Epidemic routing for partially connected ad hoc networks. Technical report, Citeseer, 2000.

33

Parte Subjetiva - Caio Cestari Silva


Todo trabalho desenvolvido possui uma base que sustentou sua elaborao. Essa base,

que vem desde o incio dos estudos, com uma motivao, at o aprofundamento em uma rea especca passa por diculdades e progressos, oscilando entre esses dois extremos medida em que novas descobertas e discusses so realizadas. Nesta seo, sero descritos todos esses pontos que, com o trabalho, resultaram nesta monograa e nas concluses nela apresentadas.

A.1 Motivao
Com um convite informal em uma sada para o almoo, iniciamos nossos estudos sobre as Redes Tolerantes a Atrasos e Desconexes. Inicialmente, no sabamos do que

se tratava, ento o incio da Iniciao Cientca baseou-se em leituras de vrios artigos, pesquisas e apresentaes sobre temas relacionados, aplicaes e novidades na rea, dentre outros assuntos. Nosso orientador nos deixou bem vontade com o tema para, ento, propor trs diferentes reas de aprofundamento: algoritmos de jornadas, aplicaes na comunicao interveicular e compromisso entre jornadas mnimas. Dos trs temas, escolhemos o se-

gundo, por seu carter prtico e atual, sobre o qual poderamos nos aprofundar com maior naturalidade, utilizando teoria j estudada e desenvolvendo novas adaptaes para o ambiente das

DTNs.

Com o desenvolvimento de um artigo apresentado na Lapnia, em agosto, camos ainda mais motivados a pesquisar e, somando a tudo isso o auxlio do IPT, com a bolsa de Iniciao Cientca da FIPT, tivemos o ambiente ideal para operarmos com dados reais, fornecidos pelo prprio Instituto.

A.2 Disciplinas Relevantes


Toda a base para compreender a teoria das

DTNs

foi obtida da disciplina Algorit-

mos em Grafos, ministrada pelo professor Coelho.

Dela, foram aplicados os conceitos

de grafos, digrafos, ns, arestas, caminhos mnimos e uxos ao simulador que, para ser compreendido, precisou da experincia adquirida ao cursarmos a disciplina de Estruturas de Dados e Laboratrio de Programao Extrema. Algumas noes de redes, denominaes relacionadas aos roteamentos, uxos, transmisso de dados, pacotes, mensagens de recebimento (

ACKs ), dentre outras foram obtidas

34

com o curso de Programao para Redes de Computadores, disciplina optativa lecionada pelo professor Marclio. No auxlio ao desenvolvimento dos algoritmos na Iniciao Cientca, utilizamos vrios conceitos de Anlise de Algoritmos para otimizar o desempenho dos mesmos. Para os algoritmos probabilsticos e anlises de abrangncia de algoritmos epidmicos, muito de Noes de Probabilidade e Estatstica foi aplicado e revisado, disciplina introdutria lecionada pelos professores Adilson e Elisabeti. Para os desenvolvimentos realizados no (

parsers, escaladores de mapas, leitores e escritores de arquivos), utilizamos os conceitos scripts


em

background, Perl

ou seja, suportes aos resultados

aprendidos em Laboratrio de Programao, com o professor Gubi. Foi claro observar que desde pequenos ensinamentos como at grandes teoremas e algoritmos,

como Dijkstra e Bellman-Ford, tudo se tornou til no desenvolvimento do trabalho nal.

A.3 Facilidades e Diculdades


Felizmente, h bastante material sendo publicado sobre

DTNs atualmente; conseguimos

ter uma base terica bem slida para comearmos a desenvolver nosso trabalho. Artigos sobre roteamentos, novos algoritmos, anlises estatsticas, aplicaes aos mais variados ambientes e resultados dessas aplicaes consistiram em nossa principal fonte de pesquisa de desenvolvimento. Um estudo realizado pelo aluno Julian, do mestrado, consistiu na motivao terica dos Grafos Evolutivos e seus resultados no desenvolvimento dos algoritmos de roteamento minimais foram continuados por nosso grupo. A diculdade apareceu quando exploramos a comunicao interveicular como exemplo de aplicao das

DTNs.

dicil realizar uma simulao com carros, sensores e situaes

reais, pois necessria uma verba considervel para a aquisio e/ou locao dos equipamentos e da infra-estrutura necessria para obter os resultados. Todos os dados obtidos, alguns at com certo sigilo, foram fornecidos pelo IPT e obtidos por intermdio de projetos realizados pelo Instituto com as principais rodovias concessionadas do Brasil, o que confere s simulaes um carter prximo do real, ainda que com algumas aproximaes e normalizaes de uxos. Outro problema foi enfrentado com o modelo de movimentao assumido para os veculos e at mesmo para as torres de comunicao das rodovias - no era claro qual modelo era mais adequado para representar a situao de forma mais dedigna. Algumas tentativas e adaptaes foram implementadas e conseguiu-se contornar o problema delimitando com certa clareza a rota dos veculos pelas rodovias, obedecendo os uxos obtidos pelo IPT dos pedgios.

35

A.4 Projetos Futuros


O artigo submetido para o

Workshop ExtremeCom,

na Lapnia, em agosto de 2009,

foi de grande motivao para a escrita de novos artigos abrangendo as outras reas de pesquisa e seus resultados. Desenvolvemos mais resultados desde o

Workshop

e estamos

escrevendo um artigo para o Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos (SBRC), que ser submetido at o nal do ano. Futuramente, pretendo tambm retornar ao IME-USP como ps-graduando e continuar as pesquisas na rea de Sistemas, at mesmo com o tema especco desta monograa, dando nfase ao estudo e pesquisa em outros tpicos de Redes Tolerantes a Atrasos e Desconexes.

36

Parte Subjetiva - Adriano Tabarelli


indiscutvel a importncia do aprendizado adquirido durante os quatro anos do

curso de Cincia da Computao.

O conhecimento necessrio para a realizao deste

trabalho de concluso de curso abrange desde os conceitos bsicos at o aprofundamento em tpicos especcos da rea de computao. Dividirei nos prximos tpicos os pontos mais relevantes que possibilitaram a elaborao deste trabalho.

B.1 Motivao
O incio de nosso grupo de pesquisa na rea de Redes Tolerantes a Atrasos deveu-se nossa colega de curso Cssia Garcia Ferreira, que inicialmente apresentou seu interesse em ter o professor Alfredo Goldman como orientador do seu futuro trabalho de concluso de curso. O professor Alfredo, posteriormente, manifestou interesse em criar um grupo para o estudo destas redes e ento os convites para a incluso no grupo foram sendo feitos. Em pouco menos de um ms, estaria formado o grupo composto pelos alunos Caio C. Silva, Csar G. Machado, Cssia G. Ferreira, Paulo H. Floriano e eu. A atualidade da rea de Redes Tolerantes a Atrasos e a grande quantidade de tpicos a serem estudados e desenvolvidos foram fatores decisivos na minha opo de entrar neste grupo de pesquisa. Dentre as possveis derivaes do tema de Redes Tolerantes a Atrasos, inicialmente foram propostas trs: o estudo das redes intermitentes aplicadas comunicao interveicular, algoritmos de jornadas e o compromisso entre estas jornadas. A primeira derivao mostrou-se mais atraente para o aprofundamento de nossa pesquisa, devido ao seu carter atual e certamente mais prtico.

B.2 Disciplinas Relevantes


Ao longo do curso houve naturalmente um acmulo de conhecimento e, posteriormente, tornou-se difcil separar quais disciplinas foram mais relevantes para o desenvolvimento de nosso trabalho. Diversas disciplinas se utilizam de conhecimento prvio adquirido em outras disciplinas, ou seja, muitas possuem uma base. Como bases essenciais, possvel citar as seguintes disciplinas:

MAC0110 - Introduo Computao MAC0122 - Princpios de Desenvolvimento de Algoritmos MAC0323 - Estruturas de Dados

37

Tais disciplinas foram as primeiras a apresentar os conceitos bsicos de programao e estruturas de dados, o que foi de extrema importncia para quase a totalidade das disciplinas posteriores. Como disciplinas mais prximas dos conceitos que estudamos e aplicamos em nosso trabalho, possvel citar as seguintes:

MAC0211 - Laboratrio de Programao I MAC0328 - Algoritmos em Grafos MAC0242 - Laboratrio de Programao II MAE0121/MAE0212 - Introduo Probabilidade e Estattica I e II

A disciplina de Laboratrio de Programao I foi a primeira a exigir um aprendizado sobre modularizao de projetos e documentao dos mesmos. Como ponto principal,

destaco o aprendizado de L T X, ferramenta essencial para documentao de projetos e E escrita de textos cientcos e prossionais. J a disciplina de Algoritmos em Grafos ministrada pelo professor Coelho nos possibilitou um excelente conhecimento da estrutura de grafos e os algoritmos aplicados a eles. Desde a modelagem das redes intermitentes at a aplicao dos diversos protocolos de roteamento, os conceitos adquiridos em MAC0328 foram utilizados. Em Laboratrio de Programao II aprendemos sobre tcnicas de desenvolvimento de projetos em

Java

e a utilizao de linguagens de

mentas secundrias desenvolvidas, como em

Perl

parsers

script, em especial o Perl.

Para as ferra-

e escaladores de mapas, o conhecimento

foi de grande importncia.

Os conhecimentos adquirido em Introduo Probabilidade e Estatstica I e II foram importantes para a anlise dos protocolos de roteamento, em especial os probabilsticos. Sem uma base de conhecimento de probabilidades, o entendimento destes protocolos no seria possvel e o trabalho estaria restrito ao estudo de protocolos menos complexos.

B.3 Facilidades e Diculdades


O tema de Redes Tolerantes a Atrasos um tema relativamente recente, entretanto, j existem diversos estudos publicados e em desenvolvimento. Ao longo de nossa pesquisa diversos artigos foram selecionados para leitura e usados como base para o desenvolvimento de nosso trabalho, ou seja, a quantidade de material terico disponvel no foi um fator negativo.

38

As maiores diculdades se concentraram ao estudar a comunicao interveicular. Em diversos artigos, em especial os relacionados aos protocolos de roteamento, simulaes em ambientes reais e com equipamentos reais foram realizadas. Encontramos grande

diculdades na tentativa de realizar experimentos reais, dado o enorme custo que a implementao de uma infra-estrutura real envolve. Logo, nosso estudo permaneceu restrito ao uso de simuladores em computador, como o ONE. O uso apenas de simuladores no necessariamente facilitou nosso trabalho. A escolha de modelos de movimentao para cada elemento da simulao e a adaptao dos uxos reais no simulador demostraram ser nada triviais. Foram necessrias algumas adaptaes e novas implementaes para contornar tais problemas.

B.4 Projetos Futuros


Ainda relacionado a este trabalho, estamos redigindo um artigo a ser submetido para o Simpsio Brasileiro de Redes de Computadores e Sistemas Distribudos (SBRC). A motivao para esta submisso comeou com nossa participao no desenvolvimento do artigo submetido para o e o

feedback

Workshop ExtremeCom, realizado em agosto de 2009 na Lapnia,

positivo obtido deste trabalho.

Aps a concluso do meu bacharelado, tenho interesse em continuar os estudos e ingressar na ps-graduao do IME-USP na rea de redes mveis. Quero aproveitar todo o conhecimento adquirido com nosso excelente grupo de pesquisa para a continuao dos estudos na rea de Redes Tolerantes a Atrasos.

39

You might also like