Você está na página 1de 10

UNIVERSIDADEFEDERALDABAHIA

INSTITUTODEMATEMTICA
DEPARTAMENTODECINCIADACOMPUTAO

MAT164Telepocessamento
Prof.AlrioS

AlgoritmosdeRoteamento

Equipe:AndrLage,CarlosCaldas,MateusMelo

{andre,mateusma,ccaldas}@im.ufba.br

Salvador,Dezembrode20052005.2
Algoritmosderoteamento
SistemaAutnomo

SistemasAutnomossoumacoleoderedessoboprotocoloIPcujoroteamentoexistee
realizadodeformasdistintasatravsdosalgoritmosderoteamento.Taissistemasseencontramssob
omesmodomnioadministrativo,ouseja,asdeciseseautonomiaspolticotcnicassocomuns
estacoleoe,ainda,estosobasmesmasregrasderoteamento.

Roteador

Aprincipalfunodeumroteador,simplesmente,redirecionarpacotes.Emboraessatarefa
nosejatosimplesquandoexigimoscertaeficincianoroteamento.
Omtodomaiscomumdeserotearpacotesnumaredeosaltoporsalto(hopbyhop).
Quando umpacotechegaaoroteador,esteabreocabealhodopacote,verificaoendereo do
destinatrio, calcula para qual roteador deve enviar o pacote, e envia realizando, assim, o
roteamento.Chamesehopbyhopporquecada"salto"dopacoteparaumroteador,chamasesalto.

Roteamento

Oroteamentopossuiinflunciadiretanoroteamentomotivopeloqualfoicriadopoisele
viabiliza (se configurado corretamente) a criao de redes em grandes escala com nmero
exorbitantesdens.

OroteamentopodeserclassificadocomoRoteamentoInternoeRoteamentoExterno.

ORoteamentoInternosereferetrocadeinformaes dentro deumSistemaAutnomo.


Paratal,existemosprotocolosderoteamentointerno:RIP,IGRP,EIGRP,OSPFeIntegratedISIS.

ORoteamentoExternotrataasinformaesentreosSistemasAutnomos.Soresponsveis
pelacomunicaointerdomnio.NaInternet,porexemplo,osprotocolosderoteamentoexternoso
os principais responsveispelaboacomunicaodas partes.Um exemplooBorder Gateway
Protocol(BGP)queevitaosloopsnoroteamentoepossuiintervenespolticasnoroteamento.
ORoteamentodependededeciesquantotopologiadaredeeascondiesdecontornodo
ambiente.Paraisso,temsecomobaseasTabeledeRoteamentoeProtocolosdeRoteamento.

As"Tabelasderoteamentosoregistrosdeendereosdedestinoassociadosaonmerode
saltosatele,podendocontervriasoutrasinformaes."[1]Astabelassoaorientaoparaonde
ospacotesiro.

Os"Protocolosderoteamentodeterminamocontedodastabelasderoteamento,ouseja,
saoelesqueditamaformacomoatabelamontadaedequaisinformaeselacomposta."[1]Os
protocolosseroresponsveispordefiniratabeladeacordocomseusalgoritmos.

Comodescobriroformatodaredeparamelhorrealizaroroteamento?

Algoritmosderoteamento

Afunodosalgoritmosderoteamentodefinirporondepassarumpacotequechegano
roteador.Paraisso,interessanteterconhecimentosobreoestadodarede(topologiadaredeeas
condiesdecontornodoambiente).

Sempresebuscaomelhorredirecinamentodepacotesdeacordocomapolticadarede.
Umatticacolocarosroteadoresparasecomunicaremeapartirdatrocadeinformaesentre
eles,chegaraumaconclusosobreoestadodarededinamicamente.Evitase,pois,algoritmos
estticosderoteamento.

Algoritmos estticos de roteamento (noadaptativos) so baseados em prdecises de


redirecionamento de pacotes. Os roteadores tem as decises prestabelecidas ignorando a
dinamicidade da rede. Quando a rede iniciada, ele recebe as informaes sobre os
redirecionamentosaseremfeitos.Essesalgoritmospodemserteisempequenasredes(broadcast
numarededomsticaoudepequenoporte,porexemplo).

Osalgoritmosdinmicosderoteamento(adaptativos).Elesmedemeestimamotrfegoda
rede. Tambm agemd e acordo com a topologia (que pode ser alterada devido alguns enlaces
ficaremdesconectados).Hvariaesdealgoritmosadaptativosderoteamentoquanto:
i) origemdainformaoqueserparaosclculos;
ii) motivaoparamudanas(atravsdeestmulosdarede,deoutrosroteadores,oudo
prprioroteador,etc.);
iii) mtrica(agiremcadaintervalodetempo,seadistnciaentreroteadoresaumentar,
nmerodehops,etc.).

Astrocasdeinformaoesentreroteadorespodeser:
i) hierrquica:hregiesderoteadorescujahierarquiaestabelicida
ii) porbraodcast:cadaroteadorrepeteainformaoquerecebeuparaosdemaiscanais
excetoocanaldeondearecebeu;
iii) pormulticast:hacriaoe/oudetruiodegruposderoteadoresdeacordocomas
interaesentreroteadores.
PrincpioGeraldasRotastimas

SejaRarotatimaentredoisroteadoresAeB.SuponhaqueumoutroroteadorCesteja
nessarota.
Logo,arotatimaR'entreCeB,passarporR.

R'
A C B
Concluso:

OconjuntoderotastimasdeXparaYformamumarvoreondearaizY.Essarvore
(sinktree)compeaestruturaderoteamento.Elasebaseinonmerodehopsparaponderarassuas
arestas.Ograndedesafiodosalgoritmosderoteamentoestemdescobrirasinktree.Arvore
tambmusadacomoferramentacompararativadaeficinciaentreosroteadores.
Analisandoografoderoteadoresquedeuorigemsinktree,percebemosqueelauma
rvoregeradoradografocujaraiz

Exemplo:sinktreeparaoroteadorB:
RIPRoutingInformationProtocol

ORIPumprotocolodinmicoderoteamentointerno,ouseja,umprotocoloutilizado
dentrodossistemasautonomos.FoiumdosprimeirosprotocolosIGPedevidoaferramentarouted,
muitousadaemsistemasUNIX4BSD,foimuitopopularizado.
Este protocolo utiliza oalgoritmo deBellmanFord, tambmconhecidocomo algoritmo
vetordistncia,paraoclculodomenorcaminhoentredoispontosdarede.Amtricautilizadapara
oclculodomenorcaminhobaseadaapenasnonmeroderoteadoresqueumpacoteirpercorrer
atchegaraoseudestino(hop),noimportando,portanto,avelocidadedetransmissodeumlink
nemoseutrfegoentreoutrasmetricasquepodeminterferirnoclculodomenorcaminho.
Umadesuascaractersticasafacilidadedeconfigurao.Alemdisso,seualgoritmono
necessitagrandepoderdecomputaoecapacidadedememriaemroteadoresoucomputadores.O
protocoloRIPfuncionabemempequenosambientes,poremapresentasriaslimitaesquando
utilizado em redes grandes, pois ele limita o numero de saltos (hops) entre hosts a 15 (16
consideradoinfinito).OutradeficinciadoRIPalentaconvergncia,ouseja,levarelativamente
muitotempoparaquealteraesnaredefiquemsendoconhecidasportodososroteadores.Esta
lentidopodecausarloopsderoteamento,porcausadafaltadesincronianasinformaesdos
roteadores.Almdisso,emsuaverso1,oRIPnocarregainformaesdemscaraderede,ou
seja,somentepropagarotasderedesclassfull(classesA,BouC),masesseproblemafoisanadona
verso2doRIP.
Esteprotocolopartedoprincpiodequecadaroteadordeverconterumatabelacomtodas
aspossveisrotasdentrodoAS.Assimutilizandooconceitodebroadcast,acadaunidadepr
definidadetempo(opadro30segundos),cadaroteadorenviaatualizaescontendoosprefixos
desuatabeladerotasparatodososroteadoresvizinhos,essesatualizamsuastabelaseenviamaos
seusrespectivosvizinhos.Asrotasqueconstituematabelacontmasseguintesinformaes:

1IPdarede;
2Prximoroteadordarotadedestino;
3Enlaceutilizadoparaalcanaroprximoroteadordarotadedestino;
4Amtricadarota(nmerodeHOPsutilizadosparaalcanararedededestino);
5Tempoinformandoquandoarotafoiatualizadapelaltimavez.

AoreceberumamensagemdeumroteadorX,existemtrscasosparaosquaisumdado
roteadorYatualizasuatabeladerotas:

1QuandoYinformadoporXdeumdestinoquenoconhece.
2QuandoXconheceumcaminhomaiscurtoparaumdeterminadodestino.
3QuandoadistnciaparaumdeterminadodestinopassandoporXmuda.

Amensagemenviadapodeserdotiporequest,queumarequisiodatabeladerotasdos
roteadoresvizinhos,oupodeserdotiporeply,queoenviodatabeladerotascomorespostaauma
mensagemdotiporequest.Aoreceberumamensagemdotiporequestoroteadorenviaasuatabela
completa atravs da mensagem reply. E recebendo uma mensagem reply o roteador valida a
mensagem podendo ou no atualizar sua tabela. Ao iniciar cada roteador contm apenas a
informaosobresuarota,portantoeleenviamensagensrequestrequisitandoatabeladerotasdos
roteadoresvizinhos.
OspacotesRIPsotransmitidosatravsdeUDPeIP,usandoaporta520doUDPtantopara
transmisso quanto para recepo. Caso uma rota no seja atualizada em 180 segundos, sua
distnciacolocadaeminfinito(16hops),ousejaarotaficaindisponvel.Aentradaserremovida
databeladerotascasosepassem270segundossematualizao.
OformatodasmensagensdoprotocoloRIPmostradoaseguir.

Nocampocomandoespecificaseseotipodamensagemrequestoureply.Oformatodo
pacotepermitequesecarregueinformaesdevriosprotocolosdiferentes.Porisso,cadarota
contmumidentificadordeendereodafamlaparaidentificarqualotipodeendereoqueest
especificado.porm,naprtica,oRIPstemsidoutilizadoparasuportaroprotocoloIP.
AlgunsmecanismossoimplementadosnoRIPparatrataralgunsproblemasderoteamento.
OHopcountlimitovalormximodeTTL(Timetolive),noprotocoloRIPinicialmentesetado
em16.Essevalordecrementadoacadaroteadorqueopacotepassareaochegarem0,opacote
descartado.Issodeumladolimitaotamanhodarede,masevitaqueemproblemasdeloops,um
pacotepermaneanaredeinfinitamente.SplitHorizonorecursoqueevitaqueumroteadorRIP
propaguerotasparaamesmainterfacequeeleaprendeu,evitandolaosde2ns.Umaligeira
modificao neste procedimento chamada de Poison Reverse Update, fazendo com que a
propagaoderotassejatambmfeita,inclusive,nainterfaceondefoirecebida,mascommtrica
16.Dessaforma,arotaserignorada.Issofarquecomaatualizaosejafeitamaisrapidamente.
Emredesmaioresotempodeconvergnciaumproblema,porissoorecursodoanncio
disparado fazcomquecasoumarotasetorneindisponvelorotedornoesperepelotempode
atualizaoparacomunicaraosseusvizinhos,massimenvieumbroadcastimediatoavisandoa
indisponibilidadedarota.ComarotasendoremovidaorecursodeHolddowntimerfazcomque
nosejamaceitosannciosdestarotapordeterminadotempo,evitandoquealgumvizinhomais
lentodivulgueinformaesinconsistentes.
OSPFOpenShortestPathFirst

Introduo

OOSPFumprotocoloprojetadoparaoambienteTCP/IPparaserusadointernamenteaoAS
(Sistemaautnomo).
OOSPFumprotocolodotipolinkstate,maiscomplexoqueoutrosprotocolosmaisantigos,
comooRIP.
Nspodemospensaremlinkstatecomosendoainterfacedoroteador.Oestadodeumlink
descritonainterfaceenarelaocomosroteadoresvizinhos.
Adescriodainterfaceinclui,porexemplo,oendereoIP,amscara,otipoderedequeest
conectadoeosroteadoresconectados.Auniodetodosessesestadoscompeobancodedados
linkstate.
OSPFpossuiduascaractersticasbsicas:
Oprotocoloaberto,comespecificaesdedomniopublico(RFC1247)
OSPFbaseadonoalgoritmoSPFoualgoritmodeDijkstra.

Resumodofuncionamento

Cadaroteadorconstriummapacomatopologiadarea*.
Para isso trocam mensagens (Link State Update) de cada um para todos os outros
anunciandoaquemestoligados.
Usam,semprequepossvelmulticast.
Cadaroteadorcalcula,utilizandooalgoritmodeDijkstra(SPF),ocaminhomaiscurtodele
paratodososoutrosroteadoresdarea.
A tabela de roteamento inclui a informao resultante do clculo e ainda a informao
provenientedosroteadoresquefazemfronteirascomoutrasreas.
Osroteadoresvigiamseconstantementeenviandomensagens(Hello)paraverificaremseos
outroscontinuamvivos.
Senorecebemrespostas,avisamosrestantesroteadoresdareaerecalculamosmelhores
caminhos.

*reaanomenclaturaatribudaaumsubconjuntodosroteadoreseredesqueconstituemo
sistemaautnomo(SA)equeparticipamnumainstnciadoprotocoloOSPF.
Adivisoemreaspossibilitaquelimitar,emcadaroteador,otamanhodografodatopologia
eoprocessamentonecessrioparacalcularosmelhorescaminhos.Possibilitatambmlimitaro
nmerodeligaesquepodemmudardeestadoprovocandonovoclculodosmelhorescaminhos
nosroteadores
Apenas as mquinas de uma rea trocam mensagens de descrio de base de dados e tm o
conhecimentodatopologiadessarea.Umareanodevetermaisde200roteadores,naprtica,50
umvalorcomperformancerazovel.
Algoritmo

Cadarotacontmoidentificadordeinterface,onmerodoenlaceeadistnciaoumtrica.Com
essasinformaesosns(roteadores)descobremamelhorrota.Abaixoveremosatabelaformada
peloalgoritmoSPFemcadaumdosns,eestipulandoseamtricacomo1paratodososns,isto
,admiteseadistnciadecadaroteadorparaseusrespectivosvizinhoscomo1.

Fro To Enlace Mtric


m a

A B 1 1
A D 3 1
B A 1 1
B C 2 1
B E 4 1
C B 2 1
C E 5 1
D A 3 1
D E 6 1
E B 4 1
E C 5 1
E D 6 1

Quandoocorreumaalteraoemumdosenlaces darede,osnsadjacentesopercebeme
avisamaosseusvizinhos.Paraosvizinhossaberemseesteavisonovoouvelho,necessrioum
camponopacotecomnmerodamensagemousuahora.Portanto,quandoumnrecebeuma
mensagem, primeiro feita a verificao da existncia ou no desta rota, se ela no existir
adicionada.Seexiste,comparaseonmerodamensagemrecebidacomarotadatabela.Seo
nmerodamensagemrecebidaformaiorqueadatabela,arotasubstituda,casocontrrio,arota
databelatransmitidacomoumanovamensagem.Seosnmerosforemiguaisnadafeito.Este
processochamadodeFlooding.
OSPFxRIP

VeremosagoraalgumasvantagensdoprotocoloOSPFsobreoRIP:

Notemlimitesnonmerodesaltos(hop)
ORIPestlimitadoa15"hops"

Convergnciarpidaesemloop
EnquantooRIPconvergeproporcionalmenteaonmerodensdarede,oOSPFconvergeem
umaproporologartmicaaonmerodeenlaces.IstotornaaconvergnciadoOSPFmuitomais
rpida.Almdisso,noprotocoloRIP,amensagemproporcionalaonmerodedestinos,sendo
assimsearedemuitogrande,cadamensagemterdesersubdivididaemvriospacotes,
diminuindomaisaindaavelocidadedeconvergncia.

Definiolgicadereas
Adefiniolgicadereaspossibilitaummelhorbalanceamentodecarga,seguindoalgica
dividirparareinar.

CaminhosMltiplos
NemsempreamelhorrotaentreXeYdeveseranicautilizada,poisissopodeimplicarem
suasobrecarga.Anlisesmatemticasprovaramqueadivisodo trfegoemduasrotasmais
eficiente.PorissooOSPFutilizaessemtododedivisodecaminhos.
Essadivisorealizadaporumalgoritmomuitocomplexo,pois,comodificilmenteumafonte
e um destino tem duas rotas possveis exatamente iguais, feita uma anlise se as rotas so
suficientementeiguais.Almdisso,devesedecidirafraodotrfegoquedeveserenviadoem
cadaumadelas.

Roteamentoportipodeservio
Se s for usada apenas uma mtrica TOS (Type of Service) no suportado. Se forem
utilizadas vrias mtricas o TOS suportado opcionalmente dando origem a tabelas de rotas
separadas para cada uma das combinaes possveis dos trs bits do TOS (delay, throughput,
reliability).
Porexemplo,seosbitsdoTOSdoIPespecificarematrasoreduzido,baixodbitoeelevada
confiabilidadeoOSPFcalculacaminhosparatodososdestinosbaseadosnaindicaodoTOS.

Pacotededados

AbaixooescopodeumamensagemOSPF.
Referncia:http://www.faqs.org/rfcs/rfc1247.html

1 1 2 4 4 2 2 8 Variable
Verson Type Packet RouterID reaID Check Autenticat Autenticat Data
Number Length sum ionType ion

Versionnumber:IdentificaaversoOSPFusada.
Type:Identificaotipodepacoteusado
o Hello:Estabeleceemantmrelacionamentoscomvizinhos.
o Database description: Descreve os ndices da base de dados topolgica. Estas
mensagenssotrocadasquandoumaadjacnciainicializada.
o Linkstaterequest: Requisitapartedabasededadosdosroteadoresvizinhos.As
mensagens so trocadas aps o roteador descobrir (examinando a descrio dos
pacotes)quepartedesuabasededadosdetopologiaestdesatualizada.
o Linkstateupdate:Respondeaumpacotelinkstaterequest.
o Linkstateacknowledgment:Reconhecepacotesdeupdatedotipolinkstate
Packetlength:Especificaotamanhodopacote(incluindooprpriocabealho)embytes.
RouterID:Identificaaorigemdopacote
AreaID: Identificaareaqueopacotepertence.Todosospacotessoassociadosauma
nicarea.
Checksum:reautilizadaparaverificaraintegridadedopacote.
Authentication type: Contmotipodeautenticao.Todososprotocolosalteradosso
autenticados.Otipodeautenticaoconfiguradoporreabase.
Authentication:Contminformaesdeautenticao
Data:Contmosdadosdopacote

Referncias

http://www.inf.ufsc.br/grafos/temas/custominimo/dijkstra.html
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/ospf.htm#xtocid1
http://www.ncat.co.uk/ciscodocuments/ospf_dg.pdf
http://www.faqs.org/rfcs/rfc1247.html

Você também pode gostar