- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Mainline DHT是 BitTorrent 使用的 DHT,它在 UDP 上实现了一个称为 KRPC 的 RPC 协议(protocol)。 KRPC 包括对错误消息的支持 outlined here .
为什么这是必要的?由于这是一个不可靠的协议(protocol),因此无法保证会收到这些消息,也无法保证它们没有明显的用途。
最佳答案
如果您向节点发送格式错误的消息,该节点返回错误消息可能会有所帮助,以便您可以修复代码,而不是假装未收到消息。
如果每个节点都会响应错误消息,客户端开发人员将更容易修复其 DHT 实现中的错误。
据我所知,只有 libtorrent (rasterbar) 和原始的 BitTorrent Mainline (python 版本) 在 DHT 中发送错误代码。其他客户端可能会这样做,但主要是 uTorrent 不会。
更新:
错误代码在 put/get extension 中进行了扩展用于原子写入。当更新 DHT 中的插槽时,错误消息可能会通知编写器该插槽在读取-更新-写入之间进行了更新,并且应该重试。这在规范中称为 CAS(以 CPU 操作比较和交换命名)。
uTorrent、libtorrent 和 Bleep 支持此扩展。
关于networking - BitTorrent Mainline DHT 使用的不可靠的 RPC 协议(protocol)中错误消息的必要性是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12108107/
请像我在您的 vps 中所做的那样,然后可能会重现该问题,请替换变量 $vps_ip在以下步骤中使用您的真实 vps ip。 wget https://saimei.ftp.acc.umu.se/d
好的,假设我有一个运行有 10 个客户端的 DHT,其中包含一堆数据。 恶意客户端运行我的程序的替代版本不是相对容易吗,这可能会对我的数据进行潜在的破坏性操作(例如替换 key 、删除 key 、更改
是否允许在 Mainline DHT 中的同一 ip:port 对后面运行多个不同的 DHT 节点? 哪个节点应该回复 DHT 查询消息? 全部还是其中之一? 先感谢您。 最佳答案 简短的回答是:其中
假设我只实现了 DHT(分布式哈希表)(在 Python 中),并且我想通过 P2P 网络构建身份验证服务,但没有引入具有此类服务的集中式身份验证服务器。可以做到吗,如果可以,我该如何实现? 我熟悉
在我的新周末项目中,我决定从头开始编写一个 bittorrent 客户端,根本没有准备好使用库。经过两天寻找文档,我已经准备放弃 :smile:。我知道有 BEPs , 但他们还远远不足以理解所有规范
我正在编写一个 P2P 实现,我希望将其去中心化。然而,我在掌握如何DHT时遇到了一些困难。在像 BitTorrent 这样的协议(protocol)中是有效的。 如果没有跟踪器,客户端如何知道对等点
我想(通过 PHP)收集当前正在下载的 info_hashes 或搜索 DHT。 我见过 BTDigg 将 DHT 用于搜索引擎,我想做类似的事情。 此外,在获得哈希后,如何将哈希转换为种子文件以便获
有人可以向我澄清主线 DHT 规范中的声明吗? Upon inserting the first node into its routing table and when starting up th
我正在尝试了解 Distributed Hash Table (DHT)范式,因为它适合 P2P 或完全分布式的计算架构。从理论的角度来看,一旦集群建立起来,它如何管理集群数据和分配工作就很有意义了。
我目前正在使用免费糕点 DHT 进行一些性能测试。 Freepastry 是一个用 Java 完成的开源 DHT。 目标是在一定数量的节点宕机时监控对 DHT 的影响。我的问题是我不确定消除节点的最佳
kademlia paper抽象地讨论桶的组织、拆分、合并和找到要插入的正确桶,concise和 confusing条款。 §2.2 讨论了一组固定的 160 个桶,每个桶覆盖键空间的一个固定子集。但
谁能解释一下 DHT 的工作原理吗? 没有什么太重的,只是基础知识。 最佳答案 好吧,它们本质上是一个非常简单的想法。 DHT 为您提供了类似字典的界面,但节点分布在整个网络中。 DHT 的技巧在于,
我正在尝试访问 Torrent DHT 网络,但我很难弄清楚如何访问 DHT 中的“入口”节点。 How does a DHT in a Bittorent client get "bootstrap
如果您创建使用分布式哈希表 (DHT) 的新应用程序,则需要引导 p2p 网络。我的想法是您可以加入现有的 DHT(例如 Bittorrent DHT)。 这可行吗?当然,我们假设技术相同。将 Cho
我从 wiki 中获得了关于 DHT 的基本概念: 存储数据: 在 DHT 网络中,每个节点负责 key-space 的特定范围。 .要将文件存储在 DHT 中,首先,hash the file's
我试图了解 DHT可用于解决我正在处理的问题: 我有一个交易环境,专业期权交易者可以通过要求其他交易者借给他们一些风险限额来提高他们的风险限额。借贷交易者可以搜索具有某些风险参数的交易者,这些参数是每
我一直在研究 libtorrent/rasterbar 的 python 绑定(bind)。我想做的是生成一个新的“node-id”并将其重新通知给其他节点。 我读到需要创建一个“编码词典”,并且我假
我最近正在学习 Bit-torrent 协议(protocol),并且我已经使我的脚本成功通过 DHT 协议(protocol)获取大量对等地址,具体取决于文档 bep_0005: http://ww
我正在阅读有关 DHT 的资料,但很难找到有关节点发生故障时 DHT 值的后果的信息。 据我所知,如果没有数据冗余(哈希表值),单个节点的故障只会使存储在该节点中的值不可用。但是,如果我想使用 DHT
我正在尝试让 monotorrent 的 dht 实现工作,但我似乎找不到任何同行。 我已经尝试了网络上可用的大部分示例代码,例如 testclient 和 dhttest。 我尝试了几种不同的信息哈
我是一名优秀的程序员,十分优秀!