首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Libtorrent中的dht节点

Libtorrent中的dht节点
EN

Stack Overflow用户
提问于 2019-12-13 22:22:45
回答 1查看 436关注 0票数 0

如何增加分布式哈希表节点数量?

目前的数字约为240:

代码语言:javascript
复制
app['lt_session'].status().dht_nodes)

而uTorrent表示,它大约有500个。

以下是设置:

代码语言:javascript
复制
async def lt_session(app):
    ses = app['lt_session'] = lt.session({
        'active_downloads': 50,
    })
    ses.listen_on(6881, 6881)
    # ses.set_max_connections(3)
    ses.add_extension('ut_metadata')
    ses.add_extension('smart_ban')
    ses.add_extension('ut_pex')
    ses.add_extension('metadata_transfer')
    ses.add_dht_router("router.utorrent.com", 6881)
    ses.add_dht_router("router.bittorrent.com", 6881)
    ses.add_dht_router("dht.transmissionbt.com", 6881)
    ses.add_dht_router("dht.aelitis.com", 6881)
    ses.add_dht_router("router.bitcomet.com", 6881)
    ses.start_dht()
    ses.start_lsd()
    app['torrents'] = {}
EN

回答 1

Stack Overflow用户

发布于 2019-12-14 09:58:26

如果您有一个“扩展路由表”,并且深度为19 (我相信这大约是网络的大小),那么在常规的路由表存储桶中(一旦它填满),您最终将拥有128+64+32+16+(15*8) = 360个节点。除此之外,每个级别有8个替换存储桶,因此+ (19*8)。

libtorrent的node_count只计算主路由表存储桶中使用的节点。如果您还想计算替换节点的数量,请添加dht_node_cache

如果您想要确保您的路由表能够容纳尽可能多的节点,并且是允许添加的节点中限制最少的:

确保将dht_extended_routing_table设置为true。如果您想要取消允许哪些节点进入路由表的限制,您可以设置:

  • dht_restrict_routing_ipsfalse
  • dht_restrict_search_ipsfalse

此外,如果您有多个外部IP,您可能希望确保启用侦听所有这些IP,因为libtorrent将为每个IP运行一个分布式哈希表节点。例如,如果你有机器人、hIPv4和IPv6。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59324441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档