Entendendo MacSec: Aumentado a segurança da rede com IEEE 802.1AE – Parte 1

Introdução

Com a crescente dependência de redes corporativas para a realização de operações críticas, a segurança dessas redes tornou-se uma preocupação primordial. A tecnologia MacSec (Media Access Control Security) surgiu como uma solução robusta para garantir a integridade e confidencialidade dos dados transmitidos em redes Ethernet. Este artigo explora a definição de MacSec, sua evolução histórica e como sua implementação pode elevar os níveis de segurança em uma rede corporativa.

O que é MacSec?

MacSec, ou Media Access Control Security, é um padrão de segurança definido pelo IEEE 802.1AE que fornece autenticação, integridade e confidencialidade para o tráfego de dados nas camadas inferiores da rede, especificamente na camada de enlace (Layer 2). O objetivo principal do MacSec é proteger os dados enquanto eles são transmitidos entre dispositivos na rede, evitando ataques como interceptação, adulteração e repetição de pacotes.

Vantagens do MacSec

O MacSec oferece múltiplas vantagens em comparação com outras tecnologias de segurança de rede:

1. Criptografia e Integridade de Dados: MacSec criptografa cada pacote de dados na camada 2, garantindo que os dados não possam ser lidos ou alterados durante o trânsito sem detecção.

2. Proteção contra Ataques de Interceptação: Ao operar na camada de enlace, o MacSec protege contra ataques como spoofing e man-in-the-middle, que são comuns em redes menos seguras.

3. Desempenho: Diferente de soluções que operam em camadas superiores, o MacSec tem um impacto mínimo no desempenho da rede, pois utiliza hardware específico para a criptografia e descriptografia dos pacotes.

4. Flexibilidade e Escalabilidade: É possível implementar o MacSec em uma ampla gama de dispositivos de rede, de switches a roteadores, e a tecnologia é escalável de pequenas a grandes redes.

Evolução Histórica do MacSec

Início e Desenvolvimento

Desenvolvido e padronizado pelo IEEE como 802.1AE em 2006, o MacSec surgiu como uma resposta às crescentes demandas por segurança em redes locais (LANs) e metropolitanas (MANs). Originalmente concebido para proteger redes Ethernet, o MacSec foi evoluindo ao longo dos anos com adições significativas, como o suporte a redes ponto a ponto e a expansão para proteger também as redes virtuais (VLANs).

As primeiras implementações de MacSec concentravam-se principalmente em ambientes corporativos de grande escala, onde a integridade e a confidencialidade dos dados são críticas. Com o tempo, a tecnologia se adaptou para oferecer soluções também para pequenas e médias empresas, graças à redução de custos e à maior facilidade de implementação.

Adaptação e Adoção

Com a introdução do 802.1AE, os fabricantes de hardware e software começaram a integrar suporte para MacSec em seus dispositivos. A adoção do MacSec foi gradual, inicialmente limitado a ambientes de alta segurança. No entanto, à medida que as ameaças à segurança cibernética evoluíram e se tornaram mais sofisticadas, a implementação de MacSec em redes corporativas tornou-se uma prática recomendada.

Benefícios do MacSec na Segurança de Redes Corporativas

Proteção Contra Ameaças Internas e Externas

MacSec fornece uma linha de defesa crítica contra ameaças internas e externas. Ao criptografar os dados na camada de enlace, ele protege contra a interceptação de informações sensíveis por agentes maliciosos dentro da rede (ameaças internas) e ataques de interceptação de dados por invasores externos.

Autenticação e Controle de Acesso

MacSec utiliza mecanismos de autenticação robustos para garantir que apenas dispositivos autorizados possam participar da rede. Isso impede que dispositivos não autorizados acessem ou interfiram no tráfego da rede, protegendo contra ataques de dispositivos não confiáveis.

Integridade e Confidencialidade de Dados

Ao garantir a integridade e confidencialidade dos dados, MacSec assegura que as informações transmitidas não sejam alteradas ou acessadas por partes não autorizadas. Isso é particularmente importante para empresas que lidam com informações sensíveis ou regulamentadas, onde a integridade dos dados é crítica.

Simplificação da Segurança em Redes Ethernet

MacSec simplifica a implementação de segurança em redes Ethernet ao fornecer uma solução integrada para autenticação, integridade e criptografia. Isso reduz a necessidade de múltiplas soluções de segurança, facilitando a gestão e a manutenção da segurança da rede.

Estrutura de um frame 802.1AE

A estrutura de um frame 802.1AE, também conhecido como MacSec (Media Access Control Security), é uma extensão do frame Ethernet padrão que inclui campos adicionais para fornecer autenticação, integridade e confidencialidade dos dados transmitidos. Vamos detalhar os componentes de um frame 802.1AE e como eles se integram ao frame Ethernet.

Um frame 802.1AE é composto por várias partes principais:

  1. Cabeçalho Ethernet (Ethernet Header)
  2. Campo de Tipo/Comprimento (Type/Length Field)
  3. Cabeçalho de Segurança MacSec (SecTAG – Security Tag)
  4. Dados Encriptados (Encrypted Data)
  5. Código de Verificação de Integridade (ICV – Integrity Check Value)
  6. Trailer Ethernet (Ethernet Trailer)

Componentes em Detalhe

1. Cabeçalho Ethernet (Ethernet Header)

O frame 802.1AE (MacSec) é uma extensão do frame Ethernet padrão que inclui campos adicionais para autenticação, integridade e confidencialidade dos dados. Ao incorporar o SecTAG, os dados encriptados e o ICV, MacSec oferece uma camada robusta de segurança para a transmissão de dados em redes Ethernet, protegendo contra uma ampla gama de ameaças de segurança.

O cabeçalho Ethernet padrão contém os seguintes campos:

  • MAC de Destino (Destination MAC Address): O endereço MAC do destinatário.
  • MAC de Origem (Source MAC Address): O endereço MAC do remetente.
  • Campo de Tipo/Comprimento (Type/Length Field): Indica o protocolo de camada superior ou o comprimento do frame.
Estrutura de frame 802.1AE
2. Campo de Tipo/Comprimento (Type/Length Field)

Neste contexto, o campo de Tipo/Comprimento é configurado para indicar que o frame contém um cabeçalho de segurança MacSec. O valor específico utilizado é 0x88E5, que identifica um frame MacSec.

3. Cabeçalho de Segurança MacSec (SecTAG)

O SecTAG é um campo adicionado pelos mecanismos de segurança MacSec. Ele contém várias sub-campos que ajudam na autenticação e integridade dos dados:

  • Tag Control Information (TCI): Indica o uso de proteção criptográfica e o tipo de frame (unicast, multicast).
  • Packet Number (PN): Um contador que garante a unicidade de cada frame, ajudando a prevenir ataques de repetição.
  • Association Number (AN): Identifica a chave de associação usada para proteger o frame.
4. Dados Encriptados (Encrypted Data)

Os dados reais da camada superior (payload) são encriptados para garantir a confidencialidade. Apenas dispositivos autorizados e que possuem a chave de decriptação correta podem acessar o conteúdo original.

5. Código de Verificação de Integridade (ICV)

O ICV é um valor calculado a partir do conteúdo do frame e é usado para verificar a integridade dos dados. Se o ICV calculado no receptor não corresponder ao ICV enviado, o frame é considerado adulterado e descartado.

6. Trailer Ethernet (Ethernet Trailer)

O trailer Ethernet geralmente contém o valor do FCS (Frame Check Sequence), que é usado para detectar erros no frame transmitido.

Configuração com IBNS1 e IBNS2

Antes de vermos na prática como o MacSec é configurado, vamos entender os conceitos sobre IBNS (Identity-Based Networking Services) nas versões 1 e 2. Para os exemplos de configuração será utilizado o padrão mais recente IBNS2.

IBNS (Identity-Based Networking Services) é um conjunto de soluções desenvolvidas pela Cisco para fornecer controle de acesso e políticas de segurança baseadas na identidade dos usuários e dispositivos. Existem duas versões principais de IBNS: IBNS1 e IBNS2. Abaixo, vamos detalhar as diferenças entre esses dois padrões.

IBNS1

  1. Arquitetura e Funcionamento:
    • Baseado em Portas: IBNS1 utiliza autenticação 802.1X em portas individuais. Cada porta pode ser configurada para autenticar os dispositivos conectados a ela.
    • Configuração Estática: As políticas de segurança e acesso são configuradas estaticamente nas portas dos switches e roteadores.
    • Controle de Acesso: Utiliza ACLs (Access Control Lists) e VLANs (Virtual Local Area Networks) para controlar o acesso dos dispositivos autenticados.
    • Flexibilidade Limitada: A configuração e a gestão das políticas são menos flexíveis, uma vez que dependem de configurações estáticas.
  2. Características Principais:
    • Autenticação 802.1X: Suporta autenticação de dispositivos via 802.1X.
    • ACLs e VLANs: Utiliza ACLs e VLANs para aplicar políticas de segurança e segmentação.
    • Gerenciamento de Políticas: As políticas são aplicadas diretamente nas portas dos dispositivos de rede.
Cisco IBNS1

IBNS2

  1. Arquitetura e Funcionamento:
    • Baseado em Sessões: IBNS2 evoluiu para uma abordagem baseada em sessões, permitindo maior flexibilidade e dinamismo na aplicação de políticas.
    • Configuração Dinâmica: As políticas são configuradas dinamicamente e aplicadas com base na identidade do usuário ou dispositivo, permitindo uma melhor adaptação às mudanças no ambiente de rede.
    • Segmentação e Automação: Utiliza técnicas avançadas de segmentação e automação para aplicar políticas de segurança de maneira mais eficiente e adaptável.
    • Cisco TrustSec: Integra-se com a tecnologia Cisco TrustSec para fornecer segmentação baseada em identidade e políticas de segurança dinâmicas.
  2. Características Principais:
    • Segmentação Baseada em Identidade: Permite segmentar a rede com base na identidade do usuário ou dispositivo.
    • Políticas Dinâmicas: As políticas de segurança são aplicadas dinamicamente, adaptando-se às necessidades e ao contexto de cada sessão.
    • Automação: Suporte para automação de políticas e respostas a eventos de segurança.
    • Suporte para SD-Access: Integrado com a solução Cisco SD-Access, permitindo uma abordagem de rede definida por software para segurança e segmentação.
Cisco IBNS2

Comparação Resumida

CaracterísticaIBNS1IBNS2
AbordagemBaseado em portasBaseado em sessões
ConfiguraçãoEstáticaDinâmica
Controle de AcessoACLs e VLANsSegmentação baseada em identidade
FlexibilidadeLimitadaAlta
AutomaçãoBaixaAlta
Integração com TrustSecNãoSim
Suporte para SD-AccessNãoSim
Tabela com as diferenças entre IBNS1 e IBNS2

A principal diferença entre IBNS1 e IBNS2 está na abordagem de implementação e flexibilidade. Enquanto IBNS1 utiliza uma configuração mais estática e baseada em portas, IBNS2 oferece uma solução dinâmica e baseada em sessões, permitindo uma maior flexibilidade, automação e segurança adaptativa. A escolha entre os dois depende das necessidades específicas da rede e dos requisitos de segurança da organização.

Para saber mais sobre IBNS1 e IBNS2, deixo o link para um material adicional https://community.cisco.com/t5/security-documents/ise-secure-wired-access-prescriptive-deployment-guide/ta-p/3641515#toc-hId-2129857973

Fundamentos de AAA (Authentication, Authorization, Accounting)

Autenticação, Autorização e Auditoria

AAA, que significa Authentication, Authorization, and Accounting (Autenticação, Autorização e Auditoria), é um framework crucial em redes e segurança da informação para gerenciar quem pode acessar os recursos, o que eles podem fazer e como registrar suas atividades. Vamos explorar as diferenças e funções de cada um dos três componentes de AAA.

Authentication (Autenticação)

Definição: Autenticação é o processo de verificar a identidade de um usuário, dispositivo ou sistema que deseja acessar um recurso.

Função:

  • Verificação de Identidade: A autenticação confirma que o usuário ou dispositivo é realmente quem diz ser. Isso é feito através de credenciais, como senhas, certificados digitais, tokens ou biometria.
  • Métodos Comuns: Incluem senhas, cartões inteligentes, autenticação de dois fatores (2FA) e certificados digitais.

Exemplo: Quando você faz login em uma rede com um nome de usuário e senha, o sistema verifica se essas credenciais correspondem a um usuário autorizado.

Authorization (Autorização)

Definição: Autorização é o processo de conceder ou negar permissões aos usuários ou dispositivos autenticados para acessar recursos específicos.

Função:

  • Controle de Acesso: Após a autenticação, a autorização determina quais recursos e serviços o usuário ou dispositivo pode acessar e que operações pode realizar.
  • Políticas de Acesso: Baseia-se em políticas que definem os direitos de acesso, como permissões de leitura, escrita ou execução em um sistema de arquivos ou acesso a determinadas áreas de uma rede.

Exemplo: Um usuário autenticado pode ser autorizado a acessar arquivos específicos em um servidor, mas não a modificar configurações do sistema.

Accounting (Auditoria)

Definição: Auditoria é o processo de registrar e monitorar as atividades dos usuários e dispositivos na rede.

Função:

  • Registro de Atividades: Registra quem fez o quê, quando e onde. Isso inclui logins, acessos a recursos, modificações feitas e duração das sessões.
  • Monitoramento e Relatórios: Fornece dados para análise de segurança, conformidade e faturamento. Ajuda a identificar comportamentos anômalos e pode ser usado para investigações de segurança.

Exemplo: Um sistema de contabilidade registra que um usuário acessou um servidor específico, baixou um arquivo e saiu da sessão às 10:30 AM.

Comparação Resumida

ComponenteFunção PrincipalExemplos de Uso
AuthenticationVerificar a identidade do usuário ou dispositivoLogin com nome de usuário e senha
AuthorizationControlar o acesso aos recursosPermissão para acessar arquivos
AccountingRegistrar e monitorar atividadesLogs de acesso e uso de recursos
Comparação entre AAA

Como Funcionam Juntos

Em uma implementação de AAA típica, esses componentes funcionam em conjunto para fornecer um controle de acesso robusto e seguro:

  1. Autenticação: O usuário fornece suas credenciais. O sistema verifica se são válidas.
  2. Autorização: Uma vez autenticado, o sistema verifica as permissões do usuário e concede acesso aos recursos autorizados.
  3. Auditoria: Todas as atividades do usuário são registradas para fins de monitoramento e auditoria.

A combinação de Autenticação, Autorização e Auditoria forma um framework integral para gerenciar a segurança e o controle de acesso em redes e sistemas de informação. Cada componente desempenha um papel crucial: a autenticação assegura que apenas usuários legítimos possam acessar a rede, a autorização define o que esses usuários podem fazer, e a auditoria monitora e registra suas atividades para garantir conformidade e segurança contínuas.

Métodos de autenticação

A autenticação de rede é um componente crucial para garantir que apenas usuários e dispositivos autorizados possam acessar recursos de rede. Existem vários métodos de autenticação utilizados para este fim, cada um com suas próprias características e casos de uso específicos. Vamos explorar as diferenças entre IEEE 802.1X, MAC Authentication Bypass (MAB), Web Authentication e EasyConnect.

IEEE 802.1X

Definição: IEEE 802.1X é um padrão para controle de acesso à rede baseado em portas que fornece autenticação para dispositivos que desejam se conectar a uma LAN ou WLAN.

Características:

  • Autenticação Forte: Utiliza protocolos de autenticação como EAP (Extensible Authentication Protocol) para verificar a identidade dos dispositivos.
  • Suporte para Vários Métodos de EAP: Pode usar EAP-TLS, EAP-PEAP, EAP-TTLS, entre outros, dependendo dos requisitos de segurança.
  • Autenticação Mútua: Permite a autenticação tanto do cliente quanto do servidor, aumentando a segurança.
  • Integração com RADIUS: Normalmente, é integrado com servidores RADIUS para gestão centralizada de autenticação.
  • Aplicação: Comumente usado em redes corporativas e de campus para garantir que apenas dispositivos autorizados possam se conectar.

MAC Authentication Bypass (MAB)

Definição: MAB é um método de autenticação que utiliza o endereço MAC de um dispositivo como credencial para permitir o acesso à rede.

Características:

  • Simplicidade: Fácil de implementar, pois não requer configurações adicionais nos dispositivos cliente.
  • Autenticação de Dispositivos Legados: Útil para dispositivos que não suportam 802.1X, como impressoras e telefones IP.
  • Menor Segurança: Menos seguro, pois os endereços MAC podem ser facilmente falsificados (spoofing).
  • Integração com RADIUS: Pode ser integrado com servidores RADIUS para validação de endereços MAC contra uma base de dados centralizada.
  • Aplicação: Usado como uma medida de autenticação de fallback para dispositivos que não suportam 802.1X.

Web Authentication (WebAuth)

Definição: Web Authentication (WebAuth) é um método de autenticação onde os usuários são redirecionados para uma página web para fornecer credenciais antes de obter acesso à rede.

Características:

  • Portal Captive: Utiliza um portal captive onde os usuários inserem nome de usuário e senha.
  • Fácil de Usar: Fácil para os usuários finais, pois a autenticação é feita via navegador web.
  • Flexibilidade: Pode ser configurado para redirecionar para páginas de login personalizadas.
  • Menor Segurança Comparada ao 802.1X: Não fornece autenticação mútua e depende da segurança do navegador.
  • Aplicação: Comumente usado em redes Wi-Fi públicas e ambientes de convidados, onde é necessário fornecer acesso temporário à rede.

EasyConnect

Definição: EasyConnect é uma solução de autenticação que permite a integração de dispositivos na rede com uma experiência de autenticação simplificada, geralmente combinando métodos de autenticação como 802.1X e MAB.

Características:

  • Experiência de Usuário Simplificada: Visa simplificar a autenticação para os usuários finais, muitas vezes automatizando a seleção do método de autenticação apropriado.
  • Combinação de Métodos de Autenticação: Pode utilizar 802.1X para dispositivos que o suportam e MAB para aqueles que não o fazem, garantindo cobertura abrangente.
  • Automação e Gerenciamento: Pode incluir funcionalidades de automação para simplificar a configuração e gestão da autenticação de rede.
  • Flexibilidade: Adequado para ambientes mistos onde diferentes dispositivos e requisitos de autenticação coexistem.
  • Aplicação: Ideal para grandes redes corporativas onde a simplificação da experiência do usuário e a gestão centralizada de autenticação são críticas.

Comparação Resumida

MétodoCaracterísticas PrincipaisCasos de Uso Comuns
IEEE 802.1XAutenticação forte via EAP, suporte para autenticação mútua, integração com RADIUSRedes corporativas e de campus
MAC Authentication Bypass (MAB)Utiliza endereço MAC como credencial, simples de implementar, menos seguroDispositivos legados, fallback para 802.1X
Web Authentication (WebAuth)Autenticação via portal web, fácil para usuários, flexível, menor segurança comparada ao 802.1XRedes Wi-Fi públicas, ambientes de convidados
EasyConnectCombina métodos de autenticação, experiência simplificada, automação e gerenciamento centralizadoGrandes redes corporativas

Cada método de autenticação possui suas próprias vantagens e desvantagens, e a escolha do método adequado depende das necessidades específicas da rede e dos dispositivos conectados. IEEE 802.1X oferece a autenticação mais robusta, enquanto MAB e WebAuth são opções viáveis para dispositivos legados e ambientes onde a simplicidade e a flexibilidade são essenciais. EasyConnect proporciona uma abordagem híbrida, combinando múltiplos métodos para proporcionar uma experiência de autenticação simplificada e abrangente.

O gráfico abaixo apresenta de forma visual uma comparação entre a complexidade de implementação x o nível de segurança que cada método apresenta.

Nível de complexidade de implementação x nível de segurança

Conclusão

Nessa primeira parte do artigo focamos em apresentar os conceitos básicos sobre MacSec e métodos de autenticação. Na parte 2 vamos entender na prática como tudo isso funciona, com exemplos de configuração em um switch e com o Cisco ISE.

Designing Enterprise Campus LAN – Parte 1

Uma série em que abordaremos os conceitos para elaborar um design eficiente e confiável para redes LAN.

Nessa série de artigos divididos em três partes, falaremos sobre design de uma rede Enterprise Campus LAN, a importância de criar um design eficiente e confiável para operação da rede local. Abordaremos os conceitos de uma rede tradicional em layer 2 e a diferença para o design routed access puramente em layer 3.

Introdução

Switches de camada 2 (ou switches L2) são frequentemente utilizados como meio de prover conectividade entre os clientes e a rede local. Toda segmentação do ambiente a nível de camada 2 (local area networks ou simplesmente LAN) são efetuadas nestes equipamentos.

Switches de camada 3 (switches L3) são basicamente roteadores com o “fast forwarding” feito via hardware. O encaminhamento de pacotes envolve a pesquisa de melhor rota, o decremento da contagem do TTL (time to live), o recalculo do checksum e o encaminhamento do quadro com o apropriado cabeçalho MAC para a correta porta de saída.

De forma implícita, acabamos assumindo que switches layer 3 também operam como switches Layer 2, mas isso nem sempre é verdade.

Vamos entender como combinar os switches Layer 2 e Layer 3 em um modelo de Enterprise Campus LAN.

Campus LAN – Endo-to-end VLANs ou Local VLANs

Dois dos principais modelos de design em Campus LAN são end-to-end VLANs e Local VLANs. Vamos entender como cada um desses dois modelos funcionam.

  • End-to-End VLANs: Modelo em que todas as VLANs são distribuídas e disponíveis em todos os switches do Campus. Neste modelo, faz-se necessário o uso de ferramentas como o STP (spanning-tree) para prevenção de loops. Nesse modelo, os usuários tem acesso a suas respectivas VLANs independentemente de sua localização física no Campus. O termo end-to-end VLANs faz referência ao fato de uma única VLAN estar presente em múltiplos switches através da rede do Campus.
  • Local VLANs: Neste modelo, os usuários são agrupados em VLANs dependendo de sua localização física, se um usuário move de um local para outro no campus, a VLAN que o mesmo irá utilizar será diferente. Neste caso, switches Layer 2 são utilizados para prover acesso ao usuário, já na camada de distribuição, o roteamento entre VLANs é efetuado para que o usuário consiga acessar os recursos necessários na rede.

End-to-end VLANs e Local VLANs são dois tipos de design, durante a fase de planejamento você pode optar por utilizar um mix de ambos.

End-to-End VLANsLocal VLANs
Pros:
– Todas as VLANs estão disponíveis em todos os switches do Campus;
– Mesmas políticas (QoS, segurança) são aplicadas aos usuários, independente de sua localização geográfica dentro do Campus.
Pros:
– Modelo de design mais escalável;
– Troubleshooting pode ser simplificado;
– Caminhos redundantes podem ser facilmente criados.
Contras:
– Todos os switches precisam estar configurados com todas as VLANs;
– Mensagens de broadcast trafegam por todos os switches;
– Troubleshoot pode ser um desafio neste ambiente.
Contras:
– São necessários mais equipamentos com características de roteamento (switches L3).

No modelo de end-to-end VLANs, você deve levar em consideração que todos os switches trafegam dados de todas as VLANs, mesmo que não haja um usuário conectado a uma determinada VLAN em algum switch do Campus. Por este motivo, efetuar troubleshooting neste tipo de ambiente pode ser um problema, pois, o tráfego de uma simples VLAN atravessa múltiplos switches no Campus.

Já no modelo de design de Local VLANs, as VLANs que são utilizadas para a camada de acesso não devem ser estendidas além do switch de distribuição. Este modelo de design pode mitigar muitos problemas, além de prover vários benefícios como:

  • Determinar o caminho do tráfego: Este modelo provê de forma mais previsível o tráfego entre o switch L2 e o switch L3. Em uma eventual falha, a simplicidade do modelo permite facilita com que o problema seja isolado e rapidamente identificado.
  • Caminhos redundantes: Com a implementação do STP (aqui considere as diferentes versões do STP como, RSTP, PVST, MST) é possível utilizar todos os links de interconexão entre o switch L2 e o switch L3 e utilizar caminhos redundantes.
  • Menor ponto de falhas: Se a VLAN é local a um determinado bloco da rede e o número de usuários atrelados a essa VLAN é pequeno, uma eventual falha no layer 2 dessa VLAN acabará por impactar um número baixo de usuários.
  • Design Escalável: Permite um design muito mais escalável, a incorporação de novos switches ou adição de novas VLANs no ambiente de forma muito mais simples.

O modelo tradicional de Layer 2

Em um design hierárquico tradicional, o bloco de distribuição usa uma combinação protocolos e serviços de camadas 2, 3 e 4 para prover convergência, escalabilidade, segurança e gerenciamento. Neste modelo, os switches de acesso são configurados como switches L2 e encaminham o tráfego através de uplinks com os switches de distribuição através de portas configuradas como trunks. Já os switches de distribuição são configurados para suportar o encaminhamento em L2 para os switches de acesso e também encaminhamentos em L3 para a camada superior, que é o core da rede.

Neste modelo tradicional de Layer 2, a demarcação entre as camadas de L2/L3 fica a cargo dos switches de distribuição. Eles atuam o default gateways para as redes (VLANs) que são criadas no ambiente e com o encaminhamento em L3 para a camada superior. Duas características deste modelo de design:

  • 1º: É que não é possível alcançar de forma verdadeira o balanceamento de carga entre os links, já que o STP irá bloquear caminhos redundantes. Balanceamento de carga é efetuado através de manipulação do STP e FHRP (First Hop Redundancy Protocol), enviando o tráfego de diferentes VLANs em diferentes links, porém, manipulação manual do STP e FHRP não é uma forma verdadeira de efetuar balanceamento de carga.
  • 2º: O tempo de convergência da rede pode ser alto. Implementações do STP como RSTP tornam o tempo de convergência da rede mais rápido, mas isso só é possível alcançar com um bom nível de design de roteamento hierárquico e ajustando-se os tempos de convergência do FHRP.

Modelo de layer L2 atualizado

Neste modelo, as VLANs ainda são terminadas nos switches de distribuição (os switches continuam atuando como default gateways). A diferença é que não há mais links bloqueados através do STP. O uso de features como StackWise virtual, presente em switches da séries Catalyst 9500 por exemplo, permite que que dois switches operem logicamente como um único equipamento.

Aqui, o STP passa a atuar apenas para prevenção de conexões erradas de cabeamento, o etherchannel criado entre os switches de acesso e a camada de distribuição passa a oferecer o balanceamento de tráfego entre os links e o uso de FHRP não é mais necessário. Tudo isso resulta em um tempo de convergência muito melhor se comparado ao modelo tradicional de design em L2.

Descrevendo o modelo de acesso em Layer 3

Uma alternativa para o modo tradicional de design com bloco de switches de distribuição é fazer com que os switches de acesso atuem em modo L3 (routed access). A camada de acesso para a distribuição tradicionalmente composta por switches operando em L2 é substituída por switches que operam em modo L3. Isso significa que a demarcação entre as camadas de L2/L3 é movida da distribuição para a camada de acesso. Neste cenário não há necessidade de uso de FHRP.

Nesse modelo, o switch de acesso atua como o default gateway e cada switch participa do domínio de roteamento. O roteamento, se configurado corretamente, oferece ótimos resultados de balanceamento de carga e tempos de convergência.

No design de layer 3, o default gateway e o root bridge para as VLANs é simplesmente movido da camada de distribuição para o switch de acesso. O endereçamento IP de todos os end points permanece o mesmo, assim como o default gateway. VLANs e as configurações de portas dos switches de acesso configurações de interface de roteamento, access-lists, ip helper e qualquer outra configuração para cada VLAN permanece a mesma, Entretanto, as interfaces SVI agora são definidas nos switches de acesso ao invés de serem configuradas nos switches de distribuição.

Designs comuns de interconexão entre acesso e distribuição

Vamos explorar alguns modelos de design de interconexão entre a camada de acesso e a camada de distribuição e vamos entender como cada uma funciona.

  • Design Layer 2 Loop: Utiliza switches em layer 2 na camada de acesso até a conexão com os switches de distribuição. Este modelo necessita do uso do STP para evitar loops na rede o que acaba por inutilizar um dos uplinks do acesso até a distribuição. Em uma situação de falha do uplink, o tempo de convergência irá depender de como o STP e o FHRP estarão configurados.
  • Design Layer 2 Loop Free: Utiliza switches em layer 2 no acesso e layer 3 na interconexão entre os switches de distribuição. Não oferece um cenário de loop de camada 2 entre os switches de acesso e distribuição. Neste modelo, o tempo de convergência em caso de falha de um dos links depende dos tempo de convergência do FHRP.
  • Design StackWise virtual: Neste modelo, com o uso do StackWise e etherchannel, o STP reconhece o caminho do switch de acesso ao distribuição como um único link lógico. O STP é somente utilizados nas portas de acesso em que os dispositivos de usuários serão conectados, a fim de evitar que um usuário crie algum loop na rede. Se um dos uplinks falhar, o encaminhamento do tráfego se dará sem maiores problemas e sem a necessidade de reconvergência da rede.
  • Design Layer 3 routed access: Utiliza roteamento na camada de acesso e distribuição (inclusive na interconexão entre os switches de distribuição). Não há necessidade de utilização de STP, com exceção do uso nas portas de acesso aonde os equipamentos dos clientes serão conectados. O tempo de reconvergência depende exclusivamente do tempo de convergência do protocolo de roteamento utilizado.

Comparação dos tempos de convergência entre rede layer 2 e layer 3

Esse talvez seja o aprimoramento mais significante quando comparamos os tempos de convergência entre uma rede com a camada de acesso operando em L2 e uma rede operando no modo routed access, com o acesso em L3. Em uma rede layer 2 tradicional, o tempo de convergência do STP pode variar entre 800-900 msec, comparado com o modelo routed access, esse tempo é reduzido para menos de 200msec.

Aqui vale destacar que cada ambiente terá suas particularidades, estes valores são apenas referências de comparação entre um modelo de design L2 e outro em L3 Os tempos de convergência não necessariamente serão esses.

Fonte: https://www.cisco.com/c/en/us/td/docs/solutions/Enterprise/Campus/routed-ex.html#wp999019

Modelo de acesso em L2 ou L3, qual a melhor escolha?

Qual design é melhor levando-se em consideração tudo o que foi apresentado até então?

O resultado final de qual design escolher é uma decisão de projeto baseado em vários fatores, não é possível dizer qual modelo é melhor sem conhecer os requisitos do ambiente e as necessidades do cliente, qual o budget disponível e etc. Operar em uma rede no modelo routed access trás vantagens em relação ao tempo de convergência, porém a mesma trás desvantagens com relação ao nível de conhecimento técnico necessário para mantê-la.

Já uma rede tradicional operando em L2 em um primeiro momento pode ser mais fácil de gerenciar, mas a mesma apresenta um tempo de convergência maior, para se ter um tempo de convergência próximo aos da rede routed access são necessários vários ajustes no STP e nos tempos do FHRP.

Com isso encerro essa primeira parte dessa série de artigos sobre design Enterprise Campus LAN. Na segunda parte falaremos especificamente sobre o design em Layer 2 e na parte 3 falaremos sobre o design em Layer 3.

Bons estudos e até a próxima.

Redes de Camada 2 – Uma Introdução ao Protocolo Spanning Tree

Neste artigo é apresentado um resumo da operação do protocolo spanning tree, muito utilizado em redes de camada 2 (layer 2) para prevenção de loops.

Neste artigo, falaremos sobre as redes de camada 2 ou a Camada de Enlace de Dados, sendo esta o segundo nível de referência do modelo OSI de sete camadas.

Sempre que temos pela frente o desafio de criar o design de uma rede operando em camada dois, temos que fazer a seguinte pergunta:

  • Como ter a maior confiabilidade e alta disponibilidade possível?

Essa é uma tarefa que os designers de rede encontram em seu dia a dia e para atingir esse nível de confiabilidade e disponibilidade, várias tecnologias são utilizadas para prover proteção à camada 2.

Dentre estas tecnologias estão:

  • Protocolo Spanning Tree (STP);
  • Virtual local area networks (VLANs);
  • Trunking;
  • Link Aggregation (LAG);
  • Multichassis Link Aggregation (mLAG);
  • First Hop Redundancy Protocol (FHRP).

Aqui falaremos sobre o protocolo spanning tree (STP).

Protocolo Spanning Tree

Spanning Tree (STP) é um mecanismo de control plane para redes ethernet. Ele é utilizado para criar uma topologia livre de loops sendo o protocolo mais utilizado em redes de camada 2.

Como as redes ethernets trabalham baseadas no aprendizado através do data plane e os quadros ethernet não possuem TTL para prevenção de loops, o STP atua nesta prevenção bloqueando os caminhos redundantes na rede, a figura 1 ilustra como o STP age bloqueando alguns links.

Em redes de dados temos a definição de control plane e data plane. O control plane é basicamente a parte da rede que controla como os pacotes de dados são encaminhados, ou seja, como os dados são enviados de um lado para o outro e vice versa. Já o data plane é quem efetivamente encaminha os dados.

Existem muitas versões do STP, sendo as mais comuns:

  • 802.1D: Implementação tradicional do STP;
  • 802.1W: Conhecido como RSTP (Rapid Spanning Tree), sendo voltado para implementações em larga escala, esta versão possuí melhorias em seu tempo de convergência.
  • 802.1S: Multiplo Spanning Tree (MST), que tem seu uso voltado para ambientes realmente muito grandes (com muitas VLANs), essa versão funciona agregando múltiplas VLANs em uma única instância de STP, reduzindo assim a carga de CPU sempre que há uma convergência na rede.

Como o STP atua para prevenir loops

Como dito anteriormente, a forma como o STP atua para criar uma topologia livre de loops é bloqueando certas interfaces, evitando assim que hajam caminhos redundantes na topologia, então, vamos ver como o STP realmente trabalha.

Vamos utilizar a topologia da figura 2 como base.

Na topologia acima, observamos que a forma como os links estão conectados, cria uma topologia em triangulo, gerando assim um ambiente em que loops ocorrerão. A figura 3 exemplifica isso.

Então, como o STP faz para evitar que loops ocorram? O primeiro passo que o STP realiza é a eleição de quem será o root bridge da topologia, pois será a partir do root bridge que o algoritmo do STP irá calcular os links livres de loop na rede. Em outras palavras, o root bridge é o ponto central da rede.

Aqui há uma consideração muito importante, durante a fase de design da rede é muito importante se atentar aonde o root bridge estará localizado (logicamente na rede), pois um design incorreto acarretará em diversos problemas de performance sempre que houver uma alteração na topologia.

O processo de eleição do root bridge se inicia com todos os switches da rede trocando quadros chamados de BPDUs (bridge protocol data unit), e dentro desses BPDUs existem duas informações muito importantes que o STP irá utilizar:

  • MAC address;
  • Prioridade.

Estas duas informações juntas, são utilizadas para termos o bridge ID.

Como o STP usa o bridge ID para o processo de decisão de escolha do root bridge? Vamos entender como isso funciona:

  1. Primeiro todos os switches da rede enviam os BPDUs com as informações de endereço MAC e sua respectiva prioridade;
  2. Por padrão, todos os switches possuem uma prioridade de 32768 (este valor pode ser alterado através de configurações, mas para o exemplo utilizaremos o valor padrão);
  3. O switch com o menor bridge ID vence a eleição de root bridge.

Mas quem será o root bridge? Como o valor de prioridade é o mesmo para todos, o endereço MAC será o elemento utilizado nessa decisão, neste caso, o switch com o menor MAC ADDRESS vence a eleição, em nosso exemplo, o switch 1 será eleito o root bridge desta topologia.

Uma vez finalizado o processo de escolha do root bridge, o switch 1 colocará suas portas em modo designado ou seja, elas estarão sempre no estado de encaminhamento (forwarding).

Já os switches não root “non root bridges” irão analisar qual o melhor caminho até o root (shortest path) e essas portas serão conhecidas como root ports.

A escolha do menor caminho é baseada na velocidade que a porta opera. Na tabela abaixo são apresentados os custos em relação à velocidade da porta. Para nosso exemplo, vamos manter as coisas simples e utilizar os valores baseados na revisão do STP 801.D (1998).

Velocidade da Porta802.1D (original)802.1D (1998)802.1D (2004)
10 Mbps1001002.000.000
100 Mbps1019200.000
1 Gbps1420.000
10 Gbps122.000
Tabela 1

A partir das informações da tabela 1, vemos que o link diretamente conectado do switch 2 até o switch1 possuí custo 4, o mesmo vale para o link diretamente conectado do switch 3 para o switch 1. Qualquer outro caminho irá aumentar esse custo. Por exemplo, vamos imaginar que o switch 3 tente chegar até o root bridge através do switch 2, seu custo total será 8. O mesmo vale para o switch 2 se ele tentar chegar até o root através do switch 3.

Assim, sabemos que as portas Gi 0/1 no switch 2 e Gi 1/0 no switch 3 serão as root ports.

A etapa final consiste em saber qual porta entre o switch 2 e o switch 3 será bloqueada para evitar que haja loop em nossa topologia. O processo de escolha é baseado no bridge ID, recordando, o bridge ID é formado pelo MAC + prioridade. Como a prioridade é igual entre os switches (32768) a escolha se dará pelo menor MAC, em nosso caso, o switch2 possuí o menor MAC, fazendo com que o switch 3 bloqueie sua porta, criando assim uma topologia livre de loop.

Como a porta do switch 3 fica bloqueada, ela é posta com o status de “A ou Alternate”.

Agora vamos entender como cada porta opera:

  • Root port: É a porta selecionada em todos os non-root bridges, são as portas mais próximas do root bridge, baseadas em seus respectivos custos até o root bridge. Somente pode existir uma root port em um switch non-root bridge.
  • Designated port: É uma porta em que é permitido o encaminhamento de tráfego. Em um switch root bridge, todas as portas são designated ports. Em um swicth non-root bridge, as designated ports são calculadas por segmento, baseado no custo de cada interface até o root bridge.
  • Alternate port e backup port: Uma alternate e backup port é a porta que opera no estado de “blocking” para evitar loops.
  • Disable ports: É a porta do switch que é colocada no estado de shut down.

Existem muitos outros conceitos sobre o STP que não abordamos aqui, a ideia é manter as coisas simples para facilitar o entendimento de como o protocolo funciona. Agora que sabemos como é sua operação, podemos agregar novos conhecimentos, mas isso falaremos em um outro post.