Helper class that adds ns3::Ipv4StaticRouting objects. More...
#include "ipv4-static-routing-helper.h"
Inheritance diagram for ns3::Ipv4StaticRoutingHelper:
Collaboration diagram for ns3::Ipv4StaticRoutingHelper:Public Member Functions | |
| Ipv4StaticRoutingHelper () | |
| Ipv4StaticRoutingHelper (const Ipv4StaticRoutingHelper &o) | |
| Construct an Ipv4StaticRoutingHelper from another previously initialized instance (Copy Constructor). | |
| void | AddMulticastRoute (Ptr< Node > n, Ipv4Address source, Ipv4Address group, Ptr< NetDevice > input, NetDeviceContainer output) |
| Add a multicast route to a node and net device using explicit Ptr<Node> and Ptr<NetDevice> | |
| void | AddMulticastRoute (Ptr< Node > n, Ipv4Address source, Ipv4Address group, std::string inputName, NetDeviceContainer output) |
| Add a multicast route to a node and device using a Ptr<Node> and a name string previously associated to the device using the Object Name Service. | |
| void | AddMulticastRoute (std::string n, Ipv4Address source, Ipv4Address group, Ptr< NetDevice > input, NetDeviceContainer output) |
| Add a multicast route to a node and device using a name string previously associated to the node using the Object Name Service and a Ptr<NetDevice> | |
| void | AddMulticastRoute (std::string nName, Ipv4Address source, Ipv4Address group, std::string inputName, NetDeviceContainer output) |
| Add a multicast route to a node and device using name strings previously associated to both the node and device using the Object Name Service. | |
| Ipv4StaticRoutingHelper * | Copy () const override |
| Ptr< Ipv4RoutingProtocol > | Create (Ptr< Node > node) const override |
| Ptr< Ipv4StaticRouting > | GetStaticRouting (Ptr< Ipv4 > ipv4) const |
| Try and find the static routing protocol as either the main routing protocol or in the list of routing protocols associated with the Ipv4 provided. | |
| Ipv4StaticRoutingHelper & | operator= (const Ipv4StaticRoutingHelper &)=delete |
| void | SetDefaultMulticastRoute (Ptr< Node > n, Ptr< NetDevice > nd) |
| Add a default route to the static routing protocol to forward packets out a particular interface. | |
| void | SetDefaultMulticastRoute (Ptr< Node > n, std::string ndName) |
| Add a default route to the static routing protocol to forward packets out a particular interface. | |
| void | SetDefaultMulticastRoute (std::string nName, Ptr< NetDevice > nd) |
| Add a default route to the static routing protocol to forward packets out a particular interface. | |
| void | SetDefaultMulticastRoute (std::string nName, std::string ndName) |
| Add a default route to the static routing protocol to forward packets out a particular interface. | |
Public Member Functions inherited from ns3::Ipv4RoutingHelper | |
| virtual | ~Ipv4RoutingHelper () |
Additional Inherited Members | |
Static Public Member Functions inherited from ns3::Ipv4RoutingHelper | |
| template<class T > | |
| static Ptr< T > | GetRouting (Ptr< Ipv4RoutingProtocol > protocol) |
| Request a specified routing protocol <T> from Ipv4RoutingProtocol 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::Ipv4StaticRouting objects.
This class is expected to be used in conjunction with ns3::InternetStackHelper::SetRoutingHelper
Definition at line 32 of file ipv4-static-routing-helper.h.
| ns3::Ipv4StaticRoutingHelper::Ipv4StaticRoutingHelper | ( | ) |
Definition at line 27 of file ipv4-static-routing-helper.cc.
Referenced by Copy().
Here is the caller graph for this function:| ns3::Ipv4StaticRoutingHelper::Ipv4StaticRoutingHelper | ( | const Ipv4StaticRoutingHelper & | o | ) |
Construct an Ipv4StaticRoutingHelper from another previously initialized instance (Copy Constructor).
| o | object to be copied |
Definition at line 31 of file ipv4-static-routing-helper.cc.
| void ns3::Ipv4StaticRoutingHelper::AddMulticastRoute | ( | Ptr< Node > | n, |
| Ipv4Address | source, | ||
| Ipv4Address | group, | ||
| Ptr< NetDevice > | input, | ||
| NetDeviceContainer | output | ||
| ) |
Add a multicast route to a node and net device using explicit Ptr<Node> and Ptr<NetDevice>
| n | The node. |
| source | Source address. |
| group | Multicast group. |
| input | Input NetDevice. |
| output | Output NetDevices. |
Definition at line 78 of file ipv4-static-routing-helper.cc.
References Create(), and NS_ASSERT_MSG.
Referenced by AddMulticastRoute(), AddMulticastRoute(), and AddMulticastRoute().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::Ipv4StaticRoutingHelper::AddMulticastRoute | ( | Ptr< Node > | n, |
| Ipv4Address | source, | ||
| Ipv4Address | group, | ||
| std::string | inputName, | ||
| NetDeviceContainer | output | ||
| ) |
Add a multicast route to a node and device using a Ptr<Node> and a name string previously associated to the device using the Object Name Service.
| n | The node. |
| source | Source address. |
| group | Multicast group. |
| inputName | Input NetDevice. |
| output | Output NetDevices. |
Definition at line 115 of file ipv4-static-routing-helper.cc.
References AddMulticastRoute(), and Create().
Here is the call graph for this function:| void ns3::Ipv4StaticRoutingHelper::AddMulticastRoute | ( | std::string | n, |
| Ipv4Address | source, | ||
| Ipv4Address | group, | ||
| Ptr< NetDevice > | input, | ||
| NetDeviceContainer | output | ||
| ) |
Add a multicast route to a node and device using a name string previously associated to the node using the Object Name Service and a Ptr<NetDevice>
| n | The node. |
| source | Source address. |
| group | Multicast group. |
| input | Input NetDevice. |
| output | Output NetDevices. |
Definition at line 126 of file ipv4-static-routing-helper.cc.
References AddMulticastRoute(), and Create().
Here is the call graph for this function:| void ns3::Ipv4StaticRoutingHelper::AddMulticastRoute | ( | std::string | nName, |
| Ipv4Address | source, | ||
| Ipv4Address | group, | ||
| std::string | inputName, | ||
| NetDeviceContainer | output | ||
| ) |
Add a multicast route to a node and device using name strings previously associated to both the node and device using the Object Name Service.
| nName | The node. |
| source | Source address. |
| group | Multicast group. |
| inputName | Input NetDevice. |
| output | Output NetDevices. |
Definition at line 137 of file ipv4-static-routing-helper.cc.
References AddMulticastRoute(), and Create().
Here is the call graph for this function:
|
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::Ipv4RoutingHelper.
Definition at line 36 of file ipv4-static-routing-helper.cc.
References Ipv4StaticRoutingHelper().
Here is the call graph for this function:
|
overridevirtual |
| node | the node on which the routing protocol will run |
This method will be called by ns3::InternetStackHelper::Install
Implements ns3::Ipv4RoutingHelper.
Definition at line 42 of file ipv4-static-routing-helper.cc.
References Create().
Referenced by visualizer.ipython_view.ConsoleView::__init__(), show_last_packets.ShowLastPackets.PacketList::__init__(), visualizer.ipython_view.ConsoleView::_write(), AddMulticastRoute(), AddMulticastRoute(), AddMulticastRoute(), AddMulticastRoute(), test-ns3.NS3BaseTestCase::config_ok(), Create(), visualizer.svgitem.SvgItem::do_set_property(), GetStaticRouting(), SetDefaultMulticastRoute(), SetDefaultMulticastRoute(), SetDefaultMulticastRoute(), SetDefaultMulticastRoute(), test-ns3.NS3StyleTestCase::setUp(), test-ns3.NS3BaseTestCase::setUp(), test-ns3.NS3ExpectedUseTestCase::setUp(), test-ns3.NS3BuildBaseTestCase::test_01_BuildExistingTargets(), test-ns3.NS3ExpectedUseTestCase::test_01_BuildProject(), test-ns3.NS3StyleTestCase::test_01_CheckCMakeFormat(), test-ns3.NS3QualityControlTestCase::test_01_CheckForDeadLinksInSources(), test-ns3.NS3DependenciesTestCase::test_01_CheckIfIncludedHeadersMatchLinkedModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_01_Debug(), test-ns3.NS3CommonSettingsTestCase::test_01_NoOption(), test-ns3.NS3UnusedSourcesTestCase::test_01_UnusedExampleSources(), test-ns3.NS3ExpectedUseTestCase::test_02_BuildAndRunExistingExecutableTarget(), test-ns3.NS3BuildBaseTestCase::test_02_BuildNonExistingTargets(), test-ns3.NS3QualityControlTestCase::test_02_MemoryCheckWithSanitizers(), test-ns3.NS3CommonSettingsTestCase::test_02_NoTaskLines(), test-ns3.NS3ConfigureBuildProfileTestCase::test_02_Release(), test-ns3.NS3ConfigureTestCase::test_02_Tests(), test-ns3.NS3UnusedSourcesTestCase::test_02_UnusedModuleSources(), test-ns3.NS3ExpectedUseTestCase::test_03_BuildAndRunExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_03_BuildProject(), test-ns3.NS3CommonSettingsTestCase::test_03_CheckConfig(), test-ns3.NS3QualityControlTestCase::test_03_CheckImageBrightness(), test-ns3.NS3ConfigureBuildProfileTestCase::test_03_Optimized(), test-ns3.NS3UnusedSourcesTestCase::test_03_UnusedUtilsSources(), test-ns3.NS3ExpectedUseTestCase::test_04_BuildAndRunNonExistingTarget(), test-ns3.NS3BuildBaseTestCase::test_04_BuildProjectNoTaskLines(), test-ns3.NS3QualityControlTestCase::test_04_CheckForBrokenLogs(), test-ns3.NS3CommonSettingsTestCase::test_04_CheckProfile(), test-ns3.NS3ConfigureTestCase::test_04_DisableModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_04_Typo(), test-ns3.NS3BuildBaseTestCase::test_05_BreakBuild(), test-ns3.NS3CommonSettingsTestCase::test_05_CheckVersion(), test-ns3.NS3ConfigureTestCase::test_05_EnableModulesComma(), test-ns3.NS3ExpectedUseTestCase::test_05_RunNoBuildExistingExecutableTarget(), test-ns3.NS3ConfigureBuildProfileTestCase::test_05_TYPO(), test-ns3.NS3ConfigureTestCase::test_06_DisableModulesComma(), test-ns3.NS3ConfigureBuildProfileTestCase::test_06_OverwriteDefaultSettings(), test-ns3.NS3ExpectedUseTestCase::test_06_RunNoBuildExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_06_TestVersionFile(), test-ns3.NS3BuildBaseTestCase::test_07_OutputDirectory(), test-ns3.NS3ExpectedUseTestCase::test_07_RunNoBuildNonExistingExecutableTarget(), test-ns3.NS3ConfigureTestCase::test_08_DryRun(), test-ns3.NS3BuildBaseTestCase::test_08_InstallationAndUninstallation(), test-ns3.NS3ExpectedUseTestCase::test_08_RunNoBuildGdb(), test-ns3.NS3ConfigureTestCase::test_09_PropagationOfReturnCode(), test-ns3.NS3ExpectedUseTestCase::test_09_RunNoBuildValgrind(), test-ns3.NS3BuildBaseTestCase::test_09_Scratches(), test-ns3.NS3BuildBaseTestCase::test_10_AmbiguityCheck(), test-ns3.NS3ConfigureTestCase::test_10_CheckConfig(), test-ns3.NS3ExpectedUseTestCase::test_10_DoxygenWithBuild(), test-ns3.NS3ConfigureTestCase::test_11_CheckProfile(), test-ns3.NS3ExpectedUseTestCase::test_11_DoxygenWithoutBuild(), test-ns3.NS3BuildBaseTestCase::test_11_StaticBuilds(), test-ns3.NS3ConfigureTestCase::test_12_CheckVersion(), test-ns3.NS3BuildBaseTestCase::test_12_CppyyBindings(), test-ns3.NS3ExpectedUseTestCase::test_12_SphinxDocumentation(), test-ns3.NS3ExpectedUseTestCase::test_13_Documentation(), test-ns3.NS3BuildBaseTestCase::test_13_FetchOptionalComponents(), test-ns3.NS3ConfigureTestCase::test_13_Scratches(), test-ns3.NS3ExpectedUseTestCase::test_14_EnableSudo(), test-ns3.NS3BuildBaseTestCase::test_14_LinkContribModuleToSrcModule(), test-ns3.NS3ConfigureTestCase::test_14_MpiCommandTemplate(), test-ns3.NS3ExpectedUseTestCase::test_15_CommandTemplate(), test-ns3.NS3ConfigureTestCase::test_15_InvalidLibrariesToLink(), test-ns3.NS3ExpectedUseTestCase::test_16_ForwardArgumentsToRunTargets(), test-ns3.NS3ConfigureTestCase::test_16_LibrariesContainingLib(), test-ns3.NS3ConfigureTestCase::test_17_CMakePerformanceTracing(), test-ns3.NS3ExpectedUseTestCase::test_17_RunNoBuildLldb(), test-ns3.NS3ConfigureTestCase::test_18_CheckBuildVersionAndVersionCache(), test-ns3.NS3ExpectedUseTestCase::test_18_CpmAndVcpkgManagers(), test-ns3.NS3ConfigureTestCase::test_19_FilterModuleExamplesAndTests(), test-ns3.NS3ConfigureTestCase::test_20_CheckFastLinkers(), test-ns3.NS3ConfigureTestCase::test_21_ClangTimeTrace(), test-ns3.NS3ConfigureTestCase::test_22_NinjaTrace(), test-ns3.NS3ConfigureTestCase::test_23_PrecompiledHeaders(), test-ns3.NS3ConfigureTestCase::test_24_CheckTestSettings(), python-unit-tests.TestSimulator::testAttributes(), python-unit-tests.TestSimulator::testCommandLine(), python-unit-tests.TestSimulator::testIdentity(), python-unit-tests.TestSimulator::testSchedule(), python-unit-tests.TestSimulator::testScheduleDestroy(), python-unit-tests.TestSimulator::testSubclass(), python-unit-tests.TestSimulator::testTimeComparison(), python-unit-tests.TestSimulator::testTimeNumericOperations(), python-unit-tests.TestSimulator::testTypeId(), and visualizer.core.Node::tooltip_query().
Here is the call graph for this function:| Ptr< Ipv4StaticRouting > ns3::Ipv4StaticRoutingHelper::GetStaticRouting | ( | Ptr< Ipv4 > | ipv4 | ) | const |
Try and find the static routing protocol as either the main routing protocol or in the list of routing protocols associated with the Ipv4 provided.
| ipv4 | the Ptr<Ipv4> to search for the static routing protocol |
Definition at line 48 of file ipv4-static-routing-helper.cc.
References Create(), NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
Referenced by LteAggregationThroughputScaleTestCase::GetThroughput().
Here is the call graph for this function:
Here is the caller graph for this function:
|
delete |
Add a default route to the static routing protocol to forward packets out a particular interface.
Functionally equivalent to: route add 224.0.0.0 netmask 240.0.0.0 dev nd
| n | node |
| nd | device of the node to add default route |
Definition at line 149 of file ipv4-static-routing-helper.cc.
References Create(), and NS_ASSERT_MSG.
Referenced by SetDefaultMulticastRoute(), SetDefaultMulticastRoute(), and SetDefaultMulticastRoute().
Here is the call graph for this function:
Here is the caller graph for this function:Add a default route to the static routing protocol to forward packets out a particular interface.
Functionally equivalent to: route add 224.0.0.0 netmask 240.0.0.0 dev nd
| n | node |
| ndName | string with name previously associated to device using the Object Name Service |
Definition at line 168 of file ipv4-static-routing-helper.cc.
References Create(), and SetDefaultMulticastRoute().
Here is the call graph for this function:| void ns3::Ipv4StaticRoutingHelper::SetDefaultMulticastRoute | ( | std::string | nName, |
| Ptr< NetDevice > | nd | ||
| ) |
Add a default route to the static routing protocol to forward packets out a particular interface.
Functionally equivalent to: route add 224.0.0.0 netmask 240.0.0.0 dev nd
| nName | string with name previously associated to node using the Object Name Service |
| nd | device of the node to add default route |
Definition at line 175 of file ipv4-static-routing-helper.cc.
References Create(), and SetDefaultMulticastRoute().
Here is the call graph for this function:| void ns3::Ipv4StaticRoutingHelper::SetDefaultMulticastRoute | ( | std::string | nName, |
| std::string | ndName | ||
| ) |
Add a default route to the static routing protocol to forward packets out a particular interface.
Functionally equivalent to: route add 224.0.0.0 netmask 240.0.0.0 dev nd
| nName | string with name previously associated to node using the Object Name Service |
| ndName | string with name previously associated to device using the Object Name Service |
Definition at line 182 of file ipv4-static-routing-helper.cc.
References Create(), and SetDefaultMulticastRoute().
Here is the call graph for this function: