You are on page 1of 8

Um estudo da arquitetura MPLS

Bruno Bisol (bruno@inf.ufsc.br ) Bernardo G. Riso (riso@inf.ufsc.br)

Universidade Federal de Santa Catarina Curso de Bacharelado em Cincias da Computao Campus Trindade Caixa Postal: 246 - Florianpolis/SC - 88040-900 Fone: PABX (+55 48) 331-9000 / FAX: (+55 48) 234-4069 - Telex 240 www.ufsc.br Neste trabalho apresenta-se uma anlise da tecnologia MPLS (Multiprotocol Label Switching ), uma tecnologia emergente que surge como alternativa para a engenharia de trfego e o encaminhamento rpido de pacotes IP (Internet Protocol). Aps uma reviso dos fatores principais que levaram ao desenvolvimento da tecnologia MPLS, faz-se uma anlise detalhada de sua arquitetura. A seguir, explica-se como funciona o encaminhamento de pacotes IP sobre MPLS, citando os mtodos e ferramentas apresentadas pelo IETF ( nternet I Engineering Task Force). Por fim, comenta-se o uso de MPLS para a integrao de IP sobre ATM (Asynchronous Transfer Mode).
Resumo:

Palavras-chave: MPLS, Qualidade de Servios, Engenharia de trfego. Abstract: In this work we present an analysis of the MPLS (Multiprotocol Label Switching ) technology, an emerging technology fit for trafic engineering and fast forwarding of IP packets. We present a revision of the factors that caused the development of MPLS. Following that, a detailed analysis of its archteture. Next, we present the works of forwarding of IP packets over MPLS, with the methods and tools presentaed by IETF (Internet Engineering Task Force). Finnaly, we present the use of MPLS to integrate IP over ATM. Keywords: MPLS, Quality of Service, Traffic engineering. 1 Introduo - Muitos fatores estimularam o desenvolvimento da tecnologia de chaveamento de pacotes, sendo que um desses fatores foi a expanso da Internet. O crescimento da Internet fez aumentar muito a demanda das redes dos ISPs (Internet Service Provider). Para suportar esse crescimento, os ISPs precisam de roteadores de alta performance. Alm da crescente demanda por banda, os ISPs precisam lidar com o crescente nmero de ns na rede, o aumento das tabelas de roteamento, maior nmero de fluxos passando por cada ponto da rede, e assim por diante. Outro fator importante para o desenvolvimento desta tecnologia a necessidade de estender a funcionalidade de roteamento da Internet e das redes IP em geral. Modificar o roteamento IP extremamente caro, pois necessrio alterar

tanto o plano de controle quanto o algoritmo de encaminhamento, que geralmente implementado em hardware. Uma das vantagens do chaveamento de pacotes a possibilidade de alterar o plano de controle sem a necessidade de modificar o algoritmo de encaminhamento. O principal componente de redes IP o roteador, cuja tarefa fundamental o encaminhamento de pacotes, uma tarefa razoavelmente complexa. Alm disso, os roteadores geralmente realizam uma gama de servios e suportam diversos protocolos e interfaces. Em contraste, os comutadores (switch) so muito simples, pois suportam poucos protocolos e tipos de interface, fazendo com que a relao custo/performance de comutadores seja muito melhor do que a de roteadores. Uma das motivaes do MPLS [2] construir aparelhos com a maioria das funcionalidades dos roteadores e hardware semelhante ao de um comutador. O desejo de integrar IP e ATM tambm contribuiu para o desenvolvimento do MPLS. O modelo ATM significativamente diferente do modelo IP. Algumas das diferenas fundamentais entre IP e ATM envolvem: esquemas de endereamento, modo de operao multicast e o fato de que o ATM orientado a conexo, enquanto que o IP no . Em parte, o MPLS uma tentativa de superar estas dificuldades. Finalmente, o MPLS foi influenciado pela necessidade de se adicionar funcionalidades extras nos roteadores, como suporte engenharia de trfego e qualidade de servios. Na prxima seo apresentam detalhes sobre a arquitetura MPLS, seguida -se por uma explanao sobre o plano de controle MPLS. Finalmente, a seo 4 comenta a interoperao entre redes IP e ATM utilizando MPLS. 2 Arquitetura MPLS - O grupo de trabalho MPLS [1] foi formalmente criado pelo IETF em 1997. O problema abordado corresponde aos mencionados na sesso anterior. Seus objetivos so tais que a soluo desenvolvida deve ser compatvel com as tecnologias de rede e os protocolos de roteamento j existentes, podendo propor otimizaes; ela deve permitir a atribuio de diferentes granularidades a um rtulo; e deve considerar redes hierrquicas alm de problemas de escalabilidade. Para atender a estes objetivos necessrio definir protocolos de manuteno e distribuio de rtulos que suportem unicast, multicast, roteamento explcito e roteamento hierrquico. Tambm necessrio especificar um encapsulamento, e tratar a integrao com ATM, alm de discutir QoS (Quality of Service). O componente de encaminhamento do MPLS independente do protocolo de rede, podendo ser utilizado com IP ou IPX, por exemplo. Alm disso, MPLS capaz de operar sobre virtualmente qualquer tecnologia de nvel dois, sendo atualmente padronizada para Ethernet, ATM, FDDI, Frame-Relay e PPP. Um pacote que atravessa uma rede MPLS deve ser submetido a trs transies. Primeiramente, ele deve passar de seu encaminhamento nativo de nvel trs para encaminhamento rotulado MPLS. Este processo consiste na adio de um rtulo ao cabealho do pacote. Em seguida, um pacote (agora rotulado) deve ser

capaz de atravessar um caminho MPLS. Este caminho consiste de todos os aparelhos que sabem como este pacote e outros pacotes como ele devem atravessar a rede. Este caminho chamado Label Switched Path (LSP). Este um caminho orientado a conexo, que configurada anteriormente ao encaminhamento de qualquer pacote. Finalmente, um pacote deve voltar ao encaminhamento de nvel trs. Este processo consiste em remover o rtulo do cabealho do pacote e ento envi-lo ao protocolo de nvel trs apropriado para tratamentos adicionais. Numa rede MPLS, o encaminhamento de nvel trs utilizado nas bordas da rede, e o encaminhamento MPLS usado no ncleo da rede. Um dispositivo de rede que atua como fronteira entre o encaminhamento de nvel trs e o encaminhamento MPLS chamado de Label Edge Router (LER). Um LER tem a habilidade de adicionar um rtulo a um pacote no rotulado, e remover os rtulos de um pacote rotulado. Um LER que adiciona um rtulo a um pacote chamado de LER de ingresso e um LER que remove o rtulo de um pacote chamado de LER de egresso. Um dispositivo de rede capaz de encaminhar um pacote rotulado chamado de Label Switch Router (LSR). O processo de encaminhamento de um pacote rotulado comumente chamado de chaveamento de rtulo (Label Switching), pois ele imita as idias do chaveamento ATM. s vezes, isto chamado de troca de rtulos (Label Swapping) porque o valor do rtulo pode mudar a cada passo do LSP. Ento, o LSR est "trocando" o rtulo do pacote. Quando um rtulo adicionado a um pacote, pelo menos um "enchimento" (shim header) de quatro bytes inserido no pacote. Este enchimento inserido entre os cabealhos de nvel dois e trs. Portanto um pacote IP sobre Ethernet adicionaria o enchimento antes do cabealho IP, mas depois do cabealho Ethernet. O encaminhamento MPLS atualmente definido para as seguintes implementaes de nvel dois: Ethernet, pacote sobre SONET, ATM e Frame -Relay. O MPLS tambm foi definido para todos os meios em que se pode utilizar enlaces PPP (Point-to-Point Protocol). Na maioria destas implementaes de nvel dois um rtulo consiste de um nmero de vinte bits. O enchimento adicionado ao pacote contm mais que um rtulo, como pode ser visto na Figura 1. 0 1 2 3 01234567890123456789012345678901 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Rtulo | EXP |S| TTL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+Figura 1: Diagrama do cabealho MPLS [3] O valor do rtulo usado para determinar como um pacote ser encaminhado. Os prximos trs bits so chamados bits EXP. Eles esto reservados para fins experimentais (no entanto, este campo utilizado para integrar DiffServ com MPLS). O prximo bit conhecido como "bit de fim de pilha" (bit S). Devido ao fato de MPLS adicionar um enchimento a um pacote, um LSR precisa saber se o que segue este enchimento o cabealho de nvel trs ou mais enchimento

(mltiplos enchimentos so chamados de pilha de rtulos). O bit S significa que o que segue este enchimento o cabealho de nvel trs. Finalmente, o enchimento contm o contador Time To Live (TTL), usado para permitir que funes de nvel trs ocorram mesmo que o LSR no possa usar o cabealho de nvel trs. Alguns exemplos so traar a rota, deteco de laos, e domnios multicast. Ao rotular um pacote, um LER pode inserir mais de um cabealho MPLS. Este conceito chamado empilhamento de rtulos. A pilha de cabealhos tratada exatamente como a estrutura que a nomeia. Um POP significa que o cabealho MPLS do topo removido, expondo ou outro cabealho MPLS ou o cabealho de nvel trs (determinado pelo bit S). Um PUSH insere um novo cabealho ao topo da pilha ou sobre o cabealho de nvel trs. Esta ao utilizada para criar tneis MPLS. Neste caso, o pacote MPLS tem outro enchimento empilhado sem remover o enchimento original, resultando numa pilha de rtulos de tamanho dois. Esta operao pode ocorrer diversas vezes em vrios LSR's ou apenas um LSR pode adicionar mais de um enchimento. Para que o encaminhamento MPLS ocorra corretamente, so necessrias algumas estruturas de dados para auxiliar na interpretao de rtulos e no seu processamento. Em geral existem trs estruturas de dados. Uma estrutura para ajudar a interpretar rtulos de entrada (rtulos de pacotes que esto entrando no LSR ou LER de egresso), uma segunda estrutura para ajudar a inserir rtulos de sada (rtulos em pacotes que esto saindo do LSR ou LER de ingresso) e uma terceira estrutura utilizada por LER's de ingresso para descobrir que rtulo adicionar a um pacote. A estrutura usada para interpretar rtulos de entrada chamada de mapa de rtulos de entrada (Incomming Label Map - ILM). A tabela ILM consiste de todos os rtulos de entrada (rtulos de pacotes que chegam ao roteador) que um LSR ou LER de egresso reconhece. O contedo de cada entrada ILM : rtulo, operaes a serem realizadas no pacote, FEC, e um link opcional para uma estrutura de rtulo de sada. A ordem de operaes efetuadas em pacotes rotulados que chegam ao roteador : -extrair rtulo do enchimento do topo da pilha; -procurar por este rtulo na tabela ILM; -processamento adicional do pacote baseado nas operaes descritas na ILM. Conforme foi mencionado anteriormente, tambm existe uma estrutura para auxiliar no processamento de rtulos de sada. Esta estrutura chamada Next Hop Label Forwarding Entry (NHLFE registro de encaminhamento por rtulos para o prximo passo). A NHLFE consiste de todos os rtulos que podem ser inseridos em pacotes pelo roteador. Cada registro da NHLFE contm: rtulo, interface de sada, e informaes sobre o prximo passo. A ordem de operaes efetuadas em pacotes quando estes atingem a NHLFE : -criar novo enchimento que contm o rtulo; -inserir o enchimento no topo da pilha; -encaminha r o pacote para o prximo passo pela interface de sada.

Uma terceira estrutura de dados existe apenas para ajudar LER's de ingresso a decidir quais rtulos adicionar a um pacote proveniente do encaminhamento de nvel trs. Esta estrutura est associado ao conceito de Classe de Equivalncia de Encaminhamento (Forwarding Equivalence Class - FEC). FECs podem ser definidas como um conjunto de fluxos ou pacotes que devem receber o mesmo tratamento de um roteador. Normalmente, FECs so definidas com base no endereo de destino dos pacotes. Em geral, os pacotes so rotulados de acordo com a FEC a que pertencem. No MPLS, designa-se um rtulo a cada FEC, e cada rtulo se refere a uma FEC (mapeamento 1:1). As definies das FEC's podem mudar, mas o mapeamento 1:1 deve permanecer constante. A estrutura de dados utilizada para mapear FEC's para rtulos chamada FEC To NHLFE (FTN). Um registro FTN consiste em: FEC, registro NHLFE. A ordem de operaes da FTN : -decidir a qual FEC um pacote pertence; -encontrar a FEC na tabela FTN; e -encaminhar o pacote para o registro NHLFE que corresponde a FTN. 3 Comutao de pacotes IP com MPLS Para que os LSRs possam comutar pacotes rotulados, necessrio um mecanismo de distribuio de rtulos. Tal mecanismo pode ser obtido de vrias maneiras, como estender os protocolos de roteamento para carregar mapeamentos entre FECs e rtulos [4], ou criar novos protocolos especialmente para este servio [5]. Entre as vantagens de estender os protocolos de roteamento est a de manter a simplicidade do sistema, visto que no necessrio utilizar novos protocolos. Outra vantagem desta abordagem manter a consistncia entre a tabela de roteamento e os mapeamentos de rtulos. No entanto, nem todos os protocolos de roteamento carregam informaes teis para transportar mapeamentos de rtulos. Alm disso, estender protocolos de roteamento no tarefa simples, pois pode ser necessrio modificar o formato das mensagens utilizadas pelo protocolo, tornando-o incompatvel com equipamentos que no utilizem MPLS. Para evitar tais dificuldades, criou-se o protocolo LDP (Label Distribution Protocol) [6]. Este protocolo apresenta as seguintes caractersticas: dirigido pelo controle, isto , a criao de rtulos determinada por mudanas no roteamento; ele prov mecanismos para que LSRs vizinhos iniciem comunicao; e foi projetado para ser facilmente extensvel, utilizando mensagens especificadas como TLVs (Type, Lengh, Value). A codificao das mensagens na forma de TLVs significa que cada mensagem possui campos indicando seu tipo, tamanho e um valor, cujo significado depende do tipo. Com isso, podem-se definir novas funcionalidades para o protocolo simplesmente definindo novos tipos de mensagens. O LDP possui um mecanismo de descoberta de LSRs vizinhos que funciona da seguinte forma: periodicamente, um LSR utiliza UDP (User Datagram Protocol) para enviar mensagens Hello para uma porta conhecida, atravs do grupo multicast

todos os roteadores instalados nesta sub-rede. Quando um LSR aprende o endereo de outro LSR atravs deste mecanismo, ele estabelece uma conexo TCP (Transfer Control Protocol) com ele. Uma sesso ento estabelecida, onde cada LSR pode informar a criao de novos rtulos. Um mecanismo de descoberta adicional permite que um LSR encontre vizinhos que no sejam adjacentes a ele, enviando mensagens Hello para um endereo IP especfico, aprendido atravs de configurao, por exemplo. Tal mecanismo til para a engenharia de trfego, quando se deseja criar um LSP entre dois LSRs e enviar, atravs deste LSP, pacotes j rotulados. A distribuio de rtulos pode ser realizada em diferentes modos de operao. Uma das alternativas no solicitado descendente (downstream) versus ascendente (upstream) sob demanda. No primeiro caso, um LER de egresso distribui para seus vizinhos rtulos para as redes a que ele est diretamente conectado; enquanto que no modo sob demanda, um LER de ingresso solicita um mapeamento de uma FEC para um rtulo de seus vizinhos. O LDP tambm pode funcionar em modo de controle ordenado ou independente. No modo independente, cada LSR livre para estabelecer seus prprios mapeamentos de rtulos, e anunci-los a seus vizinhos. Isto permite que um LSR particione como quiser suas FECs, mas como conseqncia disto, possvel que nem todas a FECs sejam mapeadas. No modo ordenado, apenas um LER de egresso pode iniciar a criao de um LSP. Esta abordagem auxilia na preveno de laos de roteamento, mas tem a desvantagem de que a criao de LSPs se torna mais lenta. Finalmente, o LDP pode trabalhar em modo de reteno de rtulos conservativo ou liberal. A reteno de rtulos conservativa significa que um LSR s mantm mapeamentos de FECs para rtulos que ele precise no momento, e todos os outros mapeamentos so descartados. O modo liberal significa que um LSR vai guardar todos os mapeamentos recebidos, mesmo que sejam inteis no momento. Esta abordagem til para melhorar o tempo de resposta a mudanas no roteamento, mas tem a desvantagem de desperdiar rtulos. 4 MPLS e ATM A interoperabilidade de MPLS e ATM requer ateno especial [7]. Para que redes MPLS e ATM interoperem com transparncia, necessrio tratar os seguintes problemas: encapsulamento de pacotes MPLS sobre ATM, deteco de laos e ajuste do TTL e clulas intercaladas. Quanto ao encapsulamento, utiliza -se o rtulo do topo da pilha de rtulos de um pacote para preencher os campos VPI/VCI das clulas ATM. O resto do cabealho MPLS e a pilha de rtulos so anexados ao pacote IP antes de segmentlo em clulas. Isto necessrio para preservar a pilha de rtulos e os campos TTL e EXP, que podem ser necessrios se o pacote for continuar na rede MPLS aps sair da nuvem ATM. Como switches ATM no podem alterar o campo TTL do cabealho MPLS, faz-se necessrio um mecanismo para atualiz-lo antes do pacote entrar na nuvem

ATM. Um LSR pode fazer isto observando o nmero de passos de um mapeamento de rtulo. A partir deste numero, o LSR pode determinar se o TTL do pacote se tornaria zero ou negativo. Se um desses casos ocorrer, h duas opes: descartar o pacote, ou encaminh-lo sem rtulo. Esta ltima soluo mais atraente, pois permite que ferramentas de diagnstico, como traceroute, funcionem corretamente. O problema da intercalao de clulas ocorre quando uma switch ATM envia clulas com o mesmo par VPI/VCI que pertenam a pacotes diferentes. Este problema pode ser resolvido com uma tcnica de bufferizao, conhecida como VC-merge. Outra soluo mapear o rtulo apenas no campo VPI, e utilizar o campo VCI para diferenciar os pacotes. Esta tcnica conhecida como VP -merge. 5 Consideraes finais Conforme apresentado, a tecnologia MPLS surge como uma alternativa para encaminhamento rpido de pacotes, engenharia de trfego, qualidade de servios, VPNs e integrao de redes heterogneas. Esta tecnologia est sendo desenvolvida com o apoio de grandes empresas, como Cisco e Nortel Networks, com o apoio do IETF, garantindo um padro aberto e bem aceito pelo mercado. Como MPLS uma tecnologia recente, ainda h muitos campos abertos a estudos, como QoS sobre MPLS. Ainda assim, vrias empresas comeam a lanar servios de VPN sobre MPLS. Referencias Bibliogrficas: [1] MPLS Charter. Coordenao de George Swallow e Loa Andersson. Desenvolvido pelo Internet Engineering Task Force (IETF). Disponvel em: <http://www.ietf.org/html.charters/mpls-charter.html> . Acesso em: 21 de abril de 2002. [2] ROSEN, E.; VISWANATHAN , A.; CALLON R.; RFC 3031: Multiprotocol Label Switching Architecture, jan 2001. Disponvel em: <http://www.ietf.org/rfc/rfc3031.txt>. Acesso em: 21 de abril de 2002.

[3] ROSEN, E.; TAPPAN, D.; FEDORKOW G.; REKHTER, Y; FARINACCI, D; CONTA A.; RFC 3032: MPLS Label Stack Encoding, jan 2001. Disponvel em: <http://www.ietf.org/rfc/rfc3032.txt>. Acesso em: 21 de abril de 2002. [4] AWDUCHE, D.; BERGER , L.; GAN, D.; LI, T.; S RINIVASAN , V.; SWALLOW . G., RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels, dez 2001. Disponvel em: <http://www.ietf.org/rfc/rfc3209.txt>. Acesso em: 21 de abril de 2002.

[5] ANDERSSON , L; DOOLAN, P.; FELDMAN , N.; FREDETTE, A.; THOMAS , B., RFC 3036: LDP Specification, jan 2001. Disponvel em: <http://www.ietf.org/rfc/rfc3036.txt>. Acesso em: 21 de abril de 2002. [6] THOMAS , B.; GREY, E, RFC 3037: LDP Applicability, jan 2001. Disponvel em: <http://www.ietf.org/rfc/rfc3037.txt>. Acesso em: 21 de abril de 2002.

[7] Davie, B.; REKHTER, Yakov, MPLS Technology and Applications. San Diego: Morgan Kaufmann Publishers, 2000.

You might also like