Specifications of Broadcasting Layers



Summary:

In a discussion thread on the Lightning-dev mailing list, Rusty Russell and Anthony Towns were discussing the frequency of channel updates to be sent over IRC. Rusty estimated that pubkey-channel-relationships would be relayed every 10 days at approximately 264 bytes, while node addresses/IP would be sent every 12 hours at around 133 bytes and channel-status would be sent once an hour at 176 bytes. However, Rusty noted that sending updates once per hour might be optimistic as channels approach exhaustion. Rusty's design point was for 1 million nodes, ideally on a cell phone. In the short term, Bitcoin used IRC as the peer protocol because it was easy to debug and implement. Rusty plans to aim for that while researching more ambitious proposals. Anthony agreed with Rusty's plan and suggested being able to log the entire network dynamics. Doing the above estimates over IRC would require doubling the byte size to encode keys/sigs into hex and adding about 32B per message for IRC protocol overhead. Assuming approximately 10 channels per node, the estimated bytes per node per day would be 560B for pubkey-channel-relationships, 564B for node addresses/IP, and 384B for channel-status, respectively, totaling 93,284B/node/day. Rusty acknowledged that they would get kicked off freenode long before reaching that number but believed it would allow them to master the other parts of the protocol first, up to a few hundred nodes.


Updated on: 2023-05-23T21:03:46.002849+00:00