b6199f27da
In this commit we now utilize the node distance heap that was added in a prior commit into our core path finding logic. With this new data structure, we no longer linearly scan the distance of all vertexes from the source node when deciding which one to greedily explore. Instead, we now start with the source added to our distance heap, then new vertexes are progressively added to our heap as their edges are explored. With this change, we move the computational complexity of our path finding algorithm closer to the theoretical limit. |
||
---|---|---|
.. | ||
testdata | ||
errors.go | ||
fibonacci.go | ||
graph.go | ||
heap_test.go | ||
heap.go | ||
log.go | ||
notifications_test.go | ||
notifications.go | ||
pathfind_test.go | ||
pathfind.go | ||
README.md | ||
router.go |
routing
[] (https://travis-ci.org/lightningnetwork/lnd) [] (https://github.com/lightningnetwork/lnd/blob/master/LICENSE) [] (http://godoc.org/github.com/lightningnetwork/lnd/routing)
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