Juniper QFX10002-36Q

picture of 2RJ switch

Introduced in March 2015. This is not merchant silicon. Packet memory is external to the switch chip. This switch is (your pick)

ModelSw ASICs ------------------- Pick one -------------------
QFX10002-36Q 3 144 ports of 10 Gb/s 36 ports of 40 Gb/s 12 ports of 100 Gb/s
QFX10002-72Q 6 288 ports of 10 Gb/s 72 ports of 40 Gb/s 24 ports of 100 Gb/s

A detailed architecture paper

Thanks to Rafal Jan Szarecki from Juniper wrote me in August 2015 with this info:

QFX1000x use VoQ architecture.

The memory is 4GB per Q5 asic. Each asic drives 12 QSFP+/QSFP28, so it is exposed to 480Gbps traffic at most (Q5 can do slightly more). Memory manager allows to allocate 100ms worth of buffer per port, if there is available memory. When QSFP28 (100GE) is used 2 other adjacent QSFP sockets are offline.

I suspect this is the same information that is on page 4 of the architecture paper cited above. At 100 Gb/s, 100 mS of buffer is 1250 MBytes. The switch data sheet says about queuing architecture:

Virtual Output Queue (VOQ)

The QFX10000 switches support a Virtual Output Queue (VOQ)- based architecture designed for very large deployments. VOQ refers to a queue on the egress port that is maintained by the ingress PFE. With VOQ architecture, packets are queued and dropped on ingress during congestion with no head-of-line blocking.

Juniper has a blog post that explains in some detail how their VoQ works but does not explain queue size management.

The main theme for this page is How much buffer is there for a single flow? We would need to know the switch policies for dynamic buffer assignment. If the switch does not have dynamic buffers, the result will be disappointing. 100 output ports and 8 queues per port, would mean 100 x 8 = 800 port-queues. If 12 ports are sharing 4 GBytes and there are 800 port-queues per input port, there is on average about a 0.5 Mbyte per queue.

Juniper does not use fixed allocations. An extract from their 890 page Traffic Management Feature Guide explains the details. Ports are permitted to claim up to 100 mS of buffer space as long as the 4 GByte pool remains below 90 percent full. The limit is on the total across all queues on each port. But queue allocation shares are adjustable and it is possible to put the entire allocation into the best effort queue. So the packet queue sizes are 1.25 GB for 100 Gb/s ports, 125 MB for 10 Gb/s ports.