PriorityScheduler¶
Package: inet.queueing.scheduler
simple module PriorityScheduler
This scheduler pulls packets from the first non-empty among its connected packet providers.
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Queue module that gives the PAUSE frames a higher priority, and can be parametrized with an IPacketQueue for serving the data frames. |
|
compound module |
Queue module that gives the PAUSE frames a higher priority, and using Random Early Detection algorithm on data frames, and can be parametrized with an IPacketQueue for serving the data frames. |
|
compound module |
(no description) |
|
compound module |
Implements a prioritized queue system for IEEE 802.11 MAC frames. Uses a classifier to separate incoming packets into three queues: management frames (highest priority), multicast frames (medium priority), and unicast frames (lowest priority). A priority scheduler then selects packets from these queues in order of priority. |
|
compound module |
Implements the IEEE 802.1Q time aware shaper. |
|
compound module |
This is an example queue that can be used in interfaces of DS core and edge nodes to support the AFxy (RFC 2597) and EF (RFC 3246) PHBs. |
|
compound module |
Implements a priority queue with multiple inner queues each having its own periodic gate for packet selection and an optional shared memory buffer. |
|
compound module |
Implements a priority queue with multiple inner queues and an optional shared memory buffer. |
|
compound module |
Combines a classifier, a scheduler, and several traffic shapers into a single packet shaper. Packets are classified into one of the traffic shapers, and the scheduler prioritizes among them. |
Extends¶
Name |
Type |
Description |
|---|---|---|
simple module |
Base module for various packet scheduler modules. Derived modules must implement a single packet scheduler function which determines the index of the input gate for the pulled packet. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
displayStringTextFormat |
string |
“scheduled %p pk (%l)” |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
reverseOrder |
bool |
false |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
PriorityScheduler |
|
display |
i=block/join |
Gates¶
Name |
Direction |
Size |
Description |
|---|---|---|---|
in [ ] |
input |
||
out |
output |
Signals¶
Name |
Type |
Unit |
Description |
|---|---|---|---|
packetPulled |
Statistics¶
Name |
Title |
Source |
Record |
Unit |
Interpolation Mode |
Description |
|---|---|---|---|---|---|---|
dataRate |
data rate |
throughput(packetPulled) |
vector |
bps |
linear |
the statistical value is the data rate of the scheduled packets |
packetLengths |
packet lengths |
packetLength(packetPulled) |
sum,histogram,vector |
b |
none |
the statistical value is the length of the scheduled packet |
packets |
packets |
packetPulled |
count |
pk |
the statistical value is the scheduled packet |
Source code¶
//
// This scheduler pulls packets from the first non-empty among its connected
// packet providers.
//
simple PriorityScheduler extends PacketSchedulerBase like IPacketScheduler
{
parameters:
@class(PriorityScheduler);
}