[Bitcoin-development] have there been complains about network congestion? (router crashes, slow internet when running Bitcoin nodes)
I was wondering if the level of traffic a Bitcoin node gets is or will be so high that you have heard/will hear complains like the following: 1. a home router that crashes or slows down when its NAT pin-hole table overflows, triggered by many TCP connections. 2. a home router that crashes or slows down by UDP traffic 3. a home DSL or cable modem having its send buffer filled up by outgoing data, and the buffer fits seconds worth of bytes. This adds seconds of delay on interactive traffic. For a web site that needs 10 round trips to load this may mean 10s of seconds of delay to load compared to without bittorrent. Skype or other delay sensitive applications would be affected even more. These are issues the bittorrent community faced and eventually solved brilliantly with uTP, which uses a congestion window algorithm that allows you to use as much of the TCP bandwidth as possible and automatically throttling down if there's any cross traffic, while also taking into consideration things like the optimum MTUs (Path MTU discovery), Clock Drift phenomena and other features. I was wondering if we have or expect to have these issues in the future, perhaps uTP could help greatly the performance of the entire network at some point. Detailed information about uTP here http://www.libtorrent.org/utp.html @gubatron -- Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees___ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development
Re: [Bitcoin-development] have there been complains about network congestion? (router crashes, slow internet when running Bitcoin nodes)
On Tuesday, 8 April 2014, at 12:13 pm, Angel Leon wrote: I was wondering if we have or expect to have these issues in the future, perhaps uTP could help greatly the performance of the entire network at some point. Or people could simply learn to configure their routers correctly. The only time I ever notice that Bitcoind is saturating my upstream link is when I try to transfer a file using SCP from a computer on my home network to a computer out on the Internet somewhere. SCP sets the maximize throughput flag in the IP type of service field, and my router interprets that as meaning low priority, and so those SCP transfers get stalled behind Bitcoind. But mostly everything else (e.g., email, web browsing, instant messaging, SSH) shows no degration whatsoever regardless of what Bitcoind is doing. The key is to move the packet queue from the cable modem into the router, where intelligent decisions about packet priority and reordering can be enacted. µTP pretty much reinvents the wheel, and it does so in userspace, where the overhead is greater. There's no need for it if proper QoS is in effect. -- Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees ___ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development
Re: [Bitcoin-development] have there been complains about network congestion? (router crashes, slow internet when running Bitcoin nodes)
On Tue, Apr 8, 2014 at 9:13 AM, Angel Leon gubat...@gmail.com wrote: a home router that crashes or slows down when its NAT pin-hole table overflows, triggered by many TCP connections. We don't form or need to form a great many connections. a home router that crashes or slows down by UDP traffic We don't use UDP. a home DSL or cable modem having its send buffer filled up by outgoing data, and the buffer fits seconds worth of bytes. This adds seconds of delay on interactive traffic. For a web site that needs 10 round trips to load this may mean 10s of seconds of delay to load compared to without bittorrent. Skype or other delay sensitive applications would be affected even more. These are issues the bittorrent community faced and eventually solved brilliantly with uTP, which uses a congestion window algorithm that allows Yes, TCP has a congestion window too, still sometimes some poorly designed or configured routers suffer from buffer bloat. perhaps uTP could help greatly Adding our own UDP network stack involving a ton of exposed code sounds like a great way to gain inadvertent bugs or backdoors. But there doesn't have to be and shouldn't just be one network transport for Bitcoin. You can gateway to other protocols and run them in parallel. I think it would be great for someone to go build an alternative transport protocol to gateway to and see what useful things they can accomplish. -- Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees ___ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development
Re: [Bitcoin-development] have there been complains about network congestion? (router crashes, slow internet when running Bitcoin nodes)
On Tue, Apr 8, 2014 at 6:13 PM, Angel Leon gubat...@gmail.com wrote: I was wondering if the level of traffic a Bitcoin node gets is or will be so high that you have heard/will hear complains like the following: 1. a home router that crashes or slows down when its NAT pin-hole table overflows, triggered by many TCP connections. The default maximum amount of connections is 125, which only happens if you have a stable node that accepts incoming connections. The maximum number of outgoing connections is always 8. Should be no problem even for cheapass routers. 1. a home router that crashes or slows down by UDP traffic N/A - We don't use UDP 1. a home DSL or cable modem having its send buffer filled up by outgoing data, and the buffer fits seconds worth of bytes. This adds seconds of delay on interactive traffic. For a web site that needs 10 round trips to load this may mean 10s of seconds of delay to load compared to without bittorrent. Skype or other delay sensitive applications would be affected even more. Filling up the send buffer is certainly possible. Adding throttling wouldn't be horribly hard, but this is postponed until parallel block download is implemented, so that other peers will not get stuck on your throttled node. 1. I was wondering if we have or expect to have these issues in the future, perhaps uTP could help greatly the performance of the entire network at some point. There is enough lower-hanging fruit left. If you're interested in speeding up the performance I think it's important to start with benchmarking and analysis to find out where the pain points are. Wladimir -- Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees___ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development
Re: [Bitcoin-development] have there been complains about network congestion? (router crashes, slow internet when running Bitcoin nodes)
Those clarifications are what I needed to hear. For some reason I started thinking about this last night and wanted to bring it up just in case it would help, but def. not necessary. Will get back to more low hanging fruit in the UI/UX as I get to know the project more. Gregory: But there doesn't have to be and shouldn't just be one network transport for Bitcoin. is there a formal abstraction for a Transport layer? I suppose if there isn't it'll be there when needed. Thanks! http://twitter.com/gubatron On Tue, Apr 8, 2014 at 12:48 PM, Wladimir laa...@gmail.com wrote: On Tue, Apr 8, 2014 at 6:13 PM, Angel Leon gubat...@gmail.com wrote: I was wondering if the level of traffic a Bitcoin node gets is or will be so high that you have heard/will hear complains like the following: 1. a home router that crashes or slows down when its NAT pin-hole table overflows, triggered by many TCP connections. The default maximum amount of connections is 125, which only happens if you have a stable node that accepts incoming connections. The maximum number of outgoing connections is always 8. Should be no problem even for cheapass routers. 1. a home router that crashes or slows down by UDP traffic N/A - We don't use UDP 1. a home DSL or cable modem having its send buffer filled up by outgoing data, and the buffer fits seconds worth of bytes. This adds seconds of delay on interactive traffic. For a web site that needs 10 round trips to load this may mean 10s of seconds of delay to load compared to without bittorrent. Skype or other delay sensitive applications would be affected even more. Filling up the send buffer is certainly possible. Adding throttling wouldn't be horribly hard, but this is postponed until parallel block download is implemented, so that other peers will not get stuck on your throttled node. 1. I was wondering if we have or expect to have these issues in the future, perhaps uTP could help greatly the performance of the entire network at some point. There is enough lower-hanging fruit left. If you're interested in speeding up the performance I think it's important to start with benchmarking and analysis to find out where the pain points are. Wladimir -- Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees___ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development