[发明专利]P2P网络中有效消解多Sybil节点渗透冲突的方法有效
申请号: | 201410269637.0 | 申请日: | 2014-06-17 |
公开(公告)号: | CN104038547B | 公开(公告)日: | 2017-04-12 |
发明(设计)人: | 刘波;王怀民;王天佐;鲁强;肖哲锋;张天;马晓龙;于洋 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 国防科技大学专利服务中心43202 | 代理人: | 郭敏 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | p2p 网络 有效 消解 sybil 节点 渗透 冲突 方法 | ||
技术领域
本发明涉及提高多Sybil节点对Kademlia网络渗透效能的方法,尤指Kademlia网络中有效消解多Sybil节点渗透冲突的方法。
背景技术
Kademlia是美国纽约大学的Petar Maymounkov等人于2002年提出的一种结构化P2P协议;基于Kademlia协议构建的P2P网络称为Kademlia网络。Kademlia协议是一种典型的DHT(Distributed Hash Table,分布哈希表)协议,广泛用于构建大规模、纯分布式P2P(Peer to Peer)网络,如电驴、BitTorrent等。Kademlia给每个节点分配一个唯一、随机的节点标识,即nodeID;为每个对象分配一个类似的对象标识,即objectID(又称为key)。这些标识通常使用SHA-1这种单向散列函数来生成,ID之间的距离采用异或运算来度量。
在Kademlia网络中,每个对象都存储在节点标识最接近其对象标识的K个节点上。K是一个常数,一般取值为20。
每个Kademlia节点的路由表由L(L等于节点标识的比特位数,通常取值为128)个链表组成,每个链表称为一个“K-bucket”,用于记录网络中到自己的异或距离在区间[2i,2i+1)(i为K-bucket的序号,0≤i<L)内的邻居节点的信息,每条信息以三元组<IP地址,UDP端口号,nodeID>形式表示和存储。Kademlia协议规定,K-bucket长度以K为上限。每当Kademlia节点收到来自其他节点的消息,它就根据该消息发送节点到自己的异或距离以及消息中的<IP地址,UDP端口号,nodeID>信息来更新K-bucket中的记录,这称为捎带确认(piggybacking)。L个K-bucket组成一个Kademlia节点的路由表,因此路由表也称“K-buckets”。一个路由表中的L个K-bucket通过连续的序号i区分。
Kademlia协议由四个RPC(Remote Process Call,远程过程调用,是一种命令)组成,其名称分别是PING,STORE,FIND_NODE,FIND_VALUE,它们的工作如下所示:
PING:探测一个节点是否在线;
STORE:指示一个节点存储一个<key,value>对,以便于将来的数据获取。key为对象散列值,即obiectID,value为真正的数据对象(或其索引);
FIND_NODE:以ID为参数,FIND_NODE RPC的接收者以<IP地址,UDP端口号,nodeID>的形式返回他所知的离目标ID最近的K个节点;
FIND_VALUE:以key为参数,寻找key对应的value。
Sybil节点原指具有多重身份的单个实体节点,目前通常将网络中的虚假节点都称为Sybil节点。对于Kademlia网络中的Sybil节点,其重要性主要体现为能够成为多少节点的邻居节点,即该Sybil节点的入度大小。快速提高Sybil节点的重要性,有助于利用Sybil节点更多、更高效地获知网络中大量节点的活动情况,从而为快速发现和遏制网络中的恶意活动提供技术支撑。
Sybil节点重要性的提升,主要依赖于尽可能多的将自身加入到Kademlia网络节点的路由表中,即渗透。但是,在渗透的过程中,多个Sybil节点可能会进入同一个Kademlia节点的同一个K-bucket中;当该节点在该K-bucket进行某些网络活动时,报文会同时发送到多个Sybil节点。这样,一个节点的活动被多个Sybil节点所感知,实质上造成了感知能力的冗余。这种情况称为Sybil节点之间的渗透冲突,渗透冲突引起渗透效能的下降。由于Kademlia网络规模一般都较大,Sybil节点的数量和性能有限,因此应当尽量避免渗透效能发生冲突的情况,以提高多个Sybil节点的整体渗透效能。
P2P网络爬虫是指用于获取P2P网络中各个节点信息及其拓扑结构的软件系统。这种软件系统通过迭代地向P2P网络中的已知节点发送特定消息,获得新的节点;再重复向新的节点发送特定消息,就可以获得整个网络的拓扑结构和各个节点信息。P2P网络爬虫能够用于获取Kademlia网络的节点信息和拓扑结构。
目前尚没有针对Kademlia网络消除Sybil节点渗透冲突的方法的公开报导。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410269637.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:情调照明组合装饰灯
- 下一篇:具有改进的耐水性的化妆防晒制剂或皮肤科防晒制剂