PcpClassifier¶
Package: inet.linklayer.ieee8021q
simple module PcpClassifier
Classifies packets based on the attached PCP value [0, 7]. The
PCP is determined by a PcpReq or a PcpInd or both. The output gate index is
the ith value in the pcpToGateIndex parameter.
Inheritance diagram¶
Extends¶
Name |
Type |
Description |
|---|---|---|
simple module |
Base module for various packet classifier modules. Derived modules must implement a single packet classifier function which determines the index of the output gate for the next pushed packet. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
displayStringTextFormat |
string |
“classified %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 |
|
mode |
string |
“both” |
|
pcpToGateIndex |
object |
Specifies the gate index for all PCP values in ascending order |
|
defaultGateIndex |
int |
0 |
Default gate index if no PCP is found |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
PcpClassifier |
|
display |
i=block/classifier |
Gates¶
Name |
Direction |
Size |
Description |
|---|---|---|---|
in |
input |
||
out [ ] |
output |
Signals¶
Name |
Type |
Unit |
Description |
|---|---|---|---|
packetPushed |
Statistics¶
Name |
Title |
Source |
Record |
Unit |
Interpolation Mode |
Description |
|---|---|---|---|---|---|---|
dataRate |
data rate |
throughput(packetPushed) |
vector |
bps |
linear |
the statistical value is the data rate of the classified packets |
packetLengths |
packet lengths |
packetLength(packetPushed) |
sum,histogram,vector |
b |
none |
the statistical value is the length of the classified packet |
packets |
packets |
packetPushed |
count |
pk |
the statistical value is the classified packet |
Source code¶
//
// Classifies packets based on the attached PCP value [0, 7]. The
// PCP is determined by a `PcpReq` or a `PcpInd` or both. The output gate index is
// the ith value in the `pcpToGateIndex` parameter.
//
simple PcpClassifier extends PacketClassifierBase like IPacketClassifier
{
parameters:
string mode @enum("req", "ind", "both") = default("both");
object pcpToGateIndex; // Specifies the gate index for all PCP values in ascending order
int defaultGateIndex = default(0); // Default gate index if no PCP is found
@class(PcpClassifier);
}