Introdução


Em um paradigma clássico de roteamento por IP, o encaminhamento do tráfego é feito de forma a chegar o mais rapidamente possível ao destino, o que significa seguir o caminho mais curto baseado somente no custo dos links. Além disso, os pacotes são encaminhados a cada salto, ou seja, cada roteador encaminha o pacote baseado no endereço de destino, o que chamamos de destination-based forwarding paradigm. Esse paradigma contudo não leva em conta a largura de banda de cada link, gerando um subaproveitamento da banda total entre fonte e destino.

Assim, a rede passa a estar suscetível a congestionamentos, e consequentemente perda de pacotes. Uma solução para o problema é a utilização da PRB (Policy-based Routing), mas que contudo não é prática, pois requer que as políticas sejam implementadas em cada roteador no caminho para o destino.

Dessa forma, surge a engenharia de tráfego (Traffic Engineering - TE), cujo funcionamento resume-se em desviar uma parcela do tráfego para um caminho não ótimo, permitindo um melhor gerenciamento da utilização de banda total, aliviando congestionamentos temporários no centro da rede. Para tal, são coletadas informações a respeito do padrão de tráfego que atravessa o núcleo da rede, de forma que possam ser configurados túneis, a fim de separar os caminhos .



Fig 1: túneis TE , Tunnel1 and Tunnel2, podem ser configurados em PE1-AS1 que podem mapear diferentes caminhos(PATH1, PATH2), permitindo um uso de banda eficiente. (extraído de [2])


Em uma rede MPLS (Multiprotocol Label Switching), os dados de uma rede são encaminhados de nó a nó baseados em rótulos que identificam enlaces virtuais, evitando a utilização de endereços longos e tabelas de roteamento complexas. Nessa, as configurações de tunelamento são sempre definidas nos denominados provider edge (PE) routers, roteadores localizados entre áreas de provedores de serviço distintos, ligando-os através do núcleo do provedor.

Logo, podemos citar a aplicabilidade de mecanismos de engenharia de tráfego em redes MPLS: É aplicado o Source-based routing para o tráfego na origem do túnel, sendo definido um caminho configurável através do qual o tráfego deverá passar; O MPLS-TE provê uma forma eficiente de encaminhamento de tráfego evitando a superutilização e subutilização de links; MPLS-TE se adapta a mudanças de banda; MPLS-TE leva em conta as bandas configuradas dos links.

Multi-Protocol Label Switching (MPLS)


Multi-Protocol Label Switching tem como base a utilização de rótulos (labels) para realizar o roteamento dentro da rede e, por ter seu cabeçalho inserido entre o cabeçalho de enlace e o de rede, é classificado na camada 2.5 do modelo OSI.



Fig 2:Adição de labels em uma rede MPLS sobre pacotes IP ( extraído de https://www.mushroomnetworks.com/what-is-mpls/)


Redes MPLS possuem dois tipos principais de dispositivos: Label Edge Router (LER) e Label Switch Router Ascendente (LSR). Os LER são os componentes de borda da rede, sendo o LER de entrada o responsável pela associação dos rótulos aos pacotes de dados, tarefa que é realizada após a determinação das possibilidades de encaminhamento na rede, também conhecidas como Fowarding Equivalence Class (FEC), e associação das FECs à pelo menos um caminho interno da rede MPLS.

Após concluída a rotulação dos pacotes, os componentes LSR realizam o roteamento utilizando apenas a troca dos rótulos dos pacotes a cada salto por valores especificados em suas tabelas de roteamento, consultando apenas a label de entrada e a FEC pertencente ao pacote.

Engenharia de Tráfego (TE)


Denominamos por engenharia de tráfego o processo de controle do fluxo de tráfego em uma rede, de forma a promover uma otimização concomitantemente da performance quanto da utilização dos recursos. Em geral, utilizando a aplicação de tecnologias e princípios científicos para medir, modelar, caracterizar e controlar o tráfego da internet.

Atualmente, a maior parte dos IGPs (Interior Gateway Protocol) - protocolo utilizado para o roteamento entre gateways (usualmente roteadores) dentro de um mesmo sistema autônomo (AS) - utiliza o menor caminho para encaminhar o tráfego. Isso, apesar de conservar os recursos da rede, também representa sérios problemas. Entre eles, pode-se citar a possível convergência do tráfego em alguns links, gerando congestionamento, além da subutilização de caminhos mais longos quando o mais curto atinge sua capacidade.

Assim, o crescimento em tamanho e em complexidade dos sistemas autônomos, aliado aos altos custos de operação e uma competitividade inerente ao mercado, enfatizam a necessidade de uma máxima eficiência de operação. Dessa forma, a engenharia de tráfego passa a ser um mecanismo completamente indispensável no contexto de redes atual.



Objetivos Performáticos da Engenharia de Tráfego

Os objetivos performáticos associados a engenharia de tráfego podem ser divididos em: Orientados ao tráfego e orientados a recursos.O primeiro diz respeito a aspectos que impactam na qualidade de serviço (QoS) do fluxo do tráfego, e tem como objetivos a minimização da perda, atraso, maximização do throughput, entre outros. Já o segundo, orientado a recursos, diz respeito a otimização da utilização dos recursos, garantir que não haverá partes da rede sobre utilizadas causando congestionamentos enquanto outras estão subutilizadas.

Podemos considerar portanto, o controle de congestionamento como um objetivo comum de ambas abordagens de TE. Esse, tipicamente pode se manifestar em dois cenários:
1) Quando os recursos da rede são insuficientes ou inadequados para acomodar a carga.
2) Quando o fluxo de tráfego é mapeado de forma ineficiente.

No primeiro caso, temos como soluções viáveis a incremento dos recursos disponíveis ou a aplicação de técnicas de controle de congestionamento clássicas. Já o segundo caso se enquadra no escopo de problemas resolvidos utilizando-se engenharia de tráfego.



Controle de Tráfego e Recursos

Na engenharia de tráfego, tem-se uma automatização do processo de controle da rede, que envolve as seguintes ações: Modificação dos parâmetros de gerenciamento de rede; modificação dos parâmetros relacionados ao roteamento; Modificação dos atributos e restrições associadas aos recursos. Os quais devem ser pensados e implementados de forma a minimizar a quantidade de decisões e configurações manuais.

O sistema responsável por esse controle inclui uma série de funções e elementos de rede interconectados, além de um monitorador da performance da rede e uma série de ferramentas de configuração. Em seu funcionamento, é estabelecida uma política de controle, observa-se e caracteriza-se o tráfego e sobre isso são aplicadas as ações de controle estabelecidas.

Esse sistema pode ser tanto um sistema responsivo, ou seja, sendo observado um dado estado na rede, são tomadas as medidas previstas na política de controle como resposta. O sistema, por outro lado, pode ser pró-ativo. Isso implica a utilização de técnicas de previsão do estado futuro da rede, antecipando possíveis problemas futuros, procurando evitá-los antecipadamente.



Limitações de Mecanismos de Controle IGP

Como já mencionado anteriormente os mecanismos de controle IGP apresentam uma série de limitações e problemas relacionados, que os tornam não adequados a engenharia de tráfego.

O fato de mecanismos IGP utilizarem sempre o menor caminho de roteamento, além de não levar em conta métricas como congestionamento e largura de banda, torna-o pouco adequado a políticas de controle mencionadas acima. Não obstante, esse próprio fato é um grande responsável por engarrafamentos em enlaces da rede.

Funcionamento do MPLS-TE



Distribuição de Informação de Links

A categoria de protocolo de roteamento para redes de comutação de pacotes utilizada em MPLS - TE é a Distribuição de Informação de Links, do inglês Link-state routing protocol. Esse protocolo se baseia na capacidade de cada roteador calcular e registrar em sua própria tabela de roteamento o melhor caminho existente para qualquer outro roteador presente na rede.

Para ser possível montar a tabela de roteamento, o roteador primeiro precisa da topologia de rede na qual ele está inserido, etapa essa que começa com cada roteador descobrindo seus vizinhos imediatos e então inundando a rede com mensagens para informar qual o seu identificador, quais são os seus vizinhos e um fator para distinguir mensagens mais recentes caso haja alterações na rede. Após receber a mensagem de cada outro nó na rede, o roteador monta o mapa da rede, evitando ligações que não foram confirmadas pelos os dois nós participantes.

Como informações adicionais dos links podemos citar:
- Endereços de interface;
- Endereço dos vizinhos;
- Máxima largura de banda reservável;
- Largura de banda não reservável;
- Métricas de Engenharia de tráfego;
- Flags de atributos;

Quando essas informações são estabelecidas, o IGP em adição ao banco de dados dos estados de link (que sempre é construído), também constrói um TED (TE topology database), que contém as informações mencionadas acima.


Fig 3:TE topology database (extraído de [11])



Path Calculation (CSPF)

Como já mencionado anteriormente, em um controle IGP, é observado somente as distâncias totais até o destino, escolhendo-se o menor. No caso da utilização de uma política TE, é necessário prestar atenção às restrições. Não necessariamente portanto, o caminho mais curto atenderá a essas restrições, desviando assim o tráfego para caminhos alternativos.


Fig 4: Mostra que usualmente por IGP tráfego sempre seguiria caminho mais curto por cima. Usando as restrições, esse caminho para de atendê-la (50Mbps < 80Mbps), e tráfego é desviado por caminho inferior (extraído de [11])


Assim, para cálculo do caminho, temos as seguintes características:
- Nós TE consegue performar roteamento baseado em restrições ( constraintbased routing);
- A “cabeça” do túnel usualmente é responsável pelo cálculo do caminho;
- É utilizado aos bancos de dados da topologia e das restrições (TED) para a computação do melhor caminho;
- O algoritmo utilizado para encontrar menores caminhos ignora caminhos encontrados que não atendam às restrições (Dijkstra modificado, usualmente conhecido como CSPF;
- O túnel pode ser estabelecido quando um caminho é encontrado.

Entre algumas características que valem ser ressaltadas de um túnel TE, são que primeiramente, esse é estabelecido pelo que chamamos de cabeça, head, do túnel. O destino é denominado de tail, correspondendo a outra ponta do túnel.

Esses túneis também são unidirecionais, ou seja, se quisermos uma conexão em direção oposta, um novo caminho deverá ser calculado e um novo túnel estabelecido, que não necessariamente passará pelos mesmos roteadores do anterior.



Path Setup (RSVP-TE)

Depois que o melhor caminho é calculado, um túnel será configurado usando RSVP-TE (Resource Reservation Protocol - Traffic Engineering), que é responsável pela reserva de recursos em uma rede IP.

O RSVP possui portanto 3 funções básicas:
1) Estabelecimento e manutenção do caminho;
2) Desmontamento do caminho;
3) Sinalização de erros.

Como o TE é orientado a recursos, temos recursos que desejamos consumir, e necessitamos sinaliza-los pela rede. É necessário também uma forma de distribuir os Labels.

Dessa forma, a head do túnel encaminha uma mensagem PATH, que indica o destino e o caminho desejado e as restrições. Quando um nó intermediário recebe uma mensagem dessas, ele reserva os recursos requisitados e encaminha a mensagem para o próximo salto (ou envia uma mensagem de erro). Ao chegar ao Tail do túnel, esse também reserva os recursos e envia um RESV . Quando esse processo é completo o fluxo de informações pode ser iniciado.


Fig 5: Estabelecimento por R1 de um túnel entre R1 e R4 (extraído de [8])


As mensagens de erro por sua vez podem ser do tipo PATHERR, na qual um roteador do caminho não é capaz de acomodar os recursos necessários, ou do tipo RESVERR, na qual a mensagem de Path chegou ao roteador de destino, porém, o tempo levado entre a mensagem de path que chegou a um nó no caminho e a mensagem de reserva indicam uma falta de recursos.


Fig 6: Figura indicando as possíveis mensagens de erro do RSVP (extraído de [2])



Forwarding Traffic down Tunnel

É importante ressaltar que, a Engenharia de Tráfego propriamente dita não é responsável pelo encaminhamento de nenhum tipo de informação, mas sim o cálculo e estabelecimento do caminho pelo qual esse passará.

Temos 3 formas principais de encaminhar tráfego por um túnel:
1) Rout estático;
2) Auto Rout;
3) Política de roteamento.

Os dois primeiros implicam em adicionar as informações do túnel as tabelas de roteamento, já na política de roteamento não. Contudo, esse último necessita de Cisco IOS (12.0(23)S ou 12.2T) ou superior para funciona


Serviços do MPLS-TE


Re-roteamento Rápido

Em uma rede MPLS-TE sem o recurso de Re-roteamento Rápido dependente do headend para estabelecer o caminho de um LSP, label-switched paths, a velocidade resposta para casos de falha em um determinado link é limitada pelo tempo de recepção da mensagem de erro ao headend.



Fig 7:Túnel de Backup, Re-roteamento rápido (extraído de [9])


O Re-roteamento Rápido possibilita que os próprios aparelhos de roteamento da rede executem o re-roteamento para contornar links indisponíveis enquanto um novo LSP não é determinado no headend. Para realizar o roteamento ao detectar falha no link, o roteador redireciona os pacotes recebidos para um túnel secundário ao acrescentar o label desse túnel ao pacote



Proteção de Caminho


Fig 8: Figura indicando túnel de backup (extraído de https://www.cisco.com/c/en/us/td/docs/switches/datacenter/sw/5_x/nx-os/mpls/configuration/guide/mpls_cg/mp_te_path_prot.pdf)


A proteção de caminho é estabelecida para assegurar a conexão fim-a-fim da rede, por meio do estabelecimento de um LSP de backup, tornando mais rápido o re-roteamento em caso de defeitos na rede.

Ao receber a informação que determinado caminho da rede está desabilitado para uso, o nó de entrada da rede redireciona o tráfego para o LSP de backup previamente estabelecido, enquanto o LSP primário não é reativado.


Conclusão


A engenharia de tráfego aplicada a MPLS visa uma melhor utilização dos recursos de banda da rede, assim estabelecendo políticas de controle que melhorem a qualidade do tráfego na rede, evitando congestionamentos, e consequentemente maiores latências e perdas.

O MPLS-TE adiciona restrições aos links da rede, de forma que o encaminhamento de fluxo não mais acontece como no mecanismos de controle IGP, no qual sempre é encaminhado pelo menor caminho. Agora, o caminho deverá atender às restrições estabelecidas, de forma que pode ser desviado, melhor utilizando os recursos da rede como um todo.

Calculado o melhor caminho, é estabelecido um túnel por RSVP, no qual é checado se todos os roteadores podem reservar os recursos necessários. Disso surgem diversas aplicações interessantes, como a proteção de caminho, com a criação de túneis de backup ou o re-roteamento, que diminui o tempo de recuperação.

Referências


[1] MPLS-TE Basics:Disponível em <https://sites.google.com/site/amitsciscozone/home/important-tips/traffic-engineering/mpls-te-basics> Acesso em: 27/08/2019.

[2] MPLS Traffic Engineering: Disponível em <http://www.ciscopress.com/articles/article.asp?p=426640> Acesso em: 27/08/2019.

[3] AWDUCHE, Daniel O.; AGOGBUA, Johnson. Requirements for traffic engineering over MPLS. 1999.

[4] XIAO, Xipeng et al. Traffic Engineering with MPLS in the Internet. IEEE network, v. 14, n. 2, p. 28-33, 2000.

[5] OOMMEN, B. John; MISRA, Sudip; GRANMO, Ole-Christoffer. Routing Bandwidth-Guaranteed paths in MPLS traffic engineering: A multiple race track learning approach. IEEE Transactions on Computers, v. 56, n. 7, p. 959-976, 2007.

[6] AWDUCHE, Daniel O. MPLS and traffic engineering in IP networks. IEEE Communications magazine, v. 37, n. 12, p. 42-47, 1999.

[7] SHAHSAVARI, Mohammad Mehdi; AL-TUNSI, Adnan A. MPLS performance modeling using traffic engineering to improve QoS routing on IP networks. In: Proceedings IEEE SoutheastCon 2002 (Cat. No. 02CH37283). IEEE, 2002. p. 152-157.

[8] Presentation by Jessica Wei at APNIC 44 on Wednesday, 13 September 2017 : <https://pt.slideshare.net/apnic/mpls-traffic-engineering-79787781>

[9] MPLS Traffic Engineering Fast Reroute: Dísponivel em <https://www.cisco.com/en/US/docs/ios/12_0st/12_0st10/feature/guide/fastrout.html> Acesso em: 01/10/2019.

[10] MPLS: Dísponivel em <https://www.gta.ufrj.br/grad/01_2/mpls/mpls.htm> Acesso em: 01/10/2019.

[11] Presentation by Gregory Johnson at CiscoLive! on June 25-29 2017 - BRKMPL-2100

Perguntas



1) Quais são as 4 etapas para funcionamento do MPLS-TE?


2) Qual a principal limitação de Mecanismos de Controle IGP?


3) Como o MPLS-TE encaminha tráfego por outros caminhos?


4) Cite 2 serviços do MPLS-TE.


5) Qual a vantagem de estabelecer túneis de backup?