Helper for GlobalRouter interface. More...
#include <ndn-global-routing-helper.hpp>
Public Member Functions | |
void | Install (Ptr< Node > node) |
Install GlobalRouter interface on a node. More... | |
void | Install (const NodeContainer &nodes) |
Install GlobalRouter interface on nodes. More... | |
void | InstallAll () |
Install GlobalRouter interface on all nodes. More... | |
void | AddOrigin (const std::string &prefix, Ptr< Node > node) |
Add `prefix' as origin on `node'. More... | |
void | AddOrigins (const std::string &prefix, const NodeContainer &nodes) |
Add `prefix' as origin on all `nodes'. More... | |
void | AddOrigin (const std::string &prefix, const std::string &nodeName) |
Add `prefix' as origin on node `nodeName'. More... | |
void | AddOriginsForAll () |
Add origin to each node based on the node's name (using Names class) More... | |
Static Public Member Functions | |
static void | CalculateRoutes () |
Calculate for every node shortest path trees and install routes to all prefix origins. More... | |
static void | CalculateLfidRoutes () |
Calculates a set of loop-free multipath routes. More... | |
static void | CalculateAllPossibleRoutes () |
Calculate all possible next-hop independent alternative routes. More... | |
Helper for GlobalRouter interface.
Definition at line 39 of file ndn-global-routing-helper.hpp.
void ns3::ndn::GlobalRoutingHelper::Install | ( | Ptr< Node > | node | ) |
Install GlobalRouter interface on a node.
Note that GlobalRouter will also be installed on all connected nodes and channels
node | Node to install GlobalRouter interface |
Definition at line 67 of file ndn-global-routing-helper.cpp.
References ns3::ndn::GlobalRouter::AddIncidency().
Referenced by Install(), and InstallAll().
void ns3::ndn::GlobalRoutingHelper::Install | ( | const NodeContainer & | nodes | ) |
Install GlobalRouter interface on nodes.
Note that GlobalRouter will also be installed on all connected nodes and channels
nodes | NodeContainer to install GlobalRouter interface |
Definition at line 164 of file ndn-global-routing-helper.cpp.
References Install().
void ns3::ndn::GlobalRoutingHelper::InstallAll | ( | ) |
Install GlobalRouter interface on all nodes.
Definition at line 172 of file ndn-global-routing-helper.cpp.
References Install().
void ns3::ndn::GlobalRoutingHelper::AddOrigin | ( | const std::string & | prefix, |
Ptr< Node > | node | ||
) |
Add `prefix' as origin on `node'.
prefix | Prefix that is originated by node, e.g., node is a producer for this prefix |
node | Pointer to a node |
Definition at line 178 of file ndn-global-routing-helper.cpp.
Referenced by AddOrigin(), AddOrigins(), and AddOriginsForAll().
void ns3::ndn::GlobalRoutingHelper::AddOrigins | ( | const std::string & | prefix, |
const NodeContainer & | nodes | ||
) |
Add `prefix' as origin on all `nodes'.
prefix | Prefix that is originated by nodes |
nodes | NodeContainer |
Definition at line 188 of file ndn-global-routing-helper.cpp.
References AddOrigin().
void ns3::ndn::GlobalRoutingHelper::AddOrigin | ( | const std::string & | prefix, |
const std::string & | nodeName | ||
) |
Add `prefix' as origin on node `nodeName'.
prefix | Prefix that is originated by node, e.g., node is a producer for this prefix |
nodeName | Name of the node that is associated with Ptr<Node> using ns3::Names |
Definition at line 196 of file ndn-global-routing-helper.cpp.
References AddOrigin().
void ns3::ndn::GlobalRoutingHelper::AddOriginsForAll | ( | ) |
Add origin to each node based on the node's name (using Names class)
Definition at line 205 of file ndn-global-routing-helper.cpp.
References AddOrigin().
|
static |
Calculate for every node shortest path trees and install routes to all prefix origins.
Definition at line 218 of file ndn-global-routing-helper.cpp.
References ns3::ndn::FibHelper::AddRoute(), and ns3::ndn::L3Protocol::getForwarder().
|
static |
Calculates a set of loop-free multipath routes.
For full description please see tech tech report "Hop-by-Hop Multipath Routing: Choosing the Right Nexthop Set" and the associated Github repository:
https://github.com/schneiderklaus/ndnSIM-routing
Definition at line 41 of file ndn-global-routing-helper-lfid.cpp.
References ns3::ndn::FibHelper::AddRoute(), ns3::ndn::DOWNWARD, ns3::ndn::removeDeadEnds(), ns3::ndn::removeLoops(), and ns3::ndn::UPWARD.
|
static |
Calculate all possible next-hop independent alternative routes.
Refer to the implementation for more details.
Note that this method is highly experimental and should be used with caution (very time consuming).
Definition at line 283 of file ndn-global-routing-helper.cpp.
References ns3::ndn::FibHelper::AddRoute(), and ns3::ndn::L3Protocol::getForwarder().