Beruflich Dokumente
Kultur Dokumente
Architecture
Nemanja Kamenica (nkamenic@cisco.com)
Engineer, Technical Marketing
BRKARC-3470
Session Abstract
This session presents an in-depth study of the architecture of the latest generation
of Nexus 7000 and Nexus 7700 data center switches. Topics include supervisors,
fabrics, I/O modules, forwarding engines, and physical design elements, as well
as a discussion of key hardware-enabled features that combine to implement
high-performance data center network services.
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Session Goal
This session will not examine NX-OS software architecture or other Nexus
platform architectures
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
Chassis
I/O Modules
Fabrics
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Nexus 7700
Common Foundation
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
Nexus 7010
Nexus 7018
25RU
Side
21RU
Side
Front
Front
N7K-C7010
Rear
Front
N7K-C7018
Rear
Nexus 7004
Nexus 7009
Back
14RU
Side
7RU
Side
Side
Front
Front
N7K-C7009
N7K-C7004
Rear
Rear
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Nexus 7718
Nexus 7710
Back
26RU
14RU
Front
Front
Front
Front
Rear
Rear
N77-C7718
N77-C7710
NX-OS 6.2(6) and later
Nexus 7706
Nexus 7702
Back
3RU
9RU
Front
Front
Front
Front
Rear
N77-C7702
Rear
N77-C7706
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
10
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
Supervisor Engine 2 / 2E
Base performance
High performance
N77-SUP2E
Controls access to fabric bandwidth via dedicated arbitration path to I/O modules
N7K-SUP2/N7K-SUP2E
ID and Status
LEDs
ID and Status
LEDs
Management
Console Port
Ethernet
USB Host
Ports
USB Log
Flash
USB Expansion
Flash
BRKARC-3470
Console Port
USB Expansion
Flash
Management
Ethernet
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
12
Switched
1GE EOBC
To Module VOQs
To Fabric Modules
Dedicated
Arbitration
Path
Fabric ASIC
Switched
EOBC
VOQs
Dedicated
Arbitration
Path
Central
Arbiter
1GE Inband
I/O Controller
Bootflash
(eUSB)
NVRAM
2GB
Main CPU
32MB
Main CPU
Sup2E
Only
DRAM
Console
Mgmt0
USB expansion
USB logflash
2.1GHz
Quad-Core
BRKARC-3470
12GB/32GB
2.1GHz
Quad-Core
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
13
Main CPU(s) Runs all system-level NX-OS processes and handles all control
plane and management functions
VOQs Interface to central arbiter and local crossbar fabric, implements Virtual
Output Queuing
Fabric ASIC Local fabric that provides first/third stage of three-stage crossbar
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
14
M1
M2
1G / 10G
M-Series Modules
10G / 40G /
M3
F1
F2/F2E
10G
F3
10G
F-Series Modules
F3 closes the
F/M feature gap!
F2E
10G
BRKARC-3470
F3
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
15
N7K-M224XP-23L
N7K-M206FQ-23L
N7K-M202CF-22L
Module
Port Density
Optics
Bandwidth
M2 10G
SFP+
240G
M2 40G
QSFP+
240G
M2 100G
2 x 100G
CFP
200G
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
16
To Fabric Modules
To Central Arbiters
LC
CPU
Fabric ASIC
Arbitration
Aggregator
Forwarding
Engine
VOQs
VOQs
VOQs
Replication
Engine
VOQs
Forwarding
Engine
Replication
Engine
Replication
Engine
Replication
Engine
LinkSec +
12 X 10G MAC -or3 X 40G MAC -or1 X 100G MAC
LinkSec +
12 X 10G MAC -or3 X 40G MAC -or1 X 100G MAC
Front Panel Ports
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
17
LinkSec + MAC Provides port ASIC functions, including buffering/queuing, and performs 802.1ae
encryption/decryption for front-panel ports
Replication Engine Bridge between front panel port, forwarding engine, and fabric; performs multicast
and SPAN replication
Forwarding Engine Performs all Layer 2, Layer 3, and Layer 4 forwarding decisions and policy
enforcement
VOQs Interface to central arbiter and local crossbar fabric, implements Virtual Output Queuing
Arbitration Aggregator Muxes arbitration requests from VOQs before sending to central arbiter on
Supervisor Engine
Fabric ASIC Local fabric that provides first/third stage of three-stage crossbar
(LC CPU Linecard CPU, runs module-specific NX-OS processes and interfaces with Supervisor
Engine over EOBC)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
18
Ingress Modules
Destination
VQIs
10G 10G
40G
40G
100G
1 VQI 1 VQI
4 VQIs
4 VQIs
10 VQIs
Egress Interfaces
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
19
N7K-F348XP-25
N7K-F312FQ-25
Module
Port Density
Optics
Bandwidth
F3 10G
48 x 1G/10G
SFP+
480G
F3 40G
QSFP+
480G
F3 100G
6 x 100G
CPAK
550G
N7K-F306CK-25
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
20
N77-F348XP-23
Module
Port Density
Optics
Bandwidth
F3 10G
48 x 1G/10G
SFP+
480G
F3 40G
QSFP+
960G
F3 100G
12 x 100G
CPAK
1.2T
N77-F312CK-26
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
21
To Fabric Modules
EOBC
To Central Arbiters
FSA
CPU
Arbitration
Aggregator
x6
1G switch
Fabric ASIC
x6
LC Inband
to FSA
CPU
to ARB
8 X 10G
SOC 1
3
2
8 X 10G
SOC 2
5
4
7
6
9
8
11
10
12
8 X 10G
SOC 3
13
14
15
16
17
18
19
21
20
22
8 X 10G
SOC 4
23
24
25
26
27
28
29
8 X 10G
SOC 5
31
30
32
33
34
35
36
8 X 10G
SOC 6
37
38
39
40
41
42
43
45
44
47
46
48
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
22
EOBC
To Central Arbiters
Arbitration
Aggregator
FSA
CPU
x6
1G switch
Fabric ASIC
x6
LC Inband
to FSA
CPU
to ARB
2 X 40G
SOC 1
2 X 40G
SOC 2
2 X 40G
SOC 3
2 X 40G
SOC 4
2 X 40G
SOC 5
10
2 X 40G
SOC 6
11
12
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
23
EOBC
To Central Arbiters
Arbitration
Aggregator
FSA
CPU
x6
1G switch
Fabric ASIC
x6
LC Inband
to FSA
CPU
to ARB
1 X 100G
SOC 1
1 X 100G
SOC 2
1 X 100G
SOC 3
1 X 100G
SOC 4
1 X 100G
SOC 5
1 X 100G
SOC 6
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
24
EOBC
To Central Arbiters
FSA
CPU
Arbitration
Aggregator
x6
1G switch
Fabric ASIC
Fabric ASIC
x6
LC Inband
to FSA
CPU
to ARB
8 X 10G
SOC 1
3
2
8 X 10G
SOC 2
5
4
7
6
9
8
11
10
12
8 X 10G
SOC 3
13
14
15
16
17
18
19
21
20
22
8 X 10G
SOC 4
23
24
25
26
27
28
29
8 X 10G
SOC 5
31
30
32
33
34
35
36
8 X 10G
SOC 6
37
38
39
40
41
42
43
45
44
47
46
48
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
25
EOBC
To Central Arbiters
FSA
CPU
Arbitration
Aggregator
x 12
1G switch
Fabric ASIC
Fabric ASIC
x 12
LC Inband
to FSA
CPU
to ARB
2 X 40G
SOC 1
2 X 40G
SOC 2
2 X 40G
SOC 3
2 X 40G
SOC 4
2 X 40G
SOC 5
2 X 40G
SOC 6
10
11
12
2 X 40G
SOC 7
13
14
2 X 40G
SOC 8
15
16
2 X 40G
SOC 9
17
18
2 X 40G
SOC 10
19
20
2 X 40G
SOC 11
21
22
2 X 40G
SOC 12
23
24
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
26
EOBC
To Central Arbiters
FSA
CPU
Arbitration
Aggregator
x 12
1G switch
Fabric ASIC
Fabric ASIC
x 12
LC Inband
to FSA
CPU
to ARB
1 X 100G
SOC 1
1 X 100G
SOC 2
1 X 100G
SOC 3
1 X 100G
SOC 4
1 X 100G
SOC 5
1 X 100G
SOC 6
1 X 100G
SOC 7
1 X 100G
SOC 8
1 X 100G
SOC 9
1 X 100G
SOC 10
1 X 100G
SOC 11
1 X 100G
SOC 12
10
11
12
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
27
Fabric ASIC Local fabric that provides first/third stage of three-stage crossbar
(FSA CPU Fabric Services Accelerator, a linecard CPU with built-in application
acceleration for higher performance BFD, sampled Netflow, and other functions;
runs module-specific NX-OS processes and interfaces with Supervisor Engine
over EOBC)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
28
Module
Port Density
Optics
Bandwidth
M3 10G
48 x 1G/10G
SFP+
480G
M3 40G
24 x 40G
QSFP+
960G
N77-M348XP-23L
N77-M324FQ-25L
* Hardware capability
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
29
EOBC
To Central Arbiters
10G FSA
CPU
Arbitration
Aggregator
Fabric ASIC
to SOC 2
TCAM
Fabric ASIC
to SOC 1
TCAM
Buffer
Buffer
to FSA
CPU
to ARB
24 X 10G
SOC 1
3
2
5
4
7
6
9
8
11
10
12
13
14
24 X 10G
SOC 2
15
16
17
18
19
20
21
22
23
24
25
26
27
29
28
31
30
32
33
34
35
36
37
38
39
40
41
42
43
45
44
47
46
48
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
30
EOBC
To Central Arbiters
10G FSA
CPU
Arbitration
Aggregator
Fabric ASIC
to SOC 4
to SOC 3
TCAM
Buffer
to ARB
TCAM
6 X 40G
SOC 1
Fabric ASIC
TCAM
Buffer
6 X 40G
SOC 2
10
to SOC 1
TCAM
to FSA
Buffer CPU
Buffer
6 X 40G
SOC 3
11
12
13
14
15
16
x4
to FSA
CPU
6 X 40G
SOC 4
17
18
19
20
21
22
23
24
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
31
TCAM External FIB/ACL TCAM for storing routing and policy entries
Fabric ASIC Local fabric that provides first/third stage of three-stage crossbar
(FSA CPU Fabric Services Accelerator, a linecard CPU with built-in application
acceleration for higher performance BFD, sampled Netflow, and other functions;
runs module-specific NX-OS processes and interfaces with Supervisor Engine
over EOBC)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
32
EOBC
FSA CPU
Dual-Core
LC CPU
2GB
DRAM
Acceleration
Engines
I/O
2GB
DRAM
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
33
Ingress Modules
Spines
Spines
Spines
Spines
Fabrics
Destination
VQIs
10G 10G
40G
40G
100G
1 VQI 1 VQI
1 VQI
1 VQI
1 VQI
Egress Interfaces
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
34
General module interoperability rule is: +/-1 generation in same Virtual Device
Context (VDC)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
35
Module receiving packet from wire makes all forwarding decisions for that packet
Layer 2
Layer 3
VPC
MPLS
OTV
Fabric
Path
VXLAN
Table Sizes
M3
M3 size
M3 + F3
F3 size
F3
F3 size
F3 + M2
F3 size
F3 + F2E
F2E size
M2 + F2E + F3
* Hardware capability
Not supported
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
36
Interoperability Model
M1 + M2
M + F1
Proxy Forwarding
M + F2E
Proxy Forwarding
F2 + F2E
F2 + F2E + F3
M2 + F3
M3 + F3
M2 + F2/F2E + F3
NOT SUPPORTED
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
37
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
Supported Chassis
Per-fabric module
bandwidth
Max fabric
modules
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
39
Multistage Crossbar
Nexus 7000 / Nexus 7700 implement 3-stage crossbar switch fabric
2nd stage
Fabric Modules
Fabric Modules
1
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
Fabric
ASIC
550G
1.32T
220G
(4 x 55G)
110G
(2 x 55G)
1st stage
Fabric
ASIC
Fabric
ASIC
Fabric ASIC
Fabric ASIC
Ingress
Module
Egress
Module
3rd stage
1st stage
Fabric ASIC
Fabric ASIC
Ingress Module
Nexus 7000
Fabric ASIC
Egress Module
Nexus 7700
BRKARC-3470
Fabric ASIC
3rd stage
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
40
550Gbps
110Gbps
440Gbps
220Gbps
330Gbps
Fabric 2 Modules
Fabric
ASIC
Local Fabric
(240G)
Fabric
ASIC
Three fabrics:
Local Fabric
(480G)
Fabric
ASIC
Five fabrics:
Fabric
ASIC
Fabric
ASIC
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
41
Each I/O module has local fabric with 10 available fabric channels
I/O modules connect back-to-back via 8 fabric channels
Two fabric channels borrowed to connect supervisor engines
Sup Slot 1
Fabric
ASIC
Sup Slot 2
Fabric
ASIC
2 * 55G
fabric channels
M2/F3
Module 3
Fabric
ASIC
Fabric
ASIC
M2/F3
Module 4
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
42
1320Gbps
1100Gbps
880Gbps
660Gbps
440Gbps
220Gbps
One fabric:
Local Fabric
#1 (480G)
Fabric
ASICs
Local Fabric
#1 (960G)
Fabric
#2
Fabric
ASICs
Local Fabric
#1 (1.2T)
Fabric
#2
5
Fabric
ASICs
Six fabrics:
3
Fabric
ASICs
Five fabrics:
Fabric
ASICs
Three fabrics:
1
Fabric
#2
6
Fabric
ASICs
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
43
F3/M3
Module
Fabric
ASIC
Fabric
ASIC
1* 55G
fabric channel
Supervisor
Fabric ASIC
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
44
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
46
Nexus 7000 / Nexus 7700 use queuing policies and network-QOS policies to
define queuing and scheduling behavior
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
47
Ingress
VOQ buffer
Ingress Module
Egress
VOQ buffer
Crossbar
Fabric
Egress
port buffer
Egress Module
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
48
Crossbar
Fabric
Egress Module
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
49
F3 Buffer Sharing
All buffer
dedicated
per port
e1/2
e1/3
e1/4
e1/5
e1/6
e1/7
q1
q1
q1
q1
q1
q1
q1
q1
q2
q2
q2
q2
q2
q2
q2
q2
q3
q3
q3
q3
q3
q3
q3
q3
q4
q4
q4
q4
q4
q4
q4
q4
Dedicated
portion
e1/1
e1/2
e1/3
e1/4
e1/5
e1/6
e1/7
e1/8
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
q2
q3
q4
q1
Shared
portion
q2
q3
q4
Ingress
Buffer
Ingress
Buffer
F3 SOC
F3 SOC
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
50
Pipelined architecture also performs ingress and egress ACL, QOS, and Netflow
lookups, affecting final forwarding result
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
51
OTV / GRE
RACL/VACL/PACL
MPLS/VPLS/EoMPLS
Hardware Table
M-Series Modules
without Scale License
128K
128K
FIB TCAM
Netflow Table
1M
1M
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
52
L3 Engine
Layer 3 FIB
FIB TCAM
Egress Netflow
collection
Netflow
Table
Netflow
Ingress Netflow
collection
Egress ACL/QOS
classification
Policing
CL TCAM
Classification
(ACL/QOS)
Ingress policing
Egress lookup
pipeline
Egress policing
Ingress lookup
pipeline
Ingress ACL/QOS
classification
L2 Engine
MAC
Table
L2 Lookup (post-L3)
L2 Lookup (pre-L3)
Egress MAC lookups
Ingress Parser
HDR
From I/O Module
Replication Engines
Final Results
To I/O Module
Replication
Engines
BRKARC-3470
2016
53
RACL/VACL/PACL
MPLS/VPLS/EoMPLS
FabricPath forwarding
LISP
VXLAN
Hardware Table
F3 Capacity
64K
FIB TCAM
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
54
F3 Decision Engine
To Ingress
Buffer
Final Results
Egress MAC lookups
L2 Lookup (post-L3)
FIB
TCAM
Egress ACL/QOS
classification
Layer 3 FIB
Policing
Egress policing
Ingress policing
MAC
Table
CL
TCAM
Classification
(ACL/QOS/SNF)
Egress lookup
pipeline
Ingress lookup
pipeline
Ingress ACL/QOS/SNF
classification
L2 Lookup (pre-L3)
Ingress Parser
Decision Engine
PKT
HDR
From Ingress
Port Logic
F3 SOC
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
55
RACL/VACL/PACL
MPLS/VPLS/EoMPLS
LISP*
FabricPath forwarding*
VXLAN
Hardware Table
F3 Capacity
128K (384K*)
FIB TCAM
* Hardware capability
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
56
M3 Decision Engine
To Ingress
Buffer
Final Results
L2 Lookup (post-L3)
FIB
TCAM
Layer 3 FIB
CL
TCAM
Classification
(ACL/QOS/SNF)
MAC
Table
Policing
Egress lookup
pipeline
Ingress lookup
pipeline
L2 Lookup (pre-L3)
Ingress Parser
PKT
HDR
From Ingress
Port Logic
BRKARC-3470
Decision Engine
M3 SOC
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
57
Source and destination MAC lookups performed for each frame, based on
{VLAN,MAC} pairs
Source MAC lookup drives new learns and refreshes aging timers
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
58
Ingress frame
header
Decision Engine
HDR
MAC Table
V100,MAC D
MAC Table
Hash #2
Bank 1
Bank 2
16 pages
1
2
3
4
5
Hash result #1
selects row on each
page of Bank 1
V10,MAC B
V10,MAC B
V10,MAC B
V10,MAC B
V10,MAC B
6
V10,MAC B
7
V10,MAC B
8
V10,MAC B
9
V10,MACV10,MAC
B
A
10
V10,MAC B
11
V10,MAC
B
V68,MAC
B
12
V10,MAC
B
13
V10,MAC B
14
V10,MAC B
15
V10,MAC B
16
V100,MAC D
17
V10,MAC B
18
V10,MAC B
19
V10,MAC B
20
V10,MAC B
21
V10,MAC B
22
V10,MAC B
23
V10,MAC B
24
V10,MAC B
25
V10,MAC B
26
V10,MAC B
27
V10,MAC B
28
V10,MAC B
29
V10,MAC B
V30,MAC
30
V10,MAC
B C
31
V10,MAC B
32
V100,MAC D
V100,MAC
MATCH!
V22,MAC E
Hash result #2
selects row on each
page of Bank 2
V621,MAC F
BRKARC-3470
Compare (VLAN,MAC)
pair to selected row on
each page of each bank
2048 rows
MAC Table
Hash #1
L2 Lookup
To Ingress
Lookup Pipeline
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
59
Hash collisions can occur and 100% utilization may not be possible
Hash collisions more likely when many MACs are similar, e.g.:
Performance testers (all ports sending incrementing MAC addresses)
Virtualized environments (new VMs deployed en masse with incrementing MACs)
Homogenous server environments (all hosts using the same NICs from the same vendor
and all purchased at roughly the same time)
IP multicast deployments (many L2 group MACs which start with 01005E and likely to
have sequential destination IP group addresses)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
60
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
61
From Ingress
HDR
Lookup Pipeline
10.1.1.10
Ingress unicast IP
packet header
HIT!
Hit in FIB
returns result in
FIB DRAM
10.1.1.3
10.1.1.4
10.10.0.10
10.10.0.100
10.10.0.33
10.1.1.xx
10.1.2.xx
10.1.3.xx
10.10.100.xx
10.1.1.xx
10.100.1.xx
10.10.0.xx
10.100.1.xx
FIB DRAM
Forwarding
Engine
SIP + DIP +
SPort + DPort
10.1.1.2
FIB TCAM
IP FIB Lookup
Load-Sharing
Hash
Hash
Result
Offset
Return lookup
result
mod
Next-hop 4 (IF, MAC)
# nexthops
Adj Index
Adjacency index
identifies ADJ
block to use
BRKARC-3470
Result
To Ingress
Lookup
Pipeline
Adjacency Table
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
62
Classification Lookups
Matching packets
Some examples:
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
63
From Ingress/Egress
Lookup Pipeline
Packet header
HDR
HIT!
Decision Engine
Classification
Permit
xxxxxxx
xxxxxxx
| 10.1.2.100
| 10.2.2.2 ||xx
xx||xxx
xxx||xx
xxx
ACEs from
security ACL
(x = dont care)
Security ACL
Hit in CL TCAM
returns result in
CL SRAM
ip access-list example
permit ip any host 10.1.2.100
deny
ip any host 10.1.68.44
deny
ip any host 10.33.2.25
deny
ip any host 10.24.77.7
deny
ip any host 10.24.77.1
permit tcp any any eq 22
deny
tcp any any eq 23
deny
udp any any eq 514
permit tcp any any eq 80
permit udp any any eq 161
Deny
Deny
Deny
Deny
xxxxxxx
xxxxxxx || xxxxxxx
xxxxxxx || tcp
tcp || xxx
xxx || 80
22
Permit
Deny
Deny
Permit
Permit
CL TCAM
CL SRAM
Actions from
security ACL
To Ingress/
Egress Lookup
Pipeline
Fields to match:
src IP | dst IP | protocol | src port | dst port
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
64
From Ingress/Egress
Lookup Pipeline
Packet header
HDR
xxxxxxx
xxxxxxx||10.3.3.xx
10.2.2.xx||xx
xx||xxx
xxx||xxx
xx
xxxxxxx | 10.4.12.xx | xx | xxx | xxx
ACEs from QOS
policy ACLs
(x = dont care)
HIT!
Decision Engine
Classification
Policer ID 1
Hit in CL TCAM
returns result in
CL SRAM
Policer ID 1
Policer ID 1
Policer ID 1
10.0.1.xx
10.1.1.xx||xxxxxxx
xxxxxxx||udp
tcp | xxx | xxx
Remark DSCP 32
Remark DSCP 32
Remark DSCP 40
Remark DSCP 40
Remark IP Prec 3
Remark IP Prec 3
CL TCAM
CL SRAM
ip access-list police
permit ip any 10.3.3.0/24
permit ip any 10.4.12.0/24
permit ip any 10.10.1.0/24
permit ip any 10.20.2.0/24
ip access-list remark-dscp-32
permit udp 10.0.1.0/24 any
permit udp 10.1.1.0/24 any
ip access-list remark-dscp-40
permit tcp 10.0.1.0/24 any
permit tcp 10.1.1.0/24 any
ip access-list remark-prec-3
permit tcp any 10.2.3.0/24 eq 23
permit tcp any 10.5.5.0/24 eq 23
Actions from
QOS policy
To Ingress/
Egress Lookup
Pipeline
Return lookup result,
affecting final packet
handling (police or remark)
Fields to match:
src IP | dst IP | protocol | src port | dst port
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
65
Sampled Netflow: Accounts for M in N packets on interface using random packetbased sampling
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
66
M2 Netflow Table
Netflow Table actually consists of three hardware components in M2 forwarding
engine:
Netflow Hash Table: Contains Netflow Entry Keys and corresponding indexes
to Netflow Entry Table (speeds lookups and minimizes hash collisions)
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
67
M2 Netflow Lookup
Packet header
From Ingress/Egress
Lookup Pipeline
HDR
Forwarding Engine
Compare Flow Key
to indexed entry in
Netflow Entry Table
Netflow Lookup
Lookup
Key 1
1
2
Stats
Stats
Entry Key 2
Entry Key Index
Entry Key Index
Stats
MATCH!
SIP / DIP / L4 / etc.
Stats
Stats
Stats
Stats
Netflow
Statistics Table
2 pages
Entry Key
Entry
EntryKey
Key2 Index
Lookup
Entry
Key 2 MATCH!
Bank 1
512K rows
Entry Key 1
Netflow Table
Hash #2
Continue
ingress/egress
pipeline processing
To Ingress/
Egress Lookup
Pipeline
Key Index
Bank 2
Netflow Hash Table
Compare Entry
Keys to selected
row on each page
BRKARC-3470
68
NDE on M2 Modules
LC CPU builds NDE
packets (IP+UDP+NDE)
and sends them to Sup
via EOBC
via mgmt0
Supervisor Engine
Fabric Modules
Sup
CPU
Fabric
EOBC
LC CPU
periodically ages
out Netflow table
entries
LC
CPU
Fabric
Forwarding
Engine
VOQs
Data-plane traffic
traverses
forwarding engines
on each module
NF
Table
Hardware Flow
Creation
L3 Engine
Flow entries
created/updated
in Netflow table
(full or sampled)
L2 Engine
M2 Module
Replication
Engine
Port ASIC
LC
CPU
Fabric
LC
CPU
Fabric
Forwarding
Engine
VOQs
Forwarding
Engine
VOQs
NF
Table
NF
Table
Hardware Flow
Creation
L3 Engine
L2 Engine
M2 Module
Replication
Engine
Port ASIC
BRKARC-3470
Hardware Flow
Creation
L3 Engine
L2 Engine
M2 Module
Replication
Engine
Port ASIC
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
69
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
70
via mgmt0
Supervisor Engine
Fabric Modules
Sup
CPU
Fabric
EOBC
LC CPU builds
software Netflow
cache based on
samples and
periodically ages
out entries
DRAM
NF
Table
Fabric
Decision Engine
Rate Limiting
Samples subjected
to HW rate limiter
Sampler Table
Sampler marks M:N
random packets to
sample
NF
Table
Ingress
Buffer
Rate Limiting
Sampler Table
Classification
(ACL/QOS/SNF)
SOC
M3 Module
Fabric
NF
Table
FSA
CPU
Module
Inband
Decision Engine
Hardware
Forwarding
DRAM
FSA
CPU
Data-plane traffic
traverses decision
engine on each SOC
Module
Inband
Classification block
in Decision Engine
selects sampler
DRAM
FSA
CPU
Fabric
Module
Inband
Ingress
Buffer
Decision Engine
Rate Limiting
Sampler Table
Hardware
Forwarding
Classification
(ACL/QOS/SNF)
Ingress
Buffer
Hardware
Forwarding
Classification
(ACL/QOS/SNF)
SOC
SOC
M3 Module
F3 Module
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
71
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
M2 System Architecture
Supervisor Engine
Central Arbiter
Fabric Module 1
Fabric Module 2
Fabric Module 3
Fabric Module 4
Fabric Module 5
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Forwarding Engine 1
Virtual
Queuing
e1/1
SP
DWRR
e2/24
Egress Buffer
Ingress Buffer
VOQ 1
VOQ 4
RE 1
RE 4
L2 Engine
RE 1 RE 2
DWRR
Port
ASIC 1
RE 3
RE 4
RE 3
Port ASIC 1
Port ASIC 2
Module 1
Local
Ports
RE 2
Local
Ports
MAC
Table
VOQ 3
L3 Engine
VOQ 2
e2/24
VOQ 1
q1
q2
q3
q4
VOQ 4
NF
Table
VOQ 3
CL
TCAM
VOQ 2
FIB
TCAM
FE 2
SP
Port
ASIC 2
DWRR
Module 2
e1/1
BRKARC-3470
e2/24
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
73
M2 Packet Flow
Buffer credit
granted
Supervisor Engine
Credit
Ingress/
egress L3
lookups,
ACL/QOS,
Netflow
Ingress/egress
L2 lookups
and portchannel hash
result
Forwarding Engine 1
Fabric Module 5
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Fabric ASIC
Buffer on egress
based on destination
port + priority
Packet queued in
ingress buffer based on
source port + priority
Ingress Buffer
Packet headers
sent to FE
REHDR
1
PKT
Schedule and
transmit toward
destination port
RE 3
CRC, storm control, VLAN
translation, Linksec
decryption, etc.
Local
Ports
Receive packet
from wire
DWRR
Port
ASIC 1
DWRR
e2/24
Egress Buffer
VOQ 4
RE 1 RE 2
RE 2
SP
RE 4
L2 Engine
Ingress port
QOS based on
COS / DSCP
VOQ 3
e1/1
VOQ 2
Virtual
Queuing
VOQ 1
q1
Dst+Pri
q2
q3
q4
Credit
Receive
from fabric
FE 2
VOQ 4
Queue packet
descriptor in VOQ
(destination port +
priority)
VOQ 1
Module 1
Fabric Module 4
Req
e2/24
MAC
Table
Fabric Module 3
Fabric ASIC
NF
Table
L3 Engine
Fabric Module 2
VOQ 3
CL
TCAM
Central Arbiter
Fabric Module 1
VOQ 2
FIB
TCAM
Transmit
to fabric
RE 3
RE 4
Linksec encryption,
VLAN translation,
etc.
Port ASIC 1
Port ASIC 2
Local
Ports
Request buffer
credit for
destination port
+ priority
SP
Egress port
QOS based on
COS
Port
ASIC 2
DWRR
Module 2
PKT HDR
e1/1
BRKARC-3470
Transmit
packet on wire
e2/24
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
74
Supervisor Engine
Central Arbiter
Fabric Module 1
Fabric ASIC
Fabric ASIC
Fabric Module 2
Fabric Module 3
Fabric ASIC
Fabric ASIC
Fabric Module 4
Fabric ASIC
Fabric Module 5
Fabric Module 6
Fabric ASIC
Fabric ASIC
Fabric ASIC
Decision Engine
e2/9
Virtual
Queuing
q1
q2
q3
q4
e1/25
Layer 2 Lookups
Layer 3 Lookups
Classification for
ACL / QOS / SNF
MAC
Table
FIB
TCAM
SP
CL
TCAM
Ingress
Buffer
DWRR
e2/9
Ingress Parser
Module 2
e1/25
e2/9
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
75
F3 SOC 6
F3 SOC 5
F3 SOC 4
Port Logic
F3 SOC 3
Module 1
F3 SOC 2
F3 SOC 1
F3 SOC 6
F3 SOC 5
F3 SOC 4
F3 SOC 3
F3 SOC 2
F3 SOC 1
Port Logic
Egress Buffer
Buffer credit
granted
Supervisor Engine
Credit
Fabric Module 1
Transmit
to fabric
Request buffer
credit for
destination port
+ priority
Fabric ASIC
Fabric ASIC
Fabric Module 2
Central Arbiter
Fabric Module 3
Fabric ASIC
Fabric ASIC
Fabric Module 4
Fabric Module 5
Fabric ASIC
Fabric Module 6
Fabric ASIC
Fabric ASIC
Fabric ASIC
Req
e2/9
Queue packet
descriptor in VOQ
(destination port +
priority)
Virtual
Queuing
Ingress/egress L2 and L3
lookups, ACL/QOS
lookups, Netflow sampling
FIB
TCAM
SP
CL
TCAM
Ingress
Buffer
BRKARC-3470
Module 2
e2/9
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
76
F3 SOC 6
e1/25
Transmit on
wire
F3 SOC 5
PKT HDR
Port Logic
F3 SOC 4
Ingress packet
parsing
VLAN
translation,
etc.
Egress Buffer
F3 SOC 3
Schedule for
transmission
e2/9
F3 SOC 2
Receive packet
from wire
Port Logic
Packet headers
sent to DE
DWRR
Buffer on egress
based on destination
port + priority
F3 SOC 1
CRC, storm
control, VLAN
translation, etc.
Ingress
Parser
PKT HDR
F3 SOC 6
Module 1
e1/25
Layer 2 Lookups
Layer 3 Lookups
Classification for
ACL / QOS / SNF
MAC
Table
F3 SOC 5
F3 SOC 4
F3 SOC 3
F3 SOC 2
F3 SOC 1
Payload queued in
ingress buffer based
on COS / DSCP
q1
q2
Dst+Pri
q3 HDR
PKT
q4
Credit
Receive
from fabric
Decision Engine
Agenda
Chassis Architecture
Fabric Architecture
Hardware Forwarding
Packet Walks
Conclusion
Conclusion
Any questions?
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
78
ADJAdjacency
PACLPort ACL
PBRPolicy-Based Routing
QOSQuality of Service
COSClass of Service
DEDecision Engine
RACLRouter ACL
REReplication Engine
RURack Unit
SNFSampled Netflow
FEForwarding Engine
SOCSystem-on-chip/switch-on-chip
TCAMTernary CAM
VACLVLAN ACL
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
79
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
80
Table Topics
Related sessions
BRKARC-3470
2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
81
Thank you