Package: inet.networklayer.nexthop
NextHopForwarding
simple moduleThis module is a simplified next hop forwarding that routes datagrams using different kind of network addresses.
Author: Andras Varga
Used in compound modules
Name | Type | Description |
---|---|---|
NextHopNetworkLayer | compound module |
This module provides a network layer for the next hop forwarding. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
interfaceTableModule | string |
The path to the InterfaceTable module |
|
routingTableModule | string | ||
arpModule | string | ||
procDelay | double | 0s | |
hopLimit | int | 32 | |
headerLength | int | 10B |
Properties
Name | Value | Description |
---|---|---|
display | i=block/routing |
Gates
Name | Direction | Size | Description |
---|---|---|---|
transportIn | input | ||
transportOut | output | ||
queueIn | input | ||
queueOut | output |
Signals
Name | Type | Unit |
---|---|---|
packetDropped | inet::Packet | |
packetSentToUpper | inet::Packet |
Source code
// // This module is a simplified next hop forwarding that routes // datagrams using different kind of network addresses. // // @author Andras Varga // simple NextHopForwarding { parameters: string interfaceTableModule; // The path to the InterfaceTable module string routingTableModule; string arpModule; double procDelay @unit(s) = default(0s); int hopLimit = default(32); int headerLength @unit(B) = default(10B); @display("i=block/routing"); @signal[packetDropped](type=inet::Packet); @signal[packetSentToUpper](type=inet::Packet); gates: input transportIn @labels(TcpHeader,UdpHeader); output transportOut @labels(TcpHeader,UdpHeader); input queueIn @labels(NextHopDatagram); output queueOut @labels(NextHopDatagram); }File: src/inet/networklayer/nexthop/NextHopForwarding.ned