Publicado originalmente en: https://medium.com/@acostatomas43/dentro-de-los-proveedores-de-internet-acerca-de-mpls-y-l3vpn-47b4fe3b4633
O que é um provedor de serviços de Internet?
Palavras-chave: Tecnologia, Ciências da Computação, Engenharia, Telecomunicações, Rede
Um provedor de serviços de Internet (ISP) é uma grande corporação que fornece aos usuários individuais (qualquer um de nós) acesso à Internet: a rede de redes. Exemplos de ISPs podem ser Movistar, Claro, Personal, VIVO, Vodafone, entre outros que se destacam no mercado de telecomunicações. Para compreender a estrutura de algo tão complexo como a estrutura de um ISP ou da Internet, começaremos pela definição de uma rede LAN e uma rede WAN.
Uma rede LAN (rede de área local) é um conjunto de dispositivos (PCs de desktop, laptops, telefones celulares, impressoras, entre outros) conectados entre si, dentro de uma área limitada, que geralmente não ultrapassa 3 km (aprox.). Redes LAN são frequentemente implementadas em ambientes como escritórios, prédios, universidades ou lares.
Uma rede WAN (rede de área ampla) é uma tecnologia que permite interconectar diferentes redes LAN que estão a uma distância geográfica remota, ou até mesmo muito remota. As redes WAN se destacam pelo seu alcance regional, internacional e intercontinental.

Descrição: Redes LAN e Redes WAN trabalhando em conjunto. Dispositivos individuais se conectam a um switch (comutador), e estes se conectam a roteadores, que permitem a interconexão entre redes heterogêneas.
Dessa forma, a Internet é um enorme conjunto de redes WAN e redes LAN, que dá vida a essa grande malha global de redes, que nunca dorme e está constantemente traficando informações. É por isso que, entre esses usuários individuais e algo tão complexo como a Internet, deve haver um intermediário para garantir um acesso seguro, preciso e simples: o ISP.

Descrição: A estrutura básica da Internet: até onde pode realmente chegar?
A estrutura de um ISP pode ser entendida, de maneira simplificada, a partir de três grandes níveis. Em primeiro lugar, estão as redes dos usuários ou clientes, que contratam o provedor para obter conectividade. Depois, aparecem as redes de acesso, que atuam como um elo entre esses usuários e a infraestrutura própria do ISP. Por último, está o backbone ou rede troncal, o núcleo de alta capacidade do provedor, responsável por transportar grandes volumes de tráfego entre diferentes zonas de sua rede e por permitir que esse tráfego chegue, conforme necessário, a outros clientes, a serviços do próprio ISP ou a redes externas como a Internet.

Descrição: Estrutura de ISPs: desde as redes individuais, passando pelas redes de acesso, até contemplar o backbone. Observe também o IXP (ponto de interconexão), onde se emparelhados ISPs heterogêneos. Assim, por exemplo, um usuário que paga Movistar pode se comunicar com um usuário de outro país que paga Vodafone.
O que é o roteamento (routing)?
O routing é um processo a cargo dos roteadores (routers) que consiste em enviar pacotes de dados, de uma origem a um destino, ao longo da rede, sem que se percam no caminho. O roteamento é realizado na camada 3 do modelo OSI (estendido ao modelo TCP/IP), ou seja, na camada de rede. Nas redes LAN, o roteamento é realizado de forma estática ou dinâmica, através de protocolos de roteamento. No entanto, para as redes WAN, que são a base dos provedores de Internet devido ao seu grande alcance, são necessárias tecnologias adaptadas a isso. Neste artigo, será abordado um padrão muito aclamado nas redes de computadores: o padrão MPLS.
Como é a comunicação entre clientes dentro de um ISP?
MPLS (Multiprotocol Label Switching) é um padrão baseado em etiquetas (labels), que opera na camada 2.5 do modelo OSI, já que combina a velocidade de comutação de pacotes da camada 2 e a inteligência de roteamento da camada 3. Em resumo, e dito de uma maneira simplificada, o MPLS ajuda os provedores a rotear, ao longo de sua imensa rede, sem a necessidade de armazenar tantas informações de seus clientes para fazê-lo, já que traz um elemento crucial, que permite o reenvio de pacotes de forma simplificada: a etiqueta.
Uma etiqueta MPLS é um conjunto de 32 bits que se fragmenta nas seguintes partes: 20 bits dedicados a identificar a etiqueta de forma única, 3 bits que indicam uma classe de serviço fornecida, 1 bit que indica se a etiqueta atual é a última na pilha de etiquetas de um pacote MPLS, ou se há mais etiquetas abaixo; e 8 bits que indicam o tempo de vida da mesma. As etiquetas de um pacote MPLS são empilhadas em certo ordem, onde a etiqueta externa (ou seja, no topo da pilha) é a que é utilizada para o reenvio de pacotes pela rede. Com as etiquetas, podemos fazer três operações: push, swap e pop. A operação 'push' permite adicionar uma etiqueta ao pacote IP que entra na rede MPLS. A operação 'swap' permite trocar uma etiqueta de entrada por uma etiqueta de saída. Em seguida, com a operação 'pop', removemos essa etiqueta, e ele volta a ser um pacote IP. Essa etapa geralmente ocorre quando se está saindo da rede.
Uma vez que sabemos o que é o MPLS e o que são as etiquetas, passemos a entender um protocolo muito importante, o qual permite trabalhar com as etiquetas: o protocolo LDP (Label Distribution Protocol). Este protocolo é responsável por detectar quais são os roteadores da rede que o têm ativado, estabelecer sessões entre os roteadores vizinhos dessa rede MPLS, comunicar os mapeamentos de prefixos a etiquetas, e gerenciar notificações internas. Dessa forma, a distribuição de etiquetas pode ocorrer de duas maneiras: um roteador dá uma etiqueta a outro roteador vizinho sem que tenha sido solicitado (unsolicited downstream), ou o roteador dá a etiqueta ao seu vizinho sob uma solicitação deste último (downstream on demand).
Dessa forma, se um cliente deseja se comunicar com outro dentro da rede de um ISP, o pacote IP não é reenviado, através dos roteadores, examinando exaustivamente seu destino em cada salto, mas incorpora etiquetas MPLS que simplificam as decisões de encaminhamento ao longo do backbone. O roteamento não se baseia exatamente em rotas puras, mas em etiquetas que simplificam tudo, de forma que em uma rede MPLS, para rotear, se dispõe do prefixo, do próximo salto, da etiqueta de entrada e da etiqueta de saída. O prefixo é utilizado simplesmente para o mapeamento à etiqueta, e o próximo salto, para saber para qual roteador vizinho reenviamos o pacote. A operação de adição de etiquetas ocorre quando o pacote de dados que enviamos é incorporado a essa rede MPLS, onde é roteado, seguido de uma quantidade considerável de operações de troca de etiquetas em cada lugar distinto da rede, para concluir com a remoção da etiqueta de nosso pacote quando chega ao destino, retornamos a obter um pacote IP, sobe pelas demais camadas (transporte e aplicação), até que obtemos os simples dados que a pessoa havia enviado, em questão de ínfimas unidades de tempo.
Serviços em uma rede MPLS: implementação de L3VPN
Uma VPN (Rede Privada Virtual) é um conjunto de dispositivos que têm permissão para se comunicar entre si sob uma política de controle de acesso estabelecida. Para os provedores de Internet, aproveitar o conceito de VPN e implementá-lo por meio do MPLS é algo muito oportuno, escalável e eficiente: é assim que nasce a L3VPN (Layer 3 VPN), um serviço que o MPLS oferece para garantir segurança em suas redes, a nível da camada 3, justamente.
Com a L3VPN, redefinimos a topologia de uma rede, ao poder fazer com que diferentes clientes, pertencentes a diferentes redes físicas, possam pertencer a uma mesma rede privada e virtual, ou seja, pertencer a uma VPN, e poder trafegar informações excluindo dispositivos que não pertencem a essa VPN, que, por sua vez, podem pertencer a outra VPN, e assim cria-se uma arte topológica nas redes de computadores, tornando-as um lugar seguro e confiável.
O funcionamento da L3VPN é mais complexo do que parece, porque envolve a área do backbone do provedor de serviços de Internet. Existem roteadores de clientes (CEs), roteadores intermediários (PEs) entre os CEs e os roteadores de backbone (Ps). Cada PE contém tabelas de roteamento virtuais correspondentes a cada VPN criada (VRFs). Um PE de origem pega as rotas que pertencem a uma VPN, adiciona um Route Distinguisher (RD) para torná-las únicas dentro da rede do provedor, e as distribui para outros PEs através do backbone. Além disso, essas rotas são anunciadas com um Route Target (RT), que determina em qual VRF de destino devem ser importadas. Dessa maneira, o PE receptor incorpora as rotas correspondentes em sua VRF e permite que os clientes conectados a seus respectivos CEs possam se comunicar com outras redes que fazem parte da mesma VPN.

Dessa forma, com a implementação da L3VPN para dispor de diferentes VPNs, a topologia de uma rede MPLS se redefine para ser vista da seguinte maneira, entendendo como um “antes e depois”:


Na primeira imagem, temos uma estrutura básica de rede MPLS, sem ter implementado a L3VPN. Na segunda imagem, temos uma rede MPLS com a implementação da L3VPN, e observe como dispomos de duas VPNs, onde em uma primeira VPN, os clientes conectados aos roteadores CE1A e CE2A podem se comunicar entre si; e uma segunda VPN, pela qual os clientes conectados aos roteadores CE1B e CE2B se comunicam. Entre os roteadores PE1 e PE2 ocorre essa importação e exportação de rotas de VPN associadas às VRFs, para que cada PE saiba quais redes remotas pertencem à mesma VPN e, portanto, possa estabelecer a comunicação entre seus clientes correspondentes. Em seguida, os roteadores P1 e P2 podem ser considerados parte da área de backbone.
Conclusões
O funcionamento interno de um provedor de Internet é complexo, mas abrangente, eficiente, padronizado e dedicado. O MPLS foi um padrão revolucionário para permitir um roteamento mais eficiente nas tecnologias WAN, as quais cruzam nossas comunicações emitidas de cada um dos dispositivos que temos e se conectam à Internet. Começar a compreender detalhadamente esta arte nas redes de computadores é um grão de areia a mais que permite entender nosso deserto: nosso próprio mundo global.

Comentários