Packages

Packages

inet.applications.contract

Name Type Description
IApp module interface (no description)
INetPerfMeterApp module interface (no description)

inet.applications.dhcp

Name Type Description
DhcpClient simple module

Implements the DHCP client protocol. DHCP (Dynamic Host Configuration Protocol), described in RFC 2131, provides configuration parameters to Internet hosts. Requires UDP.

DhcpServer simple module

Implements the DHCP server protocol. DHCP (Dynamic Host Configuration Protocol), described in RFC 2131, provides configuration parameters to Internet hosts. Requires UDP.

inet.applications.ethernet

Name Type Description
EtherAppClient simple module

A simple traffic generator for the Ethernet model and the 802.11 model, and generally for any L2 model that accepts Ieee802SapReq tags on the packets. It generates packets containing EtherAppReq chunks. It should be connected directly to EtherEncap/Ieee8022Llc.

EtherAppServer simple module

Server side of the EtherAppCliend model -- generates packets containing EtherAppResp chunks with the number of bytes requested by the client in corresponding EtherAppReq. It should be connected directly to EtherEncap/Ieee8022Llc module.

EtherTrafGen simple module

A simple traffic generator for the Ethernet model and the 802.11 model, and generally for any L2 model that accepts Ieee802SapReq tag on packets. It should be connected directly to EtherEncap module.

inet.applications.generic

Name Type Description
IIpvxTrafficGenerator module interface

Module interface for modules that generate traffic directly over IP. Compatible with both Ipv4 and Ipv6.

IpvxTrafGen simple module

Sends IP or IPv6 datagrams to the given address at the given sendInterval. The sendInterval can be a constant or a random value (e.g. exponential(1)). If the destAddresses parameter contains more than one address, one of them is randomly for each packet. An address may be given in the dotted decimal notation (or, for IPv6, in the usual notation with colons), or with the module name. (The L3AddressResolver class is used to resolve the address.) To disable the model, set destAddresses to "".

IpvxTrafSink simple module

Consumes and prints packets received from the IP module. Compatible with both Ipv4 and Ipv6.

inet.applications.httptools.browser

Name Type Description
HttpBrowser simple module

The component is derived from HttpBrowseBase and is intended to be used with the INET frameworks StandardHost and TCP/IP stack modeling.

HttpBrowserDirect simple module

This component is the direct message passing version of the browser simulation component. It is derived from HttpBrowserBase. Use this component with the HttpDirectHost container module.

inet.applications.httptools.common

Name Type Description
IHttpDirectApp module interface

Interface for HTTP server and browser models that communicate directly, without lower layer protocols. This module is intended for use with the HttpDirectHost module and plugs in as a tcpApp.

inet.applications.httptools.configurator

Name Type Description
HttpController simple module

A controller object for OMNeT++ simulations which use the HttpTools browser and server components. A single controller must exist at the scenario level in each simulation.

inet.applications.httptools.server

Name Type Description
HttpServer simple module

A Web server module for OMNeT++ simulations. This module is intended for use with the INET StandardHost module and plugs in as a tcpApp. The INET TCP/IP stack modeling is used for transport. See the INET documentation for more details.

HttpServerDirect simple module

A Web server module for OMNeT++ simulations and direct message passing between modules. This module is intended for use with the HttpDirectHost module and plugs in as a tcpApp.

HttpServerDirectEvilA simple module

Demonstrates subclassing the server to create a custom site. This site is an attacker -- a puppetmaster -- which serves HTML pages containing attack code. In this case, we are simulating JavaScript attack code which prompts the unsuspecting browser to request a number of images from a victim site. Delays are specified to simulate hiding the attack from the browser user by use of JavaScript timeouts or similar mechanisms. The generateBody virtual function is redefined to create a page containing the attack code.

HttpServerDirectEvilB simple module

Demonstrates subclassing the server to create a custom site. This site is an attacker -- a puppetmaster -- which serves HTML pages containing attack code. In this case, we are simulating JavaScript attack code which prompts the unsuspecting browser to issue a number of requests for non-existing resources (random URLS) to the victim site. Delays are specified to simulate hiding the attack from the browser user by use of JavaScript timeouts or similar mechanisms. The generateBody virtual function is redefined to create a page containing the attack code.

HttpServerEvilA simple module

Demonstrates subclassing the server to create a custom site. This site is an attacker -- a puppetmaster -- which serves HTML pages containing attack code. In this case, we are simulating JavaScript attack code which prompts the unsuspecting browser to request a number of images from a victim site. Delays are specified to simulate hiding the attack from the browser user by use of JavaScript timeouts or similar mechanisms. The generateBody virtual function is redefined to create a page containing the attack code.

HttpServerEvilB simple module

HttpServerEvilB

inet.applications.netperfmeter

Name Type Description
NetPerfMeter simple module

Application model for comparing the performance of various transport protocols.

NetPerfMeterHost compound module

NetPerfMeter application host.

inet.applications.packetdrill

Name Type Description
PacketDrillApp simple module (no description)

inet.applications.pingapp

Name Type Description
PingApp simple module

To disable send, specify empty destAddr.

inet.applications.rtpapp

Name Type Description
RtpApplication simple module

The RtpApplication is just a very simple sample for an application which uses RTP. It acts as a sender if the parameter fileName is set, and as a receiver if the parameter is empty.

inet.applications.sctpapp

Name Type Description
SctpClient simple module

Client app for SCTP-based request-reply protocols. Handles a single session (and SCTP connection) at a time.

SctpNatPeer simple module

Accepts any number of incoming TCP connections, and sends back the messages that arrive on them, The lengths of the messages are multiplied by echoFactor before sending them back (echoFactor=1 will result in sending back the same message unmodified.) The reply can also be delayed by a constant time (echoDelay parameter).

SctpNatServer simple module (no description)
SctpPeer simple module (no description)
SctpServer simple module

Server app for SCTP-based request-reply protocols. Handles a single session (and SCTP connection) at a time.

inet.applications.tcpapp

Name Type Description
TcpBasicClientApp simple module

Client for a generic request-response style protocol over TCP. May be used as a rough model of HTTP or FTP users. Compatible with both IPv4 (Ipv4) and IPv6 (Ipv6).

TcpEchoApp simple module

Accepts any number of incoming TCP connections, and sends back the messages that arrive on them, The lengths of the messages are multiplied by echoFactor before sending them back (echoFactor=1 will result in sending back the same message unmodified.) The reply can also be delayed by a constant time (echoDelay parameter).

TcpEchoAppThread simple module

Thread for TcpEchoApp

TcpGenericServerApp simple module

Generic server application for modelling TCP-based request-reply style protocols or applications.

TcpServerHostApp simple module

This module hosts TCP-based server applications. It dynamically creates and launches a new "thread" object for each incoming connection.

TcpSessionApp simple module

Single-connection TCP application: it opens a connection, sends the given number of bytes, and closes. Sending may be one-off, or may be controlled by a "script" which is a series of (time, number of bytes) pairs. May act either as client or as server. Compatible with both Ipv4 (Ipv4) and IPv6 (Ipv6).

TcpSinkApp compound module

Accepts any number of incoming TCP connections, and discards whatever arrives on them. Compatible with both Ipv4 and Ipv6.

TcpSinkAppThread simple module (no description)
TelnetApp simple module

Models Telnet sessions with a specific user behaviour. The server app should be TcpGenericServerApp. Compatible with both Ipv4 and Ipv6.

inet.applications.tunapp

Name Type Description
TunLoopbackApp simple module (no description)
TunnelApp simple module (no description)

inet.applications.udpapp

Name Type Description
UdpBasicApp simple module

Sends UDP packets to the given IP address at the given interval. Compatible with both Ipv4 and Ipv6.

UdpBasicBurst simple module

Sends UDP packets to the given IP address(es) in bursts, or acts as a packet sink. Compatible with both IPv4 (Ipv4) and IPv6 (Ipv6).

UdpEchoApp simple module

Listens on an UDP port, and sends back each received packet to its sender. Note: when used together with UdpBasicApp, UdpBasicApp's "received packet lifetime" statistic will record round-trip times.

UdpSink simple module

Consumes and prints packets received from the Udp module.

UdpVideoStreamClient simple module

Video streaming client.

UdpVideoStreamServer simple module

Video stream server. To be used with UdpVideoStreamClient.

inet.applications.voip

Name Type Description
SimpleVoipReceiver simple module

Receives a VoIP stream generated by a SimpleVoipSender, and records statistics. The most important statistic is MOS (Mean Opinion Score, a value between 1 and 5, representing a human user's view of the voice quality), computed using the E Model defined in the ITU-T G.107 standard. The parameters starting with "emodel_" correspond to the parameters of the E model.

SimpleVoipSender simple module

Implements a simple VoIP source. It is a constant bitrate source, with talkspurt support added. Packets do not contain actual voice data. Connection setup/teardown is not modelled. The peer must be a SimpleVoipReceiver.

inet.applications.voipstream

Name Type Description
VoipStreamReceiver simple module

VoipStreamReceiver listens on an UDP port, and expects to receive VoIP packets on it. The received voice is then saved into a result audio file that can be compared with the original for further evaluation. VoIP packets are numbered, and out-of-order packets are discarded (the corresponding voice interval will be recorded as silence into the file). VoIP packets that miss their deadlines will similarly be discarded. It is assumed that the audio is played back with delay (by default 20ms), which allows some jitter for the incoming packets. The resulting audio file is closed when the simulation completes (i.e. in the OMNeT++ finish() function). Only one voice session ("call") may be underway at a time.

VoipStreamSender simple module

VoipStreamSender accepts an audio file and a destination IP address/port as input, and will transmit the file's contents as voice traffic over UDP n times (by default once). For transmission, the audio is resampled at the specified frequency and depth, and encoded with the specified codec at the specified bit rate, and chopped into packets that each carry specified number of milliseconds of voice. Those values come from module parameters. Packets that are all silence (all samples are below a given threshold in absolute value) are transmitted as special "silence" packets. The module does not simulate any particular VoIP protocol (e.g. Rtp), but instead accepts a "header size" parameter that can be set accordingly.

inet.common

Name Type Description
IHook module interface

Generic module that can be inserted in some points in the model

LayeredProtocolBase simple module

Module base for different layered protocols.

MessageDispatcher simple module

This module connects multiple applications, protocols and interfaces with each other and automatically dispatches messages and packets between them. It allows many different configurations from layered architectures where message dispatchers separate different communication layers to centralized architectures where a single message dispatcher is connected to all components.

inet.common.geometry.common

Name Type Description
IGeographicCoordinateSystem module interface

This module interface is used by geographic coordinate systems. A geographic coordinate system maps scene coordinates to geographic coordinates, and vice versa.

OsgGeographicCoordinateSystem simple module

This module provides an accurate geographic coordinate system using the built-in OSG API.

SimpleGeographicCoordinateSystem simple module

This module provides a very simple and less accurate geographic coordinate system without using OSG. It doesn't support orientation.

inet.common.lifecycle

Name Type Description
NodeStatus simple module

Keeps track of the status of network node (up, down, etc.) for other modules, and also displays it as a small overlay icon on this module and on the module of the network node.

inet.common.misc

Name Type Description
MessageChecker simple module

Module that allows checking fields of messages

NetAnimTrace simple module

Records a NetAnim trace, using network-level modules and their connections. See http://www.nsnam.org/wiki/index.php/NetAnim

SignalSource simple module

Emits double-valued signals in the specified interval. May be used for testing indicator figures.

ThruputMeter simple module

Thruput measurement utility module.

ThruputMeteringChannel channel

This channels adds suport for thruput meternig to the datarate channel A cDatarateChannel extended with throughput calculation. Values get displayed on the link, using the connection's "t=" or "tt=" display string tag.

inet.common.packet.recorder

Name Type Description
PcapRecorder simple module

Records PCAP traces of frames sent/received by other modules within the same host. By default, it records frames sent/received by L2 modules of StandardHost and Router. The output filename is expected in the pcapFile parameter. The PcapRecorder module can also print tcpdump-like textual information to on the log (EV); this functionality can be controlled by the verbose parameter.

inet.common.queue

Name Type Description
Delayer simple module

Delayer module.

DropTailQueue simple module

Drop-tail queue, to be used in network interfaces. Conforms to the IOutputQueue interface.

FifoQueue simple module

This module implements a passive FIFO queue with unlimited buffer space. It can be combined with algorithmic droppers and schedulers to form an IOutputQueue compound module.

IOutputQueue module interface

Module interface for output queues. Concrete queues can implement drop-tail, RED etc. policy.

Join simple module

Joins multiple input streams into a single output stream.

Nop compound module

Just lets messages through without any change or delay.

OrdinalBasedDropper simple module

Ordinal Based Dropper module.

OrdinalBasedDuplicator simple module

Ordinal Based Duplicator module.

PriorityScheduler simple module

This module implements a strict priority scheduler.

RedDropper simple module

This module implements Random Early Detection (RED).

Sink simple module

Silently discards all received packets.

ThresholdDropper simple module

This module selectively drops packets, based on the available buffer space of the queues attached to its output.

WrrScheduler simple module

This module implements weighted round-robin scheduling.

inet.common.scenario

Name Type Description
ScenarioManager simple module

ScenarioManager is for setting up and controlling simulation experiments. You can schedule certain events to take place at specified times, like changing a parameter value, changing the bit error rate of a connection, removing or adding connections, removing or adding routes in a routing table, etc, so that you can observe the transient behaviour.

inet.emulation.common

Name Type Description
ExtInterface compound module

This module provides a base module for external network interfaces.

inet.emulation.linklayer.ethernet

Name Type Description
ExtEthernetSocket simple module

This module provides a bidirectional connection to an ethernet socket of the host computer which is running the simulation. It writes the packets arrived on 'upperLayerIn' gate to the specified real socket, and sends out packets arrived from the real socket on 'upperLayerOut' gate.

ExtEthernetTapDevice simple module

This module provides a bidirectional connection to a real TAP device of the host computer which is running the simulation. It writes the packets arrived on 'lowerLayerIn' gate to the specified real TAP device, and sends out packets arrived from real TAP device on 'lowerLayerOut' gate.

ExtLowerEthernetInterface compound module

This module provides an Ethernet network interface suitable for emulation. The lower part of the network interface is realized in the real world using a real ethernet socket of the host computer which is running the simulation.

ExtUpperEthernetInterface compound module

This module provides an Ethernet network interface suitable for emulation. The upper part of the network interface is realized in the real world using a real TAP device of the host computer which is running the simulation.

inet.emulation.linklayer.ieee80211

Name Type Description
ExtUpperIeee80211Interface compound module

This module provides an IEEE 802.11 network interface suitable for emulation. The upper part of the network interface is realized in the real world using a real TAP device of the host computer which is running the simulation.

inet.emulation.networklayer.ipv4

Name Type Description
ExtIpv4Socket simple module

This module provides a bidirectional connection to an IPv4 socket of the host computer which is running the simulation. It writes the packets arrived on 'upperLayerIn' gate to the specified real socket, and sends out packets arrived from the real socket on 'upperLayerOut' gate.

ExtIpv4TunDevice simple module

This module provides a bidirectional connection to a real TUN device of the host computer which is running the simulation. It writes the packets arrived on 'lowerLayerIn' gate to the specified real TUN device, and sends out packets arrived from real TAP device on 'lowerLayerOut' gate.

ExtLowerIpv4 compound module (no description)
ExtLowerIpv4NetworkLayer compound module (no description)
ExtUpperIpv4 compound module (no description)
ExtUpperIpv4NetworkLayer compound module (no description)
Ipv4Encap simple module (no description)

inet.emulation.transportlayer.udp

Name Type Description
ExtLowerUdp simple module

This module provides UDP protocol services suitable for emulation. The lower part of the UDP protocol is realized in the real world using real UDP sockets of the host computer which is running the simulation.

inet.environment.common

Name Type Description
PhysicalEnvironment compound module

The propagation of communication signals, the movement of communicating agents, or battery exhaustion depend on the surrounding physical environment. For example, signals can be absorbed by objects, can pass through objects, can be refracted by surfaces, can be reflected from surfaces, etc.

inet.environment.contract

Name Type Description
IGround module interface (no description)
IObjectCache module interface

An object cache is a data structure that is used by the physical environment to store physical objects.

IPhysicalEnvironment module interface (no description)

inet.environment.ground

Name Type Description
FlatGround compound module (no description)
OsgEarthGround compound module (no description)

inet.environment.objectcache

Name Type Description
BvhObjectCache compound module

This object cache model organizes closely positioned physical objects into a tree data structure.

GridObjectCache compound module

This object cache model stores physical objects in a spatial grid. Each cell maintains a list of intersecting physical objects. The grid is aligned with the coordinate axes and it has a configurable cell size in all dimensions. The cell size parameters take precedence over the cell count parameters.

inet.linklayer.acking

Name Type Description
AckingMac simple module

This module implements a trivial MAC protocol for use in AckingWirelessInterface.

AckingWirelessInterface compound module

Highly abstracted wireless NIC that consists of a unit disk radio and a trivial MAC protocol. It offers simplicity for scenarios where Layer 1 and 2 effects can be completely ignored, for example testing the basic functionality of a wireless ad-hoc routing protocol.

inet.linklayer.base

Name Type Description
MacProtocolBase simple module

Module base for different MAC protocols.

inet.linklayer.bmac

Name Type Description
BMac simple module

Implementation of B-MAC (called also Berkeley MAC, Low Power Listening or LPL). See C++ documentation for details.

BMacInterface compound module (no description)

inet.linklayer.common

Name Type Description
ExampleQosClassifier simple module

An example QoS classifier that assigns a User Priority based on the transport protocol and port numbers.

IIeee8021dQosClassifier module interface

Interface for 802.1d QoS classifiers. For each packet, the classifier computes a 802.1d User Priority (UP) value, and sets in on the Iee802Ctrl control info before sending out the packet on the "out" gate.

QosClassifier simple module

This module classifies packets and assigns a User Priority based on the IP protocol or the transport protocol port numbers.

RandomQosClassifier simple module

A QoS classifier that assigns a random User Priority. This is useful for testing purposes.

WirelessInterface compound module (no description)

inet.linklayer.configurator

Name Type Description
L2NetworkConfigurator simple module

This module allows to configure network scenarios at layer 2. The Stp and Rstp related parameters such as link cost, port priority and the "is-edge" flag can be configured with XML files.

L2NodeConfigurator simple module

This module has one instance per network node, and it acts like a bridge between the node and the network's global configurator module, L2NetworkConfigurator.

inet.linklayer.contract

Name Type Description
IEtherMac module interface

Interface for Ethernet MAC implementations. All Ethernet MAC implementations should implement this (i.e. declared as: EtherMac like IEtherMac). The existing implementations are these: EtherMac and EtherMacFullDuplex.

IEthernetInterface module interface

Module interface for Ethernet interfaces.

IExternalInterface module interface (no description)
ILinkLayer module interface

This module interface provides an abstraction for both upper and lower interfaces of different link layers.

ILinkLayerLower module interface

This module interface provides an abstraction for the lower interface of different link layers.

ILinkLayerUpper module interface

This module interface provides an abstraction for the upper interface of different link layers.

ILoopbackInterface module interface

Module interface for loopback interfaces.

IMacAddressTable module interface

Interface for MAC address tables

IMacProtocol module interface

This interface provides an abstraction for different network protocols.

IMacRelayUnit module interface

Module interface for modules providing Ethernet switch functionality. These modules handle the mapping between ports and MAC addresses, and forward frames (EtherFrame) to appropriate ports.

INetworkInterface module interface (no description)
IPppInterface module interface

Module interface for PPP interfaces.

ISpanningTree module interface

Module interface for Spanning Tree protocols

ITrafficConditioner module interface

This is the interface of traffic conditioner modules.

ITunnelInterface module interface

Module interface for tunnel interfaces.

IVlanInterface module interface (no description)
IWiredInterface module interface

Module interface for wired network interfaces.

IWirelessInterface module interface

Module interface for wireless network interfaces.

inet.linklayer.csmaca

Name Type Description
CsmaCaInterface compound module

Module interface for Csma/Ca network interfaces.

CsmaCaMac simple module

Implements an imaginary CSMA/CA-based MAC protocol with optional acknowledgements and a retry mechanism. With the appropriate settings, it can approximate basic 802.11b ad-hoc mode operation.

inet.linklayer.ethernet

Name Type Description
EtherBus simple module

Implements the shared coaxial cable for classic Ethernet.

EtherEncap simple module

Performs Ethernet II or Ethernet with LLC/SNAP encapsulation/decapsulation.

EtherEncapDummy compound module

Dummy encapsulation/decapsulation module for EthernetInterface.

EtherFrameClassifier simple module

Simple classifier, that forwards EtherPauseFrames to the pauseOut gates, and other frames to the defaultOut gate.

EtherHub simple module

A generic wiring hub model.

EtherMac simple module

Ethernet MAC layer. MAC performs transmission and reception of frames. See the IEtherMac for the Ethernet MAC layer general informations. Doesn't do encapsulation/decapsulation; see Ieee8022Llc and EtherEncap for that.

EtherMacFullDuplex simple module

Ethernet MAC which supports full-duplex operation ONLY. See the IEtherMac for general informations.

EthernetInterface compound module

Ethernet network interface. Complements EtherMac and EtherEncap with an output queue for QoS and RED support.

EtherQosQueue compound module

Queue module that gives the PAUSE frames a higher priority, and can be parametrized with an IOutputQueue for serving the other frames.

IEtherEncap module interface

Module interface for Ethernet encapsulation/decapsulation.

inet.linklayer.ethernet.switch

Name Type Description
MacAddressTable simple module

This module handles the mapping between ports and MAC addresses.

MacRelayUnit simple module (no description)

inet.linklayer.ieee80211

Name Type Description
Ieee80211Interface compound module

This NIC implements an 802.11 network interface card. It can be configured via the mgmt.typename parameter to act as an AP or a STA, or for ad-hoc mode.

IIeee80211Mac module interface

Module interface for all ieee802.11 mac modul

inet.linklayer.ieee80211.llc

Name Type Description
Ieee80211LlcEpd simple module (no description)
Ieee80211LlcLpd simple module (no description)
IIeee80211Llc module interface (no description)

inet.linklayer.ieee80211.mac

Name Type Description
Ds simple module

The default implementation of IDs.

Ieee80211Mac compound module

Implementation of the 802.11b MAC protocol. This module is intended to be used in combination with the Ieee80211Radio module as the physical layer. (The SnrEval80211 and Decider80211 modules should also work if per-packet bitrate setting gets implemented.)

Rx simple module

The default implementation of IRx.

Tx simple module

The default implementation of ITx.

inet.linklayer.ieee80211.mac.aggregation

Name Type Description
BasicMpduAggregationPolicy simple module (no description)
BasicMsduAggregationPolicy simple module (no description)

inet.linklayer.ieee80211.mac.blockack

Name Type Description
OriginatorBlockAckAgreementHandler simple module (no description)
OriginatorBlockAckAgreementPolicy simple module
RecipientBlockAckAgreementHandler simple module (no description)
RecipientBlockAckAgreementPolicy simple module (no description)

inet.linklayer.ieee80211.mac.channelaccess

Name Type Description
Dcaf compound module (no description)
Edca compound module (no description)
Edcaf compound module

IEEE 802.11 Enhanced Distributed Channel Access Function

Hcca simple module (no description)

inet.linklayer.ieee80211.mac.contention

Name Type Description
Contention simple module

The default implementation of IContention.

EdcaCollisionController simple module (no description)

inet.linklayer.ieee80211.mac.contract

Name Type Description
ICollisionController module interface

Interface for collision controllers. A collision controller is used with EDCA, and it detects and reports internal collisions between Contention instances.

IContention module interface

Interface for modules that implement contention-based channel access. For each frame, Contention listens on the channel for a DIFS (AIFS) period then for a random backoff period before transitting the frame, and defers when busy channel is sensed. After receiving a corrupted frame, EIFS is used instead of the original DIFS (AIFS).

IDcf module interface (no description)
IDs module interface (no description)
IFragmentationPolicy module interface (no description)
IHcf module interface (no description)
IMpduAggregationPolicy module interface (no description)
IMsduAggregationPolicy module interface (no description)
IRateControl module interface

Interface for auto rate control modules.

IRateSelection module interface

Interface for frame rate selection modules.

IRx module interface

Interface for Rx processes. The Rx process checks received frames for errors, manages the NAV, and notifies Tx processes about the channel state (free or busy). The channel is free only if it is free according to both the physical (CCA) and the virtual (NAV-based) carrier sense algorithms. Correctly received frames are sent up to UpperMac (see IUpperMac), corrupted frames are discarded. Tx processes are also notified about corrupted and correctly received frames. so they can switch between using DIFS/AIFS and EIFS according to the channel access procedure.

IStatistics module interface

Interface for MAC statistics collection modules

ITx module interface

Interface for processes that unconditionally transmit a frame after waiting for a specified inter-frame space (usually SIFS). Such processes can be used to transmit frames where no contention is needed, e.g. ACK, CTS, or the second and further frames of a TXOP.

inet.linklayer.ieee80211.mac.coordinationfunction

Name Type Description
Dcf compound module

IEEE 802.11 Distributed Coordination Function

Hcf compound module

HCF -- Hybrid Coordination Function

Mcf compound module

IEEE 802.11 Mesh Coordination Function

Pcf compound module

IEEE 802.11 Point Coordination Function

inet.linklayer.ieee80211.mac.fragmentation

Name Type Description
BasicFragmentationPolicy simple module (no description)

inet.linklayer.ieee80211.mac.originator

Name Type Description
NonQosRecoveryProcedure simple module (no description)
OriginatorAckPolicy simple module (no description)
OriginatorMacDataService compound module (no description)
OriginatorQosAckPolicy simple module (no description)
OriginatorQosMacDataService compound module (no description)
QosRecoveryProcedure simple module (no description)
QosRtsPolicy simple module (no description)
RtsPolicy simple module (no description)
TxopProcedure simple module (no description)

inet.linklayer.ieee80211.mac.protectionmechanism

Name Type Description
OriginatorProtectionMechanism simple module (no description)
SingleProtectionMechanism simple module (no description)

inet.linklayer.ieee80211.mac.ratecontrol

Name Type Description
AarfRateControl simple module

References: [1] ftp://ftp-sop.inria.fr/planete/ivs/papers/mswim04.pdf [2] http://research.microsoft.com/en-us/projects/mesh/mobicom01.pdf "However, there is a clear threshold region in the 40ms-60ms range, depending on the degree of mobility, beyond which there is little performance change but below which there is a noticeable drop."

ArfRateControl simple module (no description)
OnoeRateControl simple module (no description)

inet.linklayer.ieee80211.mac.rateselection

Name Type Description
QosRateSelection simple module (no description)
RateSelection simple module (no description)

inet.linklayer.ieee80211.mac.recipient

Name Type Description
CtsPolicy simple module (no description)
QosCtsPolicy simple module (no description)
RecipientAckPolicy simple module (no description)
RecipientMacDataService compound module (no description)
RecipientQosAckPolicy simple module (no description)
RecipientQosMacDataService compound module (no description)

inet.linklayer.ieee80211.mac.statistics

Name Type Description
BasicStatistics simple module

The default implementation of IStatistics

inet.linklayer.ieee80211.mgmt

Name Type Description
Ieee80211AgentSta simple module

Used in 802.11 infrastructure mode: in a station (STA), this module controls channel scanning, association and handovers, by sending commands (e.g. Ieee80211Prim_ScanRequest) to the management module (Ieee80211MgmtSta).

Ieee80211MgmtAdhoc simple module

802.11 management module used for ad-hoc mode. Relies on the MAC layer (Ieee80211Mac) for reception and transmission of frames.

Ieee80211MgmtAp simple module

Used in 802.11 infrastructure mode: handles management frames for an access point (AP). It relies on a connected Ieee80211Mac for actual reception and transmission of frames.

Ieee80211MgmtApSimplified simple module

Used in 802.11 infrastructure mode: handles management frames for an access point (AP). It relies on a connected Ieee80211Mac for actual reception and transmission of frames.

Ieee80211MgmtSta simple module

Used in 802.11 infrastructure mode: handles management frames for a station (STA).

Ieee80211MgmtStaSimplified simple module

Used in 802.11 infrastructure mode: handles management frames for a station (STA). Relies on the MAC layer (Ieee80211Mac) for reception and transmission of frames.

IIeee80211Agent module interface (no description)
IIeee80211Mgmt module interface

Module interface for all IEEE 802.11 management module types. It exists to specify what gates a management module should have in order to be usable within Ieee80211Interface.

inet.linklayer.ieee80211.mib

Name Type Description
Ieee80211Mib simple module (no description)

inet.linklayer.ieee80211.portal

Name Type Description
Ieee80211Portal simple module (no description)

inet.linklayer.ieee802154

Name Type Description
Ieee802154Mac simple module

Generic CSMA protocol supporting Mac-ACKs as well as constant, linear or exponential backoff times.

Ieee802154NarrowbandInterface compound module (no description)
Ieee802154NarrowbandMac simple module (no description)
Ieee802154UwbIrInterface compound module (no description)

inet.linklayer.ieee8021d.relay

Name Type Description
Ieee8021dRelay simple module

This modul forwards frames (EtherFrame) based on their destination MAC addresses to appropriate ports.

inet.linklayer.ieee8021d.rstp

Name Type Description
Rstp simple module

Implements the Rapid Spanning Tree Protocol (IEEE 802.D-2004) for IEC 48-bit MAC addresses. It is a complete implementation except it doesn't fall back to STP when peers don't support RSTP.

inet.linklayer.ieee8021d.stp

Name Type Description
Stp simple module

The Spanning Tree Protocol (STP) is a network protocol that ensures a loop-free topology for any bridged Ethernet local area network. The basic function of STP is to prevent bridge loops and the broadcast radiation that results from them. Spanning tree also allows a network design to include spare (redundant) links to provide automatic backup paths if an active link fails, without the danger of bridge loops, or the need for manual enabling/disabling of these backup links.

inet.linklayer.ieee8021d.tester

Name Type Description
StpTester simple module

Network tester module Show if a network topology is loopfree, all nodes are connected or it has tree topology

inet.linklayer.ieee8021q

Name Type Description
Ieee8021qEncap simple module (no description)
IIeee8021qEncap module interface (no description)

inet.linklayer.ieee8022

Name Type Description
Ieee8022Llc simple module (no description)
IIeee8022Llc module interface (no description)

inet.linklayer.lmac

Name Type Description
LMac simple module

Implementation of L-MAC (Lightweight Medium Access Protocol for Wireless Sensor Networks)

LMacInterface compound module (no description)

inet.linklayer.loopback

Name Type Description
Loopback simple module

Loopback interface module implementation.

LoopbackInterface compound module

Loopback interface. Complements the Loopback module.

inet.linklayer.ppp

Name Type Description
Ppp simple module

PPP implementation.

PppInterface compound module

PPP interface. Complements the PPP module with an output queue for QoS and RED support.

inet.linklayer.shortcut

Name Type Description
ShortcutInterface compound module (no description)
ShortcutMac simple module

This module implements a simple shortcut to peer MAC protocol that completely bypasses the physical layer. Packets received from the upper layer protocols are never lost. The MAC protocol directly sends packets to the destination MAC protocol without any physical layer processing. Physical layer overhead is simply simulated by overhead bits, overhead transmission duration and a propagation delay.

inet.linklayer.tun

Name Type Description
Tun simple module (no description)
TunInterface compound module (no description)

inet.linklayer.vlan

Name Type Description
VlanInterface compound module (no description)
VlanTunnel simple module (no description)

inet.linklayer.xmac

Name Type Description
XMac simple module

Implementation of X-MAC. See C++ documentation for details.

XMacInterface compound module (no description)

inet.mobility.base

Name Type Description
MobilityBase simple module

Abstract base module for mobility models.

MovingMobilityBase simple module

Abstract base module for mobility models.

inet.mobility.contract

Name Type Description
IMobility module interface

The module interface for mobility models.

inet.mobility.group

Name Type Description
MoBanCoordinator simple module

This is the coordinator module of the MoBAN mobility model. It should be instantiated in the top level simulation network in MiXiM, once per WBAN. The coordinator module is the main module that provides the group mobility and correlation between nodes in a WBAN. In the initialization phase, it reads three user defined input files which are the postures specification file, a configuration file which includes all required parameter for specific distributions, and the previously logged mobility pattern, if it is requested to use a logged pattern. Note that all WBAN instances may use the same input files if they are exactly in the same situation.

MoBanLocal simple module

This is the local mobility module of MoBAN. It should be instantiated in each node that belongs to a WBAN. The NED parameter "coordinatorIndex" determine to which WBAN (MoBanCoordinator) it belongs. The current implementation uses the Random Walk Mobility Model (RWMM) for individual (local) movement with a sphere around the node, with given speed and sphere radius of the current posture. The reference point of the node it the current posture, the sphere radius, and the speed is given by the corresponding coordinator. RWMM determines the location of node at ant time relative to the given reference point.

inet.mobility.single

Name Type Description
AnsimMobility simple module

Uses the <position_change> elements of the ANSim tool's trace file.

AttachedMobility simple module

This module provides a mobility that is attached to another mobility at a given offset. The position, velocity and acceleration are all affectred by the respective quantites and the orientation of the mobility where this one is attached.

BonnMotionMobility simple module

Uses the native file format of BonnMotion (http://www.cs.uni-bonn.de/IV/BonnMotion/).

ChiangMobility simple module

Uses a probabilistic transition matrix to change the state of motion. In this model, the state of the mobile node in each direction (x and y) can be:

CircleMobility simple module

Moves the node around a circle.

FacingMobility simple module

This module provides orientation towards the target mobility model as seen from the source mobility model.

GaussMarkovMobility simple module

Uses a Gauss-Markov model to control the randomness in the movement. Totally random walk (Brownian motion) is obtained by setting alpha=0, while alpha=1 results a linear motion.

LinearMobility simple module

This is a linear mobility model with speed, angle and acceleration parameters. Angle only changes when the mobile node hits a wall: then it reflects off the wall at the same angle.

MassMobility simple module

This is a random mobility model for a mobile host with a mass. It is the one used in "Optimized Smooth Handoffs in Mobile IP" by Perkins &Wang.

Ns2MotionMobility simple module

TODO: why does this comment refer to BonnMotion instead of NS2?

RandomWaypointMobility simple module

Implements the Random Waypoint mobility model.

RectangleMobility simple module

Moves the node around a rectangle.

SuperpositioningMobility compound module

This mobility module combines the trajectory of several other mobility modules using superposition. In other words, the position, velocity and acceleration is the sum of the respective quantities of all submodules.

TractorMobility simple module

Moves a tractor through a field with a certain amount of rows. Since the tractor also moves around the field, the tractor travels the number of rows PLUS one rows. Consider the following piece of ascii-art for rows=2.

TurtleMobility simple module

A LOGO-style movement model, with the script coming from XML. It can be useful for describing random as well as deterministic scenarios.

VehicleMobility simple module (no description)

inet.mobility.static

Name Type Description
StaticConcentricMobility simple module

Places all hosts on concentric circles

StaticGridMobility simple module

Places all hosts in a rectangular grid. The usable area (constraint area minus margins on each side) is split into smaller cells (with separationX,separationY size). Hosts are placed in the middle of each cell. By default, the number of columns and rows follow the aspect ratio of the usable area. By default stepX and stepY are calculated based on the number of columns and rows.

StaticLinearMobility simple module

Mobility model which places all hosts at constant distances in a line with an orientation

StationaryMobility simple module

This mobility module does nothing; it can be used for stationary nodes.

inet.networklayer.arp.ipv4

Name Type Description
Arp simple module

Implements the Address Resolution Protocol for IPv4 and IEEE 802 6-byte MAC addresses.

GlobalArp simple module

This module provides global address resolution without exchanging packets.

inet.networklayer.base

Name Type Description
NetworkProtocolBase simple module

Module base for different network protocols.

inet.networklayer.common

Name Type Description
EchoProtocol simple module

This module provides a mechanism to test network layer connectivity using echo request/response messages similar to that of ICMP.

InterfaceEntry compound module (no description)
InterfaceTable simple module

Keeps the table of network interfaces.

NetfilterInfoHook simple module (no description)
SimpleNetworkLayer compound module

This module provides a simple network layer.

inet.networklayer.configurator.base

Name Type Description
NetworkConfiguratorBase simple module (no description)

inet.networklayer.configurator.contract

Name Type Description
INetworkConfigurator module interface (no description)

inet.networklayer.configurator.ipv4

Name Type Description
HostAutoConfigurator simple module

HostAutoConfigurator automatically assigns IP addresses and sets up routing table. It has to be added into each host.

Ipv4FlatNetworkConfigurator simple module

Configures IPv4 addresses and routing tables for a "flat" network, "flat" meaning that all hosts and routers will have the same network address and will only differ in the host part.

Ipv4NetworkConfigurator simple module

This module assigns IPv4 addresses and sets up static routing for an IPv4 network. It assigns per-interface IP addresses, strives to take subnets into account, and can also optimize the generated routing tables by merging routing entries.

Ipv4NodeConfigurator simple module

This module has one instance per network node, and it acts like a bridge between the node and the network's global configurator module, Ipv4NetworkConfigurator.

inet.networklayer.configurator.ipv6

Name Type Description
Ipv6FlatNetworkConfigurator simple module

Configures Ipv6 addresses and routing tables for a "flat" network, "flat" meaning that all hosts and routers will have the same network address and will only differ in the host part.

inet.networklayer.configurator.nexthop

Name Type Description
NextHopNetworkConfigurator simple module

Adds routes to a NextHopRoutingTable similarly how Ipv4NetworkConfigurator adds static routes to Ipv4RoutingTable.

inet.networklayer.contract

Name Type Description
IArp module interface

TODO

IIpv6Tunneling module interface

\Ipv6 Tunnel Manager

INetworkLayer module interface (no description)
INetworkLayerLower module interface (no description)
INetworkLayerUpper module interface

This module interface provides an abstraction for different network layers.

INetworkProtocol module interface

This interface provides an abstraction for different network protocols.

IRoutingTable module interface

This module interface provides an abstraction for different routing tables.

IxMIPv6Support module interface

Module interface for xMIPv6 (where x = F, H, F-H).

inet.networklayer.diffserv

Name Type Description
AFxyQueue compound module

This is an example queue, that implements one class of the Assured Forwarding PHB group (RFC 2597).

BehaviorAggregateClassifier simple module

This module reads the DSCP (lower six bits of ToS/TrafficClass) from the received datagram, and forwards the datagram to the corresponding output gate.

DiffservQueue 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.

DscpMarker simple module

This module sets the DSCP field (lower six bit of Tos/TrafficClass) of IP datagrams to the value specified by the dscps parameter.

MultiFieldClassifier simple module

This classifier contains a list of filters that identifies the flows and determines their classes. Each filter can match the source and destination address, IP protocol number, source and destination ports, or ToS of the datagram. The first matching filter determines the index of the out gate. If no matching filter is found, then the packet will be sent through the defaultOut gate.

SingleRateThreeColorMeter simple module

This module implements a Single Rate Three Color Meter (RFC 2697).

TokenBucketMeter simple module

Simple token bucket meter.

TwoRateThreeColorMeter simple module

This module implements a Two Rate Three Color Meter (RFC 2698).

inet.networklayer.flooding

Name Type Description
Flooding simple module

A simple flooding protocol for network-level broadcast.

inet.networklayer.icmpv6

Name Type Description
Icmpv6 simple module

ICMPv6 implementation.

Ipv6NeighbourDiscovery simple module

Implements Ipv6 Neighbour Discovery.

inet.networklayer.internetcloud

Name Type Description
ICloudDelayer module interface

Delay module interface for InternetCloud.

MatrixCloudDelayer simple module

Delay module for InternetCloud. This is essentially equivalent to a full graph with edges being differently configured DatarateChannels. It delays and/or drops incoming packets based on rules specified in an xml configuration.

inet.networklayer.ipv4

Name Type Description
Icmp simple module

ICMP implementation

Igmpv2 simple module

Imlementation of IGMPv2 protocol. Multicast routers use IGMP to learn which groups have members on each of their attached physical networks.

Igmpv3 simple module

Imlementation of IGMPv2 protocol. Multicast routers use IGMP to learn which groups have members on each of their attached physical networks.

IIgmp module interface

Module interface for IGMP modules.

IIpv4 module interface (no description)
Ipv4 simple module

Implements the IPv4 protocol. The protocol header is represented by the Ipv4Header message class.

Ipv4NatTable simple module

Stores the network address translation table.

Ipv4NetworkLayer compound module

Network layer of an IPv4 node.

Ipv4RoutingTable simple module

Stores the routing table. (Per-interface configuration is stored in InterfaceTable.)

NetworkInfo simple module

NetworkInfo does not send or receive messages and has no parameters either. Instead it is invoked from ScenarioManager scripts. E.g.:

RoutingTableRecorder simple module

Records changes in the routing tables (Ipv4RoutingTable) and interface tables (InterfaceTable) of all hosts and routers. The filename has to be specified in the routinglog-file configuration option that this module registers.

inet.networklayer.ipv6

Name Type Description
Ipv6 simple module

Implements the Ipv6 protocol.

Ipv6NetworkLayer compound module

Represents an Ipv6 network layer (L3).

Ipv6RoutingTable simple module

Ipv6 Routing Table and Neighbour Discovery data structures. NOTE: This component MUST be named as "routingTable6" inside a StandardHost/Router etc. in order to be accessible by the Ipv6 and other modules

inet.networklayer.ipv6tunneling

Name Type Description
Ipv6Tunneling simple module

\Ipv6 Tunnel Manager

inet.networklayer.ldp

Name Type Description
Ldp simple module

Handles and processes LDP messages.

inet.networklayer.mpls

Name Type Description
IIngressClassifier module interface

Module interface for ingress packet classifiers for MPLS.

LibTable simple module

Stores the LIB (Label Information Base), accessed by Mpls and its associated control protocols (RsvpTe, Ldp) via direct C++ method calls.

Mpls simple module

Implements the MPLS protocol.

inet.networklayer.nexthop

Name Type Description
NextHopForwarding simple module

This module is a simplified next hop forwarding that routes datagrams using different kind of network addresses.

NextHopNetworkLayer compound module

This module provides a network layer for the next hop forwarding.

NextHopRoutingTable simple module

This module stores next hop routes used by the next hop forwarding protocol.

inet.networklayer.probabilistic

Name Type Description
AdaptiveProbabilisticBroadcast simple module

Multi-hop ad-hoc data dissemination protocol based on probabilistic broadcast, with adaptive parameters.

ProbabilisticBroadcast simple module

Multi-hop ad-hoc data dissemination protocol based on probabilistic broadcast.

inet.networklayer.rsvpte

Name Type Description
RsvpClassifier simple module

Table-base ingress classifier.

RsvpTe simple module

Implements RSVP-TE, a signalling protocol for MPLS. The module processes RSVP-TE messages, installs labels and does the reservation along LSP paths.

inet.networklayer.ted

Name Type Description
LinkStateRouting simple module

This module implements a very minimalistic link state routing protcol. Apart from the basic topology information, the current link usage is distributed to all participants in the network (by means of flooding).

Ted simple module

Traffic Engineering Database. Stores network topology with detailed link information, including total and reserved bandwidths.

inet.networklayer.wiseroute

Name Type Description
WiseRoute simple module

Wiseroute is a simple loop-free routing algorithm that builds a routing tree from a central network point, designed for sensor networks and convergecast traffic.

WiseRouteNetworkLayer compound module

This module provides a simple network layer.

inet.networklayer.xmipv6

Name Type Description
BindingCache simple module

xMIPv6 Data structure for the HA and CN(s) only.

BindingUpdateList simple module

xMIPv6 Data structure for the Mobile Node

xMIPv6 simple module

Implements xMIPv6 (where x = F, H, F-H).

xMIPv6Support compound module

Implements xMIPv6 (where x = F, H, F-H).

inet.node.aodv

Name Type Description
AodvRouter compound module

It models a WirelessHost extended with Aodv submodule.

inet.node.base

Name Type Description
ApplicationLayerNodeBase compound module (no description)
LinkLayerNodeBase compound module (no description)
NetworkLayerNodeBase compound module (no description)
NodeBase compound module

This module contains the most basic infrastructure for network nodes that is not strictly communication protocol related.

TransportLayerNodeBase compound module (no description)

inet.node.bgp

Name Type Description
BgpRouter compound module

IP router with BGPv4 and OSPFv4 support.

inet.node.dsdv

Name Type Description
DsdvRouter compound module

A Dsdv router.

inet.node.dymo

Name Type Description
DymoRouter compound module (no description)

inet.node.ethernet

Name Type Description
Eth100G channel

100 gigabit/sec Ethernet link

Eth100M channel

100 megabit/sec Ethernet link

Eth10G channel

10 gigabit/sec Ethernet link

Eth10M channel

10 megabit/sec Ethernet link

Eth1G channel

1 gigabit/sec Ethernet link

Eth200G channel

200 gigabit/sec Ethernet link

Eth400G channel

400 gigabit/sec Ethernet link

Eth40G channel

40 gigabit/sec Ethernet link

EtherHost compound module

An example host with one Ethernet port and a traffic generator that generates request-reply traffic directly over Ethernet. This host model does not contain higher layer protocols (IP, TCP). By default it is configured to use half-duplex MAC (CSMA/CD).

EtherHost2 compound module

An example host with one Ethernet interface and an Ethernet traffic generator directly connected to it. This host model does not contain higher layer protocols (IP, TCP). By default is configured to use half-duplex MAC (CSMA/CD).

EtherLink channel

Base for Ethernet link types. Propagation delay can be specified with the length of the cable, i.e. in meters instead of nanoseconds or microseconds.

EtherSwitch compound module

Model of an Ethernet switch.

inet.node.gpsr

Name Type Description
GpsrRouter compound module (no description)

inet.node.httptools

Name Type Description
HttpDirectHost compound module

Simple host for the HttpTools project. The node is a simple container for tcpApps. Suitable apps are the HttpBrowserDirect and HttpServerDirect modules from HttpTools.

inet.node.inet

Name Type Description
AdhocHost compound module

A wireless host containing routing, mobility and energy components. Supports IPv4 network protocol, TCP, UDP, and SCTP as transport protocol. This is a typical mobile node which can participate in adhoc routing and may have TCP/UDP applications installed. Supports ICMP (ping) too.

INetworkNode module interface

Contains the common interface for all node types in a network.

ManetRouter compound module (no description)
MulticastRouter compound module (no description)
Router compound module

IPv4 router that supports wireless, Ethernet, PPP and external interfaces. By default, no wireless and external interfaces are added; the number of Ethernet and PPP ports depends on the external connections.

SensorNode compound module

This module implements a wireless sensor node. It has one 802.15.4 wireless interface and an energy storage module by default. TODO and energyconsumer in the radio TODO there is no management; the IdealEnergyStorage never depletes...

StandardHost compound module

IPv4 host with SCTP, TCP, UDP layers and applications. IP forwarding is disabled by default (see forwarding).

WirelessHost compound module

Models a host with (default) one wireless (802.11) card in infrastructure mode. This module is basically a StandardHost with an Ieee80211Interface with mgmt.typename = Ieee80211MgmtSta added. It should be used in conjunction with AccessPoint, or any other AP model which contains Ieee80211Interface with mgmt.typename = Ieee80211MgmtAp.

inet.node.internetcloud

Name Type Description
InternetCloud compound module

This module is an IPv4 router that can delay or drop packets (while retaining their order) based on which interface card the packet arrived on and on which interface it is leaving the cloud. The delayer module is replaceable.

inet.node.ipv6

Name Type Description
Router6 compound module

Ipv6 router.

StandardHost6 compound module

IPv6 host with TCP, SCTP and UDP layers and applications. see StandardHost for configuration.

inet.node.mpls

Name Type Description
LdpMplsRouter compound module

An LDP-capable router.

RsvpMplsRouter compound module

An RSVP-TE capable router.

inet.node.ospfv2

Name Type Description
OspfRouter compound module

An OSPFv2 router.

inet.node.packetdrill

Name Type Description
PacketDrillHost compound module

IPv4 host with SCTP, TCP, UDP layers and a packetdrill application. The application has a direct connection to the TunInterface.

inet.node.rip

Name Type Description
RipRouter compound module

An RIPv2 router.

inet.node.rtp

Name Type Description
RtpHost compound module

TODO document!

inet.node.wireless

Name Type Description
AccessPoint compound module

A generic access point supporting multiple wireless radios, and multiple ethernet ports. The type of the ethernet MAC, relay unit and wireless card can be specified as parameters.

inet.node.xmipv6

Name Type Description
CorrespondentNode6 compound module

An Ipv6 host with MIPv6 support and contains a Binding Cache which gets updated with every BU received.

HomeAgent6 compound module

Ipv6 router Configured to operate as a Home Agent in a network supporting MIPv6.

MobileHost6 compound module

MIPv6 host with Tcp, Udp layers and applications.

WirelessHost6 compound module

Ipv6 compatible node with MIPv6 support. Models a host with one wireless (802.11b) card in infrastructure mode, supports handovers and MIPv6 protocol. This module is basically a StandardHost with an Ieee80211NicSTA and MobileIPLayer6 added. It should be used in conjunction with WirelessAPSimplified, or any other AP model which contains Ieee80211NicAPSimplified.

inet.physicallayer.analogmodel.bitlevel

Name Type Description
LayeredDimensionalAnalogModel compound module (no description)
LayeredScalarAnalogModel compound module (no description)

inet.physicallayer.analogmodel.packetlevel

Name Type Description
DimensionalAnalogModel compound module

This analog model computes with dimensional analog power representation. In other words the signal power may change over time and/or frequency.

ScalarAnalogModel compound module

This analog model computes with scalar analog power representation. In other words, the signal power does not change over time or frequency, except for the boundaries of the signal.

inet.physicallayer.antenna

Name Type Description
AxiallySymmetricAntenna compound module

This antenna model computes the antenna gain from the direction using linear interpolation. The gain parameter contains a sequence of angle [degree] and gain [dB] pairs. The first pair must be at 0 [degree].

ConstantGainAntenna compound module

This antenna model describes an antenna that has an antenna gain indepent of the transmission or reception direction.

CosineAntenna compound module

This module represents the cosine antenna model found in

DipoleAntenna compound module

This antenna model describes the well-known dipole antenna or doublet. It consists of two identical conductive elements, which are bilaterally symmetrical.

InterpolatingAntenna compound module

This antenna model computes the antenna gain from the direction of the signal using linear interpolation for all 3 euler angles independently of each other. The gain parameters contain a sequence of angle [degree] and gain [dB] pairs. The first pair must be at 0 [degree].

IsotropicAntenna compound module

This antenna model describes the theoretical point source which radiates the same intensity of radiation in all directions.

ParabolicAntenna compound module

This model is based on a parabolic approximation of the main lobe radiation pattern. A similar model appears in

inet.physicallayer.apskradio.bitlevel

Name Type Description
ApskDecoder compound module

This module is part of a simple hypothetical layered receiver. It computes the packet domain representation from the bit domain representation by applying the configured descrambling, forward errror correction decoding, and deinterleaving.

ApskDemodulator simple module

This module is part of a simple hypothetical layered receiver. It computes the bit domain representation from the symbol domain representation by applying the configured modulation.

ApskEncoder compound module

This module is part of a simple hypothetical layered transmitter. It computes the bit domain representation from the packet domain representation by applying the configured scrambling, forward errror correction encoding, and interleaving.

ApskLayeredDimensionalRadio compound module

This radio model is part of a simple hypothetical layered radio. It produces detailed transmissions that have separate representation for all simulated domains. It must be used in conjunction with the ApskLayeredDimensionalRadioMedium model.

ApskLayeredDimensionalRadioMedium compound module

This medium model is used by a simple hypothetical layered radio.

ApskLayeredReceiver compound module

This receiver model is part of a simple hypothetical layered radio. It receives detailed transmissions that have separate representation for all simulated domains. The levelOfDetail parameter controls which domains are actually simulated, but all parameters relevant to the error model are expected to be set on the reception.

ApskLayeredScalarRadio compound module

This radio model is part of a simple hypothetical layered radio. It produces detailed transmissions that have separate representation for all simulated domains. It must be used in conjunction with the ApskLayeredScalarRadioMedium model.

ApskLayeredScalarRadioMedium compound module

This medium model is used by a simple hypothetical layered radio.

ApskLayeredTransmitter compound module

This transmitter model is part of a simple hypothetical layered radio. It produces detailed transmissions that have separate representation for all simulated domains. The levelOfDetail parameter controls which domains are actually simulated, but all parameters relevant to the error model are always set on the transmission.

ApskModulator simple module

This module is part of a simple hypothetical layered transmitter. It computes the symbol domain representation from the bit domain representation by applying the configured modulation.

inet.physicallayer.apskradio.bitlevel.errormodel

Name Type Description
ApskLayeredErrorModel compound module

This error model computes the erroneous bits, symbols, or simply whether the packet is error free or not based on the SNIR.

inet.physicallayer.apskradio.packetlevel

Name Type Description
ApskDimensionalRadio compound module

This radio model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc. It must be used in conjunction with the ApskDimensionalRadioMedium model.

ApskDimensionalRadioMedium compound module

This radio medium model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc. It must be used in conjunction with the ApskDimensionalRadio model.

ApskDimensionalReceiver compound module

This receiver model receives a transmission succesfully if the minimum of the signal to noise and interference ratio over the duration of the reception is sufficiently high. It uses the error model to compute the error rate based on this value and the used modulation.

ApskDimensionalTransmitter compound module

This transmitter model produces transmissions that use dimensional transmission power (that changes over time and/or frequency) in their analog representation and the configured modulation.

ApskRadio compound module

This radio model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc.

ApskScalarRadio compound module

This radio model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc. It must be used in conjunction with the ApskScalarRadioMedium model.

ApskScalarRadioMedium compound module

This radio medium model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc. It must be used in conjunction with the ApskScalarRadio model.

ApskScalarReceiver compound module

This receiver model receives a transmission succesfully if the minimum of the signal to noise and interference ratio over the duration of the reception is sufficiently high. It uses the error model to compute the error rate based on this value and the used modulation.

ApskScalarTransmitter compound module

This transmitter model produces transmissions that have scalar transmission power in their analog representation and the configured modulation.

inet.physicallayer.apskradio.packetlevel.errormodel

Name Type Description
ApskErrorModel compound module

This error model determines packet error rate, bit error rate, and symbol error rate by using the well-known formula that corresponds to the modulation. It assumes no forward error correction or any other techinque is used in the physical signal.

inet.physicallayer.backgroundnoise

Name Type Description
IsotropicDimensionalBackgroundNoise compound module

This background noise model describes noise that does not change over space, time and frequency. It produces dimensional noise signals that can be further used in dimensional computations.

IsotropicScalarBackgroundNoise compound module

This background noise model describes noise that does not change over space, time and frequency. It produces scalar noise signals that can be further used in scalar computations.

inet.physicallayer.base.bitlevel

Name Type Description
LayeredErrorModelBase compound module (no description)

inet.physicallayer.base.packetlevel

Name Type Description
AntennaBase compound module

This module servces as the base module for antenna models.

DimensionalTransmitterBase compound module

This transmitter model produces transmissions that use dimensional transmission power (that changes over time and/or frequency) in their analog representation and the configured modulation.

ErrorModelBase compound module

This module servces as the base module for error models.

FlatRadioBase compound module

This module servces as a base module for flat radio models.

NarrowbandRadioBase compound module

This module servces as a base module for narrowband radio models.

NarrowbandReceiverBase compound module

This module servces as a base module for narrowband receiver models.

NarrowbandTransmitterBase compound module

This module servces as a base module for narrowband transmitter models.

PhysicalLayerBase simple module

Module base for different physical layers.

PropagationBase compound module

This module servces as a base module for propagation models.

TracingObstacleLossBase compound module

This module servces as a base module for tracing obstacle loss models.

inet.physicallayer.common.bitlevel

Name Type Description
AdditiveScrambler compound module

Scrambler module converts an input string into a seemingly random output string of the same length.

ConvolutionalCoder compound module

Transfer function (octal) matrix ================================

inet.physicallayer.common.packetlevel

Name Type Description
MediumLimitCache compound module (no description)
Radio compound module

The radio model describes the physical device that is capable of transmitting and receiving signals on the medium. It contains an antenna model, a transmitter model, a receiver model, and an energy consumer model.

RadioMedium compound module

The medium model describes the shared physical medium where communication takes place. It keeps track of radios, noise sources, ongoing transmissions, background noise, and other ongoing noises. The medium computes when, where and how transmissions and noises arrive at receivers. It also efficiently provides the set of interfering transmissions and noises for the receivers.

inet.physicallayer.communicationcache

Name Type Description
MapCommunicationCache compound module

This communication cache model stores radio, transmission and reception related intermediate computation results in map data structures. It's primarily useful for simulations with both static *and* dynamic radios, and with both short *and* long transmission durations.

ReferenceCommunicationCache compound module

This communication cache model allows validating other implementations. It can be used to provide a reference for communication logs, simulation fingerprints, and statistical results that can be compared with results of other communication cache implementations.

VectorCommunicationCache compound module

This communication cache model stores radio, transmission and reception related intermediate computation results in vector data structures. It's primarily useful for simulations with *either* static *or* short lived dynamic radios, and with only short transmission durations.

inet.physicallayer.contract.bitlevel

Name Type Description
IAnalogDigitalConverter module interface (no description)
IDecoder module interface (no description)
IDemodulator module interface (no description)
IDigitalAnalogConverter module interface (no description)
IEncoder module interface (no description)
IFecCoder module interface (no description)
IInterleaver module interface (no description)
ILayeredErrorModel module interface (no description)
IModulator module interface (no description)
IPulseFilter module interface (no description)
IPulseShaper module interface (no description)
IScrambler module interface (no description)

inet.physicallayer.contract.packetlevel

Name Type Description
IAnalogModel module interface

The analog model describes how the analog representation of the transmissions is turned into the analog representation of the receptions.

IAntenna module interface

The antenna model describes the physical device (a part of the radio) which converts electric signals into radio waves, and vice versa.

IBackgroundNoise module interface

The background noise model describes the thermal noise, the cosmic background noise, and other random fluctuations of the electromagnetic field that affect the quality of the communication channel.

ICommunicationCache module interface (no description)
IErrorModel module interface

The error model describes how the signal to noise ratio affects the amount of errors at the receiver.

IMediumLimitCache module interface (no description)
INeighborCache module interface

The neighbor cache model computes the affected set of receivers on the medium for a given transmission.

IObstacleLoss module interface

The obstacle loss model describes the reduction of power as the signal passes through physical objects.

IPathLoss module interface

The path loss model describes the reduction of power as the signal propagates through space.

IPhysicalLayer module interface

This module interface provides an abstraction for the interface of different physical layers.

IPropagation module interface

The propagation model describes how a radio signal propagates through space over time.

IRadio module interface

Module interface for radio modules. Radio modules deal with the transmission of frames over a wireless medium (the radio medium).

IRadioMedium module interface

The medium model describes the shared physical medium where communication takes place. It keeps track of radios, noise sources, ongoing transmissions, background noise, and other ongoing noises. The medium computes when, where and how transmissions and noises arrive at receivers.

IReceiver module interface

The receiver model describes the physical process which converts electric signals into packets.

ITransmitter module interface

The transmitter model describes the physical process which converts packets into electric signals.

inet.physicallayer.energyconsumer

Name Type Description
Ieee80211StateBasedCcEnergyConsumer simple module

This module provides a radio power consumer model for IEEE 802.11 radios. Default values are roughly based on CC3220 transceiver. The power consumption is determined by the radio mode, the transmitter state and the receiver state using constant parameters.

Ieee80211StateBasedEpEnergyConsumer simple module

This module provides a radio power consumer model for IEEE 802.11 radios. Default values are roughly based on CC3220 transceiver. The power consumption is determined by the radio mode, the transmitter state and the receiver state using constant parameters.

SensorStateBasedCcEnergyConsumer simple module (no description)
SensorStateBasedEpEnergyConsumer simple module (no description)
StateBasedCcEnergyConsumer simple module

This module provides a radio energy consumer model. The current consumption is determined by the radio mode, the transmitter state and the receiver state using constant parameters.

StateBasedEpEnergyConsumer simple module

This module provides a radio power consumer model. The power consumption is determined by the radio mode, the transmitter state and the receiver state using constant parameters.

inet.physicallayer.errormodel.bitlevel

Name Type Description
StochasticLayeredErrorModel compound module (no description)

inet.physicallayer.errormodel.packetlevel

Name Type Description
StochasticErrorModel compound module

This error model provides parameters to specify the constant packet error rate, bit error rate, and symbol error rate for receptions independent of any interfering transmission or noise.

inet.physicallayer.ethernet

Name Type Description
EtherPhy simple module (no description)

inet.physicallayer.ieee80211.bitlevel

Name Type Description
Ieee80211LayeredDimensionalRadioMedium compound module (no description)
Ieee80211LayeredOfdmReceiver compound module

Please check the

See also: Ieee80211LayeredOfdmTransmitter documentation first, since this receiver module is symmetric to it.

Ieee80211LayeredOfdmTransmitter compound module

The level of detail parameter determines which submodules of the transmitter will be used:

Ieee80211LayeredScalarRadioMedium compound module (no description)
Ieee80211OfdmDecoder compound module

This is the decoder module for the layered IEEE 802.11 OFDM PHY infrastructure (IEEE 802.11-2012, Clause 18).

Ieee80211OfdmDemodulator simple module

See also: Ieee80211OfdmModulator

Ieee80211OfdmEncoder compound module

This is the encoder module for the layered IEEE 802.11 OFDM PHY infrastructure (IEEE 802.11-2012, Clause 18).

Ieee80211OfdmInterleaver compound module

The Ieee80211OfdmInterleaver is defined by a two-step permutation. The first permutation ensures that adjacent coded bits are mapped onto nonadjacent subcarriers. The second ensures that adjacent coded bits are mapped alternately onto less and more significant bits of the constellation and, thereby, long runs of low reliability (LSB) bits are avoided. (IEEE 802.11, 18.3.5.7 Data interleaving)

Ieee80211OfdmModulator simple module

This is an IEEE 802.11 OFDM modulator module, the implementation is based on 18.3.5.8 Subcarrier modulation mapping section in IEEE 802.11-2012 Std.

Ieee80211OfdmRadio compound module (no description)

inet.physicallayer.ieee80211.bitlevel.errormodel

Name Type Description
Ieee80211OfdmErrorModel compound module

This is the error model for the layered IEEE 802.11 OFDM PHY infrastructure (IEEE 802.11-2012, Clause 18). OFDM means that the physical layer uses OFDM modulation.

inet.physicallayer.ieee80211.packetlevel

Name Type Description
Ieee80211DimensionalRadio compound module

This radio model uses dimensional transmission power (that changes over time and/or frequency) in the analog representation. It must be used in conjunction with the Ieee80211DimensionalRadioMedium model.

Ieee80211DimensionalRadioMedium compound module

This radio medium model uses dimensional transmission power (that changes over time and/or frequency) in the analog representation. It must be used in conjunction with the Ieee80211DimensionalRadio model.

Ieee80211DimensionalReceiver compound module

This receiver model receives an IEEE 802.11 transmission successfully if the minimum of the signal to noise and interference ratio over the duration of the reception is sufficiently high. It uses one of the IEEE 802.11 specific error models to compute the error rate based on this value and the used operation mode.

Ieee80211DimensionalTransmitter compound module

This transmitter model produces IEEE 802.11 transmissions that have dimensional transmission power (that changes over time and/or frequency) in their analog representation. The bit domain, symbol domain, and sample domains of the transmissions are not represented.

Ieee80211Radio compound module

This radio model is part of the IEEE 802.11 physical layer model. It supports multiple channels, different operation modes, and preamble modes. It must be used in conjunction with the Ieee80211RadioMedium model or other derived models.

Ieee80211RadioMedium compound module

This radio medium model is part of thee IEEE 802.11 physical layer model. It must be used in conjunction with the Ieee80211Radio model or other derived models.

Ieee80211ReceiverBase compound module

This receiver model serves as the base module for IEEE 802.11 receivers. It supports switching channels, configuring different operation modes, and preamble modes.

Ieee80211ScalarRadio compound module

This radio model uses scalar transmission power in the analog representation. It must be used in conjunction with the Ieee80211ScalarRadioMedium model.

Ieee80211ScalarRadioMedium compound module

This radio medium model uses scalar transmission power in the analog representation. It must be used in conjunction with the Ieee80211ScalarRadio model.

Ieee80211ScalarReceiver compound module

This receiver model receives an IEEE 802.11 transmission successfully if the minimum of the signal to noise and interference ratio over the duration of the reception is sufficiently high. It uses one of the IEEE 802.11 specific error models to compute the error rate based on this value and the used operation mode.

Ieee80211ScalarTransmitter compound module

This transmitter model produces IEEE 802.11 transmissions that have scalar transmission power in their analog representation. The bit domain, symbol domain, and sample domains of the transmissions are not represented.

Ieee80211TransmitterBase compound module

This transmitter model serves as the base module for IEEE 802.11 transmitters. It supports switching channels, configuring different operation modes, and preamble modes.

Ieee80211UnitDiskRadio compound module

This radio model uses ideal analog representation. It must be used in conjunction with the UnitDiskRadioMedium model.

Ieee80211UnitDiskReceiver compound module

See also Ieee80211UnitDiskTransmitter, Ieee80211UnitDiskRadio, and UnitDiskRadioMedium.

Ieee80211UnitDiskTransmitter compound module

See also Ieee80211UnitDiskReceiver, Ieee80211UnitDiskRadio, and UnitDiskRadioMedium.

inet.physicallayer.ieee80211.packetlevel.errormodel

Name Type Description
Ieee80211BerTableErrorModel compound module (no description)
Ieee80211NistErrorModel compound module (no description)
Ieee80211YansErrorModel compound module (no description)

inet.physicallayer.ieee802154.bitlevel

Name Type Description
Ieee802154UwbIrRadio compound module (no description)
Ieee802154UwbIrRadioMedium compound module (no description)
Ieee802154UwbIrReceiver compound module (no description)
Ieee802154UwbIrTransmitter compound module (no description)

inet.physicallayer.ieee802154.packetlevel

Name Type Description
Ieee802154NarrowbandDimensionalRadio compound module (no description)
Ieee802154NarrowbandDimensionalRadioMedium compound module (no description)
Ieee802154NarrowbandDimensionalReceiver compound module (no description)
Ieee802154NarrowbandDimensionalTransmitter compound module (no description)
Ieee802154NarrowbandRadio compound module (no description)
Ieee802154NarrowbandScalarRadio compound module (no description)
Ieee802154NarrowbandScalarRadioMedium compound module (no description)
Ieee802154NarrowbandScalarReceiver compound module (no description)
Ieee802154NarrowbandScalarTransmitter compound module (no description)

inet.physicallayer.neighborcache

Name Type Description
GridNeighborCache compound module

This neighbor cache model organizes radios in a 3 dimensional grid with constant cell size and updates periodically.

NeighborListNeighborCache compound module

This neighbor cache model maintains a separate periodically updated neighbor list for each radio.

QuadTreeNeighborCache compound module

This neighbor cache model organizes radios in a 2 dimensional quad tree (ignoring the Z axis) with constant node size and updates periodically.

inet.physicallayer.obstacleloss

Name Type Description
DielectricObstacleLoss compound module

This obstacle loss model determines the power loss by computing the accurate dielectric and reflection loss along the straight path considering the shape, the position, the orientation, and the material of obstructing physical objects.

IdealObstacleLoss compound module

This obstacle loss model determines power loss by checking if there is any obstructing physical object along the straight propagation path. The result is either total power loss if there was such an object or no loss at all if there wasn't.

inet.physicallayer.pathloss

Name Type Description
BreakpointPathLoss compound module (no description)
FreeSpacePathLoss compound module (no description)
LogNormalShadowing compound module (no description)
NakagamiFading compound module (no description)
RayleighFading compound module (no description)
RicianFading compound module (no description)
SuiPathLoss compound module (no description)
TwoRayGroundReflection compound module (no description)
TwoRayInterference compound module (no description)
UwbIrStochasticPathLoss compound module (no description)

inet.physicallayer.propagation

Name Type Description
ConstantSpeedPropagation compound module

This propagation model computes the propagation time to be proportional to the traveled distance, the ratio is determined by the constant propagation speed parameter.

ConstantTimePropagation compound module

This propagation model computes the propagation time to be independent of the traveled distance. In other words, the propagation time is determined by a constant parameter.

inet.physicallayer.shortcut

Name Type Description
ShortcutRadio simple module

This module implements a simple shortcut to peer radio protocol that completely bypasses the physical medium. This radio module directly sends packets to the other radio module without any physical layer processing in the radio medium. Packets received from the upper layer protocols may be lost. Physical layer overhead is simply simulated by physical header bits, preamble transmission duration and a propagation delay.

inet.physicallayer.unitdisk

Name Type Description
UnitDiskAnalogModel compound module

This analog model provides a very simple and predictable physical layer behavior. It determines the reception power by categorizing transmissions based on the distance between the transmitter and the receiver. It doesn't support noise and signal to noise ratio calculations.

UnitDiskRadio compound module

This radio model provides a very simple but fast and predictable physical layer behavior. It must be used in conjunction with the UnitDiskRadioMedium model.

UnitDiskRadioMedium compound module

This radio medium model provides a very simple but fast and predictable physical layer behavior. It must be used in conjunction with the UnitDiskRadio model.

UnitDiskReceiver compound module

This receiver model receives a transmission succesfully within communication range unless there's another interfering transmission within interference range. It also supports an ideal communication channel with configuring the receiver to ignore interfering transmissions.

UnitDiskTransmitter compound module

This transmitter model produces transmissions that are parameterized with communication range, interference range, and detection range. It also supports an ideal communication channel with configuring the range parameters to infinity.

inet.power.base

Name Type Description
CcEnergyConsumerBase simple module

This is an abstract base module for current based energy consumer models. It defines shared signals and statistics.

CcEnergyGeneratorBase simple module

This is an abstract base module for current based energy generator models. It defines shared signals and statistics.

CcEnergySinkBase simple module

This is an abstract base module for current based energy sink models. It defines signals and statistics.

CcEnergySourceBase simple module

This is an abstract base module for current based energy source models. It defines shared signals and statistics.

CcEnergyStorageBase simple module

This is an abstract base module for current based energy storage models. It defines shared signals and statistics.

EpEnergyConsumerBase simple module

This is an abstract base module for power based energy consumer models. It defines shared signals and statistics.

EpEnergyGeneratorBase simple module

This is an abstract base module for power based energy generator models. It defines shared signals and statistics.

EpEnergySinkBase simple module

This is an abstract base module for power based energy sink models. It defines signals and statistics.

EpEnergySourceBase simple module

This is an abstract base module for power based energy source models. It defines shared signals and statistics.

EpEnergyStorageBase simple module

This is an abstract base module for power based energy storage models. It defines shared signals and statistics.

inet.power.consumer

Name Type Description
AlternatingEpEnergyConsumer simple module

This energy consumer model alternates between two modes called consumption and sleep mode. In consumption mode it consumes a randomly selected constant power for a random time interval. In sleep mode it doesn't consume energy for another random time interval.

inet.power.contract

Name Type Description
ICcEnergyConsumer module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

ICcEnergyGenerator module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

ICcEnergyManagement module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

ICcEnergySink module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

ICcEnergySource module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

ICcEnergyStorage module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

IEnergyConsumer module interface

The energy consumer models describe the energy consumption process of devices over time. For example, a radio consumes energy when it transmits or receives signals, or a CPU consumes energy when the network layer processes packets, or a display consumes energy when it's turned on, etc.

IEnergyGenerator module interface

The energy generator models describe the energy generation process of devices over time. A solar panel, for example, produces energy based on time, the panel's position on the globe, its orientation towards the sun and the actual weather conditions.

IEnergyManagement module interface

The energy management models monitors an energy storage, estimates its state, and controls the consumers and generators to protect the energy storage from operating outside its safe operating area.

IEnergySink module interface

The energy sink models absorb energy from multiple energy generators.

IEnergySource module interface

The energy source models provide energy for multiple energy consumers.

IEnergyStorage module interface

The energy storage models describe devices that absorb energy produced by generators, and provide energy for consumers. For example, an electrochemical battery in a mobile phone provides energy for its display, its CPU, and its wireless communication device. It can also absorb energy produced by a solar panel installed on its display, or by a portable charger plugged into a wall socket.

IEpEnergyConsumer module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

IEpEnergyGenerator module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

IEpEnergyManagement module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

IEpEnergySink module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

IEpEnergySource module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

IEpEnergyStorage module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

inet.power.generator

Name Type Description
AlternatingEpEnergyGenerator simple module

This energy generator model alternates between two modes called generation and sleep mode. In generation mode it generates a randomly selected constant power for a random time interval. In sleep mode it doesn't generate energy for another random time interval.

inet.power.management

Name Type Description
SimpleEpEnergyManagement simple module

This energy mangement model estimates the residual energy capacity of the energy source model by actually querying it. It is only useful when the estimation process is not important. This model initiates node shutdown when the residual capacity decreases below a threshold, and it also initiates node start when the residual capacity increases above another threshold.

inet.power.storage

Name Type Description
IdealEpEnergyStorage simple module

This energy storage model stores an infinite amount of energy. It can provide energy for any number of consumers, and it can absorb energy from any number of generators. The ideal energy storage never gets completely charged or depleted. This module is primarily useful for testing energy consumer and energy generator models. See the base module for signals and statistics.

SimpleCcBattery simple module

This battery model maintains a residual charge capacity by integrating the difference between the total consumed current and the total generated current over time. This model uses a charge independent ideal voltage source and an charge independent internal resistance. It initiates node crash when the residual charge capacity reaches zero. See the base module for signals and statistics.

SimpleEpEnergyStorage simple module

This energy storage model maintains a residual energy capacity by integrating the difference between the total consumed power and the total generated power over time. It initiates node crash when the residual energy capacity reaches zero. This model doesn't have various properties such as self-discharge, memory effect, overcharging, temperature-dependence, etc. that real world batteries have. See the base module for signals and statistics.

inet.routing.aodv

Name Type Description
Aodv simple module

Ad hoc On-Demand Distance Vector Routing Protocol module.

inet.routing.bgpv4

Name Type Description
Bgp simple module

Implements BGP Version 4 routing protocol.

inet.routing.contract

Name Type Description
IBgp module interface

Interface for BGP routing module.

IManetRouting module interface (no description)
IOspf module interface

Interface for routing protocol modules connected to IP Layer.

IPim module interface (no description)

inet.routing.dsdv

Name Type Description
Dsdv simple module

Implements Destination-Sequenced Distance Vector.

inet.routing.dymo

Name Type Description
Dymo simple module

This module provides Dynamic MANET On-demand (Dymo also known as AODVv2) Routing based on the IETF draft at http://tools.ietf.org/html/draft-ietf-manet-dymo-24.

inet.routing.gpsr

Name Type Description
Gpsr simple module

This module provides Greedy Perimeter Stateless Routing for Wireless Networks. The implementation supports both GG and RNG planarization algorithms.

inet.routing.ospfv2

Name Type Description
Ospf simple module
  • <VirtualLink>

inet.routing.pim

Name Type Description
Pim compound module (no description)
PimSplitter simple module

PimSplitter module dispatches PIM packets received from the network layer according to the PIM mode of the incoming interface. Bu using a PimSplitter it is possible to build nodes that operates in Dense Mode on some interfaces, and in Sparse Mode on others.

inet.routing.pim.modes

Name Type Description
PimDm simple module

Implementation of PIM-DM protocol (RFC 3973).

PimSm simple module

Implementation of PIM-SM protocol (RFC 4601).

inet.routing.pim.tables

Name Type Description
PimInterfaceTable simple module

The PimInterfaceTable module contains the PIM specific configuration parameters and state of the interfaces on which PIM is enabled.

PimNeighborTable simple module

The PimNeighborTable module contains information about neighboring PIM routers.

inet.routing.rip

Name Type Description
Rip simple module

Routing Information Protocol.

inet.transportlayer.base

Name Type Description
TransportProtocolBase simple module

Module base for different transport protocols.

inet.transportlayer.contract

Name Type Description
ISctp module interface

Interface for SCTP protocol.

ITcp module interface

Interface for TCP protocol implementations. All TCP implementations should implement this (i.e. declared as: TCP like ITcp) The existing implementations are these: Tcp, TcpNsc and TcpLwip.

IUdp module interface

UDP protocol interface.

inet.transportlayer.rtp

Name Type Description
IRTPPayloadReceiver module interface

Interface for RTP Payload Receivers.

IRtpPayloadSender module interface

Interface for RTP Payload Senders.

Rtcp simple module

RTCP end system.

Rtp simple module

The Rtp module is the center of the Rtp layer of an endsystem. It communicates with the application, and sends and receives Rtp data packets.

RtpAvProfile simple module

Audio-Video Rtp Profile. RtpAvProfile is internal to the Rtp module; instances are created and connected dynamically by Rtp.

RTPAVProfilePayload10Receiver simple module (no description)
RTPAVProfilePayload10Sender simple module (no description)
RtpAvProfilePayload32Receiver simple module (no description)
RtpAvProfilePayload32Sender simple module (no description)
RTPAVProfileSampleBasedAudioReceiver simple module (no description)
RTPAVProfileSampleBasedAudioSender simple module (no description)
RtpPayloadReceiver simple module (no description)
RtpPayloadSender simple module (no description)
RtpProfile simple module

Generic Rtp Profile. RtpProfile is internal to the Rtp module; instances are created and connected dynamically by Rtp.

inet.transportlayer.sctp

Name Type Description
Sctp simple module

Implements the SCTP protocol.

SctpNatHook simple module

SctpNatHook module.

SctpNatRouter compound module

SCTP NAT router

SctpNatTable simple module

TODO

inet.transportlayer.tcp

Name Type Description
Tcp simple module

Tcp protocol implementation. See the ITcp for the Tcp layer general informations.

inet.transportlayer.tcp_common

Name Type Description
TcpSpoof simple module

Sends fabricated TCP packets. This is a base implementation, you'll probably have to customize it in C++ according to what you want to send and when you want to send it.

inet.transportlayer.tcp_lwip

Name Type Description
TcpLwip simple module

TCP model based on the LWIP 1.3.2 project. The original LWIP is available on the http://savannah.nongnu.org/projects/lwip/ page.

inet.transportlayer.tcp_nsc

Name Type Description
TcpNsc simple module

TCP model based on the Network Simulation Cradle by Sam Jansen. The NSC is available on the http://research.wand.net.nz/software/nsc.php page. You must read the inet/3dparty/README before use this TCP implementation. This model is compatible with both IPv4 (Ipv4) and IPv6 (Ipv6). The TCP_TRANSFER_OBJECT data transfer mode isn't implemented yet. See the ITcp for the TCP layer general informations.

inet.transportlayer.udp

Name Type Description
Udp simple module

Udp protocol implementation, for IPv4 (Ipv4) and IPv6 (Ipv6).

inet.visualizer.base

Name Type Description
DataLinkVisualizerBase simple module

This is a base module for data link layer link visualizer simple modules. It keeps track of active links in a network. A link between two network node is considered active if a packet is sent recently between their link layers. Active links are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of active links is done in derived modules.

EnergyStorageVisualizerBase simple module

This is a base module for energy storage visualizer simple modules.

Ieee80211VisualizerBase simple module

This is a base module for IEEE 802.11 association visualizer simple modules. It keeps track of wireless interface associations by subscribing to a number of signals at the provided subscription module.

InfoVisualizerBase simple module

This is a base module for submodule information visualizer simple modules. It displays some information on network nodes originating from one of their corresponding submodules. No information is displayed by default, see module parameters for how to enable the visualization. The actual visualization is done in derived modules.

InterfaceTableVisualizerBase simple module

This is a base module for interface table visualizer simple modules. It displays information of network interfaces at network nodes. Network interfaces are not displayed by default, see module parameters for how to enable the visualization.

LinkBreakVisualizerBase simple module

This is a base module for link break visualizer simple modules. It keeps track of link breaks in a network. Link breaks are not displayed by default, see module parameters for how to enable the visualization. The actual visualization of link breaks is done in derived modules.

LinkVisualizerBase simple module

This is a base module for link visualizer simple modules. It keeps track of active links in a network. A link between two network node is considered active if a packet is sent recently between the corresponding layers. Active links are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of active links is done in derived modules.

MediumVisualizerBase simple module

This is a base module for medium visualizer simple modules. It keeps track of ongoing signal departures, ongoing signal arrivals, and propagating signals.

MobilityVisualizerBase simple module

This is a base module for mobility visualizer simple modules. It subscribes for the mobilityStateChanged signal at the module determined by the visualizationSubjectModule parameter. The actual visualization of mobility is done in derived modules.

NetworkConnectionVisualizerBase simple module

This is a base module for connection visualizer simple modules. The actual visualization of network connections is done in derived modules.

NetworkNodeVisualizerBase simple module

This is a base module for node visualizer simple modules. The actual visualization of network nodes is done in derived modules.

PacketDropVisualizerBase simple module

This is a base module for packet drop visualizer simple modules. It keeps track of dropped packets in a network. Packet drops are not displayed by default, see module parameters for how to enable the visualization. The actual visualization of packet drops is done in derived modules.

PathVisualizerBase simple module

This is a base module for path visualizer simple modules. It keeps track of active routes in a network. A route between two node is considered active if a packet is sent recently between their corresponding layers. Active routes are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of active routes is done in derived modules.

PhysicalEnvironmentVisualizerBase simple module

This is a base module for physical environment visualizer simple modules. It provides the physical objects through the physical environment module for derived modules. The actual visualization of physical objects is done in derived modules.

PhysicalLinkVisualizerBase simple module

This is a base module for physical layer link visualizer simple modules. It keeps track of active links in a network. A link between two network node is considered active if a packet is sent recently between their physical layers. Active links are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of active links is done in derived modules.

QueueVisualizerBase simple module

This is a base module for queue visualizer simple modules.

RadioVisualizerBase simple module

This is a base module for radio visualizer simple modules.

RoutingTableVisualizerBase simple module

This is a base module for routing table visualizer simple modules. It displays routes in the routing tables of the network. Routes present are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of routes is done in derived modules.

SceneOsgVisualizerBase simple module

This is a base module for scene visualizer simple modules on a 3D osg scene. It displays the scene either as a filled rectangle or as an image.

SceneVisualizerBase simple module

This is a base module for scene visualizer simple modules. It determines the bounds of the scene, that is the minimum area where the whole simulation fits in. The scene encloses all physical objects and the constraint area of all mobile nodes. The visualizer also provides a timer which can be used to periodically update the user interface independently of the underlying simulation. The actual visualization of the scene is done in derived modules.

StatisticVisualizerBase simple module

This is a base module for statistic visualizer simple modules. It keeps track of the last value of a statistic for multiple network nodes. The actual visualization of statistic values is done in derived modules. It subscribes for the signal determined by the signalName parameter at the module specified by the visualizationSubjectModule parameter. If the visualizer receives such a signal it checks if the source matches the sourceFilter parameter. If the signal passes the check it determines the last value of the statistic specified by the statisticName parameter.

TracingObstacleLossVisualizerBase simple module

This is a base module for tracing obstacle loss visualizer simple modules. It subscribes on the obstacle loss module for physical object penetrated signals. The actual visualization of obstacle loss is done in derived modules.

TransportConnectionVisualizerBase simple module

This is a base module for transport connection visualizer simple modules. It keeps track of open transport connections in a network. Open connections are not displayed by default, see the module parameters for how to enable the visualization. The actual visualization of transport connections is done in derived modules.

VisualizerBase simple module

This is a base module for visualizer simple modules. It simply provides the visualization target module for derived modules.

inet.visualizer.common

Name Type Description
InfoCanvasVisualizer simple module

This module visualizes some information of a submodule for each network node on a 2D canvas.

InfoOsgVisualizer simple module

This module visualizes some information of a submodule for each network node on a 3D osg scene.

InfoVisualizer compound module

This module integrates canvas and osg info visualizers into a single module.

PacketDropCanvasVisualizer simple module

This module visualizes packet drops on a 2D canvas. It displays an icon for each packet drop in the network. See the documentation of the base module for what constitutes a packet drop.

PacketDropOsgVisualizer simple module

This module visualizes packet drops on a 3D osg scene. It displays an icon for each packet drop in the network. See the documentation of the base module for what constitutes a packet drop.

PacketDropVisualizer compound module

This module integrates canvas and osg packet drop visualizers into a single module.

QueueCanvasVisualizer simple module

This module visualizes queues on a 2D canvas.

QueueOsgVisualizer simple module

This module visualizes queues on a 3D osg scene.

QueueVisualizer compound module

This module integrates canvas and osg queue visualizers into a single module.

StatisticCanvasVisualizer simple module

This module visualizes statistics on a 2D canvas. See the base module for how to configure which statistic is displayed. If configured properly, then it displays the last value of the statistic to the right of the visualization of the corresponding network node. The value and the unit is wrapped in a filled white rectangle.

StatisticOsgVisualizer simple module

This module visualizes a statistic on a 3D osg scene. See the base module for how to configure which statistic is displayed. If configured properly, then it displays the last value of the statistic just above the visualization of the corresponding network node. The value and the unit is wrapped in a filled rectangle.

StatisticVisualizer compound module

This module integrates canvas and osg statistic visualizers into a single module.

inet.visualizer.contract

Name Type Description
IDataLinkVisualizer module interface

This module interface allows configuring different IDataLinkVisualizer submodules from INI files. Such a visualizer displays the active data link layer links in a network.

IEnergyStorageVisualizer module interface

This module interface allows configuring different IEnergyStorageVisualizer submodules from INI files. Such a visualizer displays energy storages.

IIeee80211Visualizer module interface

This module interface allows configuring different IIeee80211Visualizer submodules from INI files. Such a visualizer displays IEEE 802.11 network interface associations.

IInfoVisualizer module interface

This module interface allows configuring different IInfoVisualizer submodules from INI files. Such a visualizer displays various information from submodules of network nodes.

IIntegratedVisualizer module interface

This module interface allows configuring different IIntegratedVisualizer submodules from INI files. Integrated visualizers are compound modules, they don't display anything on their own. Instead they combine multiple visualizers, most often simple modules, to provide a convenient way to add complex visualizations to a simulation.

IInterfaceTableVisualizer module interface

This module interface allows configuring different IInterfaceTableVisualizer submodules from INI files. Such a visualizer displays various information for network interfaces present in the interface tables of a network.

ILinkBreakVisualizer module interface

This module interface allows configuring different ILinkBreakVisualizer submodules from INI files. Such a visualizer displays the data link breaks in a network.

IMediumVisualizer module interface

This module interface allows configuring different IMediumVisualizer submodules from INI files. Such a visualizer displays transmitting nodes, receiving nodes, and propagating radio signals on a medium.

IMobilityVisualizer module interface

This module interface allows configuring different IMobilityVisualizer submodules from INI files. Such a visualizer updates the position (among others) of visual representations according to the corresponding mobility model.

INetworkConnectionVisualizer module interface

This module interface allows configuring different INetworkConnectionVisualizer submodules from INI files. Such a visualizer creates the visual representations of network connections.

INetworkNodeVisualizer module interface

This module interface allows configuring different INetworkNodeVisualizer submodules from INI files. Such a visualizer creates the visual representations of network nodes.

INetworkRouteVisualizer module interface

This module interface allows configuring different INetworkRouteVisualizer submodules from INI files. Such a visualizer displays active network routes in a network.

IPacketDropVisualizer module interface

This module interface allows configuring different IPacketDropVisualizer submodules from INI files. Such a visualizer displays the packet drops in a network.

IPhysicalEnvironmentVisualizer module interface

This module interface allows configuring different IPhysicalEnvironmentVisualizer submodules from INI files. Such a visualizer displays the physical objects present in the physical environment.

IPhysicalLinkVisualizer module interface

This module interface allows configuring different IPhysicalLinkVisualizer submodules from INI files. Such a visualizer displays the active physical layer links in a network.

IQueueVisualizer module interface

This module interface allows configuring different IQueueVisualizer submodules from INI files. Such a visualizer displays queues.

IRadioVisualizer module interface

This module interface allows configuring different IRadioVisualizer submodules from INI files. Such a visualizer displays radios.

IRoutingTableVisualizer module interface

This module interface allows configuring different IRoutingTableVisualizer submodules from INI files. Such a visualizer displays routes present in the routing tables of a network.

ISceneVisualizer module interface

This module interface allows configuring different ISceneVisualizer submodules from INI files. Such a visualizer displays the scene, the coordinate axes, sets up the initial viewpoint, etc.

IStatisticVisualizer module interface

This module interface allows configuring different IStatisticVisualizer submodules from INI files. Such a visualizer displays a statistic for multiple network nodes.

ITracingObstacleLossVisualizer module interface

This module interface allows configuring different ITracingObstacleLossVisualizer submodules from INI files. Such a visualizer displays obstacle loss during wireless signal propagation.

ITransportConnectionVisualizer module interface

This module interface allows configuring different ITransportConnectionVisualizer submodules from INI files. Such a visualizer displays the active transport connections in a network.

ITransportRouteVisualizer module interface

This module interface allows configuring different ITransportRouteVisualizer submodules from INI files. Such a visualizer displays active transport routes in a network.

inet.visualizer.environment

Name Type Description
PhysicalEnvironmentCanvasVisualizer simple module

This module visualizes a physical environment on a 2D canvas. It displays the physical objects present in the physical environment. Since this is not a 3D visualization, so the physical objects are projected to a 2D plane according to the view angle of the corresponding SceneCanvasVisualizer. Apart from this the visualizer considers all object properties that affect the appearance such as position, orientation, shape, colors, opacity, etc.

PhysicalEnvironmentOsgVisualizer simple module

This module visualizes a physical environment on a 3D osg scene. It displays the physical objects present in the physical environment. The visualizer considers all object properties that affect appearance such as position, orientation, shape, colors, opacity, etc.

PhysicalEnvironmentVisualizer compound module

This module integrates canvas and osg physical environment visualizers into a single module.

inet.visualizer.integrated

Name Type Description
IntegratedCanvasVisualizer compound module

This module integrates all canvas visualizers into a single module. It supports disabling any submodule visualizer by providing an empty string as its type.

IntegratedMultiCanvasVisualizer compound module

This module integrates all canvas visualizers into a single module. It supports disabling any submodule visualizer by providing an empty string as its type.

IntegratedMultiOsgVisualizer compound module

This module integrates all osg visualizers into a single module. It supports disabling any submodule visualizer by providing an empty string as its type.

IntegratedMultiVisualizer compound module

This module integrates canvas and osg visualizers into a single module.

IntegratedOsgVisualizer compound module

This module integrates all osg visualizers into a single module. It supports disabling any submodule visualizer by providing an empty string as its type.

IntegratedVisualizer compound module

This module integrates canvas and osg visualizers into a single module.

inet.visualizer.linklayer

Name Type Description
DataLinkCanvasVisualizer simple module

This module visualizes data link layer links on a 2D canvas. It displays an arrow for each active link in the network. See the documentation of the base module for what constitutes an active link. The arrow points from the source towards the destination. If a link is used in both directions then there are separate arrows for them. Each arrow fades out over time as the link becomes inactive unless it is reinforced by another packet. The arrow automatically follows the movement of mobile nodes.

DataLinkOsgVisualizer simple module

This module visualizes data link layer links on a 3D osg scene. It displays an arrow for each active link in the network. See the documentation of the base module for what constitutes an active link. The arrow points from the source towards the destination. If a link is used in both directions then there are separate arrows for them. Each arrow fades out over time as the link becomes inactive unless it is reinforced by another packet. The arrow automatically follows the movement of mobile nodes.

DataLinkVisualizer compound module

This module integrates canvas and osg data link visualizers into a single module.

Ieee80211CanvasVisualizer simple module

This module visualizes IEEE 802.11 associations on a 2D canvas. It displays an icon labelled with the SSID for each associated wireless interface.

Ieee80211OsgVisualizer simple module

This module visualizes IEEE 802.11 associations on a 3D osg scene. It displays an icon labelled with the SSID for each associated wireless interface.

Ieee80211Visualizer compound module

This module integrates canvas and osg IEEE 802.11 association visualizers into a single module.

InterfaceTableCanvasVisualizer simple module

This module visualizes interface tables on a 2D canvas. It displays a label for each selected network interface at the owner network node.

InterfaceTableOsgVisualizer simple module

This module visualizes interface tables on a 3D osg scene. It displays a label for each selected network interface at the owner network node.

InterfaceTableVisualizer compound module (no description)
LinkBreakCanvasVisualizer simple module

This module visualizes link breaks on a 2D canvas. It displays an icon for each link break in the network. See the documentation of the base module for what constitutes a link break. The icon is positioned at the middle point of the link.

LinkBreakOsgVisualizer simple module

This module visualizes link breaks on a 3D osg scene. It displays an icon for each link break in the network. See the documentation of the base module for what constitutes a link break. The icon is positioned at the middle point of the link.

LinkBreakVisualizer compound module

This module integrates canvas and osg link break visualizers into a single module.

inet.visualizer.mobility

Name Type Description
MobilityCanvasVisualizer simple module

This module visualizes multiple mobilities on a 2D canvas. It moves visual representations according to their mobility model. It also displays recent movement as a polyline, current velocity vector and current orientation.

MobilityOsgVisualizer simple module

This module visualizes multiple mobilities on a 3D osg scene. It moves the visual represnetation according to their mobility model. It also displays recent movement as a polyline, current velocity vector and current orientation.

MobilityVisualizer compound module

This module integrates canvas and osg mobility visualizers into a single module.

inet.visualizer.networklayer

Name Type Description
NetworkRouteCanvasVisualizer simple module

This module visualizes network routes on a 2D canvas. It displays an polyline arrow for each active route in the network. See the documentation of the base module for what constitutes an active route. The arrow points from the source towards the destination. If a link is used in both directions then there are arrowheads on both ends of the arrow. Each polyline fades out over time until the route becomes inactive unless it is reinforced by another packet. The polyline automatically follows the movement of mobile nodes.

NetworkRouteOsgVisualizer simple module

This module visualizes network routes on a 3D osg scene. It displays an polyline for each active route in the network. See the documentation of the base module for what constitutes an active route. Each polyline fades out over time until the route becomes inactive unless it is reinforced by another packet. The polyline automatically follows the movement of mobile nodes.

NetworkRouteVisualizer compound module

This module integrates canvas and osg network route visualizers into a single module.

RoutingTableCanvasVisualizer simple module

This module visualizes routes in the routing tables on a 2D canvas. It displays an arrow for each route in the routing tables of the network. The arrow points from the node containing the routing table towards the gateway. The arrow automatically follows the movement of mobile nodes.

RoutingTableOsgVisualizer simple module

This module visualizes routes in the routing tables on a 3D osg scene. It displays an arrow for each route in the routing tables of the network. The arrow points from the node containing the routing table towards the gateway. The arrow automatically follows the movement of mobile nodes.

RoutingTableVisualizer compound module

This module integrates canvas and osg routing table visualizers into a single module.

inet.visualizer.physicallayer

Name Type Description
MediumCanvasVisualizer simple module

This module visualizes a medium on a 2D canvas. It displays communication ranges and interference ranges as circles around network nodes. It displays an image at network nodes which are currently transmitting, and a different image at other network nodes whcih are currently receiving. It also displays radio signals as a 2D ring or a 3D sphere as they propagate through the medium.

MediumOsgVisualizer simple module

This module visualizes a medium using a 3D osg scene. It displays communication ranges and interference ranges as circles around network nodes. It displays an image at network nodes which are currently transmitting, and a different image at other network nodes whcih are currently receiving. It also displays radio signals as a growing 2D ring or a 3D sphere as they propagate through the medium. All 2D shapes such as circles, rings, and images can be displayed in 4 different planes: camera, xy, xz and yz. It's also possible to use animated images.

MediumVisualizer compound module

This module integrates canvas and osg medium visualizers into a single module.

PhysicalLinkCanvasVisualizer simple module

This module visualizes physical layer links on a 2D canvas. It displays an arrow for each active link in the network. See the documentation of the base module for what constitutes an active link. The arrow points from the source towards the destination. If a link is used in both directions then there are separate arrows for them. Each arrow fades out over time as the link becomes inactive unless it is reinforced by another packet. The arrow automatically follows the movement of mobile nodes.

PhysicalLinkOsgVisualizer simple module

This module visualizes physical layer links on a 3D osg scene. It displays an arrow for each active link in the network. See the documentation of the base module for what constitutes an active link. The arrow points from the source towards the destination. If a link is used in both directions then there are separate arrows for them. Each arrow fades out over time as the link becomes inactive unless it is reinforced by another packet. The arrow automatically follows the movement of mobile nodes.

PhysicalLinkVisualizer compound module

This module integrates canvas and osg data link visualizers into a single module.

RadioCanvasVisualizer simple module

This module visualizes radios on a 2D canvas.

RadioOsgVisualizer simple module

This module visualizes radios on a 3D osg scene.

RadioVisualizer compound module

This module integrates canvas and osg radio visualizers into a single module.

TracingObstacleLossCanvasVisualizer simple module

This module visualizes obstacle loss on a 2D canvas. It displays a line at the intersections of signal propagation paths with physical objects, and normal vectors of physical object faces at intersection points.

TracingObstacleLossOsgVisualizer simple module

This module visualizes obstacle loss on a 3D osg scene. It displays a line at the intersections of signal propagation paths with physical objects, and normal vectors of physical object faces at intersection points.

TracingObstacleLossVisualizer compound module

This module integrates canvas and osg obstacle loss visualizers into a single module.

inet.visualizer.power

Name Type Description
EnergyStorageCanvasVisualizer simple module

This module visualizes energyStorages on a 2D canvas.

EnergyStorageOsgVisualizer simple module

This module visualizes energyStorages on a 3D osg scene.

EnergyStorageVisualizer compound module

This module integrates canvas and osg energyStorage visualizers into a single module.

inet.visualizer.scene

Name Type Description
NetworkConnectionCanvasVisualizer simple module

This module visualizes multiple network connections on a 2D canvas.

NetworkConnectionOsgVisualizer simple module

This module visualizes multiple network connections on a 3D osg scene.

NetworkConnectionVisualizer compound module

This module integrates canvas and osg connection visualizers into a single module.

NetworkNodeCanvasVisualizer simple module

This module visualizes multiple network nodes on a 2D canvas. It maintains a NetworkNodeCanvasVisualization figure for each node in the network which can be annotated by other visualizers.

NetworkNodeOsgVisualizer simple module

This module visualizes multiple network nodes on a 3D osg scene. The visual representation is either a 3D external model or a 2D icon that is rotated automatically towards the camera. The 3D external model is specified in the osgModel module parameter of the network node. The 2D icon is the image specified in the display string of the network node. The visualizer maintains a NetworkNodeOsgVisualization instance for each network node which can be annotated by other visualizers.

NetworkNodeVisualizer compound module

This module integrates canvas and osg node visualizers into a single module.

SceneCanvasVisualizer simple module

This module visualizes the scene on a 2D canvas. It provides the 3D coordinate system's 2D orthographic projection for other visualizers. This is used to get a consistent visualization accross all visualizers. It can also display the coordinate system axes.

SceneOsgEarthVisualizer simple module

This module visualizes the scene using osg earth. It displays a 3D osg map of some part of the earth as an integrated part of the 3D visualization of the simulation. The map is loaded from an external resource specified by the mapFile parameter. The scene is placed on the map according to the coordinate system module.

SceneOsgVisualizer simple module

This module visualizes the scene using osg. It displays the scene and the coordinate system axes. It sets the initial viewpoint of the 3D scene based on the bounding sphere of all network nodes. The viewpoint is located opposite of the coordinate system origin with respect to the sphere, and it faces towards the center of the sphere.

SceneVisualizer compound module

This module integrates canvas and osg scene visualizers into a single module.

inet.visualizer.transportlayer

Name Type Description
TransportConnectionCanvasVisualizer simple module

This module visualizes transport layer connections on a 2D canvas. It displays a pair of colored icons for each connection at the network nodes where the connection starts or ends.

TransportConnectionOsgVisualizer simple module

This module visualizes transport layer connections on a 3D osg scene. It displays a pair of colored icons for each connection at the network nodes where the connection starts or ends.

TransportConnectionVisualizer compound module

This module integrates canvas and osg transport connection visualizers into a single module.

TransportRouteCanvasVisualizer simple module

This module visualizes transport layer routes on a 2D canvas. It displays an polyline arrow for each active route in the network. See the documentation of the base module for what constitutes an active route. The arrow points from the source towards the destination. If a route is used in both directions then there are separate pathes for them. Each polyline fades out over time as the route becomes inactive unless it is reinforced by another packet. The polyline automatically follows the movement of mobile nodes.

TransportRouteOsgVisualizer simple module

This module visualizes transport layer routes on a 3D osg scene. It displays an polyline arrow for each active route in the network. See the documentation of the base module for what constitutes an active route. The arrow points from the source towards the destination. If a route is used in both directions then there are separate pathes for them. Each polyline fades out over time as the route becomes inactive unless it is reinforced by another packet. The polyline automatically follows the movement of mobile nodes.

TransportRouteVisualizer compound module

This module integrates canvas and osg transport route visualizers into a single module.

ned

Name Type Description
DatarateChannel channel (no description)
DelayChannel channel (no description)
IBidirectionalChannel module interface (no description)
IdealChannel channel (no description)
IUnidirectionalChannel module interface (no description)