Você está na página 1de 16

Protocolos de roteamento unicast

Redes Ad Hoc Tpicos Especiais em Comunicao de Dados IV Verso 1.0 maro de 2012

Crditos
Alunos (TET e IC): Douglas Vidal Teixeira, Luciana Esteves Neves, Jos Eduardo Mendona da Fonseca Professores: Clio Vinicius Neves de Albuquerque (IC-UFF), Dbora Christina Muchaluat Saade (TET-UFF), Luiz Cludio Schara Magalhes (TET-UFF) Financiador: RNP Rede Nacional de Ensino e Pesquisa programas de GT (Grupos de Trabalho) Retirado de GT Mesh RT1 Edio: Prof. Ricardo Carrano (TET-UFF)

1. Introduo
A maior parte das aplicaes em redes ad hoc est baseada em comunicaes do tipo unicast. Ao contrrio dos hosts de uma rede tradicional cabeada, os ns em uma rede ad hoc esto livres para se movimentar arbitrariamente. Em funo disto, a topologia da rede pode mudar com muito mais frequncia, quando comparada a de uma rede cabeada. Diversos protocolos de roteamento foram propostos, utilizando mecanismos de operao distintos, de modo a minimizar o impacto introduzido pela mobilidade. A operao bsica de um protocolo de roteamento unicast ocorre no nvel de rede (camada IP, na arquitetura TCP/IP) de uma rede ad hoc, consistindo da transmisso de pacotes de dados de um n de origem (NO) at um n de destino (ND), atravs de ns intermedirios (NI). O procedimento de encaminhamento relativamente simples: o NI apenas compara o endereo constante do cabealho do pacote de dados com as entradas existentes em sua tabela de roteamento (TROT), atravs da qual obtm a indicao do next-hop (prximo NI ou o prprio ND). O problema maior a maneira como so construdas e atualizadas as TROT dos ns numa rede ad hoc. As taxonomias mais referenciadas na literatura para classificao dos protocolos de roteamento ad hoc unicast abrangem duas caractersticas essenciais dos algoritmos empregados nestas redes: (1) Filosofia de roteamento:

- Roteamento plano: todos os ns so iguais, isto , possuem a mesma responsabilidade na rede; o roteamento de pacotes feito baseado em comunicaes ponto-a-ponto, restringido apenas pelas condies de

propagao. Todos os ns possuem uma viso global da rede, o que acarreta constante troca de informaes sobre a disposio da topologia, aumentando sensivelmente a sobrecarga nos enlaces de comunicao. Porm, no que se refere ao descobrimento de rotas, o processo simplificado pelo fato de todos os ns possurem informaes globais da rede; e - Roteamento hierrquico: no roteamento hierrquico, os ns so divididos em zonas. Dentro de sua prpria zona, o n conhece os detalhes sobre como rotear pacotes para os demais; em contrapartida, o n conhece muito pouco sobre a estrutura interna de outras zonas. Geralmente, em cada zona, ao menos um n designado para servir como gateway, de modo a prover a comunicao entre duas zonas distintas. (2) Construo de rotas: De uma forma geral, os protocolos de roteamento unicast so divididos nas seguintes categorias: - Pr-ativos (ou table-driven): nos protocolos pertencentes a esta categoria, cada n mantm informaes atualizadas sobre a topologia da rede na forma de TROT, atravs da troca regular de informaes de roteamento. Estas informaes so, geralmente, difundidas utilizando flooding [Tanenbaum 2003] por toda a rede. Sempre que um n precisar de um caminho at o destino, este utiliza um algoritmo apropriado para determinao de rota com base nas informaes de topologia ou de melhor caminho mantidas pelo prprio n; - Reativos (ou on-demand): os protocolos pertencentes a esta categoria no trocam informaes de roteamento periodicamente, mas sim obtm o caminho, quando necessrio, atravs de processo de descoberta de rotas entre os ns de interesse; e - Hbridos: os protocolos pertencentes a esta categoria combinam as melhores caractersticas das duas categorias anteriores - pr-ativos e reativos. A seguir, sero apresentadas as caractersticas dos principais tipos de protocolos empregados em redes ad hoc para transmisses do tipo unicast, agrupados de acordo com a classificao quanto construo de rotas.

2. Protocolos de Roteamento Pr-Ativos


Os protocolos de roteamento tradicionais, como o RIP e o OSPF, so exemplos de protocolos pr-ativos. A difuso peridica de atualizaes relacionadas topologia de rede (ex. informaes de distance vector ou link state) necessria para o cmputo do caminho mais

curto do NO para cada ND, o que consome uma considervel parcela da banda disponvel em uma rede. Apesar de amplamente utilizados em backbones Internet e em redes privativas tradicionais, no podem ser aplicados diretamente a uma rede ad hoc, devido s diferenas peculiares entre as redes cabeadas e as sem fio: (1) A banda efetiva em uma rede ad hoc bem inferior quela disponvel em uma

rede cabeada. Para ser mais especfico, a banda de redes de alta velocidade implantadas em backbones Internet pode ser de centenas de Gbps, enquanto que a banda do padro 802.11b de apenas 11 Mbps (ou ainda 54 Mbps, para os padres 802.11a e 802.11g). Por esta razo, o overhead adicional gerado pelas informaes de controle no pode ser ignorado em uma rede ad hoc; e (2) Os roteadores em backbones Internet so sempre fixos. Apesar das pequenas em seus funcionamentos, ocasionadas por razes inesperadas

interrupes

(inoperncias totais ou parciais) ou transitrias (manutenes preventivas), a topologia da rede estvel. Em contrapartida, como os ns de uma rede ad hoc podem se movimentar livre e arbitrariamente, e o alcance das transmisses de radiofreqncia limitado, a topologia da rede pode variar constantemente. Por este motivo, as informaes topolgicas necessrias aos protocolos de roteamento pr-ativos em redes ad hoc necessitam ser atualizadas mais freqentemente que nas redes cabeadas. Deve-se ressaltar, no entanto, que alguns dos protocolos empregados em redes cabeadas tradicionais vm sendo empregados em redes mesh, conforme j mencionado. Os protocolos de roteamento pr-ativos procuram manter consistentes as informaes sobre a topologia da rede armazenadas nas TROT e trocadas entre os ns. Estes protocolos requerem que cada n detenha uma ou mais tabelas para armazenar as informaes de roteamento. As atualizaes so disparadas periodicamente ou quando um n percebe que a topologia da rede foi modificada. Este processo efetuado para manter a consistncia da viso global da rede em cada n. Estes protocolos diferem pelo nmero de tabelas requeridas para o armazenamento das informaes e pelos mtodos que cada um utiliza para difundir as mudanas na topologia da rede. A seguir, sero descritos resumidamente os principais protocolos pr-ativos empregados em transmisses do tipo unicast em redes ad hoc.

2.1.Protocolo DSDV (Destination-Sequenced Distance-Vector)


Baseado no algoritmo clssico chamado Distance Vector (DV) [Tanenbaum 2003], o protocolo DSDV [Perkins e Bhaqwat 1994] um protocolo pr-ativo, onde cada n mantm, em sua TROT, rotas para todos os possveis destinos existentes na rede. A TROT possui os seguintes atributos: next hop e a mtrica utilizada (normalmente a quantidade de saltos). A formao de loops no DSDV evitada, colocandose, ainda, em cada entrada da TROT, o nmero de seqncia (NSEQ) estabelecido pelo ND para ordenar as informaes de roteamento. Outra

importante funo do NSEQ servir como mtrica para o critrio de seleo de rota, conforme descrito a seguir: (1) (2) Uma rota que possua um NSEQ mais atualizado deve ser utilizada; e Quando duas rotas possurem o mesmo NSEQ, aquela que tiver a melhor mtrica deve

ser a escolhida; a outra dever ser descartada ou armazenada como rota secundria. De modo a manter a consistncia das TROT, o protocolo DSDV difunde para os demais ns da rede as atualizaes peridicas e eventuais sobre as mudanas ocorridas em suas respectivas TROT. Existem dois diferentes tipos de mensagens para atualizao das rotas: (1) Mensagem curta: contm apenas as rotas que sofreram algum tipo de modificao.

Esse tipo de mensagem necessita apenas uma nica NPDU (Network Protocol Data Unit), garantindo, desta forma, uma reduo no trfego difundido pela rede; e (2) Mensagem completa: contm toda informao da TROT, o que implica em um grande

volume de dados a ser transmitido. De modo a evitar uma sobrecarga na rede, essas mensagens devem ser enviadas com uma freqncia relativamente baixa. Quando um enlace se rompe, qualquer rota que se utilize deste enlace imediatamente marcada e anunciada com uma mtrica infinita. Isto representa uma informao importante e que deve ser anunciada pelo n aos demais. Quando um n recebe uma mtrica infinita, e possui NSEQ igual ou mais atualizado, uma atualizao de rota encaminhada com esta informao. Consequentemente, rotas com mtricas infinitas tendem a ser rapidamente trocadas por rotas propagadas por novos ns.

2.2.Protocolo WRP (Wireless Routing Protocol)


O protocolo WRP [Murty e Garcia-Luna-Aceves 1996] um protocolo pr-ativo com o objetivo de manter informaes de roteamento entre todos os ns da rede. Cada n na rede responsvel por manter quatro tabelas: tabela de distncia (TDIST), tabela de roteamento (TROT), tabela de custos do enlace (TCENL) e a tabela message retransmission list (MRL). Cada entrada da MRL contm um vetor com o NSEQ da mensagem de atualizao, contador de retransmisses, flag de requisio de reconhecimento - ACK (acknowledgement) com uma entrada por vizinho, e uma lista de atualizaes transmitidas na mensagem de atualizao. O MRL registra que atualizaes em uma mensagem de atualizao precisam ser retransmitidas e quais vizinhos devem reconhecer esta mensagem de retransmisso. Os ns mveis informam um ao outro sobre mudanas de estado dos enlaces, atravs do uso de mensagens de atualizao. Uma mensagem de atualizao somente transmitida entre ns vizinhos e contm uma lista de atualizaes (ND, distncia at ND e n predecessor de ND), bem como uma lista contendo os ns que devem reconhecer (ACK) a atualizao. Os ns mveis enviam mensagens de atualizao aps processarem as atualizaes de seus vizinhos ou descobrirem uma mudana no estado de um enlace com um vizinho. No caso da

perda de um enlace entre dois ns, estes enviam mensagens de atualizao aos seus vizinhos. Os vizinhos, ento, modificam as entradas de suas TDIST e verificam a existncia de caminhos novos por outros ns. Qualquer caminho novo retransmitido de volta ao n original, de tal forma que eles possam tambm atualizar suas tabelas adequadamente. Os ns aprendem sobre a existncia dos vizinhos atravs do recebimento de reconhecimentos e de outras mensagens. Se um n no estiver enviando mensagens, deve enviar uma mensagem de hello dentro de um perodo de tempo especificado para assegurar conectividade. Caso contrrio, a falta de mensagens provenientes do n indica uma falha no enlace com aquele n, podendo provocar um alarme falso. Quando um n mvel recebe uma mensagem de hello de um novo n, uma nova entrada acrescentada sua TROT; uma mensagem contendo informaes de sua TROT transmitida ao novo n. O protocolo WRP pertence classe de algoritmos path-finding com uma exceo importante. Evita o problema de contagem para o infinito (count-to-infinity) [Tanenbaum 2003], forando cada n a executar verificaes de consistncia das informaes de predecessores comunicadas por todos os seus vizinhos. No WRP, os ns de roteamento comunicam informaes acerca da distncia e do antepenltimo n para cada ND da rede. Isto, no final das contas (embora, no instantaneamente), elimina situaes de loop e permite uma convergncia de rota mais rpida quando da ocorrncia de um evento de falha em um enlace.

2.3.Protocolo OLSR (Optimized Link State Routing)


O protocolo OLSR [Clausen et al. 2002] destina-se a redes de alta escalabilidade. Baseia-se em uma tcnica de flooding denominada Multipoint Relaying (MPR) [Qayyum e Laouiti 2002] de modo a reduzir o nmero de pacotes de broadcast pela rede. O mtodo empregado pelo OLSR o seguinte: (1) Cada n difunde, periodicamente, mensagens de hello que contm informaes

relacionadas aos vizinhos afastados em um hop. O campo TTL (time to live) da mensagem de hello igual a 1, razo pela qual no difundido por seus vizinhos Com o auxlio das mensagens de hello, os ns obtm informaes topolgicas locais; (2) Um n (tambm chamado de seletor) escolhe um conjunto de vizinhos para atuar como

seus ns MPR, baseados nas informaes topolgicas locais, as quais so especificadas, em seguida, nas mensagens de hello peridicas; (3) _ Os ns MPR desempenham dois papis:

Quando o seletor transmite ou encaminha um pacote broadcast, somente os ns MPR,

dentre todos os seus vizinhos, retransmitem o pacote; _ Os ns MPR, periodicamente, difundem sua lista de seletores atravs da rede (novamente, empregando flooding). Desta forma, cada n da rede reconhece por qual MPR um determinado n pode ser alcanado; e

_ Deve-se ressaltar que as caractersticas constantes do primeiro e do segundo subitens acima reduzem, respectivamente, o nmero de retransmisses pela rede, por broadcast, de informaes topolgicas, e o tamanho do pacote de broadcast. Como resultado, o protocolo OLSR garante um uso mais eficiente da banda disponvel, quando comparado com protocolos de roteamento tradicionais do tipo link state. (4) Com a informao da topologia global armazenada e atualizada a cada n, o caminho

mais curto entre o NO e o ND pode ser computado atravs do Algoritmo de Dijkstra [Tanenbaum 2003].

2.4.Protocolo CGSR (Cluster-Head Gateway Switch Routing)


O protocolo CGSR [Chiang 1997] difere do protocolo DSDV no tipo de endereamento e no esquema de organizao empregado na rede. Em vez de uma rede "plana", o CGSR opera sobre uma rede mvel hierrquica multihop com diversos esquemas heursticos. Por possuir um Cluster Head (CH) controlando um grupo de ns ad hoc, possvel obter uma estrutura para separao de cdigo (entre clusters), acesso ao canal, roteamento e alocao de banda. Um algoritmo de seleo utilizado para eleger um n como CH no interior de cada cluster. A desvantagem de um esquema por agrupamento, como este empregado pelo protocolo CGSR, que freqentes mudanas de CH podem degradar o desempenho do protocolo de roteamento, uma vez que os ns podem vir a ser sobrecarregados com o processo de seleo de CH, em lugar de estarem retransmitindo pacotes de dados. De modo a se evitar a conduo de um novo processo de seleo toda vez que ocorre uma mudana no cluster, introduz-se o conceito do algoritmo Least Cluster Change (LCC). Usando o LCC, CHs s mudam quando dois deles entram em contato um com o outro, ou quando um n se move e perde o contato com todos os demais CHs da rede. O protocolo CGSR utiliza o DSDV como esquema bsico de roteamento, e conseqentemente, tem muito do mesmo overhead caracterstico daquele protocolo. Porm, o CGSR difere do DSDV por usar esquema baseado em roteamento hierrquico de fonte para destino, com os dados sendo trafegados atravs de CHs e de gateways. Ns gateways so aqueles que esto dentro do raio de alcance de dois ou mais CHs. Um pacote de dados enviado por um NO enviado, primeiramente, para seu CH, e, ento, transmitido deste at um gateway, at o prximo CH, e assim por diante at chegar ao CH pertencente ao cluster de ND. O pacote , finalmente, entregue por este CH ao ND. Usando este mtodo, cada n deve manter uma tabela denominada de Cluster Member Table (CMT), onde so armazenadas as informaes referentes aos CHs de destino para cada n mvel existente na rede. Estas tabelas so difundidas pelos ns, periodicamente, usando o mesmo algoritmo empregado pelo protocolo DSDV. Um n atualiza sua tabela ao receber a tabela correspondente de seu vizinho. Alm da CMT, cada n deve manter uma TROT, para uso na determinao do prximo salto para alcanar o destino. Ao receber um pacote, um n consultar sua CMT e TROT para determinar o CH mais prximo ao longo da rota at ND. Em seguida, o n verificar, em sua

TROT, o prximo salto a ser utilizado para chegar ao CH selecionado, transmitindo o pacote, ento, a este n.

2.5.Protocolo FSR (Fisheye State Routing)


O protocolo FSR [Gerla et al. 2002] um algoritmo destinado s redes ad hoc extensas e que apresentam elevado grau de mobilidade. Seu nome provm de uma analogia de uma propriedade especial com o olho de um peixe, qual seja a de perceber, com alta definio, objetos localizados mais prximos; com o aumento da distncia, a resoluo cai. O FSR adota este mesmo conceito. O NO somente precisa saber em que direo encontra-se ND. Os NI, possuidores de informaes locais mais precisas, corrigiro o movimento dos pacotes em trnsito pela rede at ND. O mtodo empregado pelo FSR o seguinte: (1) Considerando um n especfico, a rede dividida em diferentes escopos baseados em

distncia - hops para os demais ns. Por exemplo, os ND localizados dentro de um raio de alcance de dois hops a partir de NO encontram-se no inner scope; todos os outros se encontram no outer scope; e (2) As atualizaes link state so difundidas a todos os ns vizinhos. Entretanto, as

entradas de roteamento correspondentes aos ns de diferentes escopos so transmitidas com freqncias distintas: ns pertencentes ao inner scope recebem atualizaes mais freqentemente, se comparados queles do outer scope. Desta forma, aqueles ns mais prximos ao NO recebero mais pacotes de atualizao link state, e, portanto, tero informaes atualizadas, ao passo que aqueles mais distantes recebero pacotes link state com uma menor freqncia e, conseqentemente, tero informaes menos precisas; (3) Deve-se ressaltar que o pacote de atualizao link state no difundido pela rede,

como no mecanismo bsico de difuso do estado dos enlaces nos protocolos baseados em link state, mas apenas trocado com os ns vizinhos, tambm provendo o mecanismo necessrio ao descobrimento de vizinhos [Murthy e Manoj 2004]; e (4) De modo a reduzir o overhead do trfego de roteamento ainda mais, as informaes de

link state so propagadas periodicamente. A interrupo de um enlace entre dois ns no impedir a difuso de atualizaes link state. Quando o NO precisa de uma rota at um ND mais afastado, inicialmente, utiliza-se dos pacotes de link state mais recentes para computar o caminho mais curto, mesmo que as informaes constantes dos pacotes estejam desatualizadas. Entretanto, medida que o pacote se aproxima do inner scope de ND, as informaes mais precisas armazenadas nos NI, conforme anteriormente descrito, permitem que os pacotes de dados cheguem ao destino corretamente.

2.6.Protocolo GSR (Global State Routing)


O protocolo GSR [Chen e Gerla 1998] um algoritmo de roteamento do tipo link state. Todavia, o GSR utiliza mecanismos sofisticados e eficientes para controlar o trfego gerado pelos algoritmos pr-ativos. Assim, ele consegue manter uma viso global da rede, podendo fazer clculos precisos de rotas. No GSR, quando um n detecta uma mudana de topologia causada por mau funcionamento ou por desligamento de um n, essa informao mantida em uma tabela de topologia ou de estados de enlaces, onde j devem estar armazenadas informaes de alteraes recebidas pelos seus vizinhos. Essas informaes so preparadas e disseminadas, periodicamente, apenas para os ns vizinhos, e com isto, ao contrrio dos protocolos do tipo link state, no realiza flooding das informaes de roteamento. Alm desta tabela, cada n possui tambm uma lista de vizinhos, uma tabela de prximo n e uma tabela de distncias. No estado inicial, a lista de vizinhos e a tabela de topologia ficam vazias, sendo necessrio atribuir valores de inicializao para as tabelas internas. Aps a atribuio dos valores, o n deve escutar o meio para reconhecer seus vizinhos. De modo a reduzir o tamanho das mensagens de atualizao, o GSR utiliza duas tcnicas: Fresh Update e Fisheye. (1) Fresh Update: nesta tcnica, somente as informaes consideradas teis aos vizinhos

sero disseminadas, j que, se o seu vizinho contm uma informao mais recente, no faz sentido enviar sua informao para ele. Para a utilizao desta tcnica, necessrio que cada n possua um Vetor de Nmeros de Seqncia (VNS), onde, alm de armazenamento de informaes sobre todos os destinos, indica a idade de cada informao enviada, o que permite a comparao de seu VNS com os aqueles recebidos dos vizinhos; se a entrada for mais antiga, a mensagem de atualizao removida; e (2) Fisheye: esta tcnica utiliza o mesmo conceito empregado no protocolo FSR,

anteriormente explicado. O objetivo da tcnica manter informaes mais detalhadas sobre os ns mais prximos, diminuindo o volume de informaes daqueles ns mais distantes. O protocolo GSR, portanto, permite diminuir o volume e o tamanho dos pacotes que contm informaes de roteamento, o que leva reduo do consumo de energia e de largura de banda.

3. Protocolos de Roteamento Reativos


Devido ao carter altamente dinmico de uma rede ad hoc, as informaes globais sobre a topologia armazenada em cada n precisam ser constantemente atualizadas, o que consome muita banda. No entanto, este consumo, algumas vezes, reflete-se num desperdcio de banda, pelo fato das atualizaes de link state, por exemplo, expirarem antes que a rota venha a ser

empregada. De modo a minimizar este desperdcio de banda, surgiu o conceito de protocolo de roteamento reativo ou sob demanda. Nos protocolos de roteamento reativos, o roteamento dividido nos seguintes passos: (1) Descobrimento de rotas: em uma rede ad hoc, se o NO no dispuser de uma rota at o

ND em sua TROT, este difunde um pacote para descobrimento de rota atravs da rede, de modo a determinar o caminho entre NO e ND. NI, ao longo do caminho, encaminha o referido pacote, podendo criar algumas estruturas de dados para identificao da rota; e (2) Manuteno de rotas: uma vez estabelecida a rota entre NO e ND, introduzido um

processo para manuteno da rota de modo a verificar a validade da rota, uma vez que os ns ao longo da rota podem mover-se arbitrariamente, ou mesmo serem desligados por problemas associados indisponibilidade de bateria. Caso ocorra uma falha em um enlace ao longo do caminho, poder ser iniciada uma manuteno local para efetuar um bypass do enlace indisponvel; caso a manuteno local no se mostre vivel, o NO dever ser notificado para que seja reiniciado o processo para o descobrimento de uma nova rota. A seguir, sero descritos os principais protocolos reativos empregados em transmisses do tipo unicast em redes ad hoc.

3.1.Protocolo DSR (Dynamic Source Routing)


O protocolo DSR [Johnson et al. 2002] um algoritmo do tipo source-routing, isto , NO determina qual a rota que o pacote deve seguir pela rede. No so enviadas mensagens peridicas de troca de informaes de roteamento, o que garante um melhor uso da banda da rede e da energia disponvel em cada n. No DSR, o NO determina a rota completa que um pacote dever seguir pela rede. Acrescentando esta informao ao cabealho do pacote, a origem inicia a transmisso, enviando o pacote para o primeiro n indicado na lista. Cada n mantm em cache as rotas aprendidas, e, ao receber um pacote, verifica se possui uma rota para o ND desejado. Se existir, o NO emprega esta rota para enviar o pacote; caso contrrio, utiliza o protocolo de descobrimento de rotas para encontrar uma rota para ND. Cada rota armazenada em cach possui um tempo de vida, que, depois de expirado, exige a retirada da entrada da memria cache. Os ns sempre utilizam o protocolo de descobrimento de rotas quando ocorre um erro no roteamento, uma mudana de posio ou o desligamento de um n. O protocolo de descobrimento de rotas funciona da seguinte forma: NO transmite para seus vizinhos, usando flooding, um pacote de requisio de rota RREQ (route request) contendo os endereos de NO e ND e o registro de rota. Cada NI, ao receber esse pacote, verifica se h em cache uma rota para o n destino. Se existir, envia para NO um pacote de resposta de rota RREP (route reply) contendo a rota reversa at o ND, ou seja, a lista com a seqncia de todos os ns at ND; se no existir, os ns inserem seu endereo no registro de rota e repassam o pacote, tambm usando flooding, aos seus vizinhos. Este procedimento

se repete at que o pacote chegue ao ND ou at um NI que possua informaes sobre a rota para ND. Quando isto acontece, enviado um RREP, utilizando o caminho que est armazenado no registro de rota, necessitando para isso de enlaces bidirecionais. Dessa forma, supondo que no houve falha de comunicao, o NO, alm de descobrir rotas para o ND, passar a conter rotas vlidas para todos os NI, uma vez que podem tambm ser possveis destinos. Como a topologia nessas redes altamente dinmica, o algoritmo contm um mecanismo para manuteno de rotas. Cada n pode monitorar os pacotes de confirmao de outros ns ou ouvir todas as comunicaes que passam por ele (modo promscuo). Assim, cada n pode observar a ocorrncia de problemas com os ns vizinhos, procurando enviar um pacote com informao de erro para o NO. Para este caso, o NO pode optar por utilizar uma rota que esteja em cache ou iniciar um processo para seleo de uma nova rota.

3.2.Protocolo AODV (Ad Hoc On-Demand Distance Vector)


Semelhante ao DSR, o protocolo AODV [Perkins et al. 2002] cria enlaces reversos para que o ND saiba a seqncia de ns que os pacotes devem seguir at NO. Nesse protocolo, quando um NO precisa de uma rota para um determinado ND que no conste de sua TROT, inicia-se um processo para descobrimento de rota. Esse processo consiste da transmisso, usando flooding, de um pacote de RREQ a todos os seus ns vizinhos, que, por sua vez, propagam esta requisio aos demais ns. O processo se repete at que o ND seja alcanado ou at que um NI conhecedor da rota at o destino seja encontrado. Durante esse processo de descobrimento da rota, os ns que recebem o RREQ incluem entradas temporrias em suas tabelas, registrando a NO da mensagem de RREQ. Quando o ND ou um NI que possua uma rota para o destino encontrado, um pacote de RREP enviado de volta ao NO. Enquanto a mensagem RREP propagada, cada NI que a recebe incrementa o campo correspondente quantidade de saltos necessrios para se alcanar o ND. No protocolo AODV, cada n procura transmitir mensagens de hello peridicas aos seu ns vizinhos que possuam rotas que por ele passem. Desta forma, seus vizinhos podem manter-se atualizados sobre a existncia ou no de uma rota. Caso mensagens de hello de um determinado n no sejam recebidas durante um perodo de tempo determinado, assume-se que ocorreu uma quebra em algum enlace pertencente rota, tornando-a invlida. Se a rota ainda estiver sendo usada, o n pode realizar uma nova requisio - RREQ - para seleo de uma nova rota.

3.3.Protocolo TORA (Temporally-Ordered Routing Algorithm)


O objetivo do protocolo TORA [Park et al. 1997] minimizar o impacto das mudanas topolgicas da rede nas atualizaes das TROT, mesmo que isso implique na escolha de uma rota no otimizada. Isso feito restringindo a mensagem de roteamento a um pequeno grupo de ns que estejam perto de onde ocorreu a mudana. Cada n mantm apenas informaes referentes aos seus vizinhos, podendo o algoritmo prover mltiplos caminhos para um mesmo

destino. O protocolo TORA possui trs funes bsicas: criao, manuteno e eliminao de rotas. A criao de rotas requer o estabelecimento de uma seqncia de enlaces iniciados em NO at o ND. Esta criao realizada atravs de um grafo acclico at o destino, garantindo um roteamento livre de loops. Quando um n necessita de uma rota, ele transmite um pacote de requisio com o endereo de destino. O pacote se propaga pela rede at chegar ao ND ou a qualquer n que conhea uma rota at o destino. Este n, ento, envia ao NO uma resposta contendo a sua altura (o nmero de saltos) em relao ao destino. No caminho at o NO, cada NI, por onde passa o pacote, ajusta a sua altura (a quantidade de saltos de NI at ND) para um valor maior que a de seu vizinho (constante do pacote recebido), de modo a criar enlaces direcionados da origem at o n que respondeu, configurando assim uma rota. Quando um n descobre uma rota invlida at ND, ele realiza um processo de manuteno de rota, ajustando sua altura de modo que seja maior que a de seus vizinhos e transmite uma requisio de rota. No momento que receber a resposta, o n ter o valor de sua altura. A eliminao ocorre quando um n detecta que houve uma fragmentao na rede e envia um pacote de desobstruo para retirar as rotas invlidas.

3.4.Protocolo ABR (Associativity-Based Routing)


O protocolo ABR [Toh 1997] define que as rotas devem ser estabelecidas respeitando-se uma mtrica proposta pelo protocolo. Esta mtrica, denominada grau de associatividade, calculada atravs da gerao de pacotes de controle (beacons) que so transmitidos, periodicamente, pela rede. Cada vez que um n recebe um beacon, ele incrementa o contador de associatividade relacionado ao n gerador do sinal. Rotas com um grande grau de associatividade implicam em maior estabilidade. O protocolo ABR pode ser dividido em trs partes: descobrimento, reconstruo e eliminao de rotas. Quando uma rota requisitada, a fase de descobrimento de rotas acionada, onde o NO faz uma difuso da requisio para os ns vizinhos. Ao receber essa requisio, o n verifica se ele prprio o ND; se no for, inclui no pacote o seu endereo, o valor de sua associatividade com seus vizinhos e depois o reenvia por difuso aos seus vizinhos. O NI sucessor apaga todas as informaes de associatividade que o n anterior tinha com seus vizinhos deixando apenas aquela relacionada a ele, alm do caminho percorrido. Assim, quando o pacote chegar ao ND, poder escolher a melhor rota examinando a associatividade dos ns. Se duas rotas possurem o mesmo grau de associatividade o n deve escolher aquela que tiver o menor nmero de ns. O ND, ao escolher uma das possveis rotas, envia uma resposta por ela. Os ns pertencentes ao caminho escolhido marcam esta rota como ativa; as demais rotas permanecem inativas. Dependendo da forma como os ns pertencentes rota se moverem, a fase de reconstruo das rotas consistir em um descobrimento parcial de rotas, uma atualizao de

rotas vlidas para ter certeza de que elas no se alteraram, ou ainda em um novo descobrimento de rotas. Se o NO se movimentar, um novo processo para o descobrimento de rotas dever ser iniciado, enviando-se uma mensagem para eliminar a antiga rota. Quando acontece uma movimentao de ND, o NI imediatamente anterior verifica se existe uma rota utilizando outro n; caso exista, o ND responde ao NI que requisitou a rota, atravs de uma resposta parcial, utilizando o melhor caminho; caso no seja possvel encontrar ND, o processo se repete a partir do NI imediatamente anterior. Caso o processo retorne at a metade do percurso, um novo processo para descobrimento de rota iniciado a partir de NO. A fase de eliminao de rota realizada quando uma rota no mais necessria. Uma mensagem de eliminao de rota enviada por difuso para todos os NI, para que esses possam atualizar suas TROT retirando a rota indicada. A difuso utilizada porque os NI podem ter se movido durante o processo.

4. Protocolos de Roteamento Hbridos


Conforme anteriormente mencionado, os protocolos hbridos combinam as melhores caractersticas de cada uma das duas categorias anteriores - pr-ativos e reativos. Os ns, dentro de certa distncia de um n especfico, ou dentro de uma determinada regio geogrfica, pertencem zona de roteamento daquele n. Para os ns localizados dentro e fora desta zona, so aplicadas metodologias distintas, caractersticas dos protocolos pr-ativos e reativos, respectivamente. A seguir, sero descritos os principais protocolos hbridos empregados em transmisses do tipo unicast em redes ad hoc.

4.1.Protocolo ZRP (Zone Routing Protocol)


O protocolo ZRP [15, 16] um protocolo de roteamento hbrido que, eficientemente, combina as melhores caractersticas dos protocolos de roteamento pr-ativos e reativos. O conceito chave empregado por este protocolo utilizar um esquema de roteamento pr-ativo dentro de uma zona denominada de zona de roteamento limitada ao r-hop (na maioria das vezes, a distncia r um nmero pr-definido que denominado raio da zona de roteamento) da vizinhana de cada n, e usar um esquema de roteamento reativo para os ns alm desta zona. Deve-se ressaltar que quanto maior o valor de r, maior ser a zona de roteamento, e, conseqentemente, o trfego de pacotes de dados contendo informaes de controle relacionadas atualizao de TROT. Se o ND estiver dentro da zona de roteamento de NO (aquele que disparou o procedimento para determinao da rota), ento o pacote imediatamente enviado, pois o n j conhece o caminho. Caso contrrio, o NO envia o pacote em unicast para todos os ns que esto na borda da zona de roteamento, perguntando se conhecem uma rota para ND. Se conhecerem, os ns enviam uma resposta afirmativa e a rota ativada. Caso no conheam, os ns encaminham a mensagem para os ns de borda de suas respectivas zonas de

roteamento. Este procedimento segue at que uma confirmao chegue ou at que o nmero de hops chegue ao mximo. O protocolo ZRP, portanto, consiste de uma plataforma hbrida de protocolos, composta pelos seguintes mdulos: (1) Intra-zone routing protocol (IARP) [HAAS et al. 2002] - protocolo pr-ativo empregado

de modo a manter a topologia local dentro da zona de roteamento; (2) Inter-zone routing protocol (IERP) [HAAS et al. 2002 c] - protocolo reativo responsvel

pela determinao de caminhos para ns que no estejam localizados dentro da zona de roteamento. O IERP utiliza, eficientemente, as informaes disponveis em cada um dos ns de borda acerca de suas respectivas zonas de roteamento; e (3) Bordercast resolution protocol (BRP) [HAAS et al. 2002 d] - tcnica eficiente de

bordercast (usa roteamento unicast para entregar pacotes diretamente para os ns de borda de sua zona de roteamento) de pacotes de RREQ.

4.2.Protocolo CEDAR (Core Extraction Distributed Ad Hoc Routing)


O protocolo CEDAR [Sinha et al. 1999] foi desenvolvido com o objetivo de prover QoS em redes ad hoc. O CEDAR faz uso de o mecanismo core broadcast para transmitir, em modo unicast, qualquer pacote atravs da rede ad hoc, envolvendo o menor nmero possvel de ns. Os ns que participam do processo de core broadcast so denominados core nodes (CN), tambm chamados ns dominadores. A seleo de CN baseia-se num processo de extrao de CN, empregando, para isto, um algoritmo distribudo, compreendendo a fase de core extraction. Os ns, ao escolherem um determinado CN, passam a integrar o conjunto de membros do CN em questo. O caminho entre dois CN denominado enlace virtual (virtual link). De modo a realizar eficientemente o processo de core broadcast, cada CN deve conhecer os CNs vizinhos. A transferncia de informaes sobre vizinhana resulta em um overhead de controle significativo, para o caso de alta mobilidade dos ns. Quando um CN se movimenta, por exemplo, cada membro daquele CN deve selecionar um outro CN. Cada CN mantm as informaes topolgicas locais de sua vizinhana. O protocolo CEDAR emprega um mecanismo de propagao eficiente, do tipo link state, em que a informao relacionada presena de enlaces estveis e da alta disponibilidade de banda difundida aos demais ns; por outro lado, a informao relacionada presena de enlaces instveis e de baixa disponibilidade de banda mantida localmente. De modo a propagar informaes para os demais ns, relacionadas aos enlaces de sua vizinhana, um determinado n emprega tcnicas denominadas slow-moving increase-wave e fast-moving decrease-wave: (1) Uma slow-moving increase-wave originada quando a disponibilidade de banda de um

enlace cresce acima de um determinado threshold; e

(2)

Uma fast-moving decrease-wave propaga-se rapidamente para notificar os ns vizinhos

sobre a reduo, abaixo de um determinado threshold, da banda disponvel de um determinado enlace. Estas ondas so adaptveis topologia dinmica de uma rede ad hoc. Increase e decreasewaves somente se iniciam quando h uma mudana significativa na capacidade de um enlace, isto , quando mudanas na capacidade dos enlaces cruzam certos valores de threshold. O ncleo da rede formado pelos ns selecionados que devem executar um algoritmo para descoberta de uma rota que satisfaa os requisitos de banda requerida a uma determinada aplicao. O clculo das rotas feito sob demanda. O processo de estabelecimento de rotas no protocolo CEDAR conduzido em duas fases: (1) A primeira fase consiste na determinao de um core path entre NO e ND. O core path

compreende o caminho entre os ns dominadores de NO (source CN - SCN) e de ND (destination CN - DCN); e (2) A segunda fase consiste da determinao de um possvel caminho que atenda s necessidades de QoS requeridas pela aplicao (QoS feasible path) sobre o core path. - NO inicia um RREQ caso o ND no conste da tabela de topologia local do SCN; caso contrrio, um caminho imediatamente estabelecido; - Para estabelecimento de uma rota, o SCN inicia um procedimento de core broadcast, no qual um pacote de RREQ encaminhado a todos os CN vizinhos, em modo unicast. Estes por sua vez, reencaminham o pacote tambm aos seus CN vizinhos, caso ND no seja um de seus membros. Um CN que possua o ND como um de seus membros responder ao SCN. Uma vez estabelecido o core path, um caminho com a QoS requerida dever ser escolhido; - De modo a determinar um caminho que atenda aos requisitos de QoS necessrios a uma determinada aplicao, o SCN encontra inicialmente um caminho at o domnio do CN mais distante no core path, e capaz de suportar os requisitos de banda necessrios. Deve-se ressaltar que, dentre os possveis caminhos at o domnio em questo, o SCN escolhe o caminho mais curto e com a maior disponibilidade de banda. Assumindo que o Midcore seja o CN mais distante encontrado pelo SCN. Na prxima interao, o Midcore assume o papel de SCN e encontra outro n Midcore que atenda aos requisitos de QoS requeridos pela aplicao. Caso a banda requerida pela aplicao esteja disponvel no caminho, uma conexo estabelecida; caso contrrio, o core path rejeitado, e NO informado sobre a indisponibilidade de um caminho que atenda aos requisitos de QoS.

Referncias
[Chen e Gerla 1998] CHEN, T. W., GERLA, M. Global State Routing (GSR): A New Routing Scheme for Ad Hoc Wireless Networks, In Proceedings of IEEE ICC 1998, pp. 171-175, Junho 1998.

[Chiang 1997] CHIANG, C. Routing in Clustered Multihop, Mobile Wireless Networks with Fading Channel. In Proceedings of IEEE SICON 1997, pp. 197-211, Abril 1997. [Clausen et al. 2002] CLAUSEN, Thomas, JACQUET, Philippe, LAOUITI, Anis, et al. Optimized Link State Routing Protocol (OLSR), draft-ietf-manet-olsr-06.txt, Setembro 2002.[Qayyum e Laouiti 2002] QAYYUM, Amir, LAOUITI, L. Viennot. Multipoint Relaying: an efficient technique for flooding in mobile wireless networks, Technical Report, INRIA, 2002. [Gerla et al. 2002] GERLA, Mario, HONG, Xiaoyan, PEI, Guangyu. Fisheye State Routing Protocol (FSR) for Ad Hoc Networks, draft-ietf-manet-fsr-03.txt, Junho 2002. [HaaS et al. 2002] HAAS, Z. J., PEARLMAN, M. R., SAMAR, P. The Intrazone Routing Protocol for Ad Hoc Networks (IARP), draft-ietf-manet-zone-iarp-02.txt, Julho 2002. [Johnson et al. 2002] JOHNSON, David B., MALTZ, David A., HU, Uih-Chun, JETCHEVA, Jorjeta G. The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks (DSR), draftietfmanet-dsr-07.txt, Fevereiro 2002. [Murty e Garcia-Luna-Aceves 1996] MURTHY, S., GARCIA-LUNA-ACEVES, J. J. An efficient Routing Protocol for Wireless Networks, Special Issue on Routing in Mobile Communication Networks, pp183-197. Outubro 1996. [Murthy e Manoj 2004] [Murthy e Manoj 2004] MURTHY, C. Siva Ram, MANOJ B. S. Ad Hoc Wireless Networks: Architectures and Protocols. 2. ed. New Jersey: Prentice Hall, 2004. [Park et al. 1997] PARK, V. D., CORSON, M. S. A Highly Adaptative Distributed Routing Algorithm for Mobile Wireless Networks, In Proceedings of IEEE INFOCOM97, pp. 1405-1413, Abril 1997. [Perkins e Bhaqwat 1994] PERKINS, Charles E., BHAQWAT, Pravin. Highly dynamic Destination-Sequenced Distance Vector routing (DSDV) for mobile computers, In Proceedings of SIGCOM94 Conference on Communications Architecture, Protocols and Applications, pp. 234-244, Agosto 1994. [Perkins et al. 2002] PERKINS, Charles E., BELDING-HOYER, Elizabeth M., DAS, Samir R. Ad Hoc On-Demand Distance Vector (AODV) Routing, draft-ietf-manet-aodv-11.txt, Junho 2002. [Qayyum e Laouiti 2002] [Qayyum e Laouiti 2002] QAYYUM, Amir, LAOUITI, L. Viennot. Multipoint Relaying: an efficient techniquefor flooding in mobile wireless networks, Technical Report, INRIA, 2002. [Royer e Perkins 1999] ROYER, E. M., PERKINS, C. E., Multicast Operation of the Ad hoc OnDemand Distance Vector Routing Protocol (MAODV), In Proceedings of IEEE MOBICOM99, pp. 207-218, Seattle, WA, Agosto 1999. [Sinha et al. 1999] SINHA, P., SIVAKUMAR, R., BHARGHAVAN. CEDAR: A Core Extraction Distributed Ad Hoc Routing Algorithm, IEEE Journal on Selected Areas in Communications, vol. 17, n 8, pp. 1454-1466, Agosto 1999.

[Tanenbaum 2003] TANENBAUM, Andrew S., Redes de Computadores. 4. ed. Rio de Janeiro: Elsevier, 2003. [Toh 1997] TOH, C. K., Associativity-Based Routing (ABR) for Ad Hoc Mobile Networks, Wireless Personal Communications, vol. 4, no. 2, pp.1-36, Maro 1997.