Helper class that adds ns3::Ipv4GlobalRouting objects. More...
#include "ipv6-global-routing-helper.h"
Public Member Functions | |
| Ipv6GlobalRoutingHelper () | |
| Construct a GlobalRoutingHelper to make life easier for managing global routing tasks. | |
| Ipv6GlobalRoutingHelper (const Ipv6GlobalRoutingHelper &o) | |
| Construct a GlobalRoutingHelper from another previously initialized instance (Copy Constructor). | |
| Ipv6GlobalRoutingHelper * | Copy () const override |
| Ptr< Ipv6RoutingProtocol > | Create (Ptr< Node > node) const override |
| void | InitializeRouters () |
| initialize all nodes as routers. | |
| Ipv6GlobalRoutingHelper & | operator= (const Ipv6GlobalRoutingHelper &)=delete |
| Public Member Functions inherited from ns3::Ipv6RoutingHelper | |
| virtual | ~Ipv6RoutingHelper () |
| Destroy an Ipv6 Ipv6RoutingHelper. | |
Static Public Member Functions | |
| static void | PopulateRoutingTables () |
| Build a routing database and initialize the routing tables of the nodes in the simulation. | |
| static void | RecomputeRoutingTables () |
| Remove all routes that were previously installed in a prior call to either PopulateRoutingTables() or RecomputeRoutingTables(), and add a new set of routes. | |
| Static Public Member Functions inherited from ns3::Ipv6RoutingHelper | |
| template<class T> | |
| static Ptr< T > | GetRouting (Ptr< Ipv6RoutingProtocol > protocol) |
| Request a specified routing protocol <T> from Ipv6RoutingProtocol protocol. | |
| static void | PrintNeighborCacheAllAt (Time printTime, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the neighbor cache of all nodes at a particular time. | |
| static void | PrintNeighborCacheAllEvery (Time printInterval, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the neighbor cache of all nodes at regular intervals specified by user. | |
| static void | PrintNeighborCacheAt (Time printTime, Ptr< Node > node, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the neighbor cache of a node at a particular time. | |
| static void | PrintNeighborCacheEvery (Time printInterval, Ptr< Node > node, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the neighbor cache of a node at regular intervals specified by user. | |
| static void | PrintRoutingTableAllAt (Time printTime, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the routing tables of all nodes at a particular time. | |
| static void | PrintRoutingTableAllEvery (Time printInterval, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the routing tables of all nodes at regular intervals specified by user. | |
| static void | PrintRoutingTableAt (Time printTime, Ptr< Node > node, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the routing tables of a node at a particular time. | |
| static void | PrintRoutingTableEvery (Time printInterval, Ptr< Node > node, Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) |
| prints the routing tables of a node at regular intervals specified by user. | |
Helper class that adds ns3::Ipv4GlobalRouting objects.
Definition at line 23 of file ipv6-global-routing-helper.h.
| ns3::Ipv6GlobalRoutingHelper::Ipv6GlobalRoutingHelper | ( | ) |
Construct a GlobalRoutingHelper to make life easier for managing global routing tasks.
Definition at line 20 of file ipv6-global-routing-helper.cc.
Referenced by Ipv6GlobalRoutingHelper(), Copy(), and operator=().
| ns3::Ipv6GlobalRoutingHelper::Ipv6GlobalRoutingHelper | ( | const Ipv6GlobalRoutingHelper & | o | ) |
Construct a GlobalRoutingHelper from another previously initialized instance (Copy Constructor).
| o | object to be copied |
Definition at line 24 of file ipv6-global-routing-helper.cc.
References Ipv6GlobalRoutingHelper().
|
overridevirtual |
This method is mainly for internal use by the other helpers; clients are expected to free the dynamic memory allocated by this method
Implements ns3::Ipv6RoutingHelper.
Definition at line 29 of file ipv6-global-routing-helper.cc.
References Ipv6GlobalRoutingHelper().
|
overridevirtual |
| node | the node on which the routing protocol will run |
This method will be called by ns3::InternetStackHelper::Install
Implements ns3::Ipv6RoutingHelper.
Definition at line 35 of file ipv6-global-routing-helper.cc.
References ns3::CreateObject(), and NS_LOG_LOGIC.
| void ns3::Ipv6GlobalRoutingHelper::InitializeRouters | ( | ) |
initialize all nodes as routers.
this method queries all the nodes in the simulation and enables ipv6 forwarding on all of them.
|
delete |
|
static |
Build a routing database and initialize the routing tables of the nodes in the simulation.
Makes all nodes in the simulation into routers.
All this function does is call the functions BuildGlobalRoutingDatabase () and InitializeRoutes ().
Definition at line 51 of file ipv6-global-routing-helper.cc.
References ns3::GlobalRouteManager< T >::BuildGlobalRoutingDatabase(), ns3::GlobalRouteManager< T >::InitializeRouters(), and ns3::GlobalRouteManager< T >::InitializeRoutes().
Referenced by BridgeTest::DoRun(), EcmpRouteCalculationTestCase::DoRun(), GlobalRoutingv6ProtocolTestCase::DoRun(), Ipv6DynamicGlobalRoutingTestCase::DoRun(), LanTest::DoRun(), LinkTest::DoRun(), TwoBridgeTest::DoRun(), TwoLanTest::DoRun(), and TwoLinkTest::DoRun().
|
static |
Remove all routes that were previously installed in a prior call to either PopulateRoutingTables() or RecomputeRoutingTables(), and add a new set of routes.
This method does not change the set of nodes over which GlobalRouting is being used, but it will dynamically update its representation of the global topology before recomputing routes. Users must first call PopulateRoutingTables() and then may subsequently call RecomputeRoutingTables() at any later time in the simulation.
Definition at line 59 of file ipv6-global-routing-helper.cc.
References ns3::GlobalRouteManager< T >::BuildGlobalRoutingDatabase(), ns3::GlobalRouteManager< T >::DeleteGlobalRoutes(), and ns3::GlobalRouteManager< T >::InitializeRoutes().