Ieee8021qSocketPacketProcessor

Package: inet.linklayer.ieee8021q

Ieee8021qSocketPacketProcessor

simple module

C++ definition

Processes packets related to IEEE 802.1Q VLAN sockets. Delivers packets to registered sockets based on protocol and VLAN ID matching. Duplicates packets for delivery to interested sockets and supports "stealing" packets to prevent them from being forwarded. Enables applications to communicate directly with specific VLANs and implements protocol handlers for VLAN-specific traffic. Works in conjunction with ~Ieee8021qSocketTable to provide a socket-based API for VLAN communication.

<b>See also:</b> Ieee8021qSocketCommandProcessor

Inheritance diagram

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

Extends

Name Type Description
PacketPusherBase simple module

Base module for various packet pusher modules.

Parameters

Name Type Default value Description
displayStringTextFormat string "processed %p pk (%l)"

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

socketTableModule string

Properties

Name Value Description
class Ieee8021qSocketPacketProcessor
display i=block/cogwheel

Gates

Name Direction Size Description
in input
out output

Source code

//
// Processes packets related to IEEE 802.1Q VLAN sockets. Delivers packets to
// registered sockets based on protocol and VLAN ID matching. Duplicates packets
// for delivery to interested sockets and supports "stealing" packets to prevent
// them from being forwarded. Enables applications to communicate directly with
// specific VLANs and implements protocol handlers for VLAN-specific traffic.
// Works in conjunction with ~Ieee8021qSocketTable to provide a socket-based API
// for VLAN communication.
//
// @see Ieee8021qSocketCommandProcessor
//
simple Ieee8021qSocketPacketProcessor extends PacketPusherBase like IPacketFlow
{
    parameters:
        @class(Ieee8021qSocketPacketProcessor);
        @display("i=block/cogwheel");
        string socketTableModule;
}

File: src/inet/linklayer/ieee8021q/Ieee8021qSocketPacketProcessor.ned