Ieee8022LlcSocketIo

Package: inet.applications.ieee8022

simple module Ieee8022LlcSocketIo

Provides IEEE 802.2 LLC socket handling for generic applications.

inet.applications.ieee8022.Ieee8022LlcSocketIoIeee8022LlcSocketIosimple

Usage diagram

Inheritance diagram

Used in compound modules

Name

Type

Description

Ieee8022LlcApp

compound module

Generates traffic as an IEEE 802.2 LLC application. The traffic source and traffic sink modules can be built from queueing model elements.

Extends

Name

Type

Description

SimpleModule

simple module

Base module for all INET simple modules.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“rcvd: {numReceived} pks\nsent: {numSent} pks”

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

interfaceTableModule

string

interface

string

“”

localAddress

string

“”

remoteAddress

string

“”

localSap

int

-1

remoteSap

int

-1

stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finishes

stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

Properties

Name

Value

Description

class

Ieee8022LlcSocketIo

display

i=block/socket

lifecycleSupport

Gates

Name

Direction

Size

Description

trafficIn

input

trafficOut

output

socketIn

input

socketOut

output

Signals

Name

Type

Unit

Description

packetReceived

inet::Packet

packetSent

inet::Packet

Statistics

Name

Title

Source

Record

Unit

Interpolation Mode

Description

packetReceived

packets received

packetReceived

count,”sum(packetBytes)”,”vector(packetBytes)”

none

packetSent

packets sent

packetSent

count,”sum(packetBytes)”,”vector(packetBytes)”

none

Source code

//
// Provides IEEE 802.2 LLC socket handling for generic applications.
//
simple Ieee8022LlcSocketIo extends SimpleModule
{
    parameters:
        @class(Ieee8022LlcSocketIo);
        string interfaceTableModule;
        string interface = default("");
        string localAddress = default("");
        string remoteAddress = default("");
        int localSap = default(-1);
        int remoteSap = default(-1);
        double stopOperationExtraTime @unit(s) = default(-1s);    // Extra time after lifecycle stop operation finishes
        double stopOperationTimeout @unit(s) = default(2s);    // Timeout value for lifecycle stop operation
        @lifecycleSupport();
        displayStringTextFormat = default("rcvd: {numReceived} pks\nsent: {numSent} pks");
        @display("i=block/socket");
        @signal[packetSent](type=inet::Packet);
        @signal[packetReceived](type=inet::Packet);
        @statistic[packetSent](title="packets sent"; source=packetSent; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
        @statistic[packetReceived](title="packets received"; source=packetReceived; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
    gates:
        input trafficIn;
        output trafficOut;
        input socketIn;
        output socketOut;
}

File: src/inet/applications/ieee8022/Ieee8022LlcSocketIo.ned