Commit Graph

13 Commits

Author SHA1 Message Date
Stefano Avallone
59cd4d5f55 traffic-control: (fixes #2751) Ensure queue discs keep correct statistics 2017-09-14 18:12:19 +02:00
Stefano Avallone
b20e29694b various: Fix scanning python bindings 2017-03-08 18:02:13 +01:00
Stefano Avallone
6fef34be47 network: Convert Queue into a template class 2017-03-08 18:01:29 +01:00
Stefano Avallone
f88f7dc007 traffic-control: Fix declaration of a few methods of the QueueDisc class 2017-01-29 15:27:05 +01:00
Stefano Avallone
5459ab04b7 various: Rename NetDeviceQueueInterface::GetTxQueuesN to match ns-3 style 2016-07-14 15:59:56 +02:00
Stefano Avallone
83ed5e7bb6 network: Support socket priorities 2016-07-14 15:59:55 +02:00
Stefano Avallone
f3c4596867 traffic-control: (fixes #2284) Never requeue a packet sent to a netdevice
This change allows us to more closely follow the Linux behavior. A packet
is only requeued when the device queue is stopped before we attempt to send
the packet to the device. Thus, a packet sent to a netdevice is never requeued.
It turns out that packets can only be requeued if the underlying device is
tc-aware and multi-queue. The PointToPointNetDevice code is updated accordingly.
2016-05-19 00:14:07 +02:00
Stefano Avallone
500ef9f4a6 traffic-control: (fixes #2389) Internal queues need to notify their queue disc of packet drops 2016-05-11 12:10:02 +02:00
Stefano Avallone
93bf31ac56 traffic-control: (fixes #2384) Child queue discs need to notify their parent queue disc of packet drops 2016-05-11 12:09:47 +02:00
Tommaso Pecorella
889ab088a3 traffic-control: Remove unused variable 2016-03-09 09:26:35 -08:00
Stefano Avallone
7f1ed835ee traffic-control: CheckConfig () in non-debug builds 2016-03-08 22:24:54 -08:00
Stefano Avallone
69e882e74b internet: Defer the addition of the IP header until the packet is extracted from the queue disc
When a packet is passed to the Traffic Control layer, the IPv{4,6} header has not
been added yet. It will be added when the packet is dequeued from the queue disc.
2016-03-08 10:45:02 -08:00
Stefano Avallone
bedc89eea9 traffic-control: Add the QueueDisc base class
QueueDisc is a base class providing the interface and implementing
the operations common to all the queueing disciplines. Child classes
need to implement the methods used to enqueue a packet (DoEnqueue),
dequeue a single packet (DoDequeue), get a copy of the next packet
to extract (DoPeek), plus methods to classify enqueued packets in
case they manage multiple queues internally.
2016-03-08 10:44:13 -08:00