Anda di halaman 1dari 12

O Protocolo BGP4 - Parte 1

Page 1 of 10

Boletim bimestral sobre tecnologia de redes


produzido e publicado pela RNP Rede Nacional de Ensino e
Pesquisa
ISSN 1518-5974
12 de maro de 1999 | volume 3, nmero 2

O Protocolo BGP4 - Parte 1

Nesta edio:

Alex Soares de Moura <alex@nc-rj.rnp.br>


Rede Nacional de Ensino e Pesquisa (RNP)
Introduo
Histrico
Exterior Gateway Protocol - EGP
Border Gateway Protocol Version 4 - BGP-4
O uso do BGP-4
Neighbors, Peers, eBGP e iBGP
Atributos do BGP
Concluso
Referncias bibliogrficas
Sites relacionados
Esta a primeira parte do artigo de introduo ao protocolo
BGP-4. Neste primeiro momento so abordados alguns
conceitos bsicos para o entendimento da atual arquitetura
utilizada na Internet mundial e a participao do BGP-4.
Para a devida compreenso do assunto abordado,
interessante que se esteja familiarizado com conceitos bsicos
de protocolos de roteamento. O artigo "Roteamento: O Que
Importante Saber", publicado no RNP News Generation, No.1,
Vol.1, pode servir para tal.

Segurana nos
Roteadores IBM
O Protocolo BGP4
- Parte 1
Tcnicas Adotadas
pelos Crackers
para Entrar em
Redes
Corporativas

NewsGeneration:

buscar
Artigos publicados
Autores
FAQ
Assine
Pgina inicial

Introduo
Este artigo procura apresentar uma introduo ao protocolo de
roteamento Border Gateway Protocol Version 4, BGP-4, que
podemos considerar, parafraseando o Dr. Douglas E. Comer,
"a cola que mantm a Internet unida e permite a interconexo
universal" atualmente.
O BGP-4 possibilita o intercmbio de informaes de
roteamento entre os diversos sistemas autnomos, ou ASs
(Autonomous Systems), que em conjunto, formam a Internet.
Explicando de uma forma simplificada, ele permite que os
dados trafeguem entre os ASs at chegar ao AS de destino, e
dentro dele siga at o seu destino final (mquina).
Uma vez que o BGP-4 tambm est presente (em uma verso
chamada BGP-4+ [RFC 2283]) no backbone Internet do futuro,
o 6bone, conhecer seus mecanismos bsicos fundamental
para qualquer um que esteja ou deseja estar envolvido na
administrao de um AS de qualquer porte ou que precisa
saber mais sobre roteamento na Internet.
^

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 2 of 10

Histrico
H alguns anos, quando o principal backbone da Internet era a
ARPANET, as instituies de pesquisa conectadas rede
precisavam gerenciar manualmente as tabelas de rotas para
todos os possveis destinos, ou seja, todas as outras redes
conectadas (ver Figura 1).
Com o crescimento da Internet, verificou-se que era
impraticvel manter todas as tabelas atualizadas dessa forma,
e que mecanismos de atualizao automtica eram
necessrios. Os pesquisadores da Internet optaram, ento, por
usar uma arquitetura que consistia de um reduzido e
centralizado grupo de roteadores (core routers) que tinham, em
suas tabelas, as rotas para todos os possveis destinos da
Internet; e um outro grupo maior de roteadores que possuam
em suas tabelas apenas informaes (rotas) parciais, e no
para toda a Internet.
Os core routers eram administrados pelo INOC (Internet
Network Operations Center), e o grupo maior de roteadores
externos ficou conhecido pelo termo "noncore
routers" (roteadores fora do ncleo), que conectavam as redes
locais das instituies de pesquisa ao backbone da ARPANET.

Figura 1: Backbone da ARPANET


Foi desenvolvido, ento, o protocolo GGP (Gateway-ToGateway Protocol), que foi usado nos core routers para
atualizao automtica das tabelas de rotas entre eles. O GGP
era um protocolo baseado no algoritmo de vetor de distncia
(Vector-Distance, tambm conhecido como Bellman-Ford).
Essa arquitetura tem, tecnicamente, graves pontos fracos
principalmente com relao a sua capacidade de expanso, e a
Internet acabou crescendo muito, indo alm de um nico
backbone gerenciado de forma centralizada. Verificou-se,

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 3 of 10

portanto, no ser possvel expandir esse backbone


arbitrariamente, por haver diversas limitaes tcnicas.
Como o backbone de cada site pode ter uma estrutura
complexa, o esquema de core routers no iria conseguir
suportar conectar todas as redes diretamente. Era necessrio
um novo esquema que permitisse aos noncore routers passar
informaes aos core routers sobre as redes que estavam
"atrs" de si, alm de oferecer autonomia de gerenciamento
aos sites.
At o momento, estava sendo usado o conceito de
interconexo que levava em conta apenas a arquitetura do
roteamento em uma internet e no contemplava as questes
administrativas envolvidas.
Os projetistas notaram que as interconexes de um backbone
com arquitetura complexa no devem ser encaradas como
vrias redes independentes conectadas a uma internet, mas
como uma organizao que controla vrias redes e que
garante que as informaes sobre as rotas internas so
consistentes e que pode escolher um de seus roteadores para
fazer a ponte de comunicao para o "mundo exterior".
Entra em cena o conceito do Sistema Autnomo (Autonomous
Systems - AS), no qual as redes e roteadores esto sob o
controle de uma mesma entidade administrativa. Esse conceito
substitui a idia das redes locais conectadas ao backbone
central. Cada AS tem a liberdade de escolher o esquema e
arquitetura que melhor lhe convm para descobrir, propagar,
validar e verificar a consistncia das suas rotas internas e a
responsabilidade de anunciar para os outros ASs as rotas para
suas redes internas no visveis. A Figura 2 ilustra o conceito
de Sistema Autnomo.

Figura 2: Exemplo de Sistema Autnomo


Para anunciar as rotas para suas redes internas entre si, os
ASs precisavam concordar em usar um esquema nico, como
um mesmo idioma por toda a Internet; e para permitir um
algoritmo de roteamento automatizado distinguir entre um AS e
outro, foi designado a cada AS, um nmero (Autonomous
System Number - ASN) pela mesma autoridade central
encarregada de atribuir todos os endereos identificadores das
redes conectadas Internet (ver Figura 3).

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 4 of 10

Figura 3: Arquitetura de Backbone Usando o Conceito de ASs


^

Exterior Gateway Protocol - EGP


Dois roteadores que pertenam a ASs diferentes e trocam
informaes de roteamento entre si so considerados "vizinhos
externos" (exterior neighbors). Se ambos pertencerem ao
mesmo AS so considerados "vizinhos internos" (interior
neighbors). O protocolo de roteamento usado pelos exterior
neighbors o Exterior Gateway Protocol ou simplesmente EGP
[RFC 904]. ele que permite o anncio das rotas para as
redes internas do AS para o ncleo (core) da Internet (ver
Figura 4).
Com o tempo, o EGP apresentou diversas limitaes tcnicas e
potenciais problemas para ser usado na Internet. Apesar das
tentativas para produzir novas verses (EGP2 e EGP3) do
protocolo, os projetistas no obtiveram sucesso por haver a
necessidade de muitas alteraes fundamentais na estrutura
do mesmo.
O EGP apresentou deficincias insustentveis, como restries
em topologia, incapacidade de evitar "loops" de roteamento e
pouca flexibilidade para a configurao de polticas de
roteamento.
Um grande desafio para os projetistas era a soluo de como
transformar uma arquitetura internet para no depender de um
sistema centralizado (core routers) - deixando uma topologia
organizada hierarquicamente e iniciando outra, com diferente
estrutura. Alm disso, tinha o desafio de como fazer uma
arquitetura internet suportar uma forma de colaborao mais
prxima entre certos ASs do que entre outros.

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 5 of 10

Figura 4: Arquitetura da NFSNET Usando o EGP


Isso levou os engenheiros do IETF a desenvolver uma soluo
para esses problemas atravs de um novo, mais moderno e
mais robusto protocolo de roteamento externo, como ser visto
a seguir.
^

Border Gateway Protocol Version 4 - BGP-4


O BGP um protocolo de roteamento para ser usado entre
mltiplos sistemas autnomos em internets baseadas no
protocolo TCP/IP. O BGP-4 [RFCs 1771, 1772] tornou-se o
sucessor natural do EGP, efetivamente atacando suas
deficincias mais srias, ou seja, evitando "loops" de
roteamento e permitindo o uso de polticas de roteamento entre
ASs baseado em regras arbitrrias por eles definidas. Alm
disso, o BGP-4 foi a primeira verso do BGP a suportar
endereos agregados (Classless Interdomain Routing, ou
simplesmente CIDR) e o conceito de supernets.
O protocolo BGP-4 assume que o roteamento interno do AS
feito atravs de um sistema IGP (Interior Gateway Protocol) de
roteamento interno. Este pode ser um protocolo de roteamento
como o RIP, OSPF, IGRP, EIGRP; ou at mesmo atravs de
rotas estticas. O BGP constri um grfico dos ASs, usando as
informaes trocadas pelos "vizinhos BGP" (BGP neighbors),
que so compostas dos nmeros identificadores dos ASs, os
ASN. A conexo entre ASs forma um "caminho" (path), e a
coleo desses caminhos acaba formando uma rota composta
pelos nmeros dos ASs que devem ser percorridos at se
chegar a um determinado AS destino.

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 6 of 10

O BGP faz uso do TCP (porta 179) para o transporte das


informaes de roteamento de modo que ele prprio no
precisa preocupar-se a respeito a correta da transmisso das
informaes.
Outra caracterstica do BGP-4 atualizao das tabelas de
rotas feitas de forma incremental, como nos algoritmos de
estado de enlace. A atualizao completa da tabela de rotas
feita somente uma vez, quando se estabelece a sesso entre
os neighbors ou peers.
Para o estabelecimento de uma sesso BGP entre neighbors
ou peers, basicamente, os seguintes passos so executados:
estabelecida a conexo TCP entre os dois roteadores que
trocam mensagens de abertura da sesso e negociam os
parmetros de operao;
O primeiro fluxo de dados transmitido a tabela de rotas BGP
completa. Posteriores atualizaes nesta tabela so feitas,
incrementalmente, medida que as mudanas ocorrerem;
Como no h a atualizao completa da tabela aps a
primeira, o roteador mantm a informao da verso da tabela
que todos os seus peers possuem, enquanto durar a sesso
entre eles. Se esta for interrompida por qualquer motivo, o
processo iniciado novamente a partir do primeiro passo;
Mensagens de keepalive so enviadas periodicamente para
manter a sesso aberta;
Mensagens de aviso so enviadas quando ocorrem erros ou
outras situaes especiais;
Caso uma conexo verifique um erro, uma mensagem
enviada e a conexo fechada, encerrando a sesso.
A figura abaixo representa a atual arquitetura da Internet, onde
ASs comunicam-se via BGP-4.

Figura 5: ASs Comunicando-se Via BGP-4


^

O uso do BGP-4
O BGP usado nas situaes em que uma rede precisa
conectar-se a mais de um provedor simultaneamente (multihome), ou quando se deseja ter um pouco mais de controle
sobre quais caminhos seus dados seguiro pela Internet.
Basicamente, o BGP serve para informar s redes externas a
um AS quais so as rotas para redes atingveis dentro de sua

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 7 of 10

rede. Falando de outra forma, o propsito do BGP-4 anunciar


rotas para outras redes externas, ou sistemas autnomos.
Esses anncios so como "promessas" de que os dados sero
transportados para o espao IP representado pela rota sendo
anunciada.
Se, por exemplo, um AS anunciar uma rota para
192.168.4.0/24 (na sintaxe anterior ao CIDR, este endereo a
classe "C" que comea em 192.168.4.0 e termina em
192.168.4.255) e algum enviar dados destinados a qualquer
endereo dentro dessa faixa, esse AS est "garantindo" que
sabe enviar os dados at o destino.
^

Neighbors, Peers, eBGP e iBGP


Sistemas (roteadores) que so "vizinhos BGP" (BGP
neighbors) comunicam-se atravs de "sesses" estabelecidas
entre eles. Os roteadores de "borda" (border routers) de ASs
vizinhos so considerados peers. Esses peers so as
"fronteiras polticas" dos ASs, que trocam trfego de acordo
com as regras definidas pelos ASs participantes.
So chamados neighbors os sistemas BGP (roteadores) que
possuem sesses BGP estabelecidas entre eles. Ento, os
roteadores de borda so neighbors? Sim. Porm, quando uma
importncia poltica a eles atribuda, a forma correta de
chama-los de peers, enquanto que os neighbors so
quaisquer vizinhos BGP.
Existem outras situaes em que os vizinhos BGP no so,
obrigatoriamente, os roteadores entre ASs e sim roteadores do
mesmo AS. Neste caso as sesses estabelecidas entre eles
acontece internamente ao AS. O que permite isso o iBGP ou
internal BGP, que permite a troca de rotas no mesmo AS. De
forma anloga, a troca de rotas entre ASs feita pelo eBGP
(exterior BGP). Um importante conceito do iBGP que os
neighbors no tm a obrigao de estar diretamente
conectados (ver Figura 6) atravs de uma linha serial ou via
interface Ethernet, por exemplo. Os peers por outro lado no
podem estar conectados de outra forma que no seja a direta,
seja link serial ou interface Ethernet.

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 8 of 10

Figura 6: Exemplo de Peers, Neighbors, eBGP e iBGP


O algoritmo do eBGP trabalha, basicamente, anunciando todas
rotas que conhece, enquanto o do iBGP faz o possvel para
no anunciar rotas. Assim, para fazer o iBGP funcionar
adequadamente dentro de um AS necessrio estabelecer
sesses BGP entre todos os roteadores que "falam" iBGP (ver
Figura 7), formando uma "malha completa" (full mesh) de
sesses iBGP dentro do AS.

Figura 7: Exemplo de Configurao "Malha Completa" de iBGP


Estas caractersticas sero abordadas de foma mais completa
posteriomente.
^

Atributos do BGP
Atributos do BGP so um conjunto de parmetros usados para
controlar informaes especficas relativas a rotas, como
informao sobre o caminho (path), grau de preferncia da
rota, o valor do next-hop da rota e informaes sobre
agregao. Estes parmetros so usados pelo algoritmo do
BGP como elementos para deciso da escolha das rotas e
para deciso sobre filtragem de rotas. Alguns dos atributos do
BGP so:

AS_path
Next hop
Local preference
Multi-Exit Discriminator (MED)
Origin
Atomic Aggregator
Agregator
Community
Weight
Os atributos e outras caractersticas do BGP4 sero explicados
em detalhes na prxima parte deste artigo.
^

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 9 of 10

Concluso
Nesta primeira parte do artigo, foi mostrado como era a
arquitetura inicial da Internet e sua evoluo. Com o
crescimento da rede, tornou-se necessria a criao de
sistemas automatizados de configurao de rotas. Para tal,
inicialmente, foi desenvolvido o EGP e, posteriormente, veio o
BGP. Foram abordados, ainda que superficialmente, alguns
conceitos e caractersticas do BGP-4. Na continuao deste
artigo, ser feita uma abordagem mais profunda do protocolo,
com exemplos de configurao baseados na implementao da
Cisco Systems em seus roteadores.
^

Referncias bibliogrficas
Internetworking with TCP/IP - Principles, Protocols and
Architecture
Douglas E. Comer, 3rd Edition, 1995, Prentice Hall
Routing In The Internet
Christian Huitema, 1995, Prentice Hall
Internet Routing Architectures
Bassam Halabi, 1997, Cisco Press
RFC 1771
A Border Gateway Protocol 4 (BGP-4)
ftp://ftp.isi.edu/in-notes/rfc1771.txt
RFC 1772
Application of the Border Gateway Protocol in the Internet
ftp://ftp.isi.edu/in-notes/rfc1772.txt
RFC 1773
Experience with the BGP-4 protocol
ftp://ftp.isi.edu/in-notes/rfc1773.txt
RFC 1930
Guidelines for creation, selection, and registration of an
Autonomous System
ftp://ftp.isi.edu/in-notes/rfc1930.txt
RFC 1965
Autonomous System Confederations for BGP
ftp://ftp.isi.edu/in-notes/rfc1965.txt
BGP Route Reflection - An alternative to full mesh IBGP
ftp://ftp.isi.edu/in-notes/rfc1966.txt
RFC 1997
BGP Communities Attribute
ftp://ftp.isi.edu/in-notes/rfc1997.txt
RFC 2270
Using a Dedicated AS for Sites Homed to a Single Provider
ftp://ftp.isi.edu/in-notes/rfc2270.txt
^

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

O Protocolo BGP4 - Parte 1

Page 10 of 10

Sites relacionados
BGP-4 Protocol Overview
http://www.FreeSoft.org/CIE/Topics/88.htm
Using the Border Gateway Protocol for Interdomain Routing
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ics/icsbgp4.htm
^

NewsGeneration, um servio oferecido pela RNP


Rede Nacional de Ensino e Pesquisa
Copyright RNP, 1997 2004

mhtml:file://C:\Documents and Settings\Marcio Oliveira\Desktop\O Protocolo BGP4 - ... 30/8/2011

ERROR: syntaxerror
OFFENDING COMMAND: --nostringval-STACK:
/Title
()
/Subject
(D:20110830165757-0300)
/ModDate
()
/Keywords
(PDFCreator Version 0.9.5)
/Creator
(D:20110830165757-0300)
/CreationDate
(Marcio Oliveira)
/Author
-mark-

Anda mungkin juga menyukai