FACULDADE DE TECNOLOGIA IBRATEC - UNIBRATEC
CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES
CÉSAR RODRIGO DA SILVA LEONAM BERNARDO DE LIMA
LUCAS MONTARROIOS SANTA CRUZ MOURA RENAN FELIPHE DA COSTA SANTANA
IMPLEMENTAÇÃO DO IPV6 UTILIZANDO O PROTOCOLO DMVPN
EM REDES FULL-MESH DE GRANDE PORTE COM SITES REMOTOS
RECIFE 2015
CÉSAR RODRIGO DA SILVA LEONAM BERNARDO DE LIMA
LUCAS MONTARROIOS SANTA CRUZ MOURA RENAN FELIPHE DA COSTA SANTANA
IMPLEMENTAÇÃO DO IPV6 UTILIZANDO O PROTOCOLO DMVPN
EM REDES FULL-MESH DE GRANDE PORTE COM SITES REMOTOS
Trabalho de conclusão de curso apresentado ao Curso de Tecnologia de Redes de Computadores, para obtenção do título acadêmico de graduação em Redes de Computadores, da UNIBRATEC, sob a orientação dos Professores Dailson de Oliveira Fernandes e Marcos Antônio Alves Gondim.
Orientadores: Prof. Dailson de Oliveira Fernandes e Prof. Marcos Antônio Alves Gondim.
Coorientador: Prof. Roberto Mendonça
RECIFE 2015
CÉSAR RODRIGO DA SILVA
LEONAM BERNARDO DE LIMA
LUCAS MONTARROIOS SANTA CRUZ MOURA RENAN FELIPHE DA COSTA SANTANA
IMPLEMENTAÇÃO DO IPV6 UTILIZANDO O PROTOCOLO DMVPN
EM REDES FULL-MESH DE GRANDE PORTE COM SITES REMOTOS
Trabalho de conclusão de curso apresentado ao Curso de Tecnologia de Redes de Computadores, para obtenção do título acadêmico de graduação em Redes de Computadores, da UNIBRATEC, sob a orientação dos Professores Dailson de Oliveira Fernandes e Marcos Antônio Alves Gondim.
Aprovado em: ______/_______/________
_________________________________________________________________ Prof.º DAILSON DE OLIVEIRA FERNANDES
UNIBRATEC – FACULDADE DE TECNOLOGIA IBRATEC
_________________________________________________________________ Prof.º MARCOS ANTÔNIO ALVES GONDIM
AGRADECIMENTOS
Primeiramente a Deus por nos ter concedido saúde e força para superar todas as dificuldades.
Aos nossos amigos e familiares que nos apoiaram e tiveram compreensão em relação aos nossos estudos.
Aos nossos orientadores: Dailson Fernandes e Marcus Gondim, em especial a Roberto Mendonça e Rafael Jardim que nos prestaram uma importante assistência.
E a todos os outros que fizeram parte dessa caminhada acadêmica, e contribuíram diretamente ou indiretamente, fiquem com o nosso muito obrigado.
"Feliz o homem que acha Sabedoria, e o homem que adquire conhecimento."
LIMA, Leonam; MONTARROIOS, Lucas; SANTANA, Renan; SILVA, Cesar.
Implementação do IPv6 utilizando o protocolo DMVPN em redes full-mesh de grande porte com sites remotos. 2015. Trabalho de Conclusão de Curso
Graduação em Tecnologia em Redes de Computadores - Faculdade de Tecnologia Ibratec. Recife-PE, 2015.
RESUMO
Este trabalho tem como objetivo propor uma solução viável para colocar em prática o protocolo IPv6 em redes full-mesh de grande porte com sites remotos, que utilizam endereçamento IPv4. A solução será aplicada através do protocolo DMVPN (Dynamic Multipoint Virtual Private Network) que permite a comunicação entre ilhas IPv6 por meio de túneis dinâmicos sobre um backbone IPv4. O processo de configuração do DMVPN altera a topologia para o tipo hub-and-spoke, onde será preciso utilizar os protocolos: NHRP (Next Hop Resolution Protocol), GRE (Generic
Routing Encapsulation) e opcionalmente IPSec (IP Security Protocol). Para prover a
comunicação entre os CEs (Customer Edge) e os PEs (Provider Edges), será aplicado o protocolo de roteamento dinâmico BGP. Tendo ciência da necessidade das empresas em se adequar ao novo protocolo, foram realizados testes em um laboratório com a capacidade de emular um ambiente corporativo, que possui todas as exigências para implementação desta solução, a fim de extrair resultados funcionais de um ambiente real.
LIMA, Leonam; MONTARROIOS, Lucas; SANTANA, Renan; SILVA, Cesar.
Implementação do IPv6 utilizando o protocolo DMVPN em redes full-mesh de grande porte com sites remotos. 2015. Trabalho de Conclusão de Curso
Graduação em Tecnologia em Redes de Computadores - Faculdade de Tecnologia Ibratec. Recife-PE, 2015.
ABSTRACT
This study aims to propose a viable solution to put into practice the IPv6 protocol in large full-mesh networks using IPv4 addressing. The solution will be implemented through the DMVPN (Dynamic Multipoint Virtual Private Network) protocol that allows communication between IPv6 islands through dynamic tunnels over an IPv4 backbone. The DMVPN configuration process changes the topology for hub-and-spoke type where you must use the protocols: NHRP (Next Hop Resolution
Protocol), GRE (Generic Routing Encapsulation) and optionally IPSec (IP Security Protocol) to provide communication between Ces (Customer Edges) and Pes
(Provider Edges), the dynamic routing protocol will be applied BGP. Being aware of the need for companies to adapt to the new protocol, tests were performed in a laboratory with the ability to emulate a corporate environment that has all the requirements for implementation of this solution, to extract functional outcomes of a real environment.
LISTA DE ILUSTRAÇÕES
Figura 1 - Estrutura Organizacional da IANA...21
Figura 2 – Demanda de Novos Blocos de Endereço IPv4...22
Figura 3 - Projeção anterior da Transição...23
Figura 4 - Novo plano transicional para o IPv6...24
Figura 5 - Diferença entre IP versão 4 e versão 6...25
Figura 6 - Comunicação Anycast...29
Figura 7 - Cálculo de Sub-rede...31
Figura 8 - Distribuição dos endereços globais...32
Figura 9 - Distribuição dos endereços no Brasil...33
Figura 10 - Comunicação entre roteadores...36
Figura 11 - Comunicação de cliente 6to4 em redes divergentes...37
Figura 12 - Ilustração funcional da Pilha Dupla...38
Figura 13 - Formato Do Endereçamento ISATAP...39
Figura 14 - IGP e EGP Demonstrativo...39
Figura 15 - Conceitos de Link-State...42
Figura 16 - Áreas OSPF...43
Figura 17 - Backbone convencional...45
Figura 18 - Backbone com tecnologia MPLS...46
Figura 19 - Cabeçalho MPLS - Shim Header...47
Figura 20 - Tabela de encaminhamento MPLS...51
Figura 21 - IGP e EGP em Sistemas Autônomos...55
Figura 22 - Trânsito de estados finitos do BGP...59
Figura 23 - Tipos de BGP - iBGP e eBGP...61
Figura 24 - Ilustração de preenchimento do atributo AS-PATH...63
Figura 25 - Conexão Multihoming...65
Figura 26 - Modelo Básico de VPN...68
Figura 27 - Comparando o uso do IPSec e do SSL/TLS em VPN...71
Figura 28 - ESP do IPSEC...73
Figura 29 - Cabeçalho GRE...75
Figura 30 - Aplicação de túnel mGRE...78
Figura 31 - Seleção do NHRP em uma topologia...83
Figura 32 - Rede estabelecida com DMVPN...84
Figura 33 - Rede Full-Mesh...87
Figura 34 - Hub-and-spoke...88
Figura 35 - Cenário proposto...90
Figura 36 - Verificação dos túneis dinâmicos entre o hub e os spokes...97
Figura 37 - Caminho do CE1 ao CE2 sem túnel dinâmico...98
Figura 38 - Caminho do CE1 ao CE2 com túnel dinâmico...98
Figura 39 - Tráfego gerado no CE1 para internet...99
LISTA DE QUADROS
Quadro 1 - Campos Renomeados no IPv6...26
Quadro 2 - Descrição dos campos do IPv6...26
Quadro 3 - Multicast no IPv6...30
Quadro 4 - Fabricantes e seus protocolos...43
Quadro 5 - Tipos de Label...48
Quadro 6 - Tipos de mensagens BGP e suas funções...57
Quadro 7 - Bancos de dados BGP (Data Base BGP)...58
Quadro 8 - AH do IPSEC...72
Quadro 9 - Criptografia da Interface mGRE...79
Quadro 10 - Endereçamento do roteador CE1...91
Quadro 11 - Endereçamento do roteador CE2...91
Quadro 12 - Endereçamento do roteador CE3...91
Quadro 13 - Endereçamento do roteador PE1...92
Quadro 14 - Endereçamento do roteador PE2...92
Quadro 15 - Endereçamento do roteador PE3...92
Quadro 16 - Endereçamento do roteador CONCENTRADOR_VPN...93
LISTA DE ABREVIATURAS E SIGLAS
ACL Access Control List
AFRINIC African Network Information Center
AH Authentication Header
APNIC Asia Pacific Network Information Centre ARIN American Registry for Internet Numbers
AS Autonomous System
ASN Autonomous System Number
ATM Asynchronous Transfer Mode BDR Backup Designated Router BGP Border Gateway Protocol BoS Bottom of Stack
CE Customer Edge
CIDR Classless Inter-Domain Routing DES Data Encryption Standard
DHCP Dynamic Host Configuration Protocol DMVPN Dynamic Multipoint Virtual Private Network
DNS Domain Name System
DR Designated Router
EGP Exterior Gateway Protocol E-LSR Edge - Label Switch Router ESP Encapsulated Security Payload EXP Experimental Bits
FEC Forwarding Equivalency Class FIB Forwarding Information Base GRE Generic Routing Encapsulation IANA Internet Assigned Numbers Authority
ICMPv6 Internet Control Message Protocol version 6 IEEE Institute of Electric and Electronic Engineers IETF Internet Engineering Task Force
IGP Interior Gateway Protocol IOS Internetwork Operating System
IP Internet Protocol
IPSEC IP Security Protocol
ISATAP Intra-Site Automatic Tunnel Addressing Protocol
LACNIC Latin America & Caribbean Network Information Centre LBS Label Based Switching
LDP Label Distribution Protocol
LER Label Edge Router
LFIB Label Forwarding Information Base LIB Label Information Base
LSDB Link State Data Base LSA Link-State Advertisement LSP Label Switched Path
LSR Label Switch Router MAC Media Access Control MED Multi Exit Discriminator
mGRE Multi Generic Routing Encapsulation MPLS Multiprotocol Label Switching
NAT Network Address Translation
NBMA Non-broadcast multiple access network
NHC Next hop cliente
NHRP Next Hop Resolution Protocol
NHS Next Hop Server
NIC Núcleo de Informação e Coordenação NLRI Network Layer Reachability Information NRO Number Resource Organization
OSI Open Systems Interconnection OSPF Open Shortest Path First
P Provider
PE Provider Edge
PSK-WPA2 Pre-Shared Key QoS Quality of Service
RFC Request for Comments
RIPE NCC RIPE Network Coordination Centre RIR Regional Internet Registries
SA Security Association
TCP Transmission Control Protocol
TTL Time to Live
ULA Unique Local Address
URL Uniform Resource Locator VCI Virtual Circuit Identifier VPI Virtual Path Identifier VPN Virtual Private Network
SUMÁRIO 1. INTRODUÇÃO...15 2. JUSTIFICATIVA...16 3. OBJETIVOS...17 3.1 Objetivo Geral...17 3.2 Objetivos Específicos...17 4. FUNDAMENTAÇÃO TEÓRICA...18 4.1 IPV6...18
4.1.1 Transição do IPv4 para o IPv6...20
4.1.2 Aspectos gerais do IPv6...22
4.1.3 Cabeçalho...23
4.1.4 Endereços do IPv6...25
4.1.5 Tipos de endereços IPV6...26
4.1.5.1 Endereço Unicast...26
4.1.5.2 Endereço Anycast...27
4.1.5.3 Endereço Multicast...28
4.1.6 Cálculo de sub-rede...29
4.1.7 Alocação dos IPv6 nas RIRs...30
4.1.8 Segurança no IPv6...31
4.1.9 Técnicas de transição...32
4.1.10 Classificação das técnicas de transição...32
4.1.10.1 6to4...33
4.1.10.2 Pilha Dupla...35
4.1.10.3 ISATAP...36
4.2 OSPF...37
4.2.1 O Algoritmo de Dijkstra...38
4.2.2 Estados entre vizinhos...38
4.2.3 Área OSPF...40
4.3 Multiprotocol Label Switching (MPLS)...41
4.3.1 Necessidades da Tecnologia...42
4.3.2 O Cabeçalho do MPLS...45
4.3.3 Estrutura do MPLS...47
4.3.4 Arquitetura do MPLS...48
4.3.6 Vantagens...51
4.3.7 Desvantagens...52
4.4 BORDER GATEWAY PROTOCOL (BGP)...52
4.4.1 Roteamento...52
4.4.2 BGP...53
4.4.3 Divulgação e atualização das rotas...54
4.4.4 Tipos de mensagens...55
4.4.5 Bancos de Dados BGP...55
4.4.6 Tipos de roteamento...56
4.4.7 Estados de uma conexão BGP...57
4.4.8 Atributos do BGP...60
4.4.8.1 Exemplo de atributos Well-Known Discretionary...61
4.4.8.2 Exemplo de atributos Optional transitive...62
4.4.8.3 Exemplo de atributos Optional non-transitive...62
4.4.9 Funcionamento do algoritmo de decisão...62
4.4.10 MP-BGP – Roteamento IPv6...64
4.5 VPN...65
4.5.1 Características da VPN...65
4.5.2 Benefícios da VPN...66
4.5.3 Vantagens do ponto de vista das Operadoras...67
4.5.4 Internet Protocol Security (IPSEC)...68
4.5.4.1 Arquitetura do IPSEC...69
4.5.4.2 Authentication Header (AH)...70
4.5.4.3 Encapsulation Security Payload (ESP)...71
4.5.4.4 Algoritmo de Criptografia...72
4.5.4.5 Gerenciamento de Chaves...72
4.5.5 GRE...73
4.5.6 Protocolos e mecanismos utilizados na DMVPN...74
4.5.7 Protegendo VPNs com IPSEC...75
4.5.8 Utilizando NHRP em uma DMVPN...75
4.5.9 Reduzindo Configuração do Roteador com mGRE...76
4.5.10 Next Hop Resolution Protocol...78
4.5.11 Construindo Redes Hub-and-spoke...79
4.5.12 Seleção do Servidor Next Hop...80
4.5.14 Vantagens de se utilizar DMVPN...83
5. CENÁRIO: IMPLEMENTAÇÃO DO DMVPN COM GRE...85
5.1. Objetivo do laboratório...85
5.2. Configurações do DMVPN na topologia Hub-and-Spoke...87
5.2.1. Passo 1: Habilitar o IPv6...88
5.2.2. Passo 2: Adicionar endereçamento...89
5.2.3. Passo 3: Configurar BGP...92
5.2.4. Passo 4: Configurar DMVPN...93
5.3. FUNCIONAMENTO DO DMVPN...95
5.3.1. Captura dos pacotes...97
6. CONSIDERAÇÕES FINAIS...98
6.1. TRABALHOS FUTUROS...99
7. BIBLIOGRAFIA...100
APÊNDICE A...103
Configurações dos Spokes...103
Configurações da rede MPLS...105
Configurações do Hub...108
1. INTRODUÇÃO
Com o uso em larga escala dos endereços IPv4 (Internet Protocol Versão 4), diversas técnicas foram criadas e implementadas no decorrer dos tempos visando economizar o uso destes, entretanto em 10 de junho de 2014, foi declarado pela LACNIC (Latin America & Caribbean Network Information Centre) que este recurso havia esgotado (LACNIC, 2014). Devido ao crescimento exponencial da internet, houve a necessidade de substituí-lo pelo IPv6, possibilitando a continuidade do desenvolvimento da web, obtendo assim, vários benefícios: escalabilidade, segurança, processamento simplificado dos equipamentos, suporte à mobilidade, entre outros.
Dentre os possíveis cenários que possam surgir na transição para o IPv6, deve-se destacar a dificuldade em realizar a comunicação IPv6 entre unidades remotas que necessitam trafegar pela estrutura dos provedores, que não se encontram preparados para prover o uso deste protocolo.
Para a topologia especificada e abordada neste trabalho, serão utilizados vários concentradores distribuídos estrategicamente, representando o ambiente da operadora, por onde os clientes obrigatoriamente irão transitar para alcançar o concentrador principal, que irá prover o acesso à internet.
Inicialmente como solução, poderiam ser criados túneis que interconectassem todos os clientes no CORE (núcleo) da rede, instalado na sede, entretanto, trata-se de uma grande rede Full Mesh (ou malha completa), o que torna inviável, principalmente, devido ao volume de configurações, inviabilizando o esforço para dar prosseguimento e administrar esse ambiente.
Para facultar essa transição, foi criado um ambiente de testes na ferramenta de emulação GNS3, para simular a aplicação do DMVPN, alterando a topologia para
hub-and-spoke e assim chegar a um método resolutivo. Com a utilização de VPNs
dinâmicas será possível utilizar o encapsulamento do protocolo IPv6 através de túneis GRE (Generic Routing Encapsulation), o que vai reduzir significativamente o volume de configurações, além de permitir um melhor desempenho na comunicação entre as filiais da organização.
2. JUSTIFICATIVA
Com o passar do tempo a consumerização (termo dado para o uso de dispositivos pessoais em ambientes de trabalho) e a internet das coisas deixou de ser uma teoria e tornou-se uma realidade. Essa revolução no paradigma tecnológico foi impulsionada devido às novas necessidades de uma sociedade que precisa estar conectada com o mundo para diversas situações. Devido às necessidades expostas, as empresas estão sendo forçadas a se adaptarem na mesma velocidade que as mudanças veem acontecendo.
Visando a obrigatoriedade da implantação do IPv6, o presente estudo propõe-se a apresentar uma solução escalável de menor impacto para ambientes corporativos que não se encontram 100% preparados para recebê-lo.
Buscando tornar este trabalho apoio para futuras pesquisas acadêmicas nesse contexto, levando em conta a dificuldade de encontrar material que englobe o assunto, na língua portuguesa. Para comprovar a análise teórica, o trabalho será baseado em testes realizados com equipamentos da Cisco System, utilizando o protocolo DMVPN.
3. OBJETIVOS
3.1 Objetivo Geral
Possibilitar a implementação do IPv6, dentro de ambientes coorporativos de grande porte que possuem sedes e filiais remotas, e que fazem uso de um provedor com estrutura IPv4, utilizando DMVPN para permitir a comunicação entre os sites e com a internet.
3.2 Objetivos Específicos
Executar o IPv6 sem o aprovisionamento do provedor, usando DMVPN; Suprir a deficiência de equipamentos do provedor sem suporte ao IPv6; Permitir a comunicação IPv6 entre sites remotos da organização;
4. FUNDAMENTAÇÃO TEÓRICA
Este capítulo do trabalho designa-se a descrever as tecnologias abordadas neste projeto, as quais são: IPv6, OSPF, MPLS, BGP, VPN, IPSEC, GRE, NHRP e Cenário: Implementação do DMVPN com GRE.
4.1 IPV6
Foi a partir de 1990 que perceberam onde a popularização progressiva da internet iria chegar: esgotamento dos endereços IPv4, segundo Bucker (2013). Pois se aumentavam os diversos serviços online e dispositivos tecnologicamente avançados, proporcionando em uma facilidade de se obter qualquer coisa desejada. Além da socialização da internet, é necessário destacar que a exaustão do IPv4, foi motivada também pelo crescimento da tabela de roteamento (concernente ao limite das configurações de prefixos nos concentradores da internet), problemas de segurança de dados (não integrada) e o aprimoramento da priorização na entrega dos tipos dos pacotes.
Com 4.294.967.296 ou 2³² endereços, pensava-se que era um valor alto para a intenção inicial: comunicação entre as redes ou sites existentes. Não se tinham vários dispositivos conectados e nem tantos recursos que são usados atualmente. E naquela época, ainda não era viável ter os equipamentos de “Primeira Geração” socializados, por causa das suas primeiras características e recursos tecnológicos. Mas a partir dos anos 90, os endereços estavam sendo rapidamente distribuídos, com isso, houve uma necessidade de se ter uma estrutura hierárquica organizacional de governança e gerenciamento dos recursos da internet. Observe Figura 1.
Figura 1 - Estrutura Organizacional da IANA
Fonte: CEPTRO, 2012
A IANA (Internet Assigned Numbers Authority) é responsável pela administração dos blocos de endereços e distribuição dos mesmos pelo mundo, através das cinco entidades regionais, cognominada de RIR’s (Regional Internet
Registries): APNIC (Asia Pacific Network Information Centre), RIPE NCC (Network Coordination Centre) (EUROPA), LACNIC (América Latina), ARIN (American Registry for Internet Numbers) e AFRINIC (African Network Information Center). O
término dos endereços IPv4 foi previsto desde o ano de 1990, contudo para adiar o esgotamento, criou-se soluções para diminuir a demanda à curto prazo: CIDR (Classless Inter-Domain Routing), NAT (Network Address Translation) e DHCP (Dynamic Host Configuration Protocol).
CIDR - Pronunciada no ano de 1993, na RFC (Request for Comments) 1519,
para amenizar a tabela de roteamento e principalmente flexibilizar os padrões das classes de endereços engendrada no IPv4, destravando a alocação dos endereços, no intuito de eliminar o desperdício demasiado na repartição dos IPs (Internet
Protocol). Essa otimização nas classes padrões é utilizada desde 1993 até os dias
de hoje, porém antes de criá-la, houve desperdício em sua distribuição envolvendo várias empresas: IBM, AT&T, HP, APPLE, e etc.
DHCP - Dentro da rede, este protocolo permite a distribuição de um IP
automaticamente para seu cliente, designado pelo servidor DHCP, pelo qual, este, possui um range de IPs disponíveis.
NAT - Responsável em maior parte pela sobrevivência do IP versão 4 desde
1999, realiza um processo de tradução de endereços privados, contidos na RFC 1918, para endereços públicos roteáveis na internet. Culturalmente por algumas organizações, esta técnica é interpretada como um dos métodos de segurança por causa da sua forma de “ocultar” a topologia da rede interna, dando uma falsa de sensação de segurança, porém, em sua criação, o intuito realmente era a economia dos endereços IPv4.
Apesar dessas soluções paliativas citadas anteriormente reduzirem a demanda dos IPs, as mesmas não foram satisfatórias para solucionar a requisição dos endereços, pois amenizaram em apenas 14% as solicitações do estoque de endereços da IANA. Conforme é observado na Figura 2, desde os anos 1985 essa demanda mostrou-se crescente com o passar dos anos até o anúncio de esgotamento dos blocos de endereços IPv4 realizado pela LACNIC em 2014.
Figura 2 – Demanda de Novos Blocos de Endereço IPv4
Fonte: CEPTRO, 2012
4.1.1 Transição do IPv4 para o IPv6
O IPv6 não foi criado para ser interoperável diretamente com o IPv4, ambos podem coexistir nos mesmos “softwares e hardwares” (CEPTRO, 2012). À princípio,
o projeto inicial era efetuar a migração gradualmente, sustentando o IPv4 até a instalação completa do IPv6 (CEPTRO, 2012), como mostra a Figura 3:
Figura 3 - Projeção anterior da Transição
Fonte: CEPTRO, 2012
Teoricamente, esse projeto da Figura 3 seria de fácil execução, porém, praticamente não levaram em considerações as vértices políticas e econômicas, pelos quais impactaram negativamente, resultando no atraso dessa projeção. Outro aspecto interessante é que o IPv6 tem a característica principal de maior competência em endereçamento, entre outras qualidades importantes, nesse caso, requeria dos gestores de TI investimentos de recursos em pouco tempo, mas os mesmos preferiram procrastiná-los.
Essas séries de fatores retardaram ainda mais a difusão do novo protocolo, onde o esgotamento do IPv4 já foi uma realidade anteriormente. “Nesta situação, são necessárias tecnologias para a transição que permitam que, ao mesmo tempo em que se implanta o IPv6, se compartilhe também endereços IPv4” (CEPTRO, 2012). Várias técnicas podem ser aplicadas nesse momento transitório, porem cada empresa tem a sua topologia por que deverão analisar criteriosamente a infraestrutura no intuito de utilizar o método mais adequado.
Desde o julho de 2012, foi criada uma nova projeção para essa metamorfose tecnológica, conforme é ilustrada na Figura 4:
Figura 4 - Novo plano transicional para o IPv6
Fonte: CEPTRO, 2012
Nessa transformação, poderão gerar alguns problemas em empresas, provedores, sociedades, prestação e qualidade de serviços, entre outros, caso não tenham um plano estruturado, porque não poderão evitar diversos tipos de riscos: Obsolescência profissional (sucateamento de profissionais técnicos; perda de capacidade de agregar valor a produtos no âmbito empresário) e defasagem tecnológica (distanciamento do mercado tecnológico internacional na esfera empresarial; distanciamento da vanguarda tecnológica referente a balança comercial) (CEPTRO, 2013). Todavia para muitos, isso é uma gama de oportunidades, no tocante aos investimentos em equipamentos, inovações de serviços tecnológicos, consultorias em diversas áreas informáticas, etc.
No ano de 1995, eram objetivos de vários grupos de projetistas engenhar um novo protocolo robusto, pelo qual em 1998, pela RFC 2460, através de várias propostas foram publicadas as especificações diferenciais do IPv6:
Suporte a vários hosts;
Diminuição na tabela de roteamento;
Tempo de processamento menor, devido a simplificação do cabeçalho; Mais segurança;
Suporte melhor ao controle de qualidade e priorização dos serviços; Roteamento eficaz;
4.1.3 Cabeçalho
Umas das diferenças marcantes entre o IP versão 4 e o versão 6, é a otimização dos campos no cabeçalho da terceira camada (rede). Dos 12 campos fixos existentes no cabeçalho IPv4, mostrado na Figura 5, foram retirados o campo
IHL, Identificação, Flags, Fragmentação, Verificação de erro no Cabeçalho e Opções (+ Complemento), pois há campo que tem seu papel sendo executado por outra
camada ou campos agregados ou organizados em um só, como é o caso do “Fragmentation”.
Figura 5 - Diferença entre IP versão 4 e versão 6
Fonte: GTA, 2015
Observa-se na Figura 5, que o cabeçalho do IPv6 tem 8 campos e um tamanho de 40 bytes, possuindo um diferencial de melhor desempenho no processamento do roteador, retirando a necessidade de verificar o campo IHL (comprimento do cabeçalho) antes de qualquer outro campo, como se fazia na versão 4, onde se variava entre 20 a 60 bytes de tamanho.
Quatro campos foram renomeados para melhor entendimento de suas atribuições ou funções, visualizado no Quadro 1.
Quadro 1 - Campos Renomeados no IPv6
IPv4 IPv6
Tipos de Serviço (ToS) Classe de Tráfego (TC)
Tamanho Total Tamanho do Payload dados
Protocolo Próximo Cabeçalho
Tempo de Vida (TTL) Limite de hops
Fonte: Autoria própria
Conforme a Quadro 2, o cabeçalho do IPv6 está dividido nos campos visualizados na Figura 6:
Quadro 2 - Descrição dos campos do IPv6
As funcionalidades que antes eram usadas pelo campo opções no IPv4, estão empregadas aos novos cabeçalhos acrescidos, denominado de cabeçalho de extensão por que, possibilita simplificação do IPv6 e flexibiliza-o para criações de novos futuros campos, de acordo com a necessidade existencial, podendo dar continuidade a sua evolução. O cabeçalho de extensão é dividido pelas seguintes funções:
Encrypted security payload - dar as informações sobre a criptografia;
Hop-by-Hop options - elementos gerais para os equipamentos;
Routing - rota completa ou parcial que poderá encaminhada;
Destination options - Opções adicionais do destinatário;
Fragmentation - administra de fragmentos do pacote;
Authentication - analisa a identificação do remetente.
4.1.4 Endereços do IPv6
O IPv6 tem 128 bits de espaçamento de endereços (aproximadamente 340 undecilhões), ou seja, 340.282.366.920.938.463.463.374.607.431.768.211.456 endereços (2128). É 79 octilhões de vezes maior que o IPv4. Segundo Bucke (2013),
o mundo excedeu a quantidade de habitantes para número acima de 7 bilhões, quando o globo terrestre chegar a 10 bilhões de habitantes terá 3,4x1027 de
endereços por cada habitante.
Para fazer a representação desses endereços, divide-se em oito grupos de 16 bits, separados por “::”, utilizando dígitos hexadecimais, podendo utilizar caracteres maiúsculos ou minúsculos. Além disso, os endereços podem abreviar sua extensibilidade, ocultando os números zeros à esquerda, por exemplo, de forma estendida: 3001:0FE8:0000:0000:140D:0000:0000:130A, forma abreviada: 3001:FE8:0:0:140D::130A. A sua forma representada é dividida no prefixo global e ID da sub-rede: por exemplo: 2002:ac8:4004:3::/64, 2002:ac8::/32 é o prefixo global, o ID da subrede é 4004:3 e ::/64 é o tamanho do prefixo. Já na representação dos endereços em URL (Uniform Resource Locator), o endereço é colocado entre colchetes: https://[2001:12ff:0:4:22]/index.html.
4.1.5 Tipos de endereços IPV6
Há três tipos de endereços determinados:
Unicast – os pacotes são enviados para uma única interface.
Anycast – os pacotes são enviados para o grupo mais próximo da origem, pelo qual o protocolo de roteamento medirá a distância e tomará a decisão. Multicast – os pacotes são enviados para um conjunto de interfaces ligadas
ao endereço de origem.
Não existe endereços de broadcast no IPv6, pois as funções deste, foram atribuídas para um grupo de endereços multicast, denominado de
multicast-all-nodes.
4.1.5.1 Endereço Unicast
Esse tipo de endereço possui três tipos: Global Unicast, Link Local e Unique
local:
Global Unicast - São globalmente roteáveis na internet, sendo administrados pela IANA que separou uma porção de endereços, onde têm as iniciais: 2003::/3, ou seja, vai de 2000:0:0:0:0:0:0:0 até 3FFF:F:F:F:F:F:F:F, são 13% do total. É composto de prefixo de roteamento global (rede), identificação da sub-rede (enlace da rede) e o reconhecimento da interface ID. E os demais endereços? Serão utilizados para uso futuros. O estoque da IANA está carregado para dar também continuidade na era da Internet das coisas.
Link Local - ou rede local é para permutação dos pacotes localmente em nível de enlace, pois tais pacotes ficam restritos apenas na rede local (ou ao link). Os roteadores não divulgam, para outra rede, esses endereços que começam com FE80::/10, pelo qual os primeiro dez bits iniciam com o seguintes intervalos: fe80::/10, fe90::/10, feA0::/10 e feB0::/10, os 54 bits são inseridos zeros, ficando nesse formato: feA0:0000:0000:0000::64. Os 64 restantes que identificam o host, podem ser preenchidos pelo MAC (Media Access Control), do dispositivo, com o algoritmo de expansão designado de IEEE (Institute of Electric and Electronic
Unique Local Address (ULA) - São endereços equivalentes aos privados do IPv4 (10/8, 172.16/12, 192.168/16), isto é, não roteáveis na internet. O bloco de endereço da ULA (FC00::7), foi repartido em dois blocos: FC00::/8 e FD00::/8. Para obter mais segurança, é recomendando não deixar esses endereços evidentes, recomenda-se o uso do algoritmo pseudoaleatório na criação do identificador global.
4.1.5.2 Endereço Anycast
Outra novidade no protocolo dessa nova geração de IPs é o endereço
Anycast. A comunicação é realizada para um nó mais adjacente de um conjunto de
nós, isso significa que a permutação pode ser feita de um para um de vários dispositivos ou um para o mais próximo. Ao efetuar as configurações devidamente acentuadas, fica ao cargo do roteador intermediário executá-la, de acordo com a Figura 6.
Figura 6 - Comunicação Anycast
Neste tipo de endereçamento, pode-se aproveitar para descobrir serviços de rede, por exemplo: servidores DNS (Domain Name System) e proxies HTTP, fazendo redundâncias dos mesmos (CEPTRO, 2012).
4.1.5.3 Endereço Multicast
Assim como no IPv4 (classe D: 224.0.0.0 até 239.255.255.255), o IPv6 utiliza também comunicação “um para muitos” e são iniciados com FF00::/8. Foram segmentados vários grupos padronizados em que as interfaces podem ser configuradas, e todas as interfaces dos dispositivos estão contidas em um grupo, como citado antes, de: Multicast-all-nodes (FF02::1) que através deste, eliminaram o broadcast.
Há vários grupos com as suas diversas tarefas e especializações: descoberta de vizinhança do ICMPv6 (Internet Control Message Protocol version 6), descoberta de endereços físicos (MAC) e outros, dando a vantagem de otimização na entrega das informações aos seus destinos e diminuindo a sobrecarga dos equipamentos. Na Quadro 3 são verificados alguns endereços.
Quadro 3 - Multicast no IPv6
Há também endereços especiais inseridos na versão 6 do IP: loopback (0000:0000:0000:0000:0000:0000:0000:0001 ou ::1/128); endereço não especializado que acontece na inicialização da interface (:: /128), endereço de rota padrão (:: /0).
4.1.6 Cálculo de sub-rede
Todos os 8 blocos de 16 bits do endereçamento v6, denominados duoctetos, podem variar no intervalo de 0000 até FFFF. Cada caractere hexadecimal, desses blocos, possui uma variação de 0 até F e um devido valor posicional: x8, x4, x2, x1 ou 2³, 2², 2¹, 20. Para efetuar cálculos de sub-rede, é
necessário manipula-los, por exemplo: com o prefixo 2001:0DB8::/32 da Figura 9, pode-se pegar diversos bits emprestados, mas será usado o intervalo de 1 até 4
bits e uma outra situação para explanação.
Para calcular, será preciso dividir 16 (valor do bloco) pelo valor da potência do bit emprestado, resultando: o número de blocos, sequência inicial e final do intervalo dos endereços, tamanho do prefixo proveniente de quantos bits são emprestados e assim por diante de acordo com a Figura 7.
Figura 7 - Cálculo de Sub-rede
4.1.7 Alocação dos IPv6 nas RIRs
De acordo com NRO (Number Resource Organization) (2012 apud BUCKE, 2012), das 506 reservas, apenas 5 prefixos /12 foram disponibilizados entre as RIRs no mundo, informação visualizada na Figura 8. Cada RIR é responsável pela distribuição e organização dos endereços.
Figura 8 - Distribuição dos endereços globais
Fonte: NRO, 2012
Já na distribuição dos endereços no Brasil, o NIC (Núcleo de Informação e
Coordenação) angaria da IANA com prefixo 2801:: /16 para nacionalmente
gerenciar. O grupo do IPv6.br orienta que as operadoras de telecomunicação obtenham um prefixo /32, onde as empresas tenham outro prefixo /48 e os usuários de residências, por sua vez, recebam /56, mas para tecnologias móveis podem angariar /64. Figura 9 esclarece a distribuição dos endereços.
Figura 9 - Distribuição dos endereços no Brasil
Fonte: BUCKE, 2013
4.1.8 Segurança no IPv6
De acordo com Bucke (2013), o IP versão 6 tem um potencial de segurança maior que a versão 4 atualmente, por ter seus recursos e funcionamento mais sofisticados, porque foi projetado em meados de 1990, ano em que os técnicos analisaram as vulnerabilidades e deficiências do IPv4. Por estar sendo implementado agora nas empresas, IPv6 tem funcionalidades aprimoradas, todavia com esse avanço rápido da internet, “fatalmente surgirão novas modalidades de ataques e novas vulnerabilidades que sequer existiam no IPv4”. (Bucke, 2013).
Inúmeras pessoas pensam que todo tráfego do IPv6 é criptografado automaticamente devido a existência do nativo IPSec, dentre outros mecanismos de segurança, mas verdadeiramente é preciso a configuração manual do administrador. Já no IPv4, o administrador tinha que estar atendo para analisar a existência de
suporte do IPSEC. Será abordado com mais informações técnicas do IPESEC na seção 4.5.4.
4.1.9 Técnicas de transição
O IP versão v6 não é a extensão da v4 e não foram criados para interoperarem, e sim, para que houvesse uma substituição. Mas esses protocolos podem trabalhar simultaneamente nos mesmos equipamentos, gerando uma transição gradual, podendo utilizar técnica chamada de pilha dupla ou dual stack. Nessa situação, depois da implantação da versão 6 em todos os equipamentos, a versão 4 estaria desativada.
Tecnicamente falando, seria simples. Mas como já foi citado anteriormente, houve vários pontos que retardou essa metamorfose. Atualmente, os endereços IPv4 foram extintos, e sua nova geração não está sendo totalmente utilizada. Para a organização NIC.BR:
Hoje existe a necessidade de se implantar o IPv6 numa Internet sempre crescente, onde os novos usuários ainda precisam de conectividade IPv4, mas sem endereços IPv4 livres para atendê-los. Assim, novas técnicas auxiliares foram e continuam sendo desenvolvidas. (CEPTRO, 2012).
Tais técnicas estão enquadradas nas classificações que veremos a seguir.
4.1.10 Classificação das técnicas de transição
Neste período de coexistência e transição, essas versões de IPs desenvolveram variadas técnicas para diversos cenários encontrados, em que está sendo destronado o IPv4 e ampliado predominantemente o IPv6. Os processos anteriormente citados são divididos de acordo com as suas funcionalidades:
Túneis: possibilita o tráfego de pacotes IPv6 em redes IPv4 ou vice-versa. Pilha Dupla: torna possível a convivência das duas versões de IPs nos
Tradução: É um processo de conversão de pacotes que permite a comunicação entre equipamentos que rodam IPv6 com os que utilizam IPv4. Com tantas técnicas existentes, realmente é difícil fazer a escolha de qual é melhor para ser aplicada no cenário a ser enfrentado atualmente.
No caso deste trabalho, será utilizada a técnica 6to4 que será apresentada no próximo subtópico.
4.1.10.1 6to4
É um dos mecanismos de transição que permite a comunicação entre ilhas de IPv6 pelo “oceano” (infraestrutura) IPv4. Esta técnica deu origem à criação do 6rd. Este processo possibilita o tunelamento de roteador-a-roteador, comunicação cliente 6to4 com cliente 6to4 em redes diferentes, etc. Na Figura 10, mostra-nos a comunicação entre roteadores de acordo com a organização da CEPTRO (2012), são destacados os seguintes pontos:
Configurações de tunelamento roteador-a-roteador. Provendo unicamente um endereço IPv6 ao host.
O endereço é composto pelo prefixo: 2002:ABCD:ABCD::/48, onde ABCD:ABCD está representando simbolicamente o endereço IPv4 público do host transformado para hexadecimal.
O relay 6to4 pode ser identificado pelo endereço anycast: 192.88.99.1. Encaminhamento Assimétrico.
Pode ser utilizada com Relays (tecnologia de camada 2) públicos, quando não há conectividade v6 nativa.
Quando há conectividade nativa e serviços, deve ser implementada para facilitar a comunicação com clientes 6to4.
Figura 10 - Comunicação entre roteadores
Fonte: CEPTRO, 2012
Outro caso destacável é entre a comunicação de cliente 6to4 em redes divergentes, exemplificado na Figura11, onde o tráfego na rede local é nativo IPv6 e é encapsulado exclusivamente entre os roteadores 6to4.
Figura 11 - Comunicação de cliente 6to4 em redes divergentes
Fonte: CEPTRO, 2012
4.1.10.2 Pilha Dupla
Essa técnica foi escolhida como a padrão para a migração do IPv6 na internet e é aconselhável utilizá-la sempre que possível, pois não é recomendando ter apenas equipamentos que suportem unicamente o IPv4, deve-se conservar o antigo protocolo e inserir o IPv6 nativamente, tornando possível, com essa técnica, a coexistência dos dois protocolos em um mesmo nó para possibilitar o envio e recebimento de pacotes utilizando pilha dupla ou nó IPv6/IPv4, segundo a Figura 12. Futuramente, após o IPv6 for dominante, poderá desligar a versão antiga do IP sem sofrer grandes impactos.
Concernente ao roteamento, uma rede que possuía uma configuração que suportava o IPv4 terá que atualizar a versão do protocolo para suportar as duas versões. Assim como deverá analisar o DNS, firewalls e etc.
Figura 12 - Ilustração funcional da Pilha Dupla
Fonte: CEPTRO.BR, 2012
4.1.10.3 ISATAP
Técnica de tunelamento que faz a comunicação entre dispositivos e roteadores dentro de uma instituição, ou seja, não faz uso de serviço público. Nesta técnica, quando uma organização possui IPv6 nas extremidades de sua rede, oriundas do seu provedor, todavia sua rede local ou parte dela não fala IPv6, cria-se túneis automáticos dentro da rede IPv4 (interna) e nos endereços IPv6 ligados aos clientes segundo seu prefixo detalhado concentrador ISATAP (Intra-Site Automatic
Tunnel Addressing Protocol) e no IPv4 do cliente.
Esses endereços IPv6 aplicados aos dispositivos e roteadores são prefixos
Unicast de 4 bits, podendo ser um prefixo 6to4, link local, ou uma rede global obtido
por um provedor, seguido por ::0:5EFE:A.B.C.D ou ::0:5EFE:A.B.C.D, onde o A.B.C.D representa os endereços IPv4 dos dispositivos ou concentrador, já os endereços 0:5EFE e 200:5EFE indicam que esse endereço IPv4 é privado ou público. Neste método, os endereços IPv4 dos clientes e roteadores são utilizados em partes dos endereços ISATAP. É possível verificar o formato dos endereços
Figura 13 - Formato Do Endereçamento ISATAP
Fonte: CEPTRO.BR, 2012
4.2 OSPF
Para que se tenha o encaminhamento dos pacotes de forma automatizada da sua origem até o seu destino é necessário estabelecer algumas regras que permitem essa tomada de decisões. Toda a internet que conhecemos é a junção de todos os AS (Autonomous System), existem dois tipos de protocolos que permitem essa comunicação conforme a Figura 14 pode-se verificar os IGPs (Interior Gateway
Protocols) que trocam informações dentro do mesmo sistema autônomo e os EGPs
(Exterior Gateway Protocol) que trocam informações entre sistemas autônomos diferentes.
Figura 14 - IGP e EGP Demonstrativo
Fonte: Autoria própria 2015.
O protocolo OSPF (Open Shortest Path First) é um IGP e foi criado pela IETF (Internet Engineering Task Force), sua versão mais atual é mantida pela RFC 2328 para IPv4 e RFC 2740 para IPv6. Seu roteamento acontece baseado em
estado de enlace, ou seja, todos os roteadores conhecem uma visão completa da rede, é possível criar essa visão através de informações que são trocadas entre os mesmos roteadores da rede (MENDONÇA, 2012).
4.2.1 O Algoritmo de Dijkstra
Também conhecido como SPF, é quem faz a escolha do primeiro menor caminho, pois para se tornar o melhor caminho é necessário ter o menor custo até o destino do pacote, de modo que todos os nós da rede já possuem os estados dos links de toda rede, e cada rota possui a distância administrativa ou métrica, identificador de interface e o número do enlace, com essas informações se torna possível à descoberta do melhor caminho. Quando ocorrem mudanças em um nó, os nós adjacentes recebem essas atualizações e propagam para os nós restantes. Ao receber uma mensagem, primeiramente é verificada a existência da rota, porque caso não exista, será adicionada, e se existir, será comparado o número da mensagem com da rota existente da tabela, se o número da mensagem recebida for maior, a rota será substituída, caso não, a rota é transmitida como uma nova mensagem. Se forem idênticas, nada acontece. Todo este processo é conhecido como Flooding (ASSIS, 2001).
4.2.2 Estados entre vizinhos
Para fazer a propagação das rotas entre os vizinhos OSPF, são enviados pacotes hello pelo IP de Multicast (224.0.0.5). Para se estabelecer a conexão entre vizinhos OSPF acontecem estágios que serão descritos a seguir:
Down – É o estado em que nenhuma informação foi trocada, o vizinho está à espera da descoberta;
Attempt – É o estágio em que os vizinhos passam somente se forem configurados manualmente;
Init – Estágio em que o roteador recebe o pacote Hello, lista o Router ID do remetente e envia seu Router ID;
2-Way – É o momento em que a comunicação bidirecional foi estabelecida, e ambos já podem tornar-se vizinhos;
Exstart – É o momento onde ocorre a eleição do DR (Designated Router) e BDR (Backup Designated Router), hierarquizando os roteadores vizinhos em máster e escravo;
Exchange – É o estado que os roteadores enviam o link de estado, cada pacote do DB tem um número sequencial onde os mesmos verificam se a informação é nova, fazendo as alterações para salvar o DB mais atual;
Loading – é nesse estado que os roteadores enviam pacotes de estado de link, solicitados pelos vizinhos;
Full – Nesta fase os roteadores estão com sua vizinhança formada, suas bases de dados sincronizadas.
De acordo com Santos (2012), pode-se representar de forma clara e direta o funcionamento e descrição do protocolo OSPF (analisado na Figura 15), mostrando seu trabalho para o estabelecimento de vizinhança entre os roteadores da rede.
Inundação LSA – O router cria um link-state adverisement (LSA) e envia o estado do link para todos os roteadores adjacentes.
Construção do banco de dados topológico – Os roteadores recebem LSAs para acrescentar ao LSDB (Link State Data Base), onde posteriormente será usada para calcular o melhor caminho através da rede baseado no algoritmo SPF.
Algoritmo SPF – Conhecido como Algoritmo de Dijkstra, o mesmo guarda os custos ao longo de cada caminho desde a origem até o destino, utilizando a largura de banda para verificar o melhor caminho para construir uma tabela topológica.
Árvore SPF – contém uma lista de toda rede OSPF e o custo para alcança-los.
Tabela de roteamento – São adicionadas as melhores rotas à tabela de roteamento.
Figura 15 - Conceitos de Link-State
Fonte: Adaptado de http://emersonccnp.blogspot.com.br/2012_01_01_archive.html. Acesso Outubro 2015.
4.2.3 Área OSPF
Através da divisão de áreas, pode-se diminuir flooding, isto é, amenizar a sobrecarga em toda a rede OSPF com a distribuição dos “Hellos” por áreas. Há possibilidade de hierarquizar as áreas através da eleição do DR e BDR, as demais áreas terão que estar conectadas a área 0 (área backbone) que seria a área principal, onde encontra-se os roteadores de maior capacidade (ODOM, 2008). Para que se tenha uma comunicação entre as diferentes áreas do OSPF se faz necessário o uso do Area Border Router (ABR), que é apenas o roteador de borda de cada área que tem pelo menos uma interface na área zero e as demais interfaces em outras áreas. Caso um roteador não esteja diretamente conectada a área zero, é criado manualmente um virtual-link para se conectar logicamente, como pode-se analisar a Figura 16. (FILIPPETTI, 2009).
Figura 16 - Áreas OSPF
Fonte: CISCO, 2015.
4.3 Multiprotocol Label Switching (MPLS)
Em meados dos anos 90, a tecnologia predominante nos backbones existentes era ATM (Asynchronous Transfer Mode), que por sua vez possuía algumas características, tais como: alto preço e velocidade, comutação de células de tamanho fixo, e também não era compatível com o protocolo IP, o mais usado nas redes de computadores. Alguns fabricantes analisaram essa tecnologia e chegaram à conclusão que os pacotes IPs não necessitavam ser roteados nos núcleos das redes de computadores, e enxergaram a possibilidade desta comutação ser realizada através de rótulos adicionados a cada pacote (MEDONÇA, 2012).
Nesse mesmo período, por essa falta de compatibilidade com o protocolo IP, algumas empresas decidiram criar suas próprias implementações baseadas em comutação por rótulos, entre elas, estão citados no Quadro 4:
Quadro 4 - Fabricantes e seus protocolos
PROTOCOLO FABRICANTE
IP Switching Ipsilon
CSR - Cell Switched Router Toshiba
TAG Switching Architecture CISCO
ARIS - Aggregate Route-based IP Navigator IBM
SITA - Switching IP Through ATM Telecom e Finland
IP Navigator Ascend
Essas implementações só foram possíveis através da tecnologia LBS (Label
Based Switching) que permitiu a junção da melhor parte das redes baseadas em
pacotes (redes IP) e das redes que são orientadas a conexão (redes ATM e Frame
Relay). Pequenas etiquetas (rótulos) de tamanho fixo são números utilizados no
MPLS conhecidas como LBS, são adicionados aos pacotes quando entram numa rede, tais pacotes são identificados através destas etiquetas e podem ser agrupados por categorias, e os pacotes desta mesma categoria irão seguir o mesmo caminho virtual, através da infraestrutura LBS (MENDONÇA ,2012).
4.3.1 Necessidades da Tecnologia
Segundo Lucek e Minei (apud Mendonça, 2012), a IETF decidiu padronizar essa tecnologia de comutação baseada em troca de rótulos, melhorando o tráfego nas redes e mudando o padrão que até o momento era o mais utilizado das redes IP, inserindo rótulos ao datagrama permitindo a comutação IP, e foi assim que surgiu o MPLS, a fim de atender atuais necessidades oferecendo funcionalidades até então não existentes em redes IP.
A palavra “Multiprotocol” que faz parte do nome de sua tecnologia, devido a sua capacidade de suportar vários tipos de protocolos da camada de enlace e rede respectivamente 2 e 3, é definida pela IETF na RFC 3031. Trabalha realizando o chaveamento (comutação) de forma mais eficiente, diminuindo os esforços processados pelos equipamentos de fluxos principais da rede.
Com o crescimento da internet e a facilidade de acesso, se torna cada vez mais necessário agilizar o processo de roteamento, para suportar tal tráfego. Além disso, com a evolução das aplicações de vídeo, voz e outras em real time, os usuários estão sendo bastante exigentes na questão de qualidade.
No roteamento convencional IP, os roteadores suportam uma maior variedade de protocolos e interfaces, o que é diferente dos switches que são mais simples, tornando seu custo/desempenho melhor comparado aos roteadores. No roteamento IP os pacotes de dados são encaminhados após uma análise de seus cabeçalhos e de acordo com a tabela de roteamento de cada roteador da rede, por isso o tempo de processamento é muito alto. Uma forma de aperfeiçoar este alto processamento é com a ajuda do protocolo MPLS. Nas redes MPLS os pacotes são
roteados apenas nos roteadores de borda que analisam o pacote assim que entram na rede, e cria um caminho para o mesmo atribuindo um rótulo. Os demais roteadores irão somente substituir esse rótulo, ou seja, fazer um chaveamento desses rótulos a cada roteador que passar até que o mesmo chegue ao seu destino.
Dessa forma, é proporcionado um melhor desempenho unindo um protocolo orientado à conexão, no mundo IP sem conexão, evitando o intenso processamento no núcleo da rede e agilizando o processo. Pode-se comparar as Figuras 17 e 18, topologia convencional X Topologia MPLS.
Figura 17 - Backbone convencional
Fonte: Autoria própria, 2015
Para cada cliente ser interligado a outro é necessário que seja criado uma conexão fim a fim (VPN) para que se tenha uma comunicação entre os CEs gerando assim um alto tráfego e sobrecarga de processamento nos roteadores.
Figura 18 - Backbone com tecnologia MPLS
Fonte: Autoria própria, 2015
Segundo Rosen (2001), a comutação dos rótulos MPLS combina a funcionalidade dos protocolos de roteamento da camada 3 do modelo OSI (Open
Systems Interconnection) e a comutação por rótulos (Shim Header - 4 bytes), é
realizado apenas uma comutação, ao invés de seu cabeçalho IP (20 bytes), que necessitaria conhecer a melhor rota de sua tabela de roteamento, tornando o processo mais complexo, desta forma otimiza-se seu processamento, desempenho e gera significativas vantagens e benefícios às redes IP, dentre elas, destacam-se:
Rapidez no processamento;
Qualidade de Serviço (QoS) através de prioridade aplicada aos rótulos;
Engenharia de Tráfego pode-se diferenciar diversos tipos de tráfegos e tratá-los de forma distinta;
Segurança, os pacotes passam pela rede pública através de caminhos virtuais estáticos contendo implementações de alta segurança (VPNs);
Transporte de vários tipos de protocolos, o payload dos pacotes não é analisado pelos roteadores que o conduzem, ficando assim permissível a diferentes níveis de criptografia;
Escalável e possui interoperabilidade, ou seja, suporta diferentes tipos de redes com tecnologias (Ethernet, ATM, Frame Relay, entre outras).
4.3.2 O Cabeçalho do MPLS
De acordo com Mendonça (2012), o rótulo é um pequeno identificador, de tamanho único (20 bits) e seu significado é de importância local no roteador, serve para identificar a FEC (Forwarding Equivalency Class), é uma classe de pacotes IPs que recebem os mesmos parâmetros e tratamentos no momento de encaminhá-los, associando o pacote às respectivas conexões de acordo com o rótulo. É muito similar ao VPI/VCI (Virtual Path Identifier / Virtual Circuit Identifier) do ATM e também ao DLCI (Data Link Connection Identifier) do Frame Relay.
O Cabeçalho MPLS é inserido entre as camadas 2 e 3, devido a esse fato, ficou conhecido popularmente como protocolo de camada “2,5” conforme Figura 19 a seguir:
Figura 19 - Cabeçalho MPLS - Shim Header
Fonte: http://www.gta.ufrj.br/grad/04_2/MPLS/conceitos.htm, Acesso em: 15 set. 2015
Label – Campo formado por 20 bits contendo o valor do rótulo MPLS, esse valor pode variar em até mais de 1 milhão de possibilidades que podem ser aplicadas ao mesmo. Porém esses valores estão divididos em tipos de
Quadro 5 - Tipos de Label
Nº do Rótulo / Referência Descrição
0 - Rótulo NULL explícito IPv4 Indica que o rótulo da pilha deve ser retirado, eo encaminhamento do pacote deve ser baseado no roteamento do IPv4.
1 - Etiqueta de alerta de Roteador
Indica que o datagrama será entregue a um módulo de software local para processar. A transmissão do pacote real é determinada pelo próximo rótulo da pilha.
2 - Rótulo NULL explícito IPv6 Indica que o rótulo da pilha deve ser retirado, eo encaminhamento do pacote deve ser baseado no roteamento do IPv6.
3 - Etiqueta NULA implícita
É o valor em que um LSR (Label Switch
Router) utiliza para atribuir os rótulos LDP
(Label Distribution Protocol).
4 a 15 – Reservados Essas reservas servirão para futuras implementações.
16 a 1.048.575 – Comutação Rótulos livres para utilização Fonte: Adaptada de MENDOÇA, 2012
EXP (Experimental Bits) - Campo formado por 3 bits, atualmente esse campo foi substituído pelo campo TC (Traffic Class - RFC 5462) e sua função é alterar as informações de classe de tráfego, enfileirando-o ou descartando-o. Dessa forma é possível dar prioridade a determinados pacotes fazendo o uso de CoS (Class of Service).
BoS (Bottom of Stack) - Campo formado por apenas 1 bit, permite a criação de uma pilha de rótulos hierárquicos. Indica se o cabeçalho ao qual o pacote pertence é o primeiro ou último nesta pilha MPLS. Todos os cabeçalhos MPLS devem conter esse bit em 0, possibilitando um roteador de saída decidir se o próximo encaminhamento será baseado em IP ou MPLS. Este bit é definido como 1 para a última entrada no rótulo da pilha, e 0 para todos os outros das pilhas de entradas no rótulo.
TTL (Time to Live) - Campo formado por 8 bits. Após o datagrama passar pelo roteador de borda MPLS, o valor inicial do TTL no cabeçalho MPLS deve ser igual ao TTL do protocolo IP, e para cada roteador que o pacote passar
será decrementado em 1, assim especificando um limite de saltos. O valor do TTL encontrado na saída do caminho é copiado para o TTL do cabeçalho IP.
O cabeçalho MPLS (Shim Header) pode ser encapsulado por vários outros protocolos de camada 2 e também pode encapsular vários outros protocolos de camada 3. Como exemplo da tecnologia ATM, possui os campos VPI / VCI, esses campos serão utilizados para transportar os rótulos MPLS, já em tecnologias que não possuem esses campos, o cabeçalho MPLS é inserido entre as camadas 2 e 3 formando um campo adicional.
A comutação dos rótulos com operações hierárquicas é suportada pela tecnologia MPLS, o que torna possível carregar mais de um rótulo por pacote, ou seja, independente da hierarquia do rótulo, o roteador MPLS só irá processar o primeiro rótulo (Top Label) abstraindo os demais rótulos deste mesmo pacote.
4.3.3 Estrutura do MPLS
Segundo Mendonça (2012), os roteadores convencionais tomam suas decisões de encaminhamento baseadas em suas tabelas de roteamento, onde contém informações do cabeçalho IP, para o preenchimento dessas tabelas é necessário a atuação de protocolos de roteamento, por exemplo: OSPF, BGP (Border Gateway Protocol) ou RIP. De forma Genérica, o roteamento envolve o plano de controle e plano de encaminhamento. Uma grande vantagem do MPLS é a possibilidade de separar esses dois tipos de planos, por esse motivo, não há a necessidade de alteração dos dispositivos de encaminhamento, caso queira aplicar mudanças na estratégia do roteamento da rede.
Plano de controle - Onde é criada e mantida a tabela de encaminhamento do nó em uso. Onde estão localizadas as funções de controle como, por exemplo: sinalização, roteamento, policiamento de tráfego, conversão de endereços e outras mais. Os protocolos de roteamento também atuam nesse plano de controle.
Plano de encaminhamento - Onde é feito a análise do cabeçalho do roteamento IP, seu funcionamento é ditado pelo plano de controle, e é responsável pelo tráfego, baseando-se apenas em rótulos.
Em outras palavras, os roteadores MPLS utilizam o plano de controle através dos protocolos de roteamento para escolher o melhor caminho que o pacote deve percorrer até o destino.
4.3.4 Arquitetura do MPLS
Segundo Mendonça (2012), para entendermos o funcionamento de uma rede MPLS, é preciso conhecer bem os seus componentes e como é feito os encaminhamentos nesta rede.
Label (Rótulo): É um pequeno identificador numérico de tamanho fixo, adicionados aos pacotes que ingressam na rede MPLS, tornando sua comutação mais rápida.
LDP: é o protocolo que permite a distribuição dos rótulos entre os roteadores da rede MPLS, chamados de LRSs. O LDP funciona sobre TCP (Transmission Control Protocol), por isso ele faz uso de outros protocolos para desempenhar sua função, por exemplo, RSVP e BGP. O LDP atribui rótulos para cada prefixo aprendido com base na tabela de roteamento, e todos os prefixos aprendidos pelo mesmo dispositivo vizinho recebem esse mesmo rótulo.
LIB (Label Information Base): é a tabela que mantém a correlação dos rótulos com as interfaces do roteador. A partir desta tabela que o LSR traça o encaminhamento dos pacotes da sua entrada na rede MPLS até seu destino, conforme Figura 20.
Figura 20 - Tabela de encaminhamento MPLS
Fonte Adaptada: http://www.gta.ufrj.br/grad/02_1/mpls/dist_etq.html 2015, Acesso em: 15 set. 2015
FIB (Forwarding Information Base): é a tabela que controla as decisões de encaminhamento do roteador. A pesquisa de prefixo é realizada pela FIB. O pacote é descartado caso não seja localizado nenhum endereço.
LFIB (Label Forwarding Information Base): é a tabela mantida pelos roteadores (LSRs) de rede MPLS, ela é criada através da interação com os protocolos de roteamento. A LFIB contém a lista de todas as suas entradas e saídas. A partir dessas informações os LSRs sabem por onde e como encaminhar os pacotes desde seu ingresso até seu egresso.
FEC: define um grupo de pacotes, onde esse grupo é representado por apenas um rótulo, o pacote que receber esse rótulo receberá o mesmo tratamento de encaminhamento.
LSP (Label Switched Path): é o percurso (rota) ordenado entre todos os LSRs do caminho, passando pelos LSRs de ingresso, de trânsito e de egresso em rede MPLS.
LSR (Label Switch Router): é o equipamento que faz o encaminhamento dos pacotes, realizando a comutação dos rótulos MPLS. São eles que formam as conexões LSPs, utilizando os protocolos de sinalização de rótulos, por exemplo: LDP, RSVP-TE (Resource Reservation Protocol – Traffic
Engineering). Ao passar por um LSR, o rótulo existente do pacote é trocado, e
o pacote é passado para o próximo roteador e assim sucessivamente. Os LSRs são divididos em três tipos:
E-LSR de Entrada (Edge LSR): conhecido também como LER (Label Edge
Router) ou PE (Provider Edge), é o equipamento de entrada da rede MPLS,
pode ser um roteador ou um switch de camada 3, é quem atribui o primeiro rótulo na entrada (ingress) no pacote assim que entra na rede. São os ingress que analisam as informações do cabeçalho IP e atribuem a uma FEC. Toda FEC é vinculado a um rótulo que será utilizado no encaminhamento do próximo nó.
LSR de Trânsito: são representados também pela letra “P” (Provider). Equipamentos intermediários que apenas fazem a troca do rótulo e encaminha o pacote para o próximo nó, isso é feito em alta velocidade pelo fato de ser apenas uma comutação e não precisar passar pela análise de cabeçalho.
E-LSR de Saída: conhecido também como LER ou PE (Provider Edge), é o equipamento de saída da rede MPLS. É responsável pela retirada do rótulo do pacote e encaminhamento ao seu destino final.
4.3.5 Funcionamento
O processo de funcionamento de uma rede MPLS pode ser dividido em quatro etapas (MENDONÇA, 2012):
Etapa 1: construção das tabelas de roteamento - São as tabelas de roteamento que determinam os melhores caminhos no backbone MPLS, e são construídas a partir dos protocolos de roteamento (OSPF ou IS-IS). É nesta etapa onde o LDP atua fazendo o mapeamento entre rótulos e IPs de destino.
Etapa 2: ingresso dos pacotes na rede - O E-LSR de entrada recebe os pacotes que entrarão na rede, é nessa etapa que os serviços de nível 3 são executados, como por exemplo: QoS, e logo após é aplicado o rótulo nos pacotes.
Etapa 3: encaminhamento dos pacotes na rede - O LSR de trânsito faz a troca dos rótulos (Label Swapping) nos pacotes durante o encaminhamento do pacote. Ao receber o pacote, o equipamento verifica o rótulo e substitui de acordo com a tabela LFIB e encaminha para os próximos equipamentos no núcleo da rede MPLS.
Etapa 4: egresso dos pacotes na rede - O E-LSR de saída apenas remove o rótulo, e entrega o pacote IP para o encaminhamento convencional.
4.3.6 Vantagens
Atualmente a tecnologia MPLS é bastante usada nos Backbones, segundo Osborne (apud MENDONÇA, 2012): o seu crescimento não aconteceu devido a sua velocidade, pois a diferença não é tão alta, o processamento IP contém 32 bits, já o processamento de rótulos contém 20 bits, levando em consideração que os equipamentos estão computacionalmente evoluídos e robustos o suficiente para suportar tal tráfego.
O fator chave para a expansão do MPLS foi a melhora no desempenho do encaminhamento dos pacotes, possibilitando a separação dos planos de controle do plano de dados, desta maneira obteve-se um progresso na diminuição da latência já que o processo é feito baseado em simples comutação.
Podem-se citar várias outras vantagens e benefícios indicados para grandes redes corporativas de modo a aperfeiçoar seu tráfego:
Desacoplamento de roteamento e encaminhamento;
Integração do melhor dos mundos IP e ATM (transformar um switch ATM em LSR);
Redução de custo com a utilização de VPN (Virtual Private Network) baseada em protocolo IP;
Priorização de Serviços com o QoS e engenharia de tráfego; Convergência de dados, voz e vídeo;
Garantia de níveis de serviço;
4.3.7 Desvantagens
Com a adição das informações de controle decorrido pelo rótulo, consequentemente há uma diminuição do payload (carga útil) das informações; A conexão do cliente ao servidor passa a ser de nível 3, possuindo vulnerabilidades como exemplo: a tabela de rotas poderá ser vista no
backbone MPLS.
4.4 BORDER GATEWAY PROTOCOL (BGP)
4.4.1 Roteamento
Diante destas inovações e avanço da internet, criou-se o conceito de Sistema Autônomo (AS). Segundo Kurose (2006, p. 288) "... é um grupo de roteadores sob o mesmo controle administrativo, isto é, operados pelo mesmo ISP ou pertencentes a uma mesma rede corporativa”.
Assim, o que ocorre internamente será de sua responsabilidade, diminuindo a complexidade da internet global. Cada entidade deverá ter ao menos um roteador que troque informação com os demais ASs. Cada sistema autônomo receberá um AS number que será sua identificação única.
Para acompanhar tais mudanças, surgiu a necessidade de que protocolos de roteamento tivessem a capacidade de divulgar e manter as informações entre os ASs da internet. Com isso nasceram diversos protocolos de roteamento que se dividem em dois grupos, detalhados a seguir e visualizados na Figura 16:
EGP: são utilizados para comunicação entre roteadores que estão em Sistemas Autônomos diferentes. Este é responsável por manter as tabelas de