The Gateway is a pipeline architecture, and each stage of the pipeline has a handoff queue in between. Due to the bursty nature of traffic through a Gateway, occasional drops are expected. However, consistent drops in certain queues indicate a capacity problem.

The following example shows output of the debug.py command to view handoff queue drops.

The output has been truncated to display only the first and last entries, for conciseness. You can exclude the -v option in the command to view the output in tabular format.

vcadmin@vcg1-example:~$ /opt/vc/bin/debug.py -v --handoff
{
  "handoffq": [
    {
      "deq": 1087872263, 
      "drops": 0, 
      "dummy": 81805328, 
      "enq": 1087872265, 
      "head": 81805328, 
      "lockfree": 0, 
      "next": 0, 
      "qlength": 2, 
      "qlimit": 2048, 
      "sleeping": 1, 
      "state": "UNMONITORED", 
      "tail": 81805328, 
      "wmark": 948, 
      "wokenup": 817162303
    }, 
    … 
    {
      "deq": -1801919228, 
      "drops": 0, 
      "dummy": 176733280, 
      "enq": -1801919223, 
      "head": 176733280, 
      "lockfree": 0, 
      "name": "glob_ls_0", 
      "next": 0, 
      "qlength": 5, 
      "qlimit": 1024, 
      "sleeping": 1, 
      "state": "UNMONITORED", 
      "tail": 176733280, 
      "wmark": 1024, 
      "wokenup": 1567885088
    }
  ]
}
vcadmin@vcg1-example:~$ 

You need to note the values of drops and wmark.

The drops column indicates that drops have occurred. The wmark column indicates the maximum depth a queue has ever reached, which indicates how close a Gateway has come to dropping packets. The impact and remediation for these depends largely on the queue being monitored.

You should monitor both the critical and non-critical queues.