O MPLS (Multiprotocol Label Switching) é um protocolo de roteamento baseado em pacotes rotulados, onde cada rótulo representa um índice na tabela de roteamento do próximo roteador. Pacotes com o mesmo rótulo e mesma classe de serviço são indistingüiveis entre si e por isso recebem o mesmo tipo de tratamento.
O objetivo de uma rede MPLS não é o de se conectar diretamente a sistemas finais. Ao invés disto ela é uma rede de trânsito, transportando pacotes entre pontos de entrada e saída.
Ele é chamado de multiprotocolo pois pode ser usado com qualquer protocolo da camada 3, apesar de quase todo o foco estar voltado no uso do MPLS com o IP.
Este protocolo é na verdade um padrão que foi feito com base em diversas tecnologias similares desenvolvidas por diferentes fabricantes. Ele é referido por documentos do IETF como sendo uma camada intermediária entre as camadas 2 e 3, fazendo com que estas se “encaixem” melhor.
Motivações
O MPLS surgiu como uma resposta de fabricantes de equipamentos e centros de pesquisa a várias necessidades que surgiram com a popularização da internet e diversificação de seus serviços.
Talvez a mais primordial destas necessidades seja a sobrecarga que esta sendo aplicada aos roteadores da rede devido ao sempre crescente número de usuários. Os roteadores IP possuem um algoritmo de roteamento que é ineficiente a medida que o tamanho da rede cresce pois para definir qual será o próximo salto (hop) do pacote, cada roteador tem que analisar mais informações do que é realmente necessário.
Além disso cada roteador tem que realizar o mesmo processo, que é muito semelhante para todos os roteadores, para cada um dos pacotes, sem guardar nenhum tipo de memória sobre cada pacote. Isto é especialmente ineficiente devido ao fato de que a maioria dos pacotes IP pertencem na verdade a fluxos de pacotes com mesmas origens e destinos.
Outro fator extremamente importante é o custo dos roteadores. Esse custo é em geral muito elevado, o que exige grandes investimentos quando surge a necessidade de se aumentar a rede.
Com base nestes fatores pode-se chegar a conclusão de que uma rede baseada no algoritmo de roteamento padrão das redes IP não é escalonável. Ou seja, não é possível aumentar-se o tamanho de uma rede indefinidamente pois por mais rápidos que os roteadores sejam individualmente, a repetição excessiva de tarefas semelhantes torna o atraso da rede proibitivo.
Ficou claro então a necessidade de novos algoritmos de roteamento. Porém, agora entra em cena um outro fator. Mesmo que fosse desenvolvido um algoritmo de roteamento extremamente eficiente, este não seria muito útil se não fosse compatível com os protocolos e equipamentos já existentes.
Este de certo modo foi o maior problema com as redes ATM. Para se implementar redes ATM é necessário grandes investimentos em equipamentos além do que existem grandes dificuldades na interoperabilidade entre o ATM e o IP, principalmente no tocante a redes de grande porte, retornando novamente ao problema de escalonabilidade.
Junto a todos estes fatores pode-se somar a necessidade de novas funcionalidades de roteamento como por exemplo as classes de serviço. Isto decorre do aparecimento de tecnologias como vídeo e voz sobre IP que são extremamente sensíveis ao atraso, em especial atrasos diferenciados para pacotes de um mesmo fluxo. Para ajudar a resolver este problema é necessário se dar prioridade a esses tipos de pacotes, e essa priorização não é suportada por roteadores IP padrão.Funcionamento Básico
Quando um pacote vai de um roteador para outro através de um protocolo de rede sem conexão, cada roteador analisa este pacote e toma decisões independentes sobre para onde enviar o pacote. Isto significa que cada roteador analisa o cabeçalho e roda o seu próprio algoritmo de roteamento.
Porém os cabeçalhos dos pacotes contém muito mais informação do que é preciso para se determinar para onde será o próximo salto (hop).
A tarefa de rotear um pacote através de determinada rede pode no entanto ser separada em duas operações diferentes. A primeira seria a de determinar Classes de Encaminhamento Equivalentes (Fowarding Equivalence Class – FEC) que seriam todas as possibilidades de encaminhamento de um pacote através da rede. A segunda correlaciona cada CEE (FEC) com um próximo salto.
Cada CEE é relacionada a um LSP (Label Switch Path). Os LSP são caminhos determinados dentro da nuvem MPLS. Uma CEE pode ser associada a mais de um LSP, porém com todos apresentando mesma origem e mesmo destino.
Se fizermos uma analogia, no roteamento convencional cada roteador da rede irá associar dois pacotes a uma mesma CEE se existe em sua tabela de roteamento um prefixo de endereço X que seja o maior casamento (longest match) com o endereço de destino de cada pacote.
No MPLS a associação do pacote com uma determinada CEE é feita apenas uma vez quando o pacote entra na rede através do LER (Label Edge Router) da figura abaixo. A CEE a qual o pacote esta associado é codificado através de um rótulo de tamanho fixo que é inserido entre a camada de enlace (link layer) e a camada de rede (network layer).
Nos saltos subseqüentes não há nenhuma análise do cabeçalho da camada de rede do pacote. A cada Roteador Comutador de Rótulos (Label Switch Router – LSR ) pelo qual o pacote passa, os rótulos são trocados pois cada rótulo representa um índice na tabela de encaminhamento do próximo roteador. Sendo assim, quando um pacote rotulado chega, o roteador procura em sua NHLFE pelo índice representado pelo rótulo. Ao encontrar este índice o roteador substitui o rótulo de entrada por um rótulo de saída associado à CEE a que pertence o pacote. Após completada a operação de troca de rótulos o pacote é encaminhado pela interface que está especificada na tabela de roteamento.
Quando o pacote chega ao LER de saída da rede MPLS, o rótulo é removido e o pacote é encaminhado pela interface associada à CEE a qual pertence o pacote.
Vantagens do MPLS
Esta seção tem como objetivo apresentar algumas das vantagens introduzidas pelo MPLS como consta na RFC3031 que descreve a arquitetura MPLS.
A primeira vantagem seria o fato do encaminhamento MPLS poder ser feito apenas com comutadores no papel de RCR (LSR). Usualmente os comutadores são capazes de realizar as tarefas de pesquisa e troca de rótulos mas não são capazes de analisar o cabeçalho da camada de rede, ou não são capazes de faze-lo rápido o bastante.
A utilização de comutadores no lugar de roteadores é vantajosa porque os comutadores são em geral mais baratos e operam a velocidades superiores à dos roteadores.
Outra vantagem introduzida pelo MPLS é decorrente do fato dos pacotes serem analisados apenas uma vez, quando entram na rede MPLS. Sendo assim o roteador de ingresso pode utilizar qualquer informação sobre o pacote, não necessariamente presente no cabeçalho da camada de rede, para determinar a que CEE pertence o pacote.
Com isso é possível se criar classes de serviço para se diferenciar pacotes e se realizar engenharia de tráfego para não sobrecarregar rotas congestionadas. Assim pode-se por exemplo escolher caminhos mais rápidos, porém com custo mais elevado, para pacotes de maior prioridade.
Uma terceira vantagem seria a possibilidade de se rotular diferenciadamente pacotes que entram por roteadores ou até mesmo interfaces diferentes. Isto permite a fácil criação de Redes Privadas Virtuais (Virtual Private Networks - VPN’s).
Existe ainda uma vantagem que é inerente a própria concepção da arquitetura. Como a parte pesada do processamento dos pacotes é feita nas bordas da rede, o núcleo da rede pode operar com mais folga. Isto é uma grande vantagem uma vez que a taxa de pacotes por segundo no núcleo da rede é maior do que a taxa de pacotes nas bordas.
Aplicações
Como foi visto anteriormente, o MPLS é uma rede de transito, o que em geral significa que há a necessidade de grande planejamento e grandes investimentos para sua implementação.
Porém, apesar de ser uma tecnologia nova, várias empresas já estão optando por migrar seus Backbones para tecnologia MPLS. Uma das primeiras a se aventurar no uso do MPLS foi a AT&T. Atualmente, outros grandes provedores como a GlobalOne, já estão oferecendo serviços baseados em redes MPLS.
A BellSouth está com um projeto de implementar uma rede MPLS no NAP (Network Access Point) de Miami, que é o link de dados entre os EUA e a América Latina, Caribe, África e leste Europeu.
No Brasil, a Intelig já oferece serviços baseados em sua rede MPLS.
Conclusão
Até hoje não existe nenhum protocolo que seja uma panacéia para os problemas de redes de computadores. E não acredito que será assim com o MPLS que apesar de oferecer inúmeras vantagens sobre seus predecessores, terá também suas limitações.
Embora o MPLS seja uma tecnologia muito promissora, somente o tempo irá dizer o quão relevante ela realmente será. Com a grande velocidade em que ocorrem as inovações, novas tecnologias aparecem a todo instante tornando o que outrora era considerado como o futuro em apenas curiosidades e notas de rodapé.
Para maiores informações sobre os detalhes do funcionamento do MPLS, referir-se ao RFC 3031.
Nenhum comentário:
Postar um comentário