A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
Loading...
Searching...
No Matches
mq-queue-disc.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2016 Universita' degli Studi di Napoli Federico II
3
*
4
* SPDX-License-Identifier: GPL-2.0-only
5
*
6
* Authors: Pasquale Imputato <p.imputato@gmail.com>
7
* Stefano Avallone <stavallo@unina.it>
8
*/
9
10
#ifndef MQ_QUEUE_DISC_H
11
#define MQ_QUEUE_DISC_H
12
13
#include "
queue-disc.h
"
14
15
namespace
ns3
16
{
17
18
/**
19
* \ingroup traffic-control
20
*
21
* mq is a classful multi-queue aware dummy scheduler. It has as many child
22
* queue discs as the number of device transmission queues. Packets are
23
* directly enqueued into and dequeued from child queue discs.
24
*/
25
class
MqQueueDisc
:
public
QueueDisc
26
{
27
public
:
28
/**
29
* \brief Get the type ID.
30
* \return the object TypeId
31
*/
32
static
TypeId
GetTypeId
();
33
/**
34
* \brief MqQueueDisc constructor
35
*/
36
MqQueueDisc
();
37
38
~MqQueueDisc
()
override
;
39
40
/**
41
* \brief Return the wake mode adopted by this queue disc.
42
* \return the wake mode adopted by this queue disc.
43
*/
44
WakeMode
GetWakeMode
()
const override
;
45
46
private
:
47
bool
DoEnqueue
(
Ptr<QueueDiscItem>
item)
override
;
48
Ptr<QueueDiscItem>
DoDequeue
()
override
;
49
Ptr<const QueueDiscItem>
DoPeek
()
override
;
50
bool
CheckConfig
()
override
;
51
void
InitializeParams
()
override
;
52
};
53
54
}
// namespace ns3
55
56
#endif
/* MQ_QUEUE_DISC_H */
ns3::MqQueueDisc
mq is a classful multi-queue aware dummy scheduler.
Definition
mq-queue-disc.h:26
ns3::MqQueueDisc::DoDequeue
Ptr< QueueDiscItem > DoDequeue() override
This function actually extracts a packet from the queue disc.
Definition
mq-queue-disc.cc:55
ns3::MqQueueDisc::DoPeek
Ptr< const QueueDiscItem > DoPeek() override
Return a copy of the next packet the queue disc will extract.
Definition
mq-queue-disc.cc:61
ns3::MqQueueDisc::InitializeParams
void InitializeParams() override
Initialize parameters (if any) before the first packet is enqueued.
Definition
mq-queue-disc.cc:87
ns3::MqQueueDisc::MqQueueDisc
MqQueueDisc()
MqQueueDisc constructor.
Definition
mq-queue-disc.cc:31
ns3::MqQueueDisc::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
mq-queue-disc.cc:22
ns3::MqQueueDisc::DoEnqueue
bool DoEnqueue(Ptr< QueueDiscItem > item) override
This function actually enqueues a packet into the queue disc.
Definition
mq-queue-disc.cc:49
ns3::MqQueueDisc::CheckConfig
bool CheckConfig() override
Check whether the current configuration is correct.
Definition
mq-queue-disc.cc:67
ns3::MqQueueDisc::~MqQueueDisc
~MqQueueDisc() override
Definition
mq-queue-disc.cc:37
ns3::MqQueueDisc::GetWakeMode
WakeMode GetWakeMode() const override
Return the wake mode adopted by this queue disc.
Definition
mq-queue-disc.cc:43
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition
mpi-test-fixtures.h:37
ns3::QueueDisc
QueueDisc is an abstract base class providing the interface and implementing the operations common to...
Definition
queue-disc.h:173
ns3::QueueDisc::WakeMode
WakeMode
Used to determine whether the queue disc itself or its children must be activated when a netdevice wa...
Definition
queue-disc.h:492
ns3::TypeId
a unique identifier for an interface.
Definition
type-id.h:48
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
queue-disc.h
src
traffic-control
model
mq-queue-disc.h
Generated on Fri Nov 8 2024 13:59:06 for ns-3 by
1.11.0