When network congestion, the port cannot send data immediately to prevent loss of data, the device will send the data is temporarily stored in the data in the buffer.
The chip stores packets in fixed-sized cells, all cells are 208 bytes and all packets user at least one cell.The first cell used by a packet contains 144 bytes of packet data and 64 bytes of buffering related data.
All cells used by a packet after the first cell contain 208 bytes of packet data.
2. Memory Spaces ：
The cell data buffer is divided into fixed and shared spaces.
Fixed space in accordance with the port queue division, reserved in advance, other ports cannot take up the space, when the port congestion occurs, it will occupy fixed space first, shared space will be used when the fixed space is no longer available. The fixed space is allocated using a static threshold. Fixed space allocation will not be too big, otherwise it will cause waste of resources.
The shared space used by all ports and priority groups when the fixed space is run out. When the shared space is used up, the packet is discarded. If a queue don‘t have to store packet,the others queue will take up this queue resource.For a queue,all of ports transmit packets will first come first served,if run out of the resource,the came packets will be dropped.The shared space can use dynamic or static threshold configuration at the logical level of the queue.
For the unicast queue and multicast queue，we have different configuration to deal with share space：
static mode: Need configure.
dynamic mode : This is the default configuration.
disable queue 0 dynamic-shared
root@PicOS-OVS$ovs-vsctl set-egress-mc-queue-dynamic 0 false
dynamic mode ：
The dynamic mode both of multicast and unicast queue can configure the dynamic threshold ratio .
Configure queue 0 dynamic threshold ratio 50%
root@PicOS-OVS$ovs-vsctl set-egress-shared-queue-ratio 0 50
Check the configuration result
admin@PicOS-OVS$ovs-vsctl show-egress-shared-queue-ratio Egress shared queue state: queue uc enable mc enable shared ratio (uc) shared ratio (mc) ---------------------------------------------------------------------- 0 true true 33% 33% 1 true true 33% 33% 2 true true 33% 33% 3 true true 33% 33% 4 true true 33% 33% 5 true true 33% 33% 6 true true 33% 33% 7 true true 33% 33%
Clear the ratio configuration . Clear dynamic mode configuration
root@PicOS-OVS$ovs-vsctl list pica8 _uuid : fef8cb42-7f42-4a1b-b089-95bf49fd7811 combinate_actions_enable: false cos_map_enable : false disable_extend_group: false ecmp_symmetric_hash : false ............ ............ root@PicOS-OVS$ovs-vsctl clear pica8 fef8cb42-7f42-4a1b-b089-95bf49fd7811 egress-mc-queue-dynamic root@PicOS-OVS$ovs-vsctl clear pica8 742a4dda-db77-474f-b702-1012141ecd5a egress_shared_queue_ratio
For the maximum shared-area ratio for a queue, the percentage values 0 to 100 are divided into 10 rages.The table below shows the effective values that correspond to the configured values of ratio-value.
Now,all of Trident and Trident+ platforms just support eight （1-67）effective ratio value for multicast egress queue.Platform 7312,ratio of 33~100 take the same effect.
As show above: send packets from port1 and port2 to port3 in 10G speed in queue 0, and port3 will be in congestion.
For the multicast flow,If flow control is enabled on port1 and port2 and configure static threshold,the packets also perhaps will be dropped in port 3 egress queue,because at the egress shared-ratio is small and ingress can't meet condition of sending pause frame.
So,if users exist this environment,in the this condition,we suggest users configure dynamic mode. port1 and port2 will send out pause frame before port3 queue limit is reached, and absorb burst packets to avoid packet drop.
What's more,if pause frame are not be responsed,uc traffic will be discarded on ingress port,whether mc traffic are discarded on egress port.
1.support buffer managment platforms:
2.Unicast queue traffic
push_mpls,push_l2mpls,gre,l2gre,vxlan,multitable flow,TTP unicast flow.
multicast queue can absorb 266 cells,other platforms can absorb about 300 cells.