Ieee8021qSocketTable

Package: inet.linklayer.ieee8021q

Ieee8021qSocketTable

simple module

C++ definition

Maintains a table of IEEE 802.1Q VLAN sockets. Each socket entry contains a socket ID, protocol, VLAN ID, and a flag indicating whether to steal packets. The module provides functionality to add, remove, and find sockets based on protocol and VLAN ID criteria. It enables applications to communicate through specific VLANs by associating sockets with VLAN tags, facilitating the routing of packets to the appropriate protocol handlers.

<b>See also:</b> Ieee8021qSocketCommandProcessor, Ieee8021qSocketPacketProcessor

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Used in compound modules

Name Type Description
Ieee8021qProtocol compound module

Implements the IEEE 802.1Q protocol encapsulation/decapsulation. It also provides socket support so applications can use the protocol directly.

Extends

Name Type Description
SimpleModule simple module

Base module for all INET simple modules.

Parameters

Name Type Default value Description
displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

Properties

Name Value Description
class Ieee8021qSocketTable
display i=block/table

Source code

//
// Maintains a table of IEEE 802.1Q VLAN sockets. Each socket entry contains a
// socket ID, protocol, VLAN ID, and a flag indicating whether to steal packets.
// The module provides functionality to add, remove, and find sockets based on
// protocol and VLAN ID criteria. It enables applications to communicate through
// specific VLANs by associating sockets with VLAN tags, facilitating the
// routing of packets to the appropriate protocol handlers.
//
// @see Ieee8021qSocketCommandProcessor, Ieee8021qSocketPacketProcessor
//
simple Ieee8021qSocketTable extends SimpleModule
{
    parameters:
        @class(Ieee8021qSocketTable);
        @display("i=block/table");
}
File: src/inet/linklayer/ieee8021q/Ieee8021qSocketTable.ned