Rene Pickhardt brought up the problem of latency on the Lightning Network in this answer on using nested (or "recursive") MuSig2 or FROST when providing a signature within an existing Lightning channel or to cooperatively close a Lightning channel.

(This could be done once the Lightning protocol supports Schnorr signatures even if the 2-of-2 multisig between the channel counterparties that is funded at the opening of the channel remained 2-of-2.)

How to treat latency isn't spec'ed in the BOLTs. So how do the various Lightning implementations currently treat latency? How long do they wait for a peer to provide a signature before assuming the peer is unresponsive and instead using an unhappy path? This would give an upper limit on how long the MuSig2 or FROST protocol could (currently) take to generate a valid signature if they were used in this use case.

1 Answer 1


This was discussed on the lightning-dev mailing list.

Christian Decker stated:

It is worth mentioning here that the LN protocol is generally not very latency sensitive, and from my experience can easily handle very slow signers (3-5 seconds delay) without causing too many issues, aside from slower forwards in case we are talking about a routing node. I'd expect routing node signers to be well below the 1 second mark, even when implementing more complex signer logic, including MuSig2 or nested FROST.

In particular remember that the LN protocol implements a batch mechanism, with changes applied to the commitment transaction as a batch. Not every change requires a commitment and thus a signature. This means that while a slow signer may have an impact on payment latency, it should generally not have an impact on throughput on the routing nodes.

That doesn't mean that routers shouldn't strive to be as fast as possible, but I think the MuSig schemes, executed over local links, is unlikely to be problematic when considering overall network latency that we have anyway. For edge nodes it's rather nice to have relaxed timings, given that they might be on slow or flaky connections, but routers are a completely different category.

Matt Corallo added:

In general, and especially for "edge nodes", yes, but if forwarding nodes start taking a full second to forward a payment, we probably need to start aggressively avoiding any such nodes - while I'd love for all forwarding nodes to take 30 seconds to forward to improve privacy, users ideally expect payments to complete in 100ms, with multiple payment retries in between.

This obviously probably isn't ever going to happen in lightning, but getting 95th percentile payments down to one second is probably a good goal, something that requires never having to retry payments and also having forwarding nodes not take more than, say, 150ms.

Of course I don't think we should ever introduce a timeout on the peer level - if your peer went away for a second and isn't responding quickly to channel updates it doesn't merit closing a channel, but its something we will eventually want to handle in route selection if it becomes more of an issue going forward.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.