tswtclmt - Time Sliding Window Three Conformance Level Meter
The Time Sliding Window Three Conformance level meter (tswtcl) meters a traffic stream and determines the conformance level of its packets.
Packets are deemed to belong to one of the three levels, Red, Yellow or Green, depending on the committed and peak rate.
The meter provides an estimate of the running average bandwidth. It takes into account burstiness and smoothes out its estimate to approximate the longer-term measured sending rate of the traffic stream.
The estimated bandwidth approximates the running average bandwidth of the traffic stream over a specific window (time interval). tswtcl estimates the average bandwidth using a time-based estimator. When a packet arrives for a class, tswtcl re-computes the average rate by using the rate in the last window (time interval) and the size of the arriving packet. The window is then slid to start at the current time (the packet arrival time). If the computed rate is less than the committed configuration parameter, the packet is deemed Green; else if the rate is less than the peak rate, it is Yellow; else Red. To avoid dropping multiple packets within a TCP window, tswtcl probabilistically assigns one of the three conformance level to the packet.
The tswtcl module exports global and per-class statistics through kstat:
module: tswtclmt instance: <action id> name: tswtclmt statistics class <action name> green_bits <number of bit in green> green_packets <number of packets in green> red_bits <number of bits in red> red_packets <number of packets in red> yellow_bits <number of bits in yellow> yellow_packets <number of packets in yellow>
See attributes(7) for descriptions of the following attributes:
RFC 2859, A Time Sliding Window Three Color Marker (TSWTCM) W. Fang, N. Seddigh, B. Nandy, The Internet Society, 2000.