Build a set of QueueDisc objects. More...
#include "traffic-control-helper.h"
Public Types | |
typedef std::vector< uint16_t > | ClassIdList |
Container type for Class IDs. More... | |
typedef std::vector< uint16_t > | HandleList |
Container type for Handlers. More... | |
Public Member Functions | |
TrafficControlHelper () | |
Create a TrafficControlHelper to make life easier when creating QueueDisc objects. More... | |
virtual | ~TrafficControlHelper () |
uint16_t | AddChildQueueDisc (uint16_t handle, uint16_t classId, std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue(), std::string n09="", const AttributeValue &v09=EmptyAttributeValue(), std::string n10="", const AttributeValue &v10=EmptyAttributeValue(), std::string n11="", const AttributeValue &v11=EmptyAttributeValue(), std::string n12="", const AttributeValue &v12=EmptyAttributeValue(), std::string n13="", const AttributeValue &v13=EmptyAttributeValue(), std::string n14="", const AttributeValue &v14=EmptyAttributeValue(), std::string n15="", const AttributeValue &v15=EmptyAttributeValue()) |
Helper function used to attach a child queue disc (of the given type and with the given attributes) to a given class (included in the queue disc having the given handle). More... | |
HandleList | AddChildQueueDiscs (uint16_t handle, const ClassIdList &classes, std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue(), std::string n09="", const AttributeValue &v09=EmptyAttributeValue(), std::string n10="", const AttributeValue &v10=EmptyAttributeValue(), std::string n11="", const AttributeValue &v11=EmptyAttributeValue(), std::string n12="", const AttributeValue &v12=EmptyAttributeValue(), std::string n13="", const AttributeValue &v13=EmptyAttributeValue(), std::string n14="", const AttributeValue &v14=EmptyAttributeValue(), std::string n15="", const AttributeValue &v15=EmptyAttributeValue()) |
Helper function used to attach a child queue disc (of the given type and with the given attributes) to each of the given classes (included in the queue disc having the given handle). More... | |
void | AddInternalQueues (uint16_t handle, uint16_t count, std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue()) |
Helper function used to add the given number of internal queues (of the given type and with the given attributes) to the queue disc having the given handle. More... | |
void | AddPacketFilter (uint16_t handle, std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue()) |
Helper function used to add a packet filter (of the given type and with the given attributes) to the queue disc having the given handle. More... | |
ClassIdList | AddQueueDiscClasses (uint16_t handle, uint16_t count, std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue()) |
Helper function used to add the given number of queue disc classes (of the given type and with the given attributes) to the queue disc having the given handle. More... | |
QueueDiscContainer | Install (NetDeviceContainer c) |
QueueDiscContainer | Install (Ptr< NetDevice > d) |
void | SetQueueLimits (std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue()) |
Helper function used to add a queue limits object to the transmission queues of the devices. More... | |
uint16_t | SetRootQueueDisc (std::string type, std::string n01="", const AttributeValue &v01=EmptyAttributeValue(), std::string n02="", const AttributeValue &v02=EmptyAttributeValue(), std::string n03="", const AttributeValue &v03=EmptyAttributeValue(), std::string n04="", const AttributeValue &v04=EmptyAttributeValue(), std::string n05="", const AttributeValue &v05=EmptyAttributeValue(), std::string n06="", const AttributeValue &v06=EmptyAttributeValue(), std::string n07="", const AttributeValue &v07=EmptyAttributeValue(), std::string n08="", const AttributeValue &v08=EmptyAttributeValue(), std::string n09="", const AttributeValue &v09=EmptyAttributeValue(), std::string n10="", const AttributeValue &v10=EmptyAttributeValue(), std::string n11="", const AttributeValue &v11=EmptyAttributeValue(), std::string n12="", const AttributeValue &v12=EmptyAttributeValue(), std::string n13="", const AttributeValue &v13=EmptyAttributeValue(), std::string n14="", const AttributeValue &v14=EmptyAttributeValue(), std::string n15="", const AttributeValue &v15=EmptyAttributeValue()) |
Helper function used to set a root queue disc of the given type and with the given attributes. More... | |
void | Uninstall (NetDeviceContainer c) |
void | Uninstall (Ptr< NetDevice > d) |
Static Public Member Functions | |
static TrafficControlHelper | Default (void) |
Private Attributes | |
std::vector< QueueDiscFactory > | m_queueDiscFactory |
QueueDisc factory, stores the configuration of all the queue discs. More... | |
std::vector< Ptr< QueueDisc > > | m_queueDiscs |
Vector of all the created queue discs. More... | |
ObjectFactory | m_queueLimitsFactory |
Factory to create a queue limits object. More... | |
Build a set of QueueDisc objects.
This class can help to create QueueDisc objects and map them to the corresponding devices. This map is stored at the Traffic Control layer.
Definition at line 120 of file traffic-control-helper.h.
typedef std::vector<uint16_t> ns3::TrafficControlHelper::ClassIdList |
Container type for Class IDs.
Definition at line 263 of file traffic-control-helper.h.
typedef std::vector<uint16_t> ns3::TrafficControlHelper::HandleList |
Container type for Handlers.
Definition at line 360 of file traffic-control-helper.h.
ns3::TrafficControlHelper::TrafficControlHelper | ( | ) |
Create a TrafficControlHelper to make life easier when creating QueueDisc objects.
Definition at line 105 of file traffic-control-helper.cc.
|
inlinevirtual |
Definition at line 128 of file traffic-control-helper.h.
uint16_t ns3::TrafficControlHelper::AddChildQueueDisc | ( | uint16_t | handle, |
uint16_t | classId, | ||
std::string | type, | ||
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () , |
||
std::string | n09 = "" , |
||
const AttributeValue & | v09 = EmptyAttributeValue () , |
||
std::string | n10 = "" , |
||
const AttributeValue & | v10 = EmptyAttributeValue () , |
||
std::string | n11 = "" , |
||
const AttributeValue & | v11 = EmptyAttributeValue () , |
||
std::string | n12 = "" , |
||
const AttributeValue & | v12 = EmptyAttributeValue () , |
||
std::string | n13 = "" , |
||
const AttributeValue & | v13 = EmptyAttributeValue () , |
||
std::string | n14 = "" , |
||
const AttributeValue & | v14 = EmptyAttributeValue () , |
||
std::string | n15 = "" , |
||
const AttributeValue & | v15 = EmptyAttributeValue () |
||
) |
Helper function used to attach a child queue disc (of the given type and with the given attributes) to a given class (included in the queue disc having the given handle).
handle | the handle of the parent queue disc |
classId | the class ID of the class to attach the queue disc to |
type | the type of queue disc |
n01 | the name of the attribute to set on the queue disc |
v01 | the value of the attribute to set on the queue disc |
n02 | the name of the attribute to set on the queue disc |
v02 | the value of the attribute to set on the queue disc |
n03 | the name of the attribute to set on the queue disc |
v03 | the value of the attribute to set on the queue disc |
n04 | the name of the attribute to set on the queue disc |
v04 | the value of the attribute to set on the queue disc |
n05 | the name of the attribute to set on the queue disc |
v05 | the value of the attribute to set on the queue disc |
n06 | the name of the attribute to set on the queue disc |
v06 | the value of the attribute to set on the queue disc |
n07 | the name of the attribute to set on the queue disc |
v07 | the value of the attribute to set on the queue disc |
n08 | the name of the attribute to set on the queue disc |
v08 | the value of the attribute to set on the queue disc |
n09 | the name of the attribute to set on the queue disc |
v09 | the value of the attribute to set on the queue disc |
n10 | the name of the attribute to set on the queue disc |
v10 | the value of the attribute to set on the queue disc |
n11 | the name of the attribute to set on the queue disc |
v11 | the value of the attribute to set on the queue disc |
n12 | the name of the attribute to set on the queue disc |
v12 | the value of the attribute to set on the queue disc |
n13 | the name of the attribute to set on the queue disc |
v13 | the value of the attribute to set on the queue disc |
n14 | the name of the attribute to set on the queue disc |
v14 | the value of the attribute to set on the queue disc |
n15 | the name of the attribute to set on the queue disc |
v15 | the value of the attribute to set on the queue disc |
Definition at line 256 of file traffic-control-helper.cc.
References m_queueDiscFactory, NS_ABORT_MSG_IF, and ns3::ObjectFactory::SetTypeId().
Referenced by AddChildQueueDiscs().
TrafficControlHelper::HandleList ns3::TrafficControlHelper::AddChildQueueDiscs | ( | uint16_t | handle, |
const ClassIdList & | classes, | ||
std::string | type, | ||
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () , |
||
std::string | n09 = "" , |
||
const AttributeValue & | v09 = EmptyAttributeValue () , |
||
std::string | n10 = "" , |
||
const AttributeValue & | v10 = EmptyAttributeValue () , |
||
std::string | n11 = "" , |
||
const AttributeValue & | v11 = EmptyAttributeValue () , |
||
std::string | n12 = "" , |
||
const AttributeValue & | v12 = EmptyAttributeValue () , |
||
std::string | n13 = "" , |
||
const AttributeValue & | v13 = EmptyAttributeValue () , |
||
std::string | n14 = "" , |
||
const AttributeValue & | v14 = EmptyAttributeValue () , |
||
std::string | n15 = "" , |
||
const AttributeValue & | v15 = EmptyAttributeValue () |
||
) |
Helper function used to attach a child queue disc (of the given type and with the given attributes) to each of the given classes (included in the queue disc having the given handle).
handle | the handle of the parent queue disc |
classes | the class IDs of the classes to attach a queue disc to |
type | the type of queue disc |
n01 | the name of the attribute to set on the queue disc |
v01 | the value of the attribute to set on the queue disc |
n02 | the name of the attribute to set on the queue disc |
v02 | the value of the attribute to set on the queue disc |
n03 | the name of the attribute to set on the queue disc |
v03 | the value of the attribute to set on the queue disc |
n04 | the name of the attribute to set on the queue disc |
v04 | the value of the attribute to set on the queue disc |
n05 | the name of the attribute to set on the queue disc |
v05 | the value of the attribute to set on the queue disc |
n06 | the name of the attribute to set on the queue disc |
v06 | the value of the attribute to set on the queue disc |
n07 | the name of the attribute to set on the queue disc |
v07 | the value of the attribute to set on the queue disc |
n08 | the name of the attribute to set on the queue disc |
v08 | the value of the attribute to set on the queue disc |
n09 | the name of the attribute to set on the queue disc |
v09 | the value of the attribute to set on the queue disc |
n10 | the name of the attribute to set on the queue disc |
v10 | the value of the attribute to set on the queue disc |
n11 | the name of the attribute to set on the queue disc |
v11 | the value of the attribute to set on the queue disc |
n12 | the name of the attribute to set on the queue disc |
v12 | the value of the attribute to set on the queue disc |
n13 | the name of the attribute to set on the queue disc |
v13 | the value of the attribute to set on the queue disc |
n14 | the name of the attribute to set on the queue disc |
v14 | the value of the attribute to set on the queue disc |
n15 | the name of the attribute to set on the queue disc |
v15 | the value of the attribute to set on the queue disc |
Definition at line 302 of file traffic-control-helper.cc.
References AddChildQueueDisc(), and list.
void ns3::TrafficControlHelper::AddInternalQueues | ( | uint16_t | handle, |
uint16_t | count, | ||
std::string | type, | ||
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () |
||
) |
Helper function used to add the given number of internal queues (of the given type and with the given attributes) to the queue disc having the given handle.
handle | the handle of the parent queue disc |
count | the number of queues to add |
type | the type of queue |
n01 | the name of the attribute to set on the queue |
v01 | the value of the attribute to set on the queue |
n02 | the name of the attribute to set on the queue |
v02 | the value of the attribute to set on the queue |
n03 | the name of the attribute to set on the queue |
v03 | the value of the attribute to set on the queue |
n04 | the name of the attribute to set on the queue |
v04 | the value of the attribute to set on the queue |
n05 | the name of the attribute to set on the queue |
v05 | the value of the attribute to set on the queue |
n06 | the name of the attribute to set on the queue |
v06 | the value of the attribute to set on the queue |
n07 | the name of the attribute to set on the queue |
v07 | the value of the attribute to set on the queue |
n08 | the name of the attribute to set on the queue |
v08 | the value of the attribute to set on the queue |
Definition at line 161 of file traffic-control-helper.cc.
References m_queueDiscFactory, NS_ABORT_MSG_IF, and ns3::ObjectFactory::SetTypeId().
Referenced by Default(), AdaptiveRedQueueDiscTestCase::RunAdaptiveRedDiscTest(), and PieQueueDiscTestCase::RunPieTest().
void ns3::TrafficControlHelper::AddPacketFilter | ( | uint16_t | handle, |
std::string | type, | ||
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () |
||
) |
Helper function used to add a packet filter (of the given type and with the given attributes) to the queue disc having the given handle.
handle | the handle of the parent queue disc |
type | the type of packet filter |
n01 | the name of the attribute to set on the packet filter |
v01 | the value of the attribute to set on the packet filter |
n02 | the name of the attribute to set on the packet filter |
v02 | the value of the attribute to set on the packet filter |
n03 | the name of the attribute to set on the packet filter |
v03 | the value of the attribute to set on the packet filter |
n04 | the name of the attribute to set on the packet filter |
v04 | the value of the attribute to set on the packet filter |
n05 | the name of the attribute to set on the packet filter |
v05 | the value of the attribute to set on the packet filter |
n06 | the name of the attribute to set on the packet filter |
v06 | the value of the attribute to set on the packet filter |
n07 | the name of the attribute to set on the packet filter |
v07 | the value of the attribute to set on the packet filter |
n08 | the name of the attribute to set on the packet filter |
v08 | the value of the attribute to set on the packet filter |
Definition at line 192 of file traffic-control-helper.cc.
References m_queueDiscFactory, NS_ABORT_MSG_IF, and ns3::ObjectFactory::SetTypeId().
TrafficControlHelper::ClassIdList ns3::TrafficControlHelper::AddQueueDiscClasses | ( | uint16_t | handle, |
uint16_t | count, | ||
std::string | type, | ||
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () |
||
) |
Helper function used to add the given number of queue disc classes (of the given type and with the given attributes) to the queue disc having the given handle.
handle | the handle of the parent queue disc |
count | the number of queue disc classes to add |
type | the type of queue disc class |
n01 | the name of the attribute to set on the queue disc class |
v01 | the value of the attribute to set on the queue disc class |
n02 | the name of the attribute to set on the queue disc class |
v02 | the value of the attribute to set on the queue disc class |
n03 | the name of the attribute to set on the queue disc class |
v03 | the value of the attribute to set on the queue disc class |
n04 | the name of the attribute to set on the queue disc class |
v04 | the value of the attribute to set on the queue disc class |
n05 | the name of the attribute to set on the queue disc class |
v05 | the value of the attribute to set on the queue disc class |
n06 | the name of the attribute to set on the queue disc class |
v06 | the value of the attribute to set on the queue disc class |
n07 | the name of the attribute to set on the queue disc class |
v07 | the value of the attribute to set on the queue disc class |
n08 | the name of the attribute to set on the queue disc class |
v08 | the value of the attribute to set on the queue disc class |
Definition at line 220 of file traffic-control-helper.cc.
References list, m_queueDiscFactory, NS_ABORT_MSG_IF, and ns3::ObjectFactory::SetTypeId().
|
static |
The default configuration is a PfifoFastQueueDisc with three internal queues of type DropTailQueue and size 1000 packets.
Definition at line 110 of file traffic-control-helper.cc.
References AddInternalQueues(), and SetRootQueueDisc().
Referenced by ns3::Ipv6AddressHelper::Assign(), and ns3::Ipv4AddressHelper::Assign().
QueueDiscContainer ns3::TrafficControlHelper::Install | ( | NetDeviceContainer | c | ) |
c | set of devices |
This method creates a QueueDisc object of the type and with the attributes configured by TrafficControlHelper::SetQueueDisc for each device in the container. Then, stores the mapping between a device and the associated queue disc into the traffic control layer of the corresponding node. This method creates the queue discs (along with their packet filters, internal queues, classes) configured with the methods provided by this class and installs them on each device in the given container. Additionally, if configured, a queue limits object is installed on each transmission queue of the devices.
Definition at line 401 of file traffic-control-helper.cc.
References ns3::QueueDiscContainer::Add(), ns3::NetDeviceContainer::Begin(), and ns3::NetDeviceContainer::End().
Referenced by ns3::Ipv6AddressHelper::Assign(), ns3::Ipv4AddressHelper::Assign(), UdpSocketImplTest::DoRun(), AdaptiveRedQueueDiscTestCase::RunAdaptiveRedDiscTest(), and PieQueueDiscTestCase::RunPieTest().
QueueDiscContainer ns3::TrafficControlHelper::Install | ( | Ptr< NetDevice > | d | ) |
d | device |
This method creates the queue discs (along with their packet filters, internal queues, classes) configured with the methods provided by this class and installs them on the given device. Additionally, if configured, a queue limits object is installed on each transmission queue of the device.
Definition at line 354 of file traffic-control-helper.cc.
References ns3::QueueDiscContainer::Add(), ns3::ObjectFactory::Create(), ns3::ObjectFactory::GetTypeId(), ns3::TypeId::GetUid(), m_queueDiscFactory, m_queueDiscs, m_queueLimitsFactory, NS_ASSERT, and ns3::QueueDisc::SetNetDevice().
void ns3::TrafficControlHelper::SetQueueLimits | ( | std::string | type, |
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () |
||
) |
Helper function used to add a queue limits object to the transmission queues of the devices.
type | the type of queue |
n01 | the name of the attribute to set on the queue limits object |
v01 | the value of the attribute to set on the queue limits object |
n02 | the name of the attribute to set on the queue limits object |
v02 | the value of the attribute to set on the queue limits object |
n03 | the name of the attribute to set on the queue limits object |
v03 | the value of the attribute to set on the queue limits object |
n04 | the name of the attribute to set on the queue limits object |
v04 | the value of the attribute to set on the queue limits object |
n05 | the name of the attribute to set on the queue limits object |
v05 | the value of the attribute to set on the queue limits object |
n06 | the name of the attribute to set on the queue limits object |
v06 | the value of the attribute to set on the queue limits object |
n07 | the name of the attribute to set on the queue limits object |
v07 | the value of the attribute to set on the queue limits object |
n08 | the name of the attribute to set on the queue limits object |
v08 | the value of the attribute to set on the queue limits object |
Definition at line 332 of file traffic-control-helper.cc.
References m_queueLimitsFactory, ns3::ObjectFactory::Set(), and ns3::ObjectFactory::SetTypeId().
uint16_t ns3::TrafficControlHelper::SetRootQueueDisc | ( | std::string | type, |
std::string | n01 = "" , |
||
const AttributeValue & | v01 = EmptyAttributeValue () , |
||
std::string | n02 = "" , |
||
const AttributeValue & | v02 = EmptyAttributeValue () , |
||
std::string | n03 = "" , |
||
const AttributeValue & | v03 = EmptyAttributeValue () , |
||
std::string | n04 = "" , |
||
const AttributeValue & | v04 = EmptyAttributeValue () , |
||
std::string | n05 = "" , |
||
const AttributeValue & | v05 = EmptyAttributeValue () , |
||
std::string | n06 = "" , |
||
const AttributeValue & | v06 = EmptyAttributeValue () , |
||
std::string | n07 = "" , |
||
const AttributeValue & | v07 = EmptyAttributeValue () , |
||
std::string | n08 = "" , |
||
const AttributeValue & | v08 = EmptyAttributeValue () , |
||
std::string | n09 = "" , |
||
const AttributeValue & | v09 = EmptyAttributeValue () , |
||
std::string | n10 = "" , |
||
const AttributeValue & | v10 = EmptyAttributeValue () , |
||
std::string | n11 = "" , |
||
const AttributeValue & | v11 = EmptyAttributeValue () , |
||
std::string | n12 = "" , |
||
const AttributeValue & | v12 = EmptyAttributeValue () , |
||
std::string | n13 = "" , |
||
const AttributeValue & | v13 = EmptyAttributeValue () , |
||
std::string | n14 = "" , |
||
const AttributeValue & | v14 = EmptyAttributeValue () , |
||
std::string | n15 = "" , |
||
const AttributeValue & | v15 = EmptyAttributeValue () |
||
) |
Helper function used to set a root queue disc of the given type and with the given attributes.
To set the InternalQueueList, PacketFilterList and ChildQueueDiscList attributes, use the AddInternalQueue, AddPacketFilter and AddChildQueueDisc methods.
type | the type of queue disc |
n01 | the name of the attribute to set on the queue disc |
v01 | the value of the attribute to set on the queue disc |
n02 | the name of the attribute to set on the queue disc |
v02 | the value of the attribute to set on the queue disc |
n03 | the name of the attribute to set on the queue disc |
v03 | the value of the attribute to set on the queue disc |
n04 | the name of the attribute to set on the queue disc |
v04 | the value of the attribute to set on the queue disc |
n05 | the name of the attribute to set on the queue disc |
v05 | the value of the attribute to set on the queue disc |
n06 | the name of the attribute to set on the queue disc |
v06 | the value of the attribute to set on the queue disc |
n07 | the name of the attribute to set on the queue disc |
v07 | the value of the attribute to set on the queue disc |
n08 | the name of the attribute to set on the queue disc |
v08 | the value of the attribute to set on the queue disc |
n09 | the name of the attribute to set on the queue disc |
v09 | the value of the attribute to set on the queue disc |
n10 | the name of the attribute to set on the queue disc |
v10 | the value of the attribute to set on the queue disc |
n11 | the name of the attribute to set on the queue disc |
v11 | the value of the attribute to set on the queue disc |
n12 | the name of the attribute to set on the queue disc |
v12 | the value of the attribute to set on the queue disc |
n13 | the name of the attribute to set on the queue disc |
v13 | the value of the attribute to set on the queue disc |
n14 | the name of the attribute to set on the queue disc |
v14 | the value of the attribute to set on the queue disc |
n15 | the name of the attribute to set on the queue disc |
v15 | the value of the attribute to set on the queue disc |
Definition at line 119 of file traffic-control-helper.cc.
References m_queueDiscFactory, NS_ABORT_MSG_UNLESS, and ns3::ObjectFactory::SetTypeId().
Referenced by Default(), AdaptiveRedQueueDiscTestCase::RunAdaptiveRedDiscTest(), and PieQueueDiscTestCase::RunPieTest().
void ns3::TrafficControlHelper::Uninstall | ( | NetDeviceContainer | c | ) |
c | set of devices |
This method removes the root queue discs (and associated filters, classes and queues) installed on the given devices.
Definition at line 432 of file traffic-control-helper.cc.
References ns3::NetDeviceContainer::Begin(), and ns3::NetDeviceContainer::End().
Referenced by Ns3TcpCwndTestCase2::DoRun().
d | device |
This method removes the root queue disc (and associated filters, classes and queues) installed on the given device.
Definition at line 414 of file traffic-control-helper.cc.
References NS_ASSERT.
|
private |
QueueDisc factory, stores the configuration of all the queue discs.
Definition at line 497 of file traffic-control-helper.h.
Referenced by AddChildQueueDisc(), AddInternalQueues(), AddPacketFilter(), AddQueueDiscClasses(), Install(), and SetRootQueueDisc().
Vector of all the created queue discs.
Definition at line 499 of file traffic-control-helper.h.
Referenced by Install().
|
private |
Factory to create a queue limits object.
Definition at line 501 of file traffic-control-helper.h.
Referenced by Install(), and SetQueueLimits().