LinkStateRouting

Package: inet.networklayer.ted

simple module LinkStateRouting

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

Collaborations

The link state database is kept in the Ted module.

inet.networklayer.ted.LinkStateRoutingLinkStateRoutingsimple

Usage diagram

Inheritance diagram

Used in compound modules

Name

Type

Description

MplsRouterBase

compound module

Base module for MPLS-capable routers. Extends the standard Router with the MPLS data plane (Mpls, LibTable) and the Traffic Engineering Database (Ted, LinkStateRouting) common to all MPLS signaling protocols.

Extends

Name

Type

Description

SimpleModule

simple module

Base module for all INET simple modules.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“”

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

interfaceTableModule

string

The path to the InterfaceTable module

routingTableModule

string

tedModule

string

peers

string

Properties

Name

Value

Description

class

LinkStateRouting

display

i=block/network2

Gates

Name

Direction

Size

Description

ipIn

input

ipOut

output

Source code

//
// Implements a very minimalistic link state routing protocol.
// Apart from the basic topology information, the current link usage
// is distributed to all participants in the network (by means of flooding).
//
// Collaborations
//
// The link state database is kept in the ~Ted module.
//
simple LinkStateRouting extends SimpleModule
{
    parameters:
        @class(LinkStateRouting);
        string interfaceTableModule;   // The path to the InterfaceTable module
        string routingTableModule;
        string tedModule;
        string peers;
        @display("i=block/network2");
    gates:
        input ipIn @labels(Ipv4ControlInfo/up);
        output ipOut @labels(Ipv4ControlInfo/down);
}

File: src/inet/networklayer/ted/LinkStateRouting.ned