[发明专利]一种分布式内容查找方法在审
申请号: | 201910035127.X | 申请日: | 2019-01-15 |
公开(公告)号: | CN109857913A | 公开(公告)日: | 2019-06-07 |
发明(设计)人: | 姬明佳;周育仲 | 申请(专利权)人: | 苏州链读文化传媒有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903;G06F16/2458 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 楼高潮 |
地址: | 215000 江苏省苏州市相城区高铁新城青龙*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式节点 分布式内容 查找 查找表 分层 存储 分布式哈希表 节点IP地址 更新机制 内容冗余 哈希 异或 记录 网络 | ||
1.一种分布式内容查找方法,其特征在于,包括一个分布式节点属性和四个PSNV操作;
所述的一个分布式节点属性包括节点 ID、节点IP地址及端口、内容、查找表,所述内容以<key, value>对的形式存储,所述key是文件名的哈希值;所述内容冗余存储在节点ID为key、key+1、key+2…key+k-1共k个节点上;所述查找表按节点ID分层,记录有限个数的其他节点ID和IP地址及端口;
所述四个PSNV操作:(1)操作P(ping),用于探测一个节点,判断该节点是否仍然在线;(2)操作S(store),用于通知一个节点存储一个<key,value>对,以便后续查询;(3)操作N(node),用于从自己的查找表对应的K桶中返回k个节点信息给发送者;(4)操作V(value),用于把info-hash作为参数,返回value;
描述一次一个节点x要查找ID值为t 的节点y,查找过程如下:
(1)计算到t 的距离:D(x,y) = x⊕y,给定一个结点 x 和距离 L,有且仅有一个结点y,使得D(x,y) = L;
(2)从x的第[㏒L]个K桶中取出α个节点的信息,同时进行N操作,如果这个K桶中的信息少于α个,则从附近多个桶中选择距离最接近L的总共α个节点;
(3)对接受到查询操作的每个节点,如果发现自己就是t,则回答自己是最接近t 的;否则测量自己和t 的距离,并从自己对应的K桶中选择α个节点的信息给x;
(4)x对新接受到的每个节点都再次执行N操作,此过程不断重复执行,直到每一个分支都有节点响应自己是最接近t,或者N操作返回的节点值没有,都已经被查找过了,即找不到更近的节点;
(5)通过上述查找操作,x得到了k个最接近t 的节点信息;
(6)访问节点执行V操作得到value。
2. 根据权利要求1所述的一种分布式内容查找方法,其特征在于,所述按节点ID分层,是若一个节点的ID前面所有位数相同从倒数第i位开始不同,这样的节点只有2(i-1)个,其与基础节点的距离范围为[2(i-1), 2i);对于基础节点而言,这样的节点归为“k-bucket i”;是将整个网络的节点梳理为一个按节点ID排列的二叉树,树最末端的每个叶子便是一个节点,以及节点之间的距离的关系。
3.根据权利要求2所述的一种分布式内容查找方法,其特征在于,所述k-bucket的更新机制为:每个bucket里的节点都按最后一次接触的时间倒序排列;每次执行四个操作PSNV中的任意一个都会触发更新;当一个节点与自己接触时,检查它是否在K-bucket中:如果在那么将它挪到k-bucket列表的最底,如果不在P操作一下列表最上面的一个节点,如果ping通了将旧节点挪到列表最底,并丢弃新节点,如果ping不通,删除旧节点,并将新节点加入列表。
4.根据权利要求1所述的一种分布式内容查找方法,其特征在于,所述value的结构包含文件长度4字节、文件名偏移量4字节、文件名和文件内容。
5.根据权利要求1所述的一种分布式内容查找方法,其特征在于,所述节点ID位数b为8位、16位、32位、64位或128位。
6.根据权利要求1所述的一种分布式内容查找方法,其特征在于,所述节点个数k为3、5、10或20,所述α值等于k值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州链读文化传媒有限公司,未经苏州链读文化传媒有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910035127.X/1.html,转载请声明来源钻瓜专利网。