LSP é o caminho feito por um pacote em uma rede MPLS sem que sua pilha de rótulos
seja modificada, a não ser no penúltimo nó. Essa escolha pelo penúltimo nó tem uma
justificativa simples. Se o topo da pilha vai ser retirado no ultimo nó do LSP, ele teria que
examinar os rótulos duas vezes: uma para retirar o rótulo e outra para ver o próximo passo.
Retirando o topo no penúltimo, o pacote já chega com o rótulo certo no destino. O
penúltimo nó pega a informação de que ele é o penúltimo do rótulo, retira o rótulo do topo
e encaminha o pacote em apenas uma análise. Desse modo, o nó final não precisa ser
sempre um LSR, já que o pacote pode chegar lá sem rótulos (caso a pilha tenha tamanho 1).
O LSR inicial do LSP é chamado de LSP “Ingress” e o final de LSP “Egress”. Vale lembrar
que o inicio e o final não estão necessariamente nas bordas da rede.
Existem duas maneiras de criar LSPs: a forma independente e a forma ordenada. A
independente funciona de maneira similar ao IP, onde cada LSR atribui os rótulos que achar
mais adequados, “roteando” os pacotes. Já o modo ordenado permite um maior controle da
QoS, pois antes de começar a transmitir os pacotes, os rótulos devem já estar devidamente
atribuídos. Esse pré- estabelecimento dos rótulos, feito ou pelo Egress, é o artifício que
permite o controle do QoS e do TE (engenharia de tráfego), dado que se garantirão os
recursos disponíveis no caminho e também o controle do fluxo de dados. Ambos os modos
se “entendem”, de modo que uma rede MPLS pode ter LSRs funcionando tanto
independentemente ou ordenadamente. Para se obter os benefícios uma rede ordenada
(citados acima), entretanto, deve-se ter todos os LSRs trabalhando de modo ordenado.
O conjunto de LSRs de que se consistirá o LSP pode ser determinado de dois modos:
pulo-a-pulo ou explicitamente. No pulo-a- pulo o próximo LSR a ser tomado para o percurso
será escolhido na parada em cada nó (como no IP). Já no modo explícito, os LSRs devem ser
pré-determinados pelos nós de Ingress ou Egress. Esse caminho é determinado de acordo
com as necessidades de QoS e TE da rede. Diferente da escolha de caminho no IP, ela não é
feita para cada pacote, mas sim para cada LSP, e por isso, pode se perceber uma notável
melhoria.
Sendo assim, para uma rede MPLS de controle ordenado e determinação de LSP
explícita, teremos uma garantia considerável da QoS e grande suporte ao TE.
Agregação de Tráfego
É possível haver diferentes FEC's que percorrem o mesmo LSP. Portanto, ao invés de
atribuir um rótulo para cada FEC, pode-se atribuir o mesmo rótulo a todos esses FEC's.
Essa saída diminui o número de rótulos que cada LSR tem que atribuir, por outro lado,
trás à tona a questão da granularidade da agregação. Para entender esse conceito, tomemos
como exemplo de granularidade: um rótulo para cada FEC (granularidade maior) e um rótulo
para cada nó egress (granularidade menor)
Os LSR's devem saber o quão agregado está o tráfego para atribuir seus rótulos. No
controle ordenado, só é necessário saber a granularidade dos FEC's que saem da rede MPLS
em cada nó, já na forma independente deve-se saber a granularidade de todos os nós. Assim
sendo no controle ordenado a quantidade de informação guardada sobre a granularidade
será menor do que na independente.
Label Merging
Vamos supor que um LSR receba pacotes com diferentes rótulos, mas atribuídos ao
mesmo FEC, é de se esperar que esses rótulos sejam substituídos pelo mesmo rótulo ao
serem encaminhados pelo LSR. Tal técnica se chama “Label Merging”, e ajuda a manter baixo
o número de rótulos que cada LSR possui, guardando apenas os rótulos referentes aos seus
vizinhos. Caso tal técnica não fosse realizada, cada LSR poderia ter tantos rótulos quantos nós
existem na rede. Redes ATM e Frame-Relay não suportam Label Merging, mas o MPLS tem
alguns procedimentos para conciliar os label merging aos não label merging. Tais
procedimentos, porém, fogem do escopo do trabalho.
Túneis
Em uma rede de comutação de pacotes pode-se encapsular os pacotes com alguma
técnica (IP, GRE) e criar túneis entre dois nós da rede. No nó inicial um novo cabeçalho é
colocado na frente do pacote de forma a encapsulá-lo. Todos os nós entre o inicial e o final
rotearão a informação se baseando no cabeçalho de encapsulamento. No nó final o pacote é
retirado do encapsulamento e retornado ao seu estado inicial para ser examinado.
Isso também pode ser feito nas redes MPLS. O LSP seria o túnel, e ao invés de usar
encapsulamento, usaríamos os rótulos. Um LSR que quer criar um túnel de LSP para outro
deve atribuir um rótulo para esse túnel. Os pacotes que forem entrar no túnel devem colocar
esse rótulo na pilha de rótulos. O túnel pode ser montado de pulo- a-pulo ou explicitamente.
Exemplo de um LSP que vai de R1 para Rn - note que de Ri para Ri+1 o pacote entra em
um túnel, mais um rótulo é adicionado. O pacote é comutado até Rk, o penúltimo nó do
túnel, que retira o rótulo e o passa para Ri, o último nó do túnel, que continuará comutando
o pacote até Rn.
Vamos exemplificar o funcionamento do MPLS. Suponha a rede da figura abaixo. Nela temos uma rede MPLS, ou nuvem, entre dois segmentos de redes
diferentes. Um pacote/quadro entra na nuvem em um LER. Esse LER será o responsável por:
- Inserir o rótulo no pacote/quadro
- Definir o caminho que o pacote deve seguir
- Distribuir os rótulos pelo caminho designado (usando um dos protocolos de distribuição
de rótulos ), também chamado de estabelecer a LSP
- Inserir o rótulo certo e encaminhar para o LSR seguinte.
Após isso feito os LSRs encaminharam o pacote pelo caminho designado, sem nunca mais
verificar o pacote/quadro, apenas o rótulo. Ao chegar ao LSR final da rede MPSL, o LER, o
rótulo será retirado e o pacote/quadro será encaminhado de acordo com as definições da
rede onde se encontra.