Information Technology Reference
In-Depth Information
Queue Optimization
The purpose of queue optimization is to minimize packet loss. This most often occurs on a
router with a large fan-out of BGP sessions. The root cause is the stream of acknowledgments
that are received from a large number of peers simultaneously. The router is unable to
process all the TCP ACKs, causing the input queues to overflow, resulting in packet loss.
This packet loss causes TCP retransmissions and loss of peer group synchronization. Peer
group synchronization is discussed in the section “Peer Groups.” A better understanding of
queue optimization first requires an understanding of what queues are involved in the
packet reception process.
Packet Reception Process
The packet reception process for BGP packets has three major components:
Input hold queue —This is not an actual queue, but a counter that is assigned to an
interface. When a packet bound for the processor is received on an interface, the input
hold queue is incremented by 1. After that packet has been processed, the input hold
queue is decremented to reflect that the packet is no longer in the queue. Each
input queue has a maximum queue depth.
Selective Packet Discard (SPD) Headroom —SPD Headroom is a counter that
allows the input hold queues to exceed their configured maximum size. The total value
of the SPD Headroom is shared by all the interfaces. This headroom is used to store
high-priority packets, such as routing control traffic, above and beyond the input hold
queue. The SPD feature is discussed in detail in the section “Selective Packet Discard.”
System buffers —The system buffers store the incoming packets being sent to the
process level. A packet destined for the processor is removed from the interface buffer
and is put in the system buffer. These buffers can be seen with the show buffers
command.
The packet reception process is as follows:
A BGP packet is received on an interface.
1
The switching process requests a system buffer.
2
a. If no system buffer is available, the packet is discarded, and the input drop
counter is incremented.
b. If a system buffer is available, the input hold queue is checked. If the queue is
full, the packet's priority is checked.
c. If the packet has IP Precedence 6 or is an L2 Keepalive, the SPD Headroom is
checked. If there is room, the packet is kept, and the input hold queue is incre-
mented. If the SPD Headroom is full, the packet is dropped, and the input drop
counter is incremented.
Search WWH ::




Custom Search