Module basic

Source
Expand description

Contains Shortest, Valiant, Mindless, WeighedShortest.

Implementation of basic routing algorithms.

  • Shortest
  • Valiant
  • Mindless
  • WeighedShortest

Structs§

Mindless
Mindless routing Employ any path until reaching a router with the server atached. The interested may read a survey of random walks on graphs to try to predict the time to reach the destination. For example “Random Walks on Graphs: A Survey” by L. Lovász. Note that every cycle the request is made again. Hence, the walk is not actually unform random when there is network contention.
Shortest
Use the shortest path from origin to destination
Valiant
This is Valiant’s randomization scheme. Each packet to be sent from a source to a destination is routed first to a random intermediate node, and from that intermediate to destination. These randomization makes the two parts behave as if the traffic pattern was uniform at the cost of doubling the lengths.
WeighedShortest
Use the shortest path from origin to destination, giving a weight to each link class. Note that it uses information based on BFS and not on Dijkstra, which may cause discrepancies in some topologies. See the Topology::compute_distance_matrix and its notes on weights for more informations.