P2P或分布式系统实现

时间:2009-11-14 02:41:16

标签: c distributed p2p

我有实现分布式节点系统(如p2p节点)的工作,每个节点(比如A,B,C和D)执行某些功能,需要相互交互以进行各种操作,例如同步操作和其他事情如15 A节点与一组5个B节点交互以进入最小负载节点的队列并获得令牌号,然后等待C将它们重定向到空闲节点D,依此类推。

我对如何进行设计感到有点迷失:

  1. 我想到的协议是封装一个操作类型的结构和其他要发送的东西。此外,这是使用确认方案完成的,因此我可以确定对方收到了消息。
  2. 我如何处理分布式互斥方面,因为我没有中央服务器。我猜每个节点复制数据,但这听起来有点太贵了(更不用说愚蠢了)。
  3. 实施p2p系统时遵循的基本设计方法是什么,即如何实现程序,使其在接收时被阻止,但也可以发送进一步的更新等,同时从其他人​​那里获取有关'整个系统的状态。
  4. 此外,我可能需要查看/面对的其他问题是什么。如果您能指出我在实施p2p和分布式系统方面的一些良好的在线资源,我也将不胜感激。

    谢谢!

1 个答案:

答案 0 :(得分:1)

对一致的散列方案进行一些研究可能是个好主意。一个很好的起点:

我敢肯定,如果你在“设计点对点”类型的东西上做一些基本的谷歌搜索,你会发现很多东西要读。您还可以查看Gnutella,BitTorrent等热门点对点应用程序的一些设计文档。