NetZone with an explicit routing computed at initialization with Floyd-Warshal.
The path between components is computed at creation time from every one-hop links, using the Floyd-Warshal algorithm.
This result in rather small platform file, slow initialization time, and intermediate memory requirements (somewhere between the one ofDijkstraZone} and the one ofFullZone}).
|
| FloydZone (NetZoneImpl *father, std::string name, resource::NetworkModel *netmodel) |
|
| ~FloydZone () override |
|
void | get_local_route (NetPoint *src, NetPoint *dst, RouteCreationArgs *into, double *latency) override |
| Probe the routing path between two points that are local to the called NetZone. More...
|
|
void | add_route (NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical) override |
|
void | seal () override |
| Seal your netzone once you're done adding content, and before routing stuff through it. More...
|
|
| RoutedZone (NetZoneImpl *father, std::string name, resource::NetworkModel *netmodel) |
|
void | get_graph (xbt_graph_t graph, std::map< std::string, xbt_node_t > *nodes, std::map< std::string, xbt_edge_t > *edges) override |
|
s4u::NetZone * | get_iface () |
|
simgrid::s4u::Host * | create_host (const char *name, std::vector< double > *speed_per_pstate, int core_count, std::map< std::string, std::string > *props) |
| Make an host within that NetZone. More...
|
|
virtual void | add_bypass_route (NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical) |
| Creates a new route in this NetZone. More...
|
|
virtual int | add_component (kernel::routing::NetPoint *elm) |
|
virtual void | add_route (kernel::routing::NetPoint *src, kernel::routing::NetPoint *dst, kernel::routing::NetPoint *gw_src, kernel::routing::NetPoint *gw_dst, std::vector< kernel::resource::LinkImpl *> &link_list, bool symmetrical) |
|
unsigned int | get_table_size () |
|
std::vector< kernel::routing::NetPoint * > | get_vertices () |
|
NetZoneImpl * | get_father () |
|
std::vector< NetZoneImpl * > * | get_children () |
|
const std::string & | get_name () const |
| Retrieves the name of that netzone as a C++ string. More...
|
|
const char * | get_cname () const |
| Retrieves the name of that netzone as a C string. More...
|
|
std::vector< s4u::Host * > | get_all_hosts () |
|
int | get_host_count () |
|
|
enum | RoutingMode { RoutingMode::unset = 0,
RoutingMode::base,
RoutingMode::recursive
} |
|
static void | get_global_route (routing::NetPoint *src, routing::NetPoint *dst, std::vector< resource::LinkImpl *> &links, double *latency) |
|
resource::NetworkModel * | network_model_ |
|
RoutingMode | hierarchy_ = RoutingMode::unset |
|
virtual RouteCreationArgs * | new_extended_route (RoutingMode hierarchy, NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical, bool change_order) |
|
void | get_route_check_params (NetPoint *src, NetPoint *dst) |
|
void | add_route_check_params (NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical) |
|
virtual RouteCreationArgs * | newExtendedRoute (RoutingMode hierarchy, NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical, bool change_order) |
|
void | getRouteCheckParams (NetPoint *src, NetPoint *dst) |
|
void | addRouteCheckParams (NetPoint *src, NetPoint *dst, NetPoint *gw_src, NetPoint *gw_dst, std::vector< resource::LinkImpl *> &link_list, bool symmetrical) |
|
| NetZoneImpl (NetZoneImpl *father, std::string name, resource::NetworkModel *network_model) |
|
virtual | ~NetZoneImpl () |
|
bool | get_bypass_route (routing::NetPoint *src, routing::NetPoint *dst, std::vector< resource::LinkImpl *> &links, double *latency) |
| retrieves the list of all routes of size 1 (of type src x dst x Link) More...
|
|