Package: inet.routing.gpsr
GPSR
simple moduleThis module provides Greedy Perimeter Stateless Routing for Wireless Networks. The implementation supports both GG and RNG planarization algorithms.
For more information on the routing algorithm, see the GPSR paper htk/publication/2000-mobi-karp-kung.pdf" target="_blank">http://www.eecs.harvard.edu/htk/publication/2000-mobi-karp-kung.pdf
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Used in compound modules
| Name | Type | Description |
|---|---|---|
| MultiGPSR | compound module |
This module provides GPSR routing for multiple network protocols simultaneously. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| interfaceTableModule | string |
context parameters |
|
| routingTableModule | string | ||
| networkProtocolModule | string | "^.networkLayer.ip" | |
| outputInterface | string | "wlan0" | |
| planarizationMode | int | 0 |
GPSR parameters |
| interfaces | string | "*" | |
| beaconInterval | double | 10s | |
| maxJitter | double | 1s | |
| neighborValidityInterval | double | 30s | |
| positionByteLength | int | 2 * 4B |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/routing |
properties |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| ipIn | input | ||
| ipOut | output |
Source code
// // This module provides Greedy Perimeter Stateless Routing for Wireless Networks. // The implementation supports both GG and RNG planarization algorithms. // // For more information on the routing algorithm, see the GPSR paper // http://www.eecs.harvard.edu/~htk/publication/2000-mobi-karp-kung.pdf // simple GPSR like IGPSR { parameters: // properties @display("i=block/routing"); // context parameters string interfaceTableModule; // The path to the InterfaceTable module string routingTableModule; string networkProtocolModule = default("^.networkLayer.ip"); string outputInterface = default("wlan0"); // GPSR parameters int planarizationMode @enum(0,1) = default(0); // 0 for GG, 1 for RNG string interfaces = default("*"); double beaconInterval @unit("s") = default(10s); double maxJitter @unit("s") = default(1s); double neighborValidityInterval @unit("s") = default(30s); int positionByteLength @unit(B) = default(2 * 4B); gates: input ipIn; output ipOut; }File: src/inet/routing/gpsr/GPSR.ned