Dynamic queue length thresholds for multiple loss priorities
Buffer management schemes are needed in shared-memory packet switches to regulate the sharing of memory among different output port queues and among traffic classes with different loss priorities. Earlier we proposed a single-priority scheme called Dynamic Threshold (DT), in which the maximum permissible queue length is proportional to the unused buffering in the switch. A queue whose length equals or exceeds the current threshold value may accept no new arrivals. In this paper, we propose, analyze, and simulate several ways of incorporating loss priorities into the DT scheme. The analysis models sources as deterministic fluids. We determine how each scheme allocates buffers among the competing ports and loss priority classes under overload conditions. We also note how this buffer allocation induces an allocation of bandwidth among the loss priority classes at each port. We find that minor variations in the DT control law can produce dramatically different resource allocations. Based on this study, we recommend the scheme we call OWA which gives some buffers and bandwidth to every priority class at every port. Scheme OWA has tunable parameters, which we give rules of thumb for setting. Another scheme, called AWA is also a good choice. It has an allocation philosophy more akin to strict priority and hence is not tunable.
queue length thresholds loss priorities buffer management packet switching congestion control selective discarding shared memory space priorities