Multilayer switching
Multilayer switching - CEF
NetFlow switching
(route cache switching)
první paket nového toku je klasicky routován v RP
switch si zapamatuje in/out interfacy pro tento tok
další pakety zpracovává už jen SE
Podpora v HW:
CEF Cisco Express Forwarding
Podporované platformy:
Catalyst 6500 Supervisor 720 (with an integrated MSFC3)
Catalyst 6500 Supervisor 2/MSFC2 combination
Catalyst 4500 Supervisor III, IV V and 6-E
Catalyst 3750, 3560, 3550, and 2950
přeformátovaná a seřazená routovací tabulka s nejpřesněji specifikovanou routou na prvním místě pro každý subnet
routy jsou řazeny dle délky masky, čím delší maska, tím výš je routa ve FIB
FIB obsahuje next-hop adresy pro každou routu
FIB obsahuje i routy s maskou /32, pro přímo připojené hosty, které normálně v routovací tabulce nejsou
FIB se dynamicky mění dle aktuální routovací tabulky i dle záznamů pro next-hop IP v ARP tabulce
Zobrazení FIB:
Switch# show ip cef [type mod/num | vlan vlan-id] [detail]
Switch# show ip cef vlan 101
Prefix Next Hop Interface
10.1.1.0/24 attached Vlan101
10.1.1.2/32 10.1.1.2 Vlan101
10.1.1.3/32 10.1.1.3 Vlan101
Switch# show ip cef [prefix-ip prefix-mask] [longer-prefixes] [detail]
longer-prefixes - vypíše i routy s delší maskou než která byla specifikována v příkazu
Switch# show ip cef 10.1.0.0 255.255.0.0 longer-prefixes
Prefix Next Hop Interface
10.1.1.0/24 attached Vlan101
10.1.1.2/32 10.1.1.2 Vlan101
10.1.1.3/32 10.1.1.3 Vlan101
10.1.2.0/24 attached Vlan102
10.1.3.0/26 192.168.1.2 Vlan99
192.168.1.3 Vlan99
10.1.3.64/26 192.168.1.2 Vlan99
192.168.1.3 Vlan99
10.1.3.128/26 192.168.1.4 Vlan99
192.168.1.3 Vlan99
[output omitted]
Switch# show ip cef 10.1.3.0 255.255.255.192 detail
10.1.3.0/26, version 270, epoch 0, per-destination sharing
0 packets, 0 bytes
via 192.168.1.2, Vlan99, 0 dependencies
traffic share 1
next hop 192.168.1.2, Vlan99
valid adjacency
via 192.168.1.3, Vlan99, 0 dependencies
traffic share 1
next hop 192.168.1.3, Vlan99
valid adjacency
0 packets, 0 bytes switched through the prefix
tmstats: external 0 packets, 0 bytes
internal 0 packets, 0 byte
Jakmile je vytvořena FIB tabulka, pakety jsou hardwarově přepínány (spodní cesta v obrázku)
Jestliže paket nemůže být směrován dle FIB je označen jako “CEF punt” a poslán do L3 enginu k dalšímu zpracování (horní cesta v obrázku)
Důvody proč paket není směrován dle FIB:
pro paket není záznam ve FIB
FIB je plná
Vypršení IP TTL
Paket překračuje MTU a musí být fragmentován
ICMP Redirect
Nepodporovaný typ enkapsulace
Tunelovaný provoz, vyžadující kompresi nebo šifrování
Paket odpovídá
ACL s “log” parametrem
Paket je NATován (kromě 6500, která má NAT v HW)
aCEF (Accelerated CEF) - každá line card na 6500 má v sobě část FIB, co v ní nenajde, je směrováno do L3 enginu.
dCEF (Distributed CEF) - každá line card na 6500 má v sobě celou FIB
Adjacency Table
router běžně udržuje routovací tabulku obsahující L3 sítě a next-hop adresy, a ARP tabulku s L3-L2 záznamy
pro urychlení přepínání, jsou ve FIB udržovány i L2 záznamy pro next-hop - tato část FIB se nazývá adjacency table
Switch# show adjacency [type mod/num | vlan vlan-id] [summary | detail]
Switch# show adjacency summary
Adjacency Table has 106 adjacencies
Table epoch: 0 (106 entries at this epoch)
Interface Adjacency Count
Vlan99 21
Vlan101 3
Vlan102 1
Vlan103 47
Vlan104 7
Vlan105 27
Switch# show adjacency vlan 99 detail
Protocol Interface Address
IP Vlan99 192.168.1.2(5)
0 packets, 0 bytes
000A5E45B145000E387D51000800
ARP 01:52:50
Epoch: 0
IP Vlan99 192.168.1.3(5)
1 packets, 104 bytes
000CF1C909A0000E387D51000800
ARP 04:02:11
Epoch: 0
000A5E45B145000E387D51000800 - Next-hop MAC adresa
000A5E45B145000E387D51000800 - lokální MAC (MAC interface Vlan99)
000A5E45B145000E387D51000800 - Protocol type (IP)
ARP 01:52:50 - stáří ARP záznamu
Adjacency table se vytváří z ARP tabulky
Je-li v ARP aktualizován záznam - je aktualizován i v adacdency tabulce
Jestliže v ARP není záznam pro next-hop, je záznam v adjacency tab. označen jako “CEF glean”
CEF glean nelze přepínat v HW, paket je poslán do L3 enginu, který musí vyvolat ARP request a zjistit MAC next-hopu
Tento stav se nazývá “CEF glean state”
ARP throttling, throttling adjacency - V průběhu CEF glean stavu, jsou pakety zahazovány dokud není v L3 enginu zjištěna MAC next-hopu pro tyto pakety
Switch# show ip cef adjacency glean
Prefix Next Hop Interface
10.1.1.2/32 attached Vlan101
127.0.0.0/8 attached EOBC0/0
[output omitted]
Switch# show ip arp 10.1.1.2
Switch# show ip cef 10.1.1.2 255.255.255.255 detail
10.1.1.2/32, version 688, epoch 0, attached, connected
0 packets, 0 bytes
via Vlan101, 0 dependencies
valid glean adjacency
Typy záznamů v adjacency table:
Null adjacency - pro pakety směrované na Null interface
Drop adjacency - používá se pro pakety určené k zahození z důvodu chyby (nepodporovaného protokolu, špatného kontrolního součtu)
Switch# show cef drop
CEF Drop Statistics
Slot Encap_fail Unresolved Unsupported No_route No_adj ChkSum_Err
RP 8799327 1 45827 5089667 32 0
Switch# show cef not-cef-switched
CEF Packets passed on to next switching layer
Slot No_adj No_encap Unsupp’ted Redirect Receive Options Access Frag
RP 3579706 0 0 0 41258564 0 0 0
Důvody pro zpracování v L3 enginu:
No_adj - nekompletní adjacency
No_encap - nekompletní ARP resolution
Unsupp'ted - nepodporované featury paketu
Redirect - ICMP redirect
Receive - pakety směrované na L3 interejfejsy (IP adresy int. a broadcasty)
Options - IP options
Access - chyba vyhodnocení
ACL
Frag - chyba fragmentace
Packet Rewrite
L2 cílová adresa - změna na MAC next-hopu
L2 zdrojová adresa - změna na MAC odchozího L3 interfejsu switche
L3 IP TTL - snížení hodnoty o jedna
L3 IP checksum - přepočítání kontrolního součtu IP hlavičky
L2 frame checksum - přepočítání kontrolního součtu L2 rámce
Konfigurace CEF
Na Cat3750 a 4500 lze vypnout:
Switch(config-if)# no ip route-cache cef
Switch(config-if)# no ip cef
VERIFING MLS str.257