Module router
Expand description
The router finds paths within a NetworkGraph
for a payment.
Structs§
- The blinded portion of a
Path
, if we’re routing to a recipient who provided blinded paths in theirBolt12Invoice
. - A
Router
implemented usingfind_route
. - A data structure for tracking in-flight HTLCs. May be used during pathfinding to account for in-use channel liquidity.
- A path in a
Route
to the payment recipient. Must always be at least length one. If noPath::blinded_tail
is present, thenPath::hops
length may be up to 19. - Information used to route a payment.
- A route directs a payment from the sender (us) to the recipient. If the recipient supports MPP, it can take multiple paths. Each path is composed of one or more hops through the network.
- A list of hops along a payment path terminating with a channel to the recipient.
- A channel descriptor for a hop along a payment path.
- A hop in a route, and additional metadata about it. “Hop” is defined as a node and the channel that leads to it.
- Parameters needed to find a
Route
. ScoreLookUp
implementation that factors in in-flight HTLC liquidity.
Enums§
- The recipient of a payment, differing based on whether they’ve hidden their identity with route blinding.
Constants§
- Maximum number of paths we allow an (MPP) payment to have.
- Maximum total CTLV difference we allow for a full payment path.
Traits§
- A trait defining behavior for routing a payment.
Functions§
- Construct a route from us (payer) to the target node (payee) via the given hops (which should exclude the payer, but include the payee). This may be useful, e.g., for probing the chosen path.
- Finds a route from us (payer) to the given target node (payee).