Balanceamento de Carga Protocolos Spanning-Tree PVST Rapid-PVST MST Cascateamento de Switches O cascateamento de switches na presena de VLANS motivou a elaborao dos seguintes padres IEEE: IEEE 802.1Q: define o funcionamento de VLANs Acrescenta dois campos no quadro: Identificador de VLAN Prioridade IEEE 802.1p: define o uso do campo prioridade. Quadros Ethernet MAC destino (6 bytes) MAC origem (6 bytes) Dados (46 a 1500 bytes) FCS (4 bytes) Ethernet I & II Tipo Proto. (2 bytes) MAC destino (6 bytes) MAC origem (6 bytes) Dados (46 a 1500 bytes) FCS (4 bytes) IEEE 802.3 Tamanho (2 bytes) MAC destino (6 bytes) MAC origem (6 bytes) Dados (46 a 1500 bytes) FCS (4 bytes) IEEE 802.1Q Tipo Proto (2 bytes) VLAN id e prioridade (2 bytes) Tipo 802.1Q = 0x8100 Prioridade (3 bits) + CF (1bit) + VLANID (12 bits) Interligao de Switches SWITCH SWITCH SWITCH A B C D E VLAN 1,2,3 VLAN 1,2,3 VLAN 1,2,3 VLAN 1 VLAN 2 VLAN 2 VLAN 3 VLAN 2 TRUNK ACCESS Interface Trunk: Trfego de Vrias VLANs IEEE 802.1Q Interface de Acesso: Trfego de uma nica VLAN IEEE 802.3 Modos das Portas de Switch As portas de um switch pode trabalhar em dois modos: Modo Access Cada porta do switch pertence a uma nica VLAN. Quadros Ethernet: Formato Normal. Modo Trunk O trfego de mltiplas VLANs multiplexado em um nico link fsico. Usualmente interconectam switches. Quadros Ethernet: formato especial (VLAN). Apenas computadores com placas especiais podem se conectar a essas portas.
Protocolos Trunk Os quadros nas interfaces Trunk so formatados em quadros especiais para identificar a quais LANs eles pertencem. O IEEE 802.1Q um protocolo para interface Trunk. DESTINO ORIGEM CFI Dados CRC 6 Bytes 6 Bytes Esses campos so removidos quando o quadro enviado para uma interface do tipo access. TYPE 2 Bytes PRIO 3 Bits VLAN ID 1 Bit 12 Bits PRIO: IEEE 802.1 P CFI: Canonical Format Indicator 0 em redes Ethernet TYPE 2 Bytes 0x8100 Spanning Tree Protocol: STP Quando os switches colocados em cascata formam caminhos com loops fechados, o encaminhamento de quadros pode levar ao congestionamento da rede. O STP um protocolo de camada 2 utilizado para prevenir a ocorrncia desses loops. Loops em Cascateamento de Switches A B C,D A,B C D Os switches criam tabelas de encaminhamento escutando os endereos MAC de origem enviado para suas portas. Cascateamento de Switches A B C,D,E,F A,B C D E F A,B,C,D E,F Cascateamento de Switches A B A,B,C,D,E,F C D E F A,B,C,D,E,F A,B,C,D,E,F A,B,C,D,E,F A,B,C,D,E,F A,B,C,D,E,F Princpio do STP O STP executado em cada switch da rede Princpio: Somente um caminho ativo pode existir entre 2 estaes na rede Bloquear as portas que impliquem em loops fechados. A estratgia consiste em escolher um switch como Root, e construir uma rvore como o menor caminho at o Root.
SPT O STP utiliza um protocolo chamado BPDU: Bridge Protocol Data Unit Mensagens em Multicast (MAC) DE: 0x0180C20000000 AT: 0x0180C20000010 STP funciona continuamente, de maneira a refletir mudanas de topologia na rede. Se SPT est ativo, os pacotes multicast so recebidos, mas no encaminhados. Se SPT est desativo, os pacotes multicast so encaminhados como multicast desconhecido. Topologia STP A B C D RP RP RP As portas na direo do root so chamadas porta Root As portas na direo oposta ao root so chamadas de designadas. BPDU: Padro IEEE 802.1D Campos do BPDU Protocol Identifier: 0 (SPT) Version: 0 (ST) Message Type: 0 (Configuration) Flags: Topology change (TC), Topology change acknowledgment (TCA) Root ID: 2-Byte Prioridade + 6-Byte MAC da Bridge Root Path Cost: 4-Bytes custo da Bridge at o root. Bridge ID: 2-Byte Prioridade + 6-Byte MAC da Bridge (por VLAN) Port ID: 2 Bytes (usado para escolher a porta a ser bloqueada em caso de loop) Message Age: Tempo decorrido desde que a mensagem repassada foi enviada pelo Root Maximum Age: Idade a partir do qual a mensagem deve ser ignorada Hello Time: Intervalo entre mensagens da root bridge Forward Delay: Tempo que a bridge deve esperar antes de mudar de estado em caso de mudana de topologia. Topologia STP Todas as portas so DP ROOT = Bridge com a menor Bridge ID (menor prioridade ou menor MAC) Porta Root aquela que tem a menor distncia at o Switch Root Esses caminhos foram bloqueados. Em caso de caminhos paralelos, a interface mais lenta sempre bloqueada. Por default, a prioridade de todos os switches 32768. Mensagens BPDU Todos os switches so root inicialmente Todos os switches enviam mensagens BPDU em multicast para todas as suas interfaces. Se SPT est ativo, as mensagens recebidas no so propagadas pelo switch. Se a mensagem recebida por um switch superior (menor bridge ID, custo) ele armazenada, seno ignorada. Se a mensagem superior for recebida pela porta root, ela propagada para as demais portas DP, correspondendo as redes LAN onde o switch designado. Estados de uma Porta Apenas recebe BPDUS Apenas recebe BPDUS Recebe BPDUS Aprende Endereos Recebe BPDUS Aprende Endereos Encaminha Quadros Problema de conectividade timer Configurao Default Exemplo 10.26.136.60 vlan1 10.26.136.13 vlan1 vlan1 vlan1 Fa0/18 Fa0/6-10 Fa0/1-5 10.26.136.184 vlan1 vlan1 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Exemplo Verifique a configurao atual do SPT show spanning-tree summary show spanning-tree detail show spanning-tree active show spanning-tree interface interface-id show spanning-tree blocked ports Identifique: switch root topologia da rvore formada
Exemplo O switch escolhido como root pode no ser o melhor switch da topologia. possvel alterar o switch root com o seguinte comando: configure terminal spanning-tree vlan vlan-id root primary [diameter net- diameter [hello-time seconds]] end show spanning-tree detail O dimetro da spanning tree o nmero mximo de switches entre dois terminais [2-7] O hello o intervalo de envio de mensages de configurao pelo switch root (1 a 10s) Exerccio 1 B = 10.26.136.60 vlan1 A = 10.26.136.13 vlan1 vlan1 vlan20 Fa0/18 Fa0/6-10 Fa0/1-5 C = 10.26.136.184 vlan1 vlan20 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Exerccio I Adio de portas as VLANs configure terminal interface range Fa0/6 - 10 #switchport mode access switchport access vlan 2 end Verificar configurao atual show VLAN brief
Exerccio I Verifique o efeito de desabilitar o protocolo SPT nos switches, desabilitando SPT para VLAN 20: configure terminal no spanning-tree vlan vlan-id end. show spanning-tree vlan vlan-id Para reabilitar o SPT utilize o comando: spanning-tree vlan vlan-id
Aprimorando SPT possvel induzir o protocolo SPT a escolher portas e caminhos diferentes para cada conjunto de VLANs. Essa configurao feita alterando-se o nvel de prioridade (ou custo) associado as portas trunks. Portas VLANS em Switches CISCO A Cisco define 6 modos de operao de portas para VLAN:
switchport mode access Fora a porta a operar em modo acesso switchport mode dynamic auto Permite que a interface entre em modo trunk switchport mode dynamic desirable Entra prioritariamente em modo trunk switchport mode trunk Fora a porta a operar em modo trunk switchport nonegotiate No negocia com a porta vizinha switchport mode dot1q-tunnel Fora o encapsulamento em modo 802.1q Negociao switch switch auto trunk desirable dynamic desirable switch switch Trunk nonegotiate Trunk switch Access nonegotiate Host Modos de Encapsulamento A cisco possui um modo de encapsulamento trunk proprietrio denominado ISL. As seguintes opes de encapsulamento esto disponveis para o switch cisco: switchport trunk encapsulation isl switchport trunk encapsulation dot1q switchport trunk encapsulation negotiate isl o modo preferido
Configurao Default switchport mode dynamic auto Negocia se a porta ser trunk ou no com o vizinho switchport trunk encapsulation negotiate Negocia o modo de encapsulamento (dot1q) ou (isl) com o vizinho Range de VLANs 1 at 4094 (1006 a 4004 so extendidas) VLAN default em modo acesso 1
Exemplo de Comandos configure terminal interface rage Fa0/1 - 24 switchport mode dynamic desirable switchport access vlan 1 #switchport trunk encapsulation dot1q end Mapeamento de VLANs em portas trunk Por default, cada porta trunk pode ser utilizada por todos as VLANs do switch. Todavia, no caso de haver caminhos redundantes, possvel restringir o uso das VLANs para portas trunks especficas. Isso permite efetuar balaceamento de carga, mas sem failback. Exerccio 2 B = 10.26.136.60 vlan1 A = 10.26.136.13 vlan1 vlan1 vlan20 Fa0/18 Fa0/6-10 Fa0/1-5 C = 10.26.136.184 vlan1 vlan20 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Vlan1 somente Vlan20 somente Portas Trunk Verifique a configurao atual dos switches
show interfaces trunk show spanning-tree blocked ports Comandos para Mapeamento da VLANs configure terminal interface Fa0/18 (A) ou Fa0/24 (B) switchport trunk allowed vlan remove all switchport trunk allowed vlan add 1 end interface Fa0/21 (A) ou Fa0/24 (C) switchport trunk allowed vlan remove all switchport trunk allowed vlan add 20 end Portas SPAN A fim de verificar para qual porta trunk o trfego das VLANs est sendo encaminhado necessrio utilizar portas SPAN. As portas SPAN fazem uma cpia da porta trunk para outra porta do switch, permitindo que o trfego seja monitorado com o Ethereal. As portas SPAN so configuradas em sesses. Cada sesso representa uma regra de cpia de uma porta de origem para uma porta de destino. Comando para Portas SPAN configure terminal no monitor session 1 monitor session 1 source interface Fa0/18 monitor session 1 destination interface Fa0/5 encapsulation replicate end show monitor Exerccio 3 Configure as portas SPANs nos switches para verificar o fluxo do trfego trunk: 2950-2 e 2950-3 Fa0/23: cpia da Fa0/1 Fa0/24: cpia da Fa0/2 2950-1 Fa0/18: cpia da Fa0/1 Fa0/21: cpia da Fa0/2
Native VLAN Uma porta trunk est sujeita a dois tipos de trfego: Trfego com TAG: resultantes do trfego de VLANs de um switch para outro Trfego sem TAGs: utilizados normalmente por protocolos intra-switch, como o protocolo de configurao de portas trunk O trfego sem TAGs associado a Native VLAN da porta trunk. Por default, a native VLAN das portas trunk VLAN 1 Native VLAN A fim de haver negociao entre entre portas trunk necessrio que elas pertenam a mesma VLAN O trfego direcionado de uma VLAN para a porta Trunk no receber o cabealho de VLAN, se seu cdigo coincidir com a Native VLAN do switch. 2950-1 vlan1 vlan20 10.0.0.2 2950-1 vlan1 vlan20 10.0.0.2 Native VLAN 1 Native VLAN 1 Trfego sem TAG Trfego com TAG Configurao da Native VLAN configure terminal interface interface-id switchport trunk native vlan vlan-id end show interfaces interfaceid switchport
Balanceamento de Carga com Prioridade de Portas O mapeamento esttico de VLANs para portas trunk no permite a reorganizao automtica do fluxo de dados quando uma enlace trunk danificado. A alternativa mais adequada priorizar a utilizao de certas VLANs em certas portas, ao invs de bloquear sua utilizao. Por default, a prioridade de utilizao de VLANs em portas trunk 128. Exerccio 4 B = 10.26.136.60 vlan1 A = 10.26.136.13 vlan1 vlan1 vlan20 Fa0/18 Fa0/6-10 Fa0/1-5 C = 10.26.136.184 vlan1 vlan20 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Vlan1 prio 16
Vlan 20 prio 128 Vlan1 prio 128
Vlan 20 prio 16 Balanceamento de Carga Aumentar a prioridade para 16: VLAN 1 no trunk A B VLAN20 no trunk A - C
Verificar o balanceamento de carga com show spanning-tree detail Provocar a falha no trunk e verificar o fail-over Comandos configure terminal interface Fa0/18 (A) ou Fa0/24 (B) spanning-tree vlan 1 port-priority 16 spanning-tree vlan 20 port-priority 128 exit interface Fa0/21 (A) ou Fa0/24 (C) spanning-tree vlan 20 port-priority 16 spanning-tree vlan 1 port-priority 128 end show running-config
Balanceamento de Carga com STP Path Cost Por default, o custo dos caminhos trunk est associado a velocidade das portas do switch. Porta Ethernet: 100 Porta Fast-Ethernet: 19 Porta Giga-BitEthernet: 4 Em caso de haver trunks redundantes para o mesmo caminho, o STP ir selecionar com caminho com o menor custo (i.e., maior velocidade). Por default, o valor do custo o mesmo para todas as VLANs, mas pode ser alterado para prover balanceamento de carga. O custo acumulativo quando switches so cascateados
configure terminal interface Fa0/18 (A) ou Fa0/24 (B) spanning-tree vlan 20 cost 30 end
configure terminal interface Fa0/21 ou Fa0/24 (C) spanning-tree vlan 1 cost 30 end Modos e Protocolos de Spanning Tree PVST+: Protocolo da cisco baseado no IEEE 802.1d Usa um algoritmo de SPT por VLAN Rapid PVST+: (RSTP) Convergncia rpida baseada no IEEE 802.1w Apaga imediatamente as entradas MAC aps uma mudana de topologia, ao invs de aguardar o aging-time de 5 minutos. MSTP: Baseado no padro IEEE 802.1s Permite mapear mltiplas VLANs em uma nica instncia de SPT. Executado sobre o RSTP (IEEE 802.1w) (uso obrigatrio) Limitaes PVST+ e RSTP: 128 instncias de SPT (i.e., 128 VLANs) MSTP: 65 MST instncias Nmero ilimitado de VLANs por MST. Configurao Default STP mode: PVST+ Switch Priority: 32768 Port Priority: 128 Port Cost: 4 (1G), 19 (100M), 100 (10M) Timers: Hello: 2s (gerado pelo root para indicar que est funcionando) Forward-delay: 15s, Maximum-age: 20 seconds (tempo que o switch aguarda sem receber PDUs antes de tentar uma re-configurao) Transmit Hold Count: 6 BPDUs (n. PDUs por 1s de pausa evita uso excessivo de CPU) Exerccio 6 Compare o desempenho dos protocolos de spanning- tree PVST e Rapid-PVST no caso de reconfigurao de caminhos. Para o teste matenha um ping permanente entre dois computadores situados na mesma VLANs em switches diferentes. Remova o cabo de entroncamento da porta do trunk que no estiver bloqueada e conte o nmero de pings perdidos.
Exerccio 6 B = 10.26.136.60 vlan1 A = 10.26.136.13 vlan1 vlan1 vlan20 Fa0/18 Fa0/6-10 Fa0/1-5 C = 10.26.136.184 vlan1 vlan20 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Vlan1 somente Vlan20 somente Comandos Cenrio 1: spanning-tree normal configure terminal spanning-tree mode pvst end show spanningtree summary Cenrio 2: rapid-spanning tree configure terminal spanning-tree mode rapid-pvst end show spanningtree summary Funcionamento do STP com Stack Switch Root Todas as portas DP Porta Bloqueada Porta na Direo do root Apenas uma porta no stack escolhida como root. Todos os switches tem o mesmo id MSTP Multiple Spanning-Tree Protocol MSTP: IEEE 802.1s Melhora a tolerncia a falhas Mltiplos forwarding paths Permite balanceamento de carga Mais escalabilidade que o PVST Problema do PVST PSVT permite balanceamento de carga, escolhendo trunks diferentes para diferentes VLANs. D1: root para Vlans 501 a 1000 e D2: root para Vlans 1-500 Problema: 1000 instncias de PSVT com uma topologia de apenas 2 caminhos alternativos. Alto consumo de CPU nos switches e pouca escalabilidade. Padro 802.1q Define apenas uma instncia de ST para todas as VLANs: CST (Common Spanning Tree) No permite balanceamento de carga. OBS. PVST no padro IEEE 802.1q Padro IEEE 802.1s (MST) Permite agrupar VLANs em instncias de SPT. Intancia 1: VLANs 1 a 500 Instancia 2: VLANs 501 a 1000 Cada instncia pode ter um caminho diferente. Apenas duas instncias de SPT para 2 alternativas de topologia. Regies MST A fim de prover maior escalabiliade, o padro MST define que uma rede pode ser organizada em regies Cada regio pode possuir mltiplas instncias, sendo 1 instncia IST (Internal Spanning Tree) Instncia 0 Transmite BPDUs 1 ou mais instncias MST Transmite MSTP BDUs MST Region 1 MST Region 2 MST Region 3 IST Master IST Master IST Master Regio MST Switches pertencem a mesma regio MST se: Tiverem o mesmo nome de regio Tiverem a mesma verso Tiverem o mesmo mapeamento de instncias para VLAN Exerccio 6 B = 10.26.136.60 vlan1 A = 10.26.136.13 vlan1 vlan1 vlan20 Fa0/18 Fa0/6-10 Fa0/1-5 C = 10.26.136.184 vlan1 vlan20 Fa0/1-5 Fa0/6-10 Fa0/1-5 Fa0/6-10 Fa0/24 Fa0/21 Fa0/24 Fa0/23 Fa0/23 Instance 1 Vlan 1 e 10
Instance 2 Vlan 2 e 20 Instance 1 prio 16
Instance 2 prio 128 Instance 2 prio 16
Instance 1 prio 128 Comandos Todos os Switches configure terminal spanning-tree mst configuration instance 1 vlan 1 Instance 1 vlan 10 instance 2 vlan 2 Instance 2 vlan 20 name region1 revision 1 show pending spanning-tree mode mst end Configurao de Port Priority 2950 configure terminal interface Fa0/18 (A) ou Fa0/24 (B) spanning-tree mst 1 port-priority 16 spanning-tree mst 2 port-priority 128 exit interface Fa0/21 (A) ou Fa0/24 (C) spanning-tree mst 1 port-priority 128 spanning-tree mst 2 port-priority 16 end show spanning-tree mst 1 show spanning-tree mst 2 Configurao Path Cost configure terminal interface interface-id spanning-tree mst instance-id cost cost end show spanning-tree mst instance-id
Escolhendo o Swith Root para uma instncia configure terminal spanning-tree mst instance-id priority priority end show spanning-tree mst instance-id
OBS. VTP A cisco utiliza um protocolo denominado VTP para manter a consistncia de configurao entre os switches. Utilizando o protocolo VPT possvel fazer a configurao de VLANs em um nico switch, e repassar essa configurao para os demais switches que pertenam a um mesmo domnio administrativo. Entidades VTP VTP Server Recebe novas configuraes e repassa para os demais switches do domno VTP Client Apenas recebe configuraes do server. No pode ser configurado diretamente. VTP Transparent Recebe configuraes e pode ser alterado diretamente. Todavia, as alteraes feitas num switch em modo transparent no so repassadas aos demais. Configurao Default Alterando a Configurao configure terminal vtp mode server vtp domain domain-name vtp password password end show vtp status