我遇到了很多麻烦,当我试图用libtorrent播撒大量的洪流(> 10k)时。
它们包括:
我以前让他们自动驾驶,但我发现几乎所有的都是不可用的。
以下是我当前的设置:
sessionSettings.setActiveDownloads(5);
sessionSettings.setActiveLimit(-1);
sessionSettings.setActiveSeeds(-1);
sessionSettings.setActiveDHTLimit(5);
sessionSettings.setPeerConnectTimeout(25);
sessionSettings.announceDoubleNAT(true);
sessionSettings.setUploadRateLimit(0);
sessionSettings.setDownloadRateLimit(0);
sessionSettings.setHalgOpenLimit(5);
sessionSettings.useReadCache(false);
sessionSettings.setMaxPeerlistSize(500);
我的当前方法是遍历所有的10k+洪流,并运行torrent.resume()。当使用汽车时,这基本上只启动了大约50的洪流,而其他的则以每10分钟1次的速度开始,这是行不通的。当不使用汽车时,它会阻塞我的连接。
但是,当我只做了30次,他们似乎都是正确的种子,所以我的下一个计划是尝试以分组的方式恢复(),或者是在他们收到tracker_reply之后。
我试着从这里得到我能得到的东西,但不知道我的设置应该是什么:
http://blog.libtorrent.org/2012/01/seeding-a-million-torrents/
我真的很希望有人能和我分享他们的设置,
发布于 2015-07-17 06:37:05
当不使用汽车时,它会阻塞我的连接。
因为你说它可以运行在一个托管的服务器或国内互联网连接,那么你将没有太多的选择,只有节流创业。国内互联网连接通常落后于消费者级路由器,可能是CGNAT,两者都有相当小的NAT表,最终会被并发建立的TCP连接(对等连接,tracker宣布)或UDP伪连接(UDP跟踪器、TP、DHT)所阻塞。
因此,要同时运行许多洪流,就必须限制所有此类主动维护通信量,以便洪流只开始被动地侦听传入的连接。
https://stackoverflow.com/questions/31207399
复制相似问题