lnd.xprv/routing
Olaoluwa Osuntokun ce7179a468
routing: add basic route pruning in response to HTLC onion errors
This commit adds basic route pruning in response to HTLC onion errors.
With this new change, the router will now prune routes in response to
HTLC errors, which will reduce the time to payment success, and also
avoid a bunch of unnecessary network traffic.

We now respond to two errors lnwire.FailTemporaryChannelFailure and
lnwire.FailUnknownNextPeer. In response to the first error, we’ll prune
all routes that contain the channel which was unable to be routed over.
In response to the second error we’ll prune all routes that contain the
node which couldn’t be found.
2017-10-10 22:19:25 -07:00
..
chainview routing/chainview: Fix data race in block disconnected callback. 2017-09-29 13:53:02 -07:00
testdata routing: add proper test for excessive number of hops 2017-02-02 00:24:16 -08:00
errors.go routing: Require adding edge to node before adding node. 2017-08-02 15:58:58 -07:00
graph.go routing: rewrite package to conform to BOLT07 and factor in fees+timelocks 2016-12-27 16:44:22 -08:00
heap_test.go routing: replace sort.Sort with sort.Slice in heap_test.go 2017-10-02 23:13:47 -07:00
heap.go routing: introduce new heap for storing candidate shortest paths 2017-03-21 12:20:30 -07:00
log.go lnd: remove seelog logger 2017-06-25 14:19:56 +01:00
notifications_test.go routing: update path finding and notifications to use mSAT 2017-08-22 00:53:12 -07:00
notifications.go routing: update path finding and notifications to use mSAT 2017-08-22 00:53:12 -07:00
pathfind_test.go routing: also include the source node in the nextHopMap index 2017-10-10 22:19:23 -07:00
pathfind.go routing: also include the source node in the nextHopMap index 2017-10-10 22:19:23 -07:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
router_test.go routing: implement 2-week zombie channel pruning 2017-10-04 20:46:09 -07:00
router.go routing: add basic route pruning in response to HTLC onion errors 2017-10-10 22:19:25 -07:00

routing

Build Status MIT licensed GoDoc

The routing package implements authentication+validation of channel announcements, pruning of the channel graph, path finding within the network, sending outgoing payments into the network and synchronizing new peers to our channel graph state.

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/routing