cancelar
Mostrar resultados para 
Pesquisar em vez de 
Queria dizer: 
cancel
313
Apresentações
6
Útil
0
Comentários
SamuelGLN
Spotlight
Spotlight

Introdução a MPLS

Seguindo com a série de artigos redes na prática, neste irei introduzir o famoso Multiprotocol Label Switching (MPLS). O MPLS é uma tecnologia standard que foi apresentada inicialmente como uma melhoria no processo de encaminhamento de pacotes IPs, combinando o processo de roteamento L3 com a comutação L2 para realizar o encaminhamento de pacotes através da atribuição de labels. Por ter essa combinação o MPLS muitas vezes é referido como uma tecnologia de layer 2,5.

Em resumo, MPLS é uma forma de encaminhamento de pacotes que tem a sua tomada de decisão baseada em labels curtos e fixos ao invés do destino de layer 3, como é feito no processo de roteamento tradicional. Vale ressaltar que com a alta capacidade e velocidade de processamento dos roteadores atualmente, o MPLS não é muito mais rápido que o roteamento IP tradicional, porém, traz ganhos significativos em engenharia de tráfego, QoS, VPNs e Any Transport Over MPLS (AToM).

MPLS LIB & FIB

Quando um router tem o processo MPLS ativo, o seu control plane passa a ser responsável por trocar labels com outros roteadores que também estejam com o MPLS ativo. Esse processo é feito através da utilização de um protocolo de distribuição de labels (normalmente o LDP ou MP-BGP). Além disso, o control plane continua sendo responsável por realizar a troca de rotas entre os roteadores através de um protocolo de roteamento para popular a sua routing information base (RIB), esse processo normalmente é referido como underlayer.

Uma vez recebidas pelo roteador, as informações de labels são utilizadas para popular a sua Label Information Base (LIB) e então a melhor informação de label poderá ser utilizada para popular a Forwarding Information Base (FIB) para o encaminhamento de pacotes sem labels. Ocorre também o envio de informação para a Label Forwarding Information Base (LFIB) que utiliza para encaminhamento de pacotes com labels ou a remoção de labels quando o pacote precisa ser encaminhado pela FIB. A figura 1.0 mostra como é feita a interação entre as diferentes tabelas dentro do processamento do router.

 

SamuelGLN_1-1720132036331.png

Figura 1.0

O que acontece na prática é que ao receber um pacote sem label o roteador irá utilizar a FIB para tomar a decisão de encaminhamento. Se a FIB indicar que a interface de saída é uma interface sem MPLS, o pacote é encaminhado sem label. Caso a interface indicada na FIB seja uma interface com MPLS, será adicionado um label no pacote e então encaminhado através da interface MPLS. Por outro lado, ao receber um pacote com label em uma interface MPLS, o router irá utilizar a LFIB para tomada de decisão. Se a LFIB indicar que a interface de saída é uma interface MPLS, o label recebido no pacote será removido e um novo label é adicionado antes de encaminhar o pacote para a interface de destino. Supondo que a interface de saída indicada na LFIB não seja uma interface MPLS, o label será removido e pacote encaminhado utilizando a informação contida na FIB.

Label Switching Routers

SamuelGLN_4-1720132555234.png

 Figura 2.0

Outro conceito importante a ser entendido é o que são os Label Switching Routing (LSR). Analisando a topologia da figura 2.0, vemos que os router de R1 a R5 estão contidos dentro de um domínio MPLS e, pelo fato de serem capazes de receber e enviar labels em suas interfaces, são considerados LSRs. Note que na topologia temos dois tipos de LSRs:

  • Edge LSR: São os roteadores que estão localizados na borda do domínio MPLS. Estes são responsáveis por atribuir label a pacotes que estão entrando no domínio MPLS (ingress LSR), remover label de pacotes que estão saindo do domínio MPLS (egress LSR), bem como realizar o encaminhamento de pacotes com labels.
  • Intermediate LSR: São roteadores localizados dentro do domínio MPLS que realizam encaminhamento de pacotes com base nos labels recebidos.

Label-Switched Path

Label-Switched Path (LSP) nada mais é do que a sequência de labels que forma o caminho entre a origem e o destino de um pacote ao trafegar dentro de uma rede MPLS. LSP é um caminho unidirecional, por esse motivo, em redes complexas podemos ter casos em que o LSP de “ida” seja diferente do LSP de “volta” do pacote. Veja o exemplo a seguir:

SamuelGLN_5-1720132883913.png

 Figura 3.0

Analisando a figura 3.0, podemos perceber que, ao receber um pacote de uma interface não MPLS com destino 10.0.0.0/24, o R1 primeiro analisa a sua FIB, que informa a interface de saída sendo uma interface MPLS conectada ao R2. A partir dessa informação, o R1 atribui um label ao pacote e encaminha para R2, que irá basear sua tomada de decisão na sua LFIB. Ao identificar que a interface de saída também está no domínio MPLS, o R2 remove o label recebido e adiciona um novo label antes de encaminhar o pacote pela interface de saída. O processo se repete em R3 e R4 até chegar em R5. Ao receber o pacote, o R5 verifica que o destino será por uma interface não MPLS e, por isso, remove o label recebido e encaminha o pacote com base na informação contida na FIB.

Com base no que foi exposto até aqui já conseguimos ter clareza sobre o que é o MPLS e, de maneira superficial, dizer como ele funciona. Mas afinal, o que são os labels?

Labels

Como já devem ter percebido, o label é o item mais importante para o MPLS e pode ser definido como um pequeno identificador de 4 bytes (32 bits) com significado local para o roteador. Eles são inseridos entre os cabeçalhos das camadas de enlace (L2) e rede (L3) como podemos ver na figura 4.0. Um ponto importante de ressaltar é que os labels são usados para identificar um Forwarding Equivalent Class (FEC), isto é, um grupo de pacotes IPs que serão enviados seguindo o mesmo caminho dentro do domínio MPLS.

SamuelGLN_7-1720133149497.png

 Figura 4.0

Conforme mencionado anteriormente, o label é formado por 32 bits que são distribuídos em 4 diferentes campos conforme mostra a Figura 5.0. São eles:

  1. Label: 20 bits – Define o número/identificação do label.
  2. Experimental (EXP): 3 bits – Utilizado para Quality of Service (QoS).
  3. Bottom of Stack (S): 1 bit – Indica se o label é o último em uma pilha de labels quando mais de um label é aplicado ao pacote. (MPLS VPNs por exemplo)
  4. Time to Live (TTL): 8 bits – Utilizado da mesma forma que no roteamento IP, atua como um mecanismo de prevenção de loop e para que o frame MPLS seja descartado quando o TTL chegar a 0.

SamuelGLN_8-1720133355882.png

Figura 5.0

Pois bem, para esse primeiro artigo a ideia foi de apresentar o MPLS para aqueles que estão iniciando os estudos sobre o tema. Nos artigos seguintes seguirei aprofundando mais na teoria e configurações com labs práticos no canal Lo0 para ajudar na fixação. 

Para todos que leram até aqui, deixo duas perguntas sobre o tema como forma de estudo e caso tenham dúvidas ou considerações, sintam-se à vontade para postar nos comentários.

1. How are packets forwarded in an MPLS domain?

  1. Using the destination IP address of the packet
  2. Using the source IP address of the packet
  3. Using a number that has been specified in a label
  4. Using MAC address of the frame

2. What type router is responsible for adding MPLS labels to a packet?

  1. Ingress edge LSR
  2. Egress edge LSR
  3. Intermediate LSR
  4. P router
 
Se esse artigo te ajudou de alguma forma, peço que compartilhe e deixe seu kudos! 

Comunidade Cisco

Aprender. Compartilhar. Crescer.

 

 

 

 

Primeiros Passos

Encontre respostas, faça perguntas e conecte-se com nossa comunidade de especialistas da Cisco de todo o mundo.

Estamos felizes por você estar aqui! Participe de conversas e conecte-se com sua comunidade.