17 #ifndef HH_SENF_Ext_NetEmu_Modules_REDQueue_ 18 #define HH_SENF_Ext_NetEmu_Modules_REDQueue_ 1 36 typedef std::pair<std::uint32_t,std::uint8_t>
limit_t;
38 REDQueue(std::uint32_t _limit = 16384, std::uint8_t lowThreshPrecentage = 25);
40 void limit(std::uint32_t
bytes, std::uint8_t lowThreshPrecentage = 25);
41 limit_t
limit()
const;
48 unsigned v_peek(
unsigned maxSize)
const;
54 unsigned v_size()
const;
58 std::queue<senf::Packet> queue_;
59 std::uint32_t queueLimit_;
60 std::uint32_t lowThresh_;
61 std::uint8_t lowThreshPrecentage_;
62 std::uint32_t queueSize_;
63 mutable std::uint32_t frontPktSize_;
64 std::uint32_t packetsDroppedTotal_;
65 std::uint32_t packetsDroppedLast_;
std::pair< std::uint32_t, std::uint8_t > limit_t
std::uint32_t dropped() const
REDQueue(std::uint32_t _limit=16384, std::uint8_t lowThreshPrecentage=25)
PacketParserBase::size_type bytes(Parser const &p)
std::unique_ptr< QueueingAlgorithm > ptr
static ppi::QueueingAlgorithm::ptr create()