NextHopRoutingTable¶
Package: inet.networklayer.nexthop
simple module NextHopRoutingTable
Stores next hop routes used by the next hop forwarding protocol.
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Provides a network layer for the next hop forwarding. |
Extends¶
Name |
Type |
Description |
|---|---|---|
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 |
|
addressType |
string |
“modulepath” |
|
routerId |
string |
“auto” |
For routers, the router id using address dotted |
forwarding |
bool |
true |
Turns IP forwarding on/off |
multicastForwarding |
bool |
false |
Turns multicast forwarding on/off |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
NextHopRoutingTable |
|
display |
i=block/table |
Signals¶
Name |
Type |
Unit |
Description |
|---|---|---|---|
routeAdded |
inet::NextHopRoute |
||
routeChanged |
inet::NextHopRoute |
||
routeDeleted |
inet::NextHopRoute |
Source code¶
//
// Stores next hop routes used by the next hop forwarding protocol.
//
simple NextHopRoutingTable extends SimpleModule like IRoutingTable
{
parameters:
@class(NextHopRoutingTable);
string interfaceTableModule; // The path to the InterfaceTable module
displayStringTextFormat = default("");
@display("i=block/table");
string addressType @enum("mac","modulepath","moduleid") = default("modulepath");
string routerId = default("auto"); // For routers, the router id using address dotted
// notation; specify "auto" to select the highest
// interface address; should be left empty ("") for hosts
bool forwarding = default(true); // Turns IP forwarding on/off
bool multicastForwarding = default(false); // Turns multicast forwarding on/off
@signal[routeAdded](type=inet::NextHopRoute);
@signal[routeDeleted](type=inet::NextHopRoute);
@signal[routeChanged](type=inet::NextHopRoute);
}