Chrod算法是P2P中的四大算法之一,是有MIT(麻省理工学院)于2001年提出,其他三大算法分别是:
Chord的目的是提供一种能在P2P网络快速定位资源的的算法,Cord并不关心资源是如何存储的,只是从算法层面研究资源的取得,因此Chord的API就简单到只有一个set、get。
1、Chord是什么?
Chord是一个算法,也是一个协议。作为一个算法,Chord可以从数学的角度严格证明其正确性和收敛性;作为一个协议,Chord详细定义了每个环节的消息类型。当然,Chord之所以受追捧,还有一个主要原因就是Chord足够简单,3000行的代码就足以实现一个完整的Chord。
Chord还可以被作为一个一致性哈希、分布式哈希(DHT)的实现。
2、覆盖网络(overlaynetwork)
覆盖网络是指这样一种网络:构建在其他网络之上、网络节点之间通过虚拟或逻辑连接在一起,比如云计算、分布式系统都是覆盖网络,因为其都构建于TCP/IP之上,且节点之间有联系。Chord也是构建于覆盖网络。
3、结构化与非结构化网络
非结构化的P2P网络是指网络节点之间不存在组织关系,节点之间完全是对等的,比如第一代P2P网络Napster,这类网络结构清晰、简单,但查找没有多大的优化余地,经常采用全局或分区泛洪查找,查找时间长、且结果难以保证(有可能在找到前就超时)。
<