DistanceVectorRoutingAlgorithm<T> class

Distance-Vector Routing Algorithm implementation

Constructors

DistanceVectorRoutingAlgorithm({Duration updateInterval = _defaultUpdateInterval, Duration routeTimeout = _routeTimeout, int maxIterations = _maxIterations, bool enableSplitHorizon = true, bool enablePoisonReverse = true, bool enableTriggeredUpdates = true})
Creates a distance-vector routing algorithm instance
const

Properties

enablePoisonReverse bool
final
enableSplitHorizon bool
final
enableTriggeredUpdates bool
final
hashCode int
The hash code for this object.
no setterinherited
maxIterations int
final
routeTimeout Duration
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
updateInterval Duration
final

Methods

cleanupStaleRoutes(DistanceVectorRoutingTable<T> routingTable, DateTime currentTime) DistanceVectorRoutingTable<T>
Removes stale routes and performs garbage collection
computeRoutes(Map<T, Map<T, num>> network, T sourceNode, {Map<T, NeighborAdvertisement<T>>? initialAdvertisements}) DistanceVectorRoutingTable<T>
Computes complete routing table using distance-vector algorithm
getDistanceVectorStatistics(DistanceVectorRoutingTable<T> routingTable) Map<String, dynamic>
Gets comprehensive statistics for monitoring and analysis
getNextUpdateTime(DistanceVectorRoutingTable<T> routingTable) DateTime
Gets the next update time for the routing table
needsUpdate(DistanceVectorRoutingTable<T> routingTable, DateTime currentTime) bool
Checks if routing table needs updating based on time intervals
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
processNeighborUpdate(DistanceVectorRoutingTable<T> currentTable, NeighborAdvertisement<T> advertisement, Map<T, Map<T, num>> network) DistanceVectorRoutingTable<T>?
Processes a single neighbor advertisement update
toString() String
A string representation of this object.
inherited
updateFromNeighborAdvertisements(DistanceVectorRoutingTable<T> currentTable, Map<T, NeighborAdvertisement<T>> advertisements, Map<T, Map<T, num>> network) DistanceVectorRoutingTable<T>?
Updates routing table based on neighbor advertisements
validateDistanceVectorTable(DistanceVectorRoutingTable<T> routingTable, Map<T, Map<T, num>> network) List<String>
Validates distance-vector routing table consistency

Operators

operator ==(Object other) bool
The equality operator.
inherited