Beruflich Dokumente
Kultur Dokumente
3. Roteamento
3.1 Roteamento 'aseado em (a)elas 3.2 $lgor%tmos de Roteamento 3.2.1 Roteamento Vector-Distance 3.2.2 Roteamento Link-State 3.3 Protocolos de Roteamento 3.3.1 Interior Gateway Protocol *I+P,- RIP e ./PF 3.3.2 Exterior Gateway Protocol *E+P, 3.3.3 Border Gateway Protocol *'+P,
4. IP "ult%cast
4.1 Roteamento Multicast
!. IP "1vel
!.1 Re2u%s%tos do IP "1vel !.2 "odelo '3s%co !.2.1 Re2u%s%tos do "odelo '3s%co !.2.2 "ovendo de C4lula #ara C4lula !.2.3 Loops e 'uracos negros
1. Introduo
A evoluo da Internet tem acontecido de forma surpreendente. Existiam algumas centenas de mquinas conectadas a Internet em 1982. Ela era um playground para um grupo de elite de cientistas da computao !"I#E9$%. Este n&mero cresceu para 2'$ mil()es de computadores conectados em primeiro de *aneiro de 199+. "ma estimativa de que 2, mil()es de usurios tem acesso a Internet, diferentes tipos de usurio' tais como' professores e estudantes' pesquisadores e (omens de neg-cio' *ornalistas e engen(eiros. mais da metade dos computadores conectados nos Estados "nidos pertencem a compan(ias comerciais. Este rpido crescimento de participao internacional e comercial / caracter0stica da recente evoluo e provavelmente explica o assom1roso crescimento nos recentes anos2 a rede parece do1rar de taman(o a cada ano. 3 usurio deve se perguntar como sua mensagem que / enviada pelo correio eletr4nico camin(a pela grande rede' de um ponto a outro extremo do planeta. 5ue camin(os a mensagem percorre 6 7o emaran(ado da Internet ' esta mensagem com certe8a c(egar. 9entro deste contexto' este tra1al(o se propo: a mostrar como / reali8ado o roteamento ;processo de escol(a do camin(o atrav/s do qual a mensagem / enviada ao destino< na Internet, sua evoluo (ist-rica. algoritmos e protocolos. pro1lemas e solu)es de roteamento na Internet. Este tra1al(o est organi8ado da seguinte maneira' a seo 2 apresenta os conceitos 1sicos do I= ;Internet Protocol<. A seo > apresenta os conceitos do roteamento clssico. 7as se)es seguintes apresentam tecnologias mais recentes de roteamento. A seo + o roteamento multicast, e a organi8ao do ?@one na seo $. 7a seo A / apresentado o conceito de mo1ilidade na Internet. =ara finali8ar a seo B apresenta considera)es finais so1re os pro1lemas de roteamento.
2 . Camada I= D Internet
"ma rede #C=EI= / constitu0da por su1Dredes interconectadas por elementos denominados gateways. A princ0pio' a nature8a das tecnologias de comunicao que so utili8adas nessas su1Dredes no / relevante ao escopo das atri1ui)es da arquitetura #C=EI=. =elo contrrio' / exatamente por oferecer um servio de comunicao de dados' tendo por premissa a integrao de su1Dredes de tecnologias diversas' que essa arquitetura tem alcanado sucesso no meio acad:mico e comercial. 3 elemento gateway / o principal componente de uma rede #C=EI=. Ele possui funcionalidades espec0ficas que so distintas daquelas normalmente atri1u0das ao gateway em redes 3FI. A funo principal de um gateway #C=EI= / a de reali8ar o encamin(amento de datagramas I=' sendo responsvel pela oferta de todo tipo de interconexo entre su1D redes f0sicas. Assim, su1Dredes interconectadas por gateways constituem uma rede &nica' geralmente denominada Internet. @GIFA9+% 3s gateways reali8am todas as opera)es necessrias ao encamin(amento de um datagrama a partir da su1Drede de origem at/ a su1Drede de destino. 3 termo su1Drede designa qualquer rede f0sica constituinte de uma rede internet.
3 mecanismo utili8ado pelos gateways para o roteamento de datagramas / 1aseado no endereamento I=. 3 gateway analisa o conte&do do datagrama I=' em especial o endereo de destino. Este campo cont/m a identificao da su1DredeDalvo. Fe o gateway * estiver conectado H su1DredeDalvo' a soluo / imediata. Caso contrrio' a partir da identificao da su1Drede / o1tido' mediante processos de mapeamento' o endereo f0sico do pr-ximo gateway na rota para atingir a su1Drede de destino. 7o caso do exemplo da figura 1' temDse2
5uando a estao de origem 8.I envia um datagrama para destino D1' o datagrama c(ega primeiro no gateway +a). Este analisa o endereo de destino e desco1re que D1 se encontra na su1Drede '. Como +a) tam1/m est conectado H su1Drede '' o datagrama pode ser entregue diretamente a D1.
5uando o datagrama / enviado de 8.8 para D2' o gateway +a) no tem a possi1ilidade de fa8er a entrega diretamente. Ele passa' ento' o datagrama para o gateway +)c que fa8 a entrega.
Jigura 1 D Encamin(amento de 9atagramas atrav/s de Gateways. Este processo' assim como a construo das ta1elas de roteamento e os protocolos usados na atuali8ao dessas ta1elas' so discutidos no item 2.+ deste cap0tulo' dedicado ao roteamento. A seguir' so apresentadas caracter0sticas principais do endereamento I=.
2.1 Protocolo IP
7a camada I= esto presentes as fun)es de transporte dos 1locos de dados denominados datagramas' da su1Drede de origem H su1Drede de destino. 3s datagramas so transportados
atrav/s de su1Dredes diversas' so1 o controle dos gateways. Em algumas su1Dredes' por limita)es inerentes H tecnologia empregada' o taman(o mximo de um 1loco de dados de transmisso pode ser inferior ao taman(o do datagrama a ser transmitido. 7este caso datagramas originais so fragmentados em datagramas menores pelo gateway. 7a recepo ( um mecanismo equivalente que monta o datagrama original a partir dos datagramas fragmentados. Estas fun)es so de responsa1ilidade da camada I=. 3utras fun)es relevantes dessa camada so o mapeamento de endereos I= em endereos f0sicos e viceD versa' al/m do roteamento.
3 datagrama tem inicio com o campo verso ;+ bits). Este campo indica a verso do protocolo I= sendo usada' o que determina o formato do ca1eal(o internet. , campo seguinte' o com#r%mento do ca)eal9o ;I!K -Internet Header Length - + bits), fornece o referido comprimento em n&mero de palavras de >2 bits, indicando o in0cio do campo de dados. , valor m0nimo valido para o comprimento do ca1eal(o / de cinco palavras. 3 campo t%#o de serv%o ;8 bits) fornece uma indicao dos parLmetros da qualidade de servio dese*ada. Estes parLmetros so usados como orientao na seleo dos servios de transmisso de dados das su1Dredes. , campo com#r%mento total ;1A bits) fornece o comprimento do datagrama' medido em octetos' incluindo o ca1eal(o e a parte de dados. , comprimento mximo de um datagrama / de A$.$>$ octetos. 9atagramas desse taman(o so impraticveis para a grande maioria dos computadores. 7a verdade' todos os computadores de uma rede internet devem estar preparados para aceitar datagramas de $BA octetos. 9atagramas superiores a $BA octetos podem ser enviados quando o emissor tem certe8a de que o destinatrio est apto a aceitDlos.
3 campo %dent%7%cao ;I9 D 1A 1its) / usado na montagem dos fragmentos de um datagrama. , campo flags ;> 1its) serve ao controle de fragmentao' indicando se um datagrama pode ou no ser fragmentado e se (ouve fragmentao. 3 campo o77set de 7ragmento ;1> 1its< indica o posicionamento do fragmento dentro do datagrama original. Este posicionamento / medido em unidades de 8 octetos ;A+ 1its ). Este campo vale 8ero em datagramas noDfragmentados e no primeiro fragmento de um datagrama. 3 campo tem#o de v%da ;8 bits) indica o tempo mximo que o datagrama pode trafegar em uma rede internet, sendo este campo decrementado em cada gateway. 5uando o seu conte&do c(ega a 8ero' o datagrama / descartado. 3 o1*etivo / eliminar datagramas que no atingem o seu de destinatrio. 3 campo #rotocolo ;8 1its< indica o protocolo usurio do I=' cu*os dados sero transportados na parte de dados do datagrama. 3 campo c9ec0sum do ca)eal9o ;1A 1its< serve para identificar erros ocorridos durante a transmisso ou na atuali8ao do ca1eal(o. desta forma' o checksum / recalculado e verificado a cada ponto onde o ca1eal(o e processado. Em seguida esto os campos de endereos2 endereo de or%gem ;>2 1its< e endereo de dest%no ;>2 1its<' respectivamente' endereos I= do emissor e do destinatrio do datagrama. 3 campo o#es possui taman(o varivel' podendo conter nen(uma ou vrias op)es. 3 campo / dividido em duas partes' uma indicando a classe da opo e a outra' o n&mero da opo. As classes podem ser de controle' de indicao de erros e de medio ou testes. 9entro de cada classe' ( os n&meros de opo que identificam as fun)es auxiliares dispon0veis. Jinalmente' o campo #add%ng' de taman(o varivel / usado para garantir que o comprimento do ca1eal(o do datagrama sempre se*a um m<iplo inteiro de >2 1its. @GIFA9+%
preservando endereo I= de destino' que / utili8ado na o1teno dos endereos intermedirios dos gateways presentes na rota. Assim' o encamin(amento I= / uma sequ:ncia de ciclos repetidos2 anlise do endereo I=' o1teno do endereo f0sico da estao ;se a su1Drede de destino foi atingida< ou do gateway de sa0da ;se a estao pertence a uma su1Drede remota< e envio do datagrama para o endereo f0sico o1tido.
A classe $ atende as necessidades de redes de grande a1rang:ncia constitu0das de poucas su1Dredes e com elevado n&mero de esta)es' estando dispon0veis 8 bits ;o bit mais significativo vale ,< para identificao das su1Dredes e 2+ bits para a identificao das
esta)es. A classe ' representa redes intermedirias' com 1A bits ;os dois bits mais significativos valem 1 e ,< para a identificao das su1Dredes e 1A para as esta)es. A classe C atende tipicamente H faixa das redes locais. Como estas so 1astante numerosas' so reservados 2+ bits os $ bits mais significativos valem 1' 1 e ,< para a identificao das su1Dredes e apenas 8 bits para a identificao das esta)es. A classe D identifica um endereo multicast ;de difuso< e a classe E est reservada para uso futuro. Esta diviso do campo endereo foi adotada tam1/m para que a extrao dos identificadores de su1Drede pelos gateways fosse otimi8ada. Como pode ser o1servado na Jigura >, 1asta o teste dos bits iniciais que se*am identificadas as classes utili8adas. 9esta forma' a extrao dos endereos pelos gateways tornaDse 1astante simples e eficiente' refletindo diretamente no gan(o de desempen(o da rede como um todo.
2.1.4 Convenes
Atrav/s do uso de valores preesta1elecidos nos identificadores de su1Dredes e de estao do endereo I=' / poss0vel utili8ar funcionalidades adicionais reali8adas pela camada I=. Estas fun)es so descritas a seguir. A funo directed broadcast ;difuso dirigida< permite o envio de uma mensagem a uma su1Drede de destino para que se*a feita a sua difuso Hs esta)es dessa rede. 7este caso' o campo id.estao do endereo I= / preenc(ido com ls e o id.rede cont/m o identificador da su1Drede. A funo limited broadcast ;difuso restrita< possi1ilita o envio de uma mensagem as esta)es locais. 7este caso' tanto o id.rede como o id.su1Drede so preenc(idos com ls. Em geral' o valor I,I no endereo I= significa IesteI e o valor I1I' todosI. A utili8ao destes valores / restrita a situa)es excepcionais' na maioria das ve8es quando se descon(ece o endereo exato do destinatrio a ser alcanado. A Jigura + apresenta os casos de utili8ao de valores preesta1elecidos e o significado associado.
3 endereo I=' com seus >2 bits, tornaDse demasiado grande para a notao decimal. =or isso / utili8ada a notao decimal pontuada. 3s >2 bits so divididos em quatro grupos de 8 bits cada. =or exemplo' dado o endereo I=2 ,,,,,,11 ,,,,,111 ,,,,1111 ,,,,,,,1' sua representao seria2 >.B.1$.1. 3utra conveno / a reserva do valor 12B para o primeiro octeto para indicar um endereo de loop de retorno. Assim' a mensagem gerada com tal valor no sai da estao. ela / devolvida ao emissor. Isso / usado em testes locais de programas. 7a Jigura $' / apresentada uma rede internet com tr:s su1Dredes interconectadas pelos gateways interconectadas pelos gateways @ e E e utili8ando endereos classe @. Male o1servar a formao dos endereos das esta)es e dos gateways. 3s endereos de estao esto em itlico. os que assim no esto so os endereos de rede. 9eveDse notar' tam1/m' que os gateways possuem um endereo individual em cada su1Drede a que esto conectados. @GIFA9+%
2.1. Fragmentao
Como um datagrama trafega atrav/s de diversos tipos de rede e cada tecnologia tem um taman(o de 1loco diferente' a camada I= possui o mecanismo de 7ragmentao ' para garantir que um datagrama possa atravessar redes que utili8em taman(os de 1loco de transmisso diferentes. 5uando for necessrio transportar um datagrama de taman(o maior do que aquele que a su1Drede pode suportar' o mecanismo de fragmentao / acionado. 3 datagrama original / particionado em 7ragmentos. 3 taman(o de fragmento / determinado de maneira a poder ser transportado em &nico 1loco de transmisso da su1Drede. 3s fragmentos so transportados como se fossem datagramas independentes at/ o destino. Ao rece1er o primeiro fragmento' a estao inicia uma tempori8ao para aguardar o con*unto completo de fragmentos. se algum faltar' o datagrama / descartado. Assim' o processo de fragmentao provoca uma perda de efici:ncia devido H preservao dos fragmentos at/ a estao destinatria ;mesmo que se*am transportados por su1Dredes com taman(o de 1locos superiores< e devido ao aumento do 0ndice de retransmiss)es nos casos de perda de fragmentos' quando' ento' o datagrama completo / descartado. =ara fragmentar um datagrama longo' so criados vrios datagramas menores que rece1em uma c-pia do datagrama original sendo alguns dos seus campos modificados. 7os datagramas criados' o taman(o da parte de dados / m<iplo de 8 octetos e est limitado pelo taman(o mximo do 1loco de transmisso permitido na su1Drede. =ode ser que o <imo fragmento no se*a m<iplo de 8 octetos. 7a definio do taman(o do fragmento so levadas em conta a parte dos dados e a do ca1eal(o. A primeira parte dos dados do datagrama original / inserida no primeiro fragmento e neste o campo com#r%mento total / atuali8ado com o taman(o dessa parte de dados e do ca1eal(o. 7esse primeiro fragmento' um dos bits do campo la!s' c(amado bit ma%s-7ragmentos: rece1e o valor 1 para indicar que mais fragmentos devero seguirDse. 3 seu campo o set de ra!"ento permanece igual ao datagrama original. 3 restante dos dados / inserido em fragmentos su1sequentes. 7estes' o cam#o com#r%mento total corresponde H quantidade de dados efetivamente enviada. 3 valor do o set de ra!"ento em cada um desses fragmentos / a soma do o set de ra!"ento e do n&mero de octetos de dados do fragmento anterior. Fe o fragmento no for o <imo' o bit ma%s-7ragmentos do campo 7lags rece1e o valor 1. caso contrrio' o valor I,I. Al/m destes campos essenciais ao processo' os outros campos so alterados' como o campo de op)es' o campo de comprimento do ca1eal(o e o checksum. 7a recepo' um datagrama / recon(ecido como fragmento pela indicao do bit ma%s7ragmentos do campo la!s e da ocorr:ncia de valor diferente de 8ero no campo o set de ra!"ento ;exceto se for o primeiro fragmento<. 3s fragmentos de um mesmo datagrama so identificados atrav/s do campo %dent%7%cao' dos endereos I= de origem e destino e do campo de protocolo' copiados a partir do datagrama original no momento da fragmentao. 3 <imo fragmento / identificado por ter o campo "ais- ra!"entos igual a 8ero e pelo valor diferente de 8ero do campo o set de ra!"ento.
do endereo ?AC 'edium (ccess &ontrol) !" bits) / superior ao taman(o do endereo I= ;$% bits<. 3 mesmo pode ser dito o pro1lema inverso. 3 #C=EI= possui dois protocolos espec0ficos para a questo da resoluo de endereo2 os protocolos $RP ;(ddress )esolution Protocol< e GAG= )e*erse (ddress )esolution Protocol). Am1os so descritos a seguir.
3 protocolo AG= independe da su1Drede f0sica su1*acente. Entretanto' uma ve8 que deve transportar endereos f0sicos' como conte&do' as mensagens AG= possuem formato varivel em funo das caracter0sticas da su1Drede utili8ada.
7a figura 8' os gateNaOs QC e QK exercem a funo de E.terior Gateway na comunicao entre o -istema &ore e os Fistemas Aut4nomos ;FA1 e FA2<. 3s mesmos gateNaOs QK exercem a funo de Interior Gateway na comunicao entre redes pertencentes ao mesmo FA.
Jigura 9 D #a1ela de Goteamento do QateNaO @. #ipicamente' a ta1ela de roteamento do I= cont/m entradas do tipo ;7'Q<' onde 7 / um endereo I= ;endereo de destino< e Q / endereo I= do pr-ximo gateway para atingir 7. Essa ta1ela' portanto' s- determina o pr-ximo passo no camin(o para um destinatrio. 7em a estao emissora nem o gateNaO con(ecem a rota completa at/ a estao a rota completa at/ a estao destinatria. Male ressaltar que as entradas dessa ta1ela s- referenciam gateways que podem ser atingidos diretamente' isto /' todos os gateNaOs listados na ta1ela de roteamento de uma mquina ? esto conectados Hs su1Dredes f0sicas nas quais a mquina ? est conectada @GIFA9+%. "m exemplo de ta1ela de roteamento / dado na figura 9. A ta1ela de roteamento do I= pode conter informa)es so1re todos os destinatrios de uma rede internet, * que a maioria das mquinas no teria espao em mem-ria suficiente para isso =or esse motivo' so arma8enados os endereos das su1Dredes. 3utra t/cnica utili8ada para minimi8ar o taman(o das ta1elas / a utili8ao de rotas predefinidas de/ault< para o qual um datagrama deve ser enviado sempre que no for encontrada na ta1ela uma entrada espec0fica para o endereo I= destino. A utili8ao de rotas predefinidas / particularmente &til em redes com um &nico gateNaO' * que todas as demais su1Dredes da rede interne devem ser atingidas mediante esse gateway.
@GIFA9+%
3 algoritmo de roteamento / a t/cnica utili8ada pelos gateways para se locali8arem mutuamente e para conseguirem comunicao com as diversas redes de uma rede internet. A ta1ela de roteamento de um gateway / atuali8ada a partir de informa)es o1tidas na execuo do algoritmo de roteamento utili8ados na arquitetura #C=EI=2 MetorD9istLncia 0ector-1istance) e EstadoDdoDEnlace ;Link--tate<' que so discutidos a seguir.
se o gateway emissor con(ecer um camin(o maios curto para determinada su1Drede' ou se*a se a distLncia apresentada na ta1ela do emissor for menor do que a da ta1ela do receptor. se o gateway emissor apresentar uma su1Drede que o receptor no con(ece' ou se*a' se na ta1ela do emissor existir uma entrada que no est presente na ta1ela do receptor. esta entrada / inserida na ta1ela do receptor. se uma rota que passa pelo emissor tiver sido modificada' ou se*a' se a distLncia associada a uma su1Drede que passa pelo emissor tiver mudado.
7a atuali8ao dos campos de distLncia da ta1ela do receptor' deveDse considerar a distLncia entre os gateways emissor e receptor' ;por exemplo' / necessrio somar 1 no caso da m/trica 1aseada em hops<. Male lem1rar que' para cada su1Drede especificada na ta1ela' existe associada um campo que indica o pr-ximo gateway na rota para essa su1Drede. A figura 1, ilustra este tipo de roteamento. 3 algoritmo / simples e de fcil implementao. por/m' em am1ientes dinLmicos' onde novas conex)es surgem e outras so desativadas com freqR:ncia' a informao de atuali8ao propagaDse muito lentamente e' durante esse per0odo de propagao' alguns gateways possuem informa)es de roteamento inconsistentes. Al/m disso' as mensagens de atuali8ao tornamDse enormes' pois so diretamente proporcionais ao n&mero total de redes e gateways presentes na rede internet ;todos os gateNaOs devem participar' seno o algoritmo no converge<.
emissor. Como as mensagens trafegam inalteradas a deteco de pro1lemas tornaDse mais fcil.
Inicialmente' quando o taman(o da Internet ainda permitia' o algoritmo de roteamento implementado no -istema &ore era do tipo 0ector-1istance. Em 1988' por causa dos pro1lemas * citados do algoritmo 0ector-1istance, a Internet passou a implementar um algoritmo de roteamento do tipo Link--tate em seu -istema &ore. 3s algoritmos descritos anteriormente assumem' a priori' a exist:ncia de uma ta1ela de roteamento devidamente iniciada. Esta iniciao depende do pr-prio sistema computacional no qual se situa a camada I=. Mrias solu)es manuais existem como' por exemplo' a carga de uma ta1ela pr/Dconfigurada com dados limitados ou a carga de uma ta1elas va8ias que so preenc(idas atrav/s de comandos. Entretanto' o pro1lema principal / a manuteno dessas ta1elas devido H dinLmica das redes. =ara resolver esse pro1lema tornaDse imprescind0vel o uso de mecanismos automticos' previstos nos protocolos de roteamento descritos nos itens seguintes.
atuali8am suas rotas de acordo com o algoritmo de roteamento 0ector-1istance, descrito no item >.2.1 =ara evitar que uma rota oscile entre dois ou mais camin(os com a mesma m/trica' o GI= especifica que uma rota deve ser atuali8ada somente quando a nova rota possuir distLncia menor que a atual.
roteamento levando em considerao o tipo de servio. 1alanceamento de carga entre rotas de mesmo taman(o. participao dos gateways e redes em su1grupos denominados reas' sendo a topologia de uma rea con(ecida apenas dentro da mesma' facilitando o crescimento modular do FA . definioda topologia de rede virtual que a1straia detal(es de rede real. divulgao e informa)es rece1idas de e.terior gateways. 3 formato da mensagem permite distinguir informa)es rece1idas de fontes externas daquelas rece1idas dentro do FA .
3 protocolo 3F=J / 1aseado nas mensagens2 Hello, 1atabase 1escription, Link -tatus )e4uest e Link -tatus 5ptade. 5uando um gateway 3F=J / iniciali8ado' sua primeira ao / contatar os gateways vi8in(os' atrav/s de mensagens Hello. 3s gateNaOs trocam mensagens entre si para eleger o !ateway "estre ;9G D9esignated Gouter<. Este gateway tornaDse responsvel pela notificao de informa)es de roteamento a todos os gateways presentes na rede ;gateways secundrios<. 7os protocolos de roteamento discutidos anteriormente todos os gateways enviavam e rece1iam informa)es de roteamento' gerando trfego excessivo. A figura de um gateway mestre' com o funo de geradorEdistri1uidor de informa)es' redu8 significativamente o trfego relativo Hs mensagens de roteamento' que so trocadas somente entre o gateway mestre e os demais gateNaOs secundrios. 3 3F=J usa o roteamento link state. As informa)es de roteamento trocados entre gateways, atrav/s da mensagem 1atabase 1escription' indicam o estado e o custo associado Hs interfaces e aos gateways vi8in(os. Estas mensagens so confirmadas pelos gateNaOs que a rece1em. Como as 1ases podem ser grandes' uma 1ase de topologia pode gerar vrias mensagens. A mensagem Link -tatus )e4uest / usada por um gateNaO na requisio de dados atuali8ados a outro gateway. 7a mensagem Link -tatus 5pdade / usada por um gateway no envio de informa)es so1re o estado de seus enlaces.
"ma ve8 esta1elecido o gateway mestre da cada su1Drede internet ,reali8ada a troca de informa)es de roteamento entre o gateways mestres das vrias su1Dredes em que este*a conectado' o gateNaO monta a sua 1ase de dados de roteamento. 3 algoritmo F=J /' ento executado a partir dessa 1ase e' como resultado' / o1tida uma rvore de roteamento com o gateway na rai8' indicando a conectividade com outras redes. A partir dos dados de custo' so calculados os custos totais das rotas at/ cada su1Drede da internet.
esto diretamente conectadas por um' ca1o' por exemplo. ou esto conectados por uma rede transparente para eles' isto /' uma rede cu*a estrutura interna eles no con(ecem.
7o fa8 parte do protocolo EQ= determinar quando dois gateNaOs devem tornarDse vi8in(os. Esta / uma tarefa do administrador do FA . 9ois gateways tornamDse vi8in(os atrav/s da troca de mensagens de $2u%s%o de A%B%n9o. Ap-s se tornarem vi8in(os' dois gateNaOs passam a trocar mensagens de D%s#on%)%l%dade' para con(ecer o estado do vi8in(o ;conectadoEdesconectado<' e mensagens de $lcance' para identificar quais redes podem ser acessadas atrav/s do vi8in(o.
3 EQ= / um protocolo do tipo solicitao polling). As mensagens so trocadas somente quando ocorre uma solicitao de um dos vi8in(os. =or isso' o EQ= permite que cada gateway controle a sua taxa de envio e rece1imento de informao de roteamento. Al/m disso' esse protocolo permite que um F A ten(a um mecanismo de roteamento interno que no / afetado por fal(as em outros sistemas.
#A7E79A%
Com o crescimento da Internet' o uso do EQ= tornouDse limitado. Existia a necessidade de acrescentar fun)es de policiamento no roteamento e o protocolo devia suportar topologias complexas. Consequentemente surgiu o @Q=' para suprir as defici:ncias do EQ= no roteamento entre sistemas aut4nomos. Goteadores com @Q= se preocupam com crit/rios pol0ticos de roteamento. "m sistema aut4nomo ;FA< deve querer (a1ilidade de enviar pacotes para algum site e rece1er pacotes de outro site de seu interesse. Entretanto' ele no deve gostar de condu8ir pacotes entre sistemas aut4nomos ;FAUs< que no se*a de seu interesse. =or exemplo' compan(ias telef4nicas devem atuar como portadora de seus clientes' mas no dos outros. 3 protocolo @Q= foi pro*etado para permitir muitos crit/rios de roteamento a serem aplicadas no trfego entre FAUs. Crit/rios t0picos envolvem considera)es de ordem pol0tica' de segurana' ou econ4micas. Alguns exemplos de limites de roteamento so2 nunca coloque o Iraque na rota para o =entgono. trfego iniciando ou terminando na I@?' no trafega para ?icrosoft. 3s crit/rios so configurados manualmente em cada roteador @Q=. 9o ponto de vista do roteador @Q=' o mundo consiste de outros roteadores @Q= interconectados. 9ois roteadores @Q= so considerados conectados se eles compartil(am uma rede comum. 9ado o interesse de um @Q= especial no trfego' as redes so grupadas em tr:s categorias. A primeira categoria / stu's networks' na qual somente tem conexo para um roteador @Q=. Estas no podem ser usadas para trLnsito na rede' porque s- tem uma ligao. A segunda / as redes "ulticonnected networks. =odem ser usadas para trfego em trLnsito' exceto se recusarem. Jinalmente' existem as redes transit networks' como um 1acS1one' que esto dispostas a manipular pacotes de outros' possivelmente com algumas restri)es. =ares de roteadores @Q= se comunicam atrav/s de conex)es #C=. 3perando deste modo eles fornecem uma comunicao confivel e escondem os detal(es da rede que os pacotes esto passando. @Q= / um protocolo que usa o algoritmo *ector distance' mas com uma pequena diferena. Ao inv/s de manter a distLncia de cada destino' cada roteador @Q= mant/m o camin(o usado. Fimilarmente' ao inv/s de periodicamente dar a cada vi8in(o a distLncia estimada
para cada poss0vel destino' cada roteador di8 a seus vi8in(os o camin(o exato que est usando. Como um exemplo' considerar os roteadores conforme a figura 12. Em particular' considerar a ta1ela de roteamento de J. Fupor que ele usa o camin(o JQC9 para alcanar 9. 5uando os vi8in(os sua informao de roteamento' eles fornecem seus camin(os completos' como mostra a figura 12 ;por simplicidade' somente o destino 9 / ilustrado<.
Jigura 12 D Goteamento com o protocolo @Q= Ap-s todos os camin(os c(egarem dos vi8in(os. J examinaDos para ver qual / o mel(or. Gapidamente descarta os camin(os de I e E' porque estes camin(os passam por J. A escol(a est entre @ e Q. Cada roteador @Q= cont/m um m-dulo que examina rotas para um dado destino e d um valor a eles' retornando um n&mero da distLncia para o destino de cada rota. Alguma rota viola um crit/rio de roteamento e seu valor / infinito. 3 roteador ento adota a rota de menor distLncia. @Q= facilmente resolve o pro1lema de contagem infinita que causa pro1lema a outros algoritmos de roteamento. =or exemplo' supor que Q que1re ou a lin(a JQ este*a desativada. J ento rece1e rotas dos outros tr:s vi8in(os. Estas rotas so @C9' IJQC9 e EJQC9. MerificaDse que duas rotas esto sem sentido' porque passam por J' ento / escol(ido J@C9 como a nova rota. *ector-distance' uma diferente estrat/gia de podar a rvore deve ser seguida. 3 algoritmo 1sico / o re*erse path /orwarding. Entretanto' quando um roteador que no fa8 parte do grupo' rece1e uma mensagem multicast' ele responde para que o emissor no envie mensagens para ele.
"ma desvantagem deste algoritmo / que para grandes redes muita mem-ria / necessria. Fupor que uma rede tem n grupos' cada um com a m/dia de " mem1ros. =ara cada grupo' " spanning trees podadas so arma8enadas' para um total de ".n rvores. 5uando muitos grupos grandes existem' / gasto muito mem-ria para arma8enar as rvores. "ma alternativa / usar rvores c(amadas core-base tree. Aqui uma &nica rvore spanning tree por grupo / computada' com a rai8 ;It(e coreI< perto do meio do grupo. =ara enviar uma mensagem multicast' uma estao enviaDa para a rai8' que ento envia para os n-s do grupo. Em1ora esta t/cnica no se*a -tima' ela redu8 os custos de arma8enagem de " rvores para uma rvore por grupo.
+. IP Multicast
A comunicao I= normal / pontoDaDponto. Entretanto' para algumas aplica)es' a comunicao multiponto / &til para o processo de enviar mensagens para um grande n&mero de receptores simultaneamente. Exemplos de aplica)es multiponto so replicao de dados' 1anco de dados distri1u0dos e multiconfer:ncia. I= suporta multicast' usando a classe de endereos 9. Cada endereo da classe 9 identifica um grupo de esta)es. 7o endereo I=' 28 1its esto dispon0veis para identificar grupos. 5uando um processo envia um pacote para endereo de classe 9' o pacote / li1erado para todos os mem1ros do grupo' mas no garante que todos rece1ero o pacote. Existe dois tipos de grupos de endereos2 permanente e temporrio. "m grupo permanente sempre existir e no precisa ser configurado. Alguns exemplos de endereos de grupo permanente so2 D 22+.,.,.1 D todos os sistemas numa rede local. D 22+.,.,.2 D todos os roteadores numa rede local. D 22+.,.,.$ D todos os roteadores 3F=J numa rede local. 'ulticasting / implementado por roteadores multicast especiais. Cerca de uma ve8 a cada minuto' cada roteador multicast envia um pacote para as esta)es de sua rede local ;endereo 22+.,.,.1< perguntando para eles responderem de volta' quais os grupos que seus processos pertencem. Estes pacotes de consultas e respostas usam um protocolo c(amado IQ?= ;Internet Group 'anagement Protocol) ' que / similar ao IC?=. Ele tem dois tipos de pacote2 consulta e resposta' cada um com formato fixo contendo alguma informao de controle na primeira palavra do campo payload e um endereo classe 9 na segunda palavra. Isto est descrito com maiores detal(es na GJC1122%.
#A7E79A%
=ara algumas aplica)es' os processos esto separados em vrios locais' mas tra1al(am *untos em grupo. =or exemplo' um grupo de processos implementando um sistema de 1anco de dados distri1u0do. 7ele / frequente um processo enviar uma mensagem para todos os outros mem1ros do grupo. Ento necessitaDse de um modo de enviar mensagens para grupos 1em definidos que so numericamente grandes' mas pequenos comparados ao taman(o da rede. =ara reali8ar esta tarefa / necessrio utili8ar uma t/cnica de roteamento multiponto' que ser a1ordada nesta seo. =ara fa8er "ulticastin!: cada roteador constr-i sua spannin! tree selecionando enlaces na rede formando uma rvore' de forma a co1rir todos os outros roteadores na su1Drede. =or exemplo' na figura 1>;a< temos uma su1Drede com dois grupos' 1 e 2. Alguns roteadores so ligados nos grupos' como indicado na figura 1>;a<. A spannin! tree para o roteador mais a esquerda / mostrado na figura 1>;1<.
5uando um processo envia um pacote multicast para o grupo' o primeiro roteador examina sua spanning tree e poda a rvore' removendo toda as lin(as que no pertencem ao seu grupo. A figura 1>;c< ilustra a rvore do grupo 1 e a figura 1>;d< ilustra a rvore do grupo 2. =acotes multicast so enviados somente na spanning tree apropriada. Mrios modos de podar a rvore so poss0veis. 3 modo mais simples / usar o roteamento link-state' sendo que cada roteador deve con(ecer a topologia completa da su1Drede. Ento a spanning tree pode ser constru0da iniciando no final de cada camin(o at/ a rai8' eliminando os roteadores que no pertencem ao grupo. Com o roteamento *ector-distance' uma diferente estrat/gia de podar a rvore deve ser seguida. 3 algoritmo 1sico / o re*erse path /orwarding. Entretanto' quando um roteador que no fa8 parte do grupo' rece1e uma mensagem multicast' ele responde para que o emissor no envie mensagens para ele. "ma desvantagem deste algoritmo / que para grandes redes muita mem-ria / necessria. Fupor que uma rede tem n grupos' cada um com a m/dia de " mem1ros. =ara cada grupo' " spanning trees podadas so arma8enadas' para um total de ".n rvores. 5uando muitos grupos grandes existem' / gasto muito mem-ria para arma8enar as rvores. "ma alternativa / usar rvores c(amadas core-base tree. Aqui uma &nica rvore spanning tree por grupo / computada' com a rai8 ;It(e coreI< perto do meio do grupo. =ara enviar uma mensagem multicast' uma estao enviaDa para a rai8' que ento envia para os n-s do grupo. Em1ora esta t/cnica no se*a -tima' ela redu8 os custos de arma8enagem de " rvores para uma rvore por grupo.
pacotes '6one entre as il(as. Cada il(a ;tipicamente uma rede local ou grupos de rede locais< suporta (ardNare multicast. Algum dia no futuro' quando todos os roteadores sero capa8es de manipular trfego multicast diretamente' esta superestrutura no ser mais necessria. Cada il(a cont/m um ou mais roteadores especiais c(amados de mrouters ;multicast routers<. Alguns destes so roteadores normais' mas a maioria so workstations "7IW executando softNare especial H n0vel de usurio. 3s "routers so logicamente conectados por t&neis. 7o passado' pacotes '6one eram condu8idos de "router para "router ; usualmente atrav/s de um ou mais roteadores que no con(eciam so1re '6one< usando roteamento de cada fonte. !o*e' pacotes '6one so encapsulados em pacotes I= e enviados como pacotes unicast regulares para o endereo I= destino do mrouter. #&neis so configurados manualmente. "sualmente um t&nel executa so1re um camin(o para que uma conexo f0sica exista' mas no / um requisito. Fe por acidente' um camin(o f0sico que1ra' so1re um t&nel' os mrouters usando um t&nel no perce1ero' desde que a Internet automaticamente reDdirecionar todo trfego destes camin(os para outra lin(as. 5uando uma nova il(a aparece e dese*a se *untar ao '6one' tal como Q na figura 1+' seu administrador envia uma mensagem anunciando sua exist:ncia para a lista de correio '6one. 3s administradores dos sites vi8in(os entram em contato com ele para arrumar e configurar os t&neis. #&neis no tem exist:ncia f0sica. Fo definidos por ta1elas nos mrouters e podem ser adicionados' exclu0dos ou movidos usando as ta1elas. #ipicamente cada pa0s no '6one tem um backbone' com il(as regionais. At/ maio de 199+' '6one era composto de 9,, roteadores e ligava 2, pa0ses. F"KKI9A%
.1 Roteamento MBone
#A7E79A%
Incialmente o '6one usou o algoritmo de roteamento DA"RP *Distance Vector Multicast %outin! Protocol, 1aseado no algoritmo MetorD9istLncia. =or exemplo' na figura 1+' a il(a C pode rotear para A via @ ou via E. Ele fa8 sua escol(a' tomando os valores destes n-s' que so fornecidas para ele' sua respectiva distLncia para A e ento somando sua distLncia para deles. Estas rotas no so atualmente utili8adas desta maneira' entretanto ser visto resumidamente. Agora veremos como multicast funciona. =ara fa8er o multicast de um programa de udio ou v0deo' a fonte deve primeiro adquirir um endereo multicast classe 9' que atua como uma frequ:ncia de canal ou n&mero de canal. =eriodicamente' cada mrouter envia um pacote broadcast IQ?= Internet Group 'anagement Protocol) limitado a sua il(a' perguntando quem est interessado naquele canal. As esta)es que querem rece1er um ou mais canais' enviam um pacote IQ?= em resposta. Estas respostas so alternadas no tempo' para evitar so1recarga na rede local. Cada mrouter mant/m uma ta1ela de quais canais que deve retirar da rede' para evitar desperd0cio de largura de 1anda pelos canais multicast que ningu/m quer. =acotes multicast propagam no '6one da seguinte forma. 5uando uma fonte de udio e v0deo gera um novo pacote' ele difunde na sua il(a usando equipamento multicast. Este pacote / mantido no mrouter local' que ento copia para os t&neis que esto conectados. Cada mrouter captura tal pacote via t&nel e ento verifica se o pacote veio pela mel(or rota' isto /' a rota que sua ta1ela di8 para usar' para alcanar a fonte ;como ela fosse um destino<. Fe o pacote vem ao longo da mel(or rota' o roteador copia o pacote para outros t&neis. Fe o pacote c(ega' por outra rota' ele / descartado. Ento' por exemplo' na figura 1+' se a ta1ela de C di8 para ele usar @ para c(egar a A' ento quando um pacote multicast de A alcana C' via @' o pacote / copiado para 9 e E. Entretanto' quando um pacote multicast de A alcana C via E ;no / a mel(or rota<' simplesmente / descartado. Este algoritmo / o re*erse path /orwarding. 7o / perfeito' mas / simples para implementar. Al/m disso' usandoDse re*erse path /orwarding, previniDse de inundar ;/looding) a Internet. =ara isso deve ser usado o campo tem#o de v%da do pacote I=' com o1*etivo de limitar o escopo do multicasting. Cada pacote com algum valor' determinado pela fonte. Cada t&nel possui um peso. "m pacote somente passa pelo t&nel' se tiver peso suficiente' por outro lado / descartado.
?uita pesquisa tem sido devotada para aperfeioamento do '6one. "ma proposta mant/m a id/ia do roteamento MetorD9istLncia' mas fa8 o algoritmo (ierrquico pelo agrupamento dos sites '6one em regi)es. 3utra proposta / para usar uma forma modificada do roteamento link-state do roteamento vetorDdistLncia. Em particular' um grupo de tra1al(o do IE#J' est modificando o 3F=J' tornando ele adequado para multicast com um simples sistema aut4nomo. 3 multicast resultante / c(amado de ?3F=J. "ma segunda rea de pesquisa / roteamento entre sistemas aut4nomos. Aqui um algoritmo c(amado =I? ;Protocol Independent 'ulticast) est sendo desenvolvido por outro grupo do IE#J !"I#E9$%.
.2 $#l%caes MBone
F"KKI9A%
A maioria das aplica)es '6one, so orientadas para grupos de comunica)es e produtividade. Correntemente' a maioria das aplica)es citadas aqui' usam o "9= multicast. T esperado que a adoo do )eal-time 3ransport Protocol ;G#=< GJC1889% condu8a a um largo uso do G#= para aplica)es multicast. Alguns exemplos de aplica)es prontas para serem usadas so2 D mmcc ;'ultimedia &on/erence &ontrol< da "niversidade de Calif-rnia do Ful. D sd ;-ession 1irectory< da Laurence 6erkeley Laboratories ;K@K<. D vat ;0isual (udio 3erminal< da K@K. D nvt ;+etwork 0oice 3erminal< da "niversidade de ?assac(usetts. D nv ;+etwork 0ideo< da Werox =AGC. D ivs ;I7GIA 0ideocon/enrencing -ystems<.
A. I= ?-vel
!"I#E9$%
Computao m-vel / um conceito muito vasto. 9e fato' existem > diferentes formas de mo1ilidade2 computadores portteis' que so transportados e conectados em locais remotos. computadores m-veis' que permanecem conectados durante seus movimentos. e redes m-veis.
Atrav/s do protocolo de sinali8ao' a E? desco1rir o I= e o endereo da nova 1ase. Este*a certo que a E? rece1e pacote em trLnsito' ele tem que se comunicar com o novo agente estrangeiro da 1ase para que os pacotes em trLnsitos se*am reDroteados. Fem precau)es' / fcil para um hacker enviar uma mensagem de redirecionamento para a 1ase corrente e capturar o trfego da E?.
5. Cons%deraes F%na%s
Este tra1al(o procurou delinear a evoluo do roteamento na Internet' desde os primeiros algoritmos de roteamento como o MetorD9istLncia e o Link--tate, e os protocolos GI= e EQ=. =ara finali8ar este tra1al(o ser colocado algumas considera)es so1re tecnologias mais recentes na Internet, como 'ulticast e 'obilidade. 3 desenvolvimento da tecnologia multicast pelo IE#J' tem sido feita rpida. Existe de fato uma presso para uma soluo padro' dado o sucesso das aplica)es desenvolvidas so1re o '6one. A verso do protocolo IQ?= / de 1988 e agora / um padro na Internet. A verso usada no ?@one (o*e / inteiramente compat0vel com os novos desenvolvimentos tais como ?3F=J e =I?. ?uito vendedores esto agora incluindoDo no seu suporte de rede. Isto tornar uma caracter0stica padro de pacotes #C=EI=. A especificao ?3F=J foi pu1licada em 199+' e vrios vendedores de roteadores tem implementadoDo.
As especifica)es =I? foram pu1licadas antes de 199$. Alguns vendedores de roteadores tem iniciado a implementao do =I? modo denso. ele / muito mais simples e aparece como su1stituto natural para a tecnologia ?@one. Entretanto vrios pontos tero que ser estudados' em particular a interao entre =I?' ?3F=J e 9M?G=. Existe pouca experi:ncia com as dinLmicas destes protocolos. =ortanto exista muito tra1al(o a ser reali8ado. 3 '6one est operacional desde 1992' e * / mais que um simples experimento. T de fato um experimento de larga escala' conectando de8ena de mil(ares de usurios. Isto significa um grande sucesso. Existe uma grande demanda para o tipos de aplica)es em multicast. ?il(ares de usurios esto reali8ando confer:ncia de udio e v0deo. ?@one tem sido uma preciosa ferramenta de teste e evoluo para novas aplica)es. A tecnologia '6one tem autoDevoluido durante estes anos D prunning foi implementado. a verso de roteamento fonte dos t&neis foi recolocado pelo encapsulamento. ?as muitos pro1lemas continuam. 3 programa mrouted est implementado em workstations padro. seu (ardNare tem capacidade limitada de entradaEsa0da' e o n&mero de pacotes que eles podem processar por segundo / mais lento do que esta)es dedicadas. Como consequ:ncia' fica limitado o n&mero de t&neis que uma estao poder manipular. #ero que ser resolvidos pro1lemas delicados' tais como va8o e atraso de uma conexo' que so muito mais rpidos em am1ientes m-veis. "ma estao vagando de c/lula em c/lula' muitas ve8es perde temporariamente a conexo. 3 #C= reage pela reduo da taxa de transmisso. 5uando a conexo / resta1elecida' a taxa de transmisso / aumentada' mas lentamente. Fe a conexo no for esta1elecida em tempo suficiente' existem riscos da conexo ser perdida. Implementar um I= ?-vel / o primeiro passo. tam1/m tero que ser adaptados os algoritmos de transmisso. A Internet tem apresentado alguns pro1lemas estruturais no decorrer de sua exist:ncia' tais como2 crescimento exponencial do n&mero de redes. crescimento da ta1ela de roteamento. aumento da complexidade nos algoritmos de roteamento e exausto dos endereos de classe @. Al/m disso' com o surgimento das tecnologias de mo1ilidade e multicast' os pro1lemas aumentaram. ?as temDse verificado que a Internet temDse adaptado as novas necessidades' e muitas propostas tem surgido tra8endo solu)es. A Internet sempre foi e ser um campo vasto para pesquisa.
6. '%)l%ogra7%a
@GIFA9+% Fociedade @rasileira para Interconexo de Fistemas A1ertos ;@GIFA<' AG5"I#E#"GA 9E GE9EF 9E C3?="#A93GEF 3FI e #C=EI=' ?aSron @ooSs' 199+. #A7E79A% #anen1aum' AndreN F.' C3?="#EGF 7E#X3GVF' #(ird Edition' =rentice !all =#G' 199A. !"I#E9$% !uitema' C(ristian' G3"#I7Q I7 #!E I7#EG7E#' =rentice !all =#G' 199$. F"KKI9A% 3UFullivan' @rOan' #!E I7#EG7E# ?"K#ICAF# (ttp2EENNN.serpentine.comEY1osEtec(Em1oneE' Je1ruarO 199A. @ACV@37E'
V"?AG9A% Vumar' M.' ?@one2 I7#EGAC#IME ?"K#I?E9IA 37 #!E I7#EG7E#' Indianapolis' I72 7eN Giders' 199A. GJC1112% 9eering' F.' !3F# EW#E7FI37F J3G I= ?"K#ICAF#I7Q' August 1989. (ttp2EEds.internic.netErfcErfc1112.txt GJC1889% Fc(ul8inne' !.' Casner' F.' JredericS' G.' Zaco1son' M.'G#=2 A #GA7F=3G# =G3#3C3K J3G GEAK #I?E A==KICA#I37F' ZanuarO 199A. (ttp2EEds.internic.netErfcErfc1889.txt