【问题标题】:What happens to data when a node dies in a DHT?当一个节点在 DHT 中死亡时,数据会发生什么?
【发布时间】:2014-09-24 05:54:32
【问题描述】:

问题来自这里:https://groups.google.com/forum/#!topic/byu-cs-460-computer-networking/hpESI0NapmY

“我在考虑分布式哈希表如何存储数据。我知道每个节点都有一个标识符,然后数据将存储在其标识符与其(数据的)哈希值最接近的节点上。我还了解当节点加入或离开网络时,数据会被传输以反映网络中存在的新节点集。

我不明白的是,当一个节点在传递数据之前就死掉了会发生什么。那个数据丢失了吗?也许我真正的问题是:如何保证数据不会在 DHT 中丢失?”

【问题讨论】:

    标签: cloud p2p dht


    【解决方案1】:

    一般来说,DHT 只是一种分布式算法。具体实现对节点故障的处理方式不同。

    Put 请求通常以某种程度的冗余完成。此外,目标节点可以在它们之间复制数据,或者源节点可以定期刷新存储的数据。

    在完全去中心化的 p2p 环境中,您无法控制各个节点,您无法真正保证数据本身永远保留在网络中。尽管在足够稳定的网络上,可能可以实现以天为单位的生命周期。

    在 p2p 网络中,DHT 通常仅用于发现和元数据发布。

    即如果节点 A 想要找到节点 B,那么它将查询 DHT,并在查找过程中访问一堆对 A 或 B 没有直接兴趣的第 3 方节点。

    一旦发现完成,“繁重的工作”就由 A 和 B 之间的直接对等连接完成。

    【讨论】:

      猜你喜欢
      • 2019-07-16
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多