Ipv6RoutingTable
Package: inet.networklayer.ipv6

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

See also: Ipv6, Ipv6NeighbourDiscovery, Icmpv6

Ipv6RoutingTable

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
Ipv6NetworkLayer compound module

Represents an Ipv6 network layer (L3).

Parameters

Name Type Default value Description
interfaceTableModule string

The path to the InterfaceTable module

ipv6TunnelingModule string "^.ipv6.iptunneling"
routes xml xml("")
forwarding bool false
isRouter bool this.forwarding
multicastForwarding bool false
useAdminDist bool false

Use Cisco like administrative distances

Properties

Name Value Description
display i=block/table

Signals

Name Type Unit
routeDeleted Ipv6Route
mrouteChanged IPv6MulticastRoute
mrouteDeleted IPv6MulticastRoute
routeChanged Ipv6Route
mrouteAdded IPv6MulticastRoute
routeAdded Ipv6Route

Source code

//
// 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
//
// @see ~Ipv6, ~Ipv6NeighbourDiscovery, ~Icmpv6
//
simple Ipv6RoutingTable like IRoutingTable
{
    parameters:
        string interfaceTableModule;   // The path to the InterfaceTable module
        string ipv6TunnelingModule = default("^.ipv6.iptunneling");
        @display("i=block/table");
        xml routes = default(xml("<routingTable/>"));
        bool forwarding = default(false);
        bool isRouter = default(this.forwarding);
        bool multicastForwarding = default(false);
        bool useAdminDist = default(false);     // Use Cisco like administrative distances
        @signal[routeAdded](type=Ipv6Route);
        @signal[routeChanged](type=Ipv6Route);
        @signal[routeDeleted](type=Ipv6Route);
        @signal[mrouteAdded](type=IPv6MulticastRoute);
        @signal[mrouteDeleted](type=IPv6MulticastRoute);
        @signal[mrouteChanged](type=IPv6MulticastRoute);
}
File: src/inet/networklayer/ipv6/Ipv6RoutingTable.ned