Catalyst Unified Data Access Plane (UADP) SwitchesUADP is a family of ASIC based switches hailing to 2013 with version 1.0. Cisco presents these ASICs as poster children for the value add of Cisco's craft over capabilities of merchant silicon. Here unified refers to inclusion of hardware to run the CAPWAP protocol and enhance the speed of WLAN controllers. One of the features of UADP is that it provides for a high speed interconnect to build stacks of switches. As such, it seems to have been designed with the access layer specifically in mind. There are five versions of UADP: 1.0, 1.1, 2.0, 2.0 XL and 3.0. This is highlighted in UADP family white paper. Earlier Catalyst switches that preceded the UADP ASICs (3750, 2960) are listed in the Other shared memory section. These switches are very old. UADP partitions packet memory with the largest chunk (64 percent) in a dynamic pool for burst absorption. A large chunk (25 percent) is reserved for the stacking ports with the balance dedicated to ports as a minimum allocation. A Cisco white paper refers the reader to cisco.com for further details -- without any guidance where said details might be found. Perhaps the reference is Cisco Catalyst 9000 Switching Platforms: QoS and Queuing White Paper.
Update August 2019The following diagram appeared in BRKARC-2035 in 2019. It did not appear in earlier renditions of the slides for that session. This 32-port 100 Gb/s switch uses two UADP 3 ASICS -- each with dual cores. Within each ASIC, memory is shared between the cores. Note Bene the ASIC-to-ASIC internconnect at the top of the diagram. Operating this interconnect requires 25 percent of the buffer capacity. Quoting from Qos and Queuing:
Table 4 in the QoS and Queuing PaperEmphasis added for buffer rows.
Extract from table 3 in the QoS and Queuing Paper for UADP-3.0Looking only at UADP-3.0 to avoid clutter
The numbers in the table are buffer units. These are the default settings; they can be increased by 12X. The buffer units for UADP-1.0 are 256 bytes and probably the same for UADP-3.0. A single port can use up to Soft max from the shared pool if other ports are not contending for the shared resource. Since it is shared, memory is insufficient for more than a few ports to claim the maximum. The buffer allocation per port will be reduced from soft max down to hard max as the shared pool nears depletion. Q0 is the highest prority queue and is used for things like BGP keep alive and spanning tree messages. User traffic is expected in Q1 and that is the focus here. It is possible to complicate matters by turning on additional queues. To see the maximum burst absorption for a single port at extreme (12X) configuration expressed in bytes:
|