Author: solar 2012-01-31 13:50:13
Published on: 2012-01-31T13:50:13+00:00
The email thread discusses the potential removal of IRC bootstrapping mechanism from Bitcoin. With 5K clients on IRC, it is suggested to go back to a single-channel model as usage is declining and people may be turning off IRC. However, it's important to have more mechanisms than just DNS and hardcoded seed nodes, as they are subject to blocking. The fact that users can add nodes/addr.txt might be enough of an alternative to address this. Removing IRC would remove a fair bit of code and stop reports of various ISPs tagging Bitcoin as malware. If we decide to keep IRC around, it is important to fix its stupid behavior, which is highly pro-partitioning. For instance, /who only returns a few nodes, and other than who, we only learn about nodes when they join. Nodes sit in a single channel forever, and nodes recently seen on IRC are highly promoted in peer selection. IRC works well with many channels having a few clients each, not with one channel having many clients. The ideal thing would be some kind of dynamic sizing, which applies to the number of outbound connections and transaction relaying logic too. The same values that work for 1k clients don't work as well for 50k. It is difficult to get this kind of thing tuned correctly, especially with the added complexity of potentially malicious nodes. In any case, it's good to have a bunch of different ways to bootstrap in case one or the other is broken/poisoned. There are isolation problems due to there not being many Bitcoin nodes leaving/joining the network. The ones that are stable are happy with their 8 connections or whatever they're set to, and they're just relaying. To ensure less FUD and encourage people from trying to block Bitcoin, it is important to have more mechanisms.
Updated on: 2023-06-05T02:12:29.747263+00:00