CN101710902B - 一种无结构p2p网络及其数据查询方法和索引更新方法 - Google Patents

一种无结构p2p网络及其数据查询方法和索引更新方法 Download PDF

Info

Publication number
CN101710902B
CN101710902B CN200910188807.1A CN200910188807A CN101710902B CN 101710902 B CN101710902 B CN 101710902B CN 200910188807 A CN200910188807 A CN 200910188807A CN 101710902 B CN101710902 B CN 101710902B
Authority
CN
China
Prior art keywords
node
index information
inquiry
information
indirect
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200910188807.1A
Other languages
English (en)
Other versions
CN101710902A (zh
Inventor
王洪波
林昕
周扬
程时端
王文东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Beijing University of Posts and Telecommunications
Original Assignee
ZTE Corp
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp, Beijing University of Posts and Telecommunications filed Critical ZTE Corp
Priority to CN200910188807.1A priority Critical patent/CN101710902B/zh
Publication of CN101710902A publication Critical patent/CN101710902A/zh
Priority to PCT/CN2010/077540 priority patent/WO2011069387A1/zh
Application granted granted Critical
Publication of CN101710902B publication Critical patent/CN101710902B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种无结构P2P网络及其数据查询方法、索引更新方法,上述数据查询方法包括以下步骤:无结构P2P网络的每个节点均设置和实时更新索引单元,该索引单元包括索引信息;查询发起节点通过本节点索引单元的索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求。本发明提供了在无结构P2P网络下采用索引信息进行数据查询的方法,并且对索引信息进行实时更新,提高了查询效率,减少了网络负载。

Description

一种无结构P2P网络及其数据查询方法和索引更新方法
技术领域
本发明涉及电信网络数据通信领域,具体涉及一种无结构P2P网络及其数据查询方法、索引更新方法。
背景技术
随着电信通信技术和多媒体业务的不断发展,可靠性高实现分布式存储的P2P网络在电信网络得到越来越多的运用。
P2P技术在互联网中的应用现已极为广泛,在文件下载、文件共享、分布式存储、视频流媒体等领域P2P作为一种比较成熟的技术在互联网上大规模地被应用。由于互联网上的终端用户具有地理位置分散、用户行为离散不可控、终端所处网络异质等特点,目前在互联网上所使用的大都为结构化的P2P网络拓扑,如拥有统一管理服务器的集中式P2P和基于DHT技术的全分布式P2P。
但是在电信网络中,主机节点具有与互联网中的终端截然不同的性质。在电信网络中,主机节点具有计算及存储性能高、节点数量规模小、网络带宽资源丰富、在线时间长且稳定等特性。在电信网络环境下,如果采用传统的结构化的P2P方式将主机节点组织起来,则将引入大量不必要的维护性能开销,因此在电信网络中,用无结构的P2P方式是一种比较优化的选择。
现有的无结构P2P方式多采用洪泛或是Gossip等机制维护其网络拓扑以及进行数据查询等操作,而这种无指向性的消息机制也将给系统带来大量不必要的网络及性能开销,特别是在高并发时段,大量的洪泛或Gossip消息将可能阻塞整个网络,导致网络瘫痪。
因此,现有的基于洪泛及Gossip的维护与查询机制已经无法适应具有大量数据查询请求的场景。
发明内容
本发明的主要目的是:提供一种无结构P2P网络及其数据查询方法、索引更新方法,以提高查询效率,减少网络负载。
本发明的技术问题是通过以下技术方案予以解决的:一种无结构P2P网络的数据查询方法,具体包括以下步骤:无结构P2P网络的每个节点均设置和实时更新一索引单元,该索引单元包括索引信息;查询发起节点通过本节点索引单元的索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求。
本实施方式的索引单元分层次设置:该索引单元的索引信息包括在先查询的直接索引信息和/或在后查询的间接索引信息,该直接索引信息包括目标节点信息,该间接索引信息用来从其记录的节点索引单元中获取直接索引信息。
其中,直接索引为:查询发起节点先通过直接索引信息发起直接索引,直接索引成功时,查询发起节点将相应直接索引信息的时间戳更新为当前时间,直接索引失败时,查询发起节点删除相应直接索引信息,对应的目标节点将查询发起节点与目标数据关联并插入到间接索引信息中。
其中,间接索引为:查询发起节点在没有直接索引信息或者直接索引失败时查询间接索引信息向定向查询节点发起间接索引。在间接索引成功时查询发起节点将节点信息插入直接索引信息并删除间接索引信息的相关内容;在间接索引失败时查询发起节点删除间接索引信息的相关内容,对应的定向查询节点将查询发起节点的信息插入间接索引信息。
在间接索引成功时,查询发起节点插入直接索引信息的节点信息包括三种情况:相关直接索引信息有效的,为定向查询节点直接索引信息中与目标数据有关的节点信息;相关直接索引信息有效并且本地存储目标数据的,为定向查询节点直接索引信息中与目标数据有关的节点信息再加上本地节点信息;没有相关直接索引信息但是本地存储目标数据的,为定向查询节点的本地节点信息。
除了直接和间接索引之外,在该查询发起节点的索引单元没有目标数据的直接索引信息和/或间接索引信息时,查询发起节点向其它节点发送广播查询消息。具有目标数据的节点向查询发起节点发送响应消息,查询发起节点将响应的节点信息记录到直接索引信息,没有响应的节点将查询发起节点和目标数据的关联插入间接索引信息。
无结构P2P网络的节点在删除数据块时,向其它节点广播删除消息,收到删除消息的节点更新或删除索引信息。
优选的,每个节点对自身索引单元的实时更新为将其它节点的查询动作记录在直接索引信息和/或间接索引信息上的自学习性实时更新。
本发明还涉及一种无结构P2P网络的自学性索引更新方法,具体包括以下步骤:无结构P2P网络的每个节点均设置和实时更新索引单元,该索引单元包括索引信息;每个节点将有关的查询动作记录在索引信息中,自学性实时更新该索引单元。
优选的,该索引单元的索引信息包括直接索引信息和间接索引信息,该直接索引信息包括目标节点信息,该间接索引信息用来从其记录的节点索引单元中获取直接索引信息;查询发起节点通过直接索引信息向目标节点发起直接索引,通过间接索引信息向定向查询节点发起间接索引;该自学性实时更新包括直接索引信息的更新和间接索引信息的更新。
该直接索引信息更新包括:直接索引成功时,查询发起节点将相应直接索引信息的时间戳更新为当前时间;直接索引失败时,查询发起节点删除相应直接索引信息;在间接索引成功时查询发起节点将节点信息插入直接索引信息;查询发起节点发送广播查询消息时,具有目标数据的节点向查询发起节点发送响应消息,查询发起节点将响应的节点信息记录到直接索引信息;节点在删除数据块广播删除消息时,收到删除消息的节点更新或删除直接索引信息。
该间接索引信息更新包括:直接索引失败时,目标节点将查询发起节点与目标数据关联并插入到间接索引信息中;在间接索引成功时,查询发起节点删除间接索引信息的相关内容;在间接索引失败时查询发起节点删除间接索引信息的相关内容;在间接索引失败时,定向查询节点将查询发起节点的信息插入间接索引信息;查询发起节点发送广播查询消息时,没有响应的节点将查询发起节点和目标数据的关联插入间接索引信息;节点在删除数据块广播删除消息时,收到删除消息的节点更新或删除间接索引信息。
本发明进一步涉及一种无结构P2P网络系统,包括构成自治域的若干节点,每个节点包括具有索引信息的索引单元,实时更新该索引单元的更新单元,用于将节点有关的查询动作记录在索引单元的索引信息中。
该节点还包括,数据请求单元,用于节点在作为查询发起节点时,通过索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求。
该索引单元的索引信息包括在先查询的直接索引信息和在后查询的间接索引信息,该直接索引信息包括目标节点信息,该间接索引信息用来从其记录的节点索引单元中获取直接索引信息;该数据请求单元的数据请求操作包括通过直接索引信息向目标节点发起直接索引和/或通过间接索引信息向定向查询节点发起间接索引;该更新单元包括:直接索引信息更新单元和间接索引信息更新单元。
该直接索引信息更新单元,用于在直接索引成功时,将相应直接索引信息的时间戳更新为当前时间,直接索引失败时,删除相应直接索引信息;还用于在间接索引成功时,将目标节点信息插入直接索引信息。
该间接索引信息更新单元,用于在直接索引失败时,将查询发起节点与目标数据关联并插入到目标节点的间接索引信息中;还用于在间接索引成功时,将目标节点信息插入直接索引信息并删除间接索引信息的相关内容;还用于在间接索引失败时,删除间接索引信息的相关内容,并将查询发起节点的信息插入定向查询节点的间接索引信息。
该节点还包括,广播单元,用于在该查询发起节点的索引单元没有目标数据的直接索引信息和间接索引信息或者该查询发起节点间接索引失败时,向其它节点发送广播查询消息;该直接索引信息更新单元,还用于将广播查询响应的节点信息记录到直接索引信息;该间接索引信息更新单元,还用于将查询发起节点和目标数据的关联插入没有响应的节点的间接索引信息中。
该广播单元,还用于该节点删除目标数据后向其他节点广播删除消息;该直接索引信息更新单元,还用于收到删除消息后更新或删除被删除目标数据的直接索引信息;该间接索引信息更新单元,还用于收到删除消息后更新或删除被删除目标数据的间接索引信息。
该节点还包括,删除单元,用于在索引单元存储空间已满的情况下,对该间接索引信息的表项进行随机删除,以插入新的表项;还用于在间接索引信息的内容没有达到门限的情况下,对该直接索引信息的表项进行时间排序,对最久未被使用的表项进行删除操作,以插入新的表项。
本发明提供了在无结构P2P网络下采用索引信息进行数据查询以及对索引信息进行实时更新的方法,提高了查询效率,减少了网络负载。
附图说明
图1是本实施方式无结构P2P网络的数据查询方法的简要流程图;
图2是本实施方式无结构P2P网络的数据查询方法中无索引信息数据查询过程示意图;
图3是本实施方式无结构P2P网络的数据查询方法中在有直接索引信息场景下数据查询过程示意图;
图4是本实施方式无结构P2P网络的数据查询方法中在有间接索引信息场景下数据查询过程示意图;
图5是本实施方式无结构P2P网络的数据查询方法中数据删除过程示意图;
图6是本实施方式无结构P2P网络系统的结构示意图。
具体实施方式
下面通过具体实施例结合附图对本发明实施例作进一步详细说明。
本发明涉及无结构P2P网络,包括构成自治域的若干节点,自治域的每个节点均设置和实时更新索引单元。该索引单元包括需优先查询的直接索引信息和在后查询间接索引信息,自治域中的查询发起节点通过本节点的索引单元获取目标数据的直接索引信息并向目标节点发起数据请求,本实施例中的数据查询方法将节点自身资源引入到索引选择机制中,该选择机制通过索引信息,采用直接索引或者间接索引的选择实现的。本实施例的自治域内各个节点的索引单元将过往发生的有关查询的动作信息以直接索引信息或间接索引信息的方式记录下来,为后续的数据查询尽量提供本地索引信息,尽量减少发送无指向性消息,同时也灵活运用无指向性消息和定向查询消息,实现数据快速高效查询,并且也大大节省了网络带宽及性能开销,从而解决网络拥塞问题。
无结构P2P网络自治域的每个节点上设置和实时更新索引单元,该索引单元在本发明实施例中为索引表,当然也可以是采取其他能实现保存索引信息的其他形式。上述索引的表项的内容为数据请求基本单元(以下简称数据块或者目标数据)与本域内可能与此数据块相关的其它节点的映射索引信息。
表项内容分为两种情况,包括优先查询的直接索引信息和在后查询的间接索引信息。直接索引信息表项保存的是具有某数据块内容的目标节点信息及最近使用该表项的时间戳。通过直接索引信息,存储有该表项的节点可直接向目标节点发起数据请求。
间接索引信息表项保存一个或多个其它节点信息,这些节点或者具有该数据块的直接索引信息表项或者具有该数据块;存储有间接索引信息表项的节点,可向间接索引信息表项中的节点发起定向查询请求,以从其记录的节点的索引单元中获取直接索引信息,进而再执行直接索引操作,以向目标节点发起数据请求。
请参考图1,所示为本实施例中数据查询及请求的简要流程图,说明如下:
步骤S101、查询发起节点需要查询目标数据,首先查看在本地索引表中有没有相关直接索引信息,若有则根据直接索引信息,直接向目标节点发起数据请求;
步骤S102、若查询发起节点本地没有相关直接索引信息或者直接索引信息数据请求失败,则查询发起节点删除相应直接索引信息后,查看本地索引表中是否有间接索引信息,若有相关间接索引信息,则向间接索引信息记录的定向查询节点发起定向查询请求。在特定时间内查询发起节点若收到有效的可发起数据请求的节点信息,则将相关节点信息插入到索引表的直接索引信息中,并删除相应的间接索引信息,然后触发直接索引数据请求过程。若在特定时间内查询发起节点没有收到有效的可发起数据请求的节点信息,则删除相应的间接索引信息,触发广播查询过程;
步骤S103、若查询发起节点本地索引表没有记录任何相关索引信息或者通过索引信息的数据请求过程失败,节点向自治域内其他节点发送广播查询消息。接收到广播查询消息的节点检查自身是否存储有目标数据,若有,则把自身节点信息和/或本地保存的与目标数据有关的节点索引信息发送给广播发起节点,若没有,则不响应并将广播发起节点插入到本地间接索引信息中;在特定时间后,广播发起节点将接收到的有效的可发起数据请求的节点信息插入到本地直接索引信息中,继而触发直接索引数据请求过程,最终获得目标数据。
本实施方式中,自治域的每个节点对自身索引单元的实时更新为涉及的节点均参与的自学习性实时更新。同域内各个节点的索引单元将过往发生的有关查询的动作信息以直接或间接索引信息的方式记录下来,为后续的数据查询尽量提供本地索引信息,使得数据查询更具有自学习性。
以下详细说明本实施例的数据查询方法。
请参考图2,所示为本发明查询发起节点在没有相关索引信息的情况下查找并请求数据的过程示意图。当无结构P2P网络自治域内的查询发起节点需要查找一个本地没有的目标数据时,若查询发起节点本地没有关于目标数据的任何直接索引信息或是间接索引信息,则查询发起节点向本自治域内所有其它节点发送广播查询消息,然后等待其它节点向查询发起节点发送响应消息。说明如下:
21、自治域中某节点需要目标数据时,则其向域中其它所有节点发送广播查询消息,并等待其它节点的响应;
22、域中接收广播的节点查看本地是否有目标数据,若有目标数据,则将自身的存储、网络带宽、计算资源、负载情况以及本地存储的与目标数据相邻的(即查询发起节点接下来可能会请求的)数据信息一起作为响应消息发回给查询发起节点;若接收广播的节点本地没有目标数据则不响应此广播查询消息,但认为查询发起节点最终将以某种形式成功地获得有关目标数据的索引信息,因此收到广播查询信息的各节点将查询发起节点的信息与被请求数据块相关联,并加入到本地的间接索引信息中;
23、等待特定时间后,查询发起节点在接收到来自其它节点返回的有效的响应消息后,将发送响应消息的节点信息与相关目标数据进行关联并记录到本地的直接索引信息中,然后筛选出一个或多个最合适的节点发起数据请求;
24、被请求节点随即将目标数据发送给查询发起节点。
以上过程实际是在一次查询中,查询发起节点与被广播查询节点都在学习的过程,从而逐步积累并了解域内的数据分布情况。
在查询发起节点的索引单元已经更新有了经过学习的直接和间接索引信息时,则通过索引单元进行数据查询及数据请求。优先查询直接索引信息,具体情况如下:
(1)若查询发起节点本地有直接索引信息,先利用直接索引信息,在直接索引信息足够的情况下,该查询发起节点则根据以往记录的对端带宽等资源状况信息从直接索引信息记录中选取一个或多个目标节点,向其发起数据通信请求。
请参考图3,所示为本实施例中查询发起节点利用直接索引信息查找并请求数据的过程示意图,说明如下:
31、自治域中查询发起节点需要目标数据时,在本地相应的直接索引信息表项中选出一个或多个目标节点发起数据请求;
32、域中接收到数据请求的目标节点若检查到在本地已经没有目标数据,则向查询发起节点发送数据请求失败消息,并将查询发起节点与目标数据的关联信息插入到本地间接索引信息中,查询发起节点在收到数据请求失败消息后将与此次失败查询所对应的直接索引信息从列表中删除;
33、域中接收到数据请求的目标节点在本地有目标数据的情况下响应数据请求,查询发起节点则对直接索引信息表中的时间戳更新为当前时间。若在特定时间内没有节点响应查询发起节点的数据请求,则查询发起节点在有间接索引信息的情况下将触发间接索引查询过程,若没有相应的间接索引信息,则触发广播查询过程以查询目标数据,在此过程中可以不再对之前查询失败的节点发送广播消息,也可以对其他所有节点发送广播消息。
(2)若直接索引信息中记录的目标节点不足够或已失效,或者本地只有间接索引信息,则利用间接索引信息展开间接索引过程。
请参考图4,所示为本实施例中节点利用间接索引信息查找并请求数据的过程示意图,说明如下:
41、自治域中查询发起节点需要目标数据时,其在本地相应的间接索引信息表项中选出一个或多个定向查询节点发起定向查询请求;
42、域中接收到定向查询请求的定向查询节点在本地直接索引信息表中查询与被请求目标数据相关的节点信息,若相关直接索引仍然有效,则将相关节点信息发送给查询发起节点;若该定向查询节点本地亦存储有目标数据,在此情况下,若定向查询节点的直接索引表中有有效信息,则将自身信息与直接索引表中节点信息一起发送给查询发起节点,若定向查询节点没有相关的有效直接索引信息,则只将自身信息发送给查询发起节点;若定向查询节点本身没有目标数据且直接索引表中表项已经失效,则将查询发起节点的信息插入到本地间接索引表中,然后向查询发起节点发送数据查询失败消息,查询发起节点在接收到失败消息后则将相应的间接索引信息表项删除;
43、等待特定时间之后,若查询发起节点接收到有效节点信息,则将这些节点信息插入到直接索引信息列表中,并在间接索引信息表中删除相应的表项,然后根据返回的节点信息筛选出一个或多个最合适的节点发起数据请求;
44、域中接收到数据请求的目标节点若本地仍然存储有目标数据则响应查询发起节点的数据请求,开始数据传送;
45、若域中接收到数据请求的目标节点本地已经没有目标数据,则向查询发起节点发送数据请求失败消息,查询发起节点在接收到数据请求失败消息后将本地相关直接索引表项删除。
在特定时间内,若查询发起节点没有收到有效的节点信息或者数据请求全部失败,则将触发广播查询过程以查询目标数据,在此过程中可以不再对之前查询失败的节点发送广播消息,也可以对其他所有节点发送广播消息。
由于在现实网络系统中服务器的存储能力有限,因此P2P网络自治域中的节点会有删除已有数据块的操作。在这种情况下,为了避免删除数据块造成索引信息无效的情况,各个节点在删除数据块的同时,需要向同自治域内的其它节点广播删除消息。节点在接收到删除消息后,则需要将本地索引单元中相关的索引信息进行更新或删除。由于在节点上发生数据块删除的操作不会太频繁,因此不会对网络造成负担。
请参考图5,所示为本发明中节点删除本地数据的过程示意图,说明如下:
51、一个无结构P2P网络自治域中的某个节点在本地存储容到特定门限后,该节点向本自治域中的其它所有节点发送广播删除消息,通知其它节点其删除的媒体内容的信息;
52、接收到广播删除通知消息的节点将本地学习信息中与广播删除消息发出节点及相关媒体内容的信息进行更新或是删除。
在查询发起节点与目标节点或者定向查询节点进行直接或间接索引信息更新的过程中,若索引表存储空间已满,则首先检查间接索引表项中内容数量是否超过特定门限,若已经超过,则在间接索引表项中随机删除相应数量的表项,以插入新的表项。若间接索引表项中内容没有达到门限,在直接索引信息表项中,每一条表项均有相应的时间戳,在表项被插入到索引信息表项中或者在查询过程中使用到该表项时,表项相应的时间戳将被更新为当前时间,然后根据这个时间戳进行表项排序后,对最久未被使用到的表项进行删除操作,以插入新的表项。
本实施方式中的数据查询方法适用于电信网络节点自治域,由于电信网络中节点具有计算及存储性能高、节点数量规模小、网络带宽资源丰富、在线时间长且稳定等特性,因此在这种环境下,本实施例能很好地避免在无结构P2P中大量洪泛式消息给系统带来的网络阻塞的隐患,并且将节点自身资源引入到选择机制中,从而使系统自身具有一定负载均衡的能力。
请参考图6,图6所示为本实施例的系统结构示意图。
本发明的无结构P2P网络可进一步模块化为一种无结构P2P网络系统。
该网络系统包括构成自治域的若干节点(10-1~10-N)。每个节点(10-1~10-N)通过网络接口52彼此互联,每一节点包括具有索引信息的索引单元54、数据请求单元56、自学性实时更新该索引单元54的更新单元57、广播单元58以及删除单元59。该更新单元57用于将节点有关的查询动作记录在索引单元54的索引信息中。
该索引单元54的索引信息包括在先查询的直接索引信息541和在后查询的间接索引信息542。该直接索引信息541包括目标节点信息,该间接索引信息542用来从其记录的节点索引单元中获取直接索引信息。该数据请求单元56的数据请求操作包括通过直接索引信息541向目标节点发起直接索引和/或通过间接索引信息542向定向查询节点发起间接索引。
该更新单元57包括:直接索引信息更新单元571和间接索引信息更新单元572。上述索引单元和更新单元可以合在一起,也可以分别设置。
该数据请求单元56用于节点在作为查询发起节点时,通过索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求。
其中,该直接索引信息更新单元571,在直接索引成功时,将相应直接索引信息541的时间戳更新为当前时间,直接索引失败时,删除相应直接索引信息541;在间接索引成功时,将目标节点信息插入直接索引信息541。
该间接索引信息更新单元572,在直接索引失败时,将查询发起节点与目标数据关联并插入到目标节点的间接索引信息542中;在间接索引成功时,将目标节点信息插入直接索引信息541并删除间接索引信息542的相关内容;在间接索引失败时,删除间接索引信息542的相关内容,并将查询发起节点的信息插入定向查询节点的间接索引信息542。
该广播单元58,在该查询发起节点的索引单元54没有目标数据的直接索引信息和间接索引信息或者该查询发起节点间接索引失败时,向其它节点发送广播查询消息。对应该广播查询过程,该直接索引信息更新单元571将广播查询响应的节点信息记录到直接索引信息。该间接索引信息更新单元572将查询发起节点和目标数据的关联插入没有响应的节点的间接索引信息中。
该广播单元58还用于该节点删除目标数据后向其他节点广播删除消息。对应该广播单元58的删除广播过程,该直接索引信息更新单元571收到删除消息后更新或删除被删除目标数据的直接索引信息。该间接索引信息更新单元572,收到删除消息后更新或删除被删除目标数据的间接索引信息。
该删除单元59在索引单元54存储空间已满的情况下,对该间接索引信息542的表项进行随机删除,以插入新的表项;在间接索引信息的内容没有达到门限的情况下,对该直接索引信息541的表项进行时间排序,对最久未被使用的表项进行删除操作,以插入新的表项。
本发明与现有技术相比的有益效果是:1)本发明的P2P网络数据查询方法和系统,在无结构P2P网络自治域的每个节点设置和实时更新索引单元,自治域中的查询发起节点通过本节点的索引单元获取目标数据的直接索引信息并向目标节点发起数据请求,从而将节点自身资源引入到选择机制中,同域内各个节点的索引单元将过往发生的有关查询的动作信息以直接或间接索引信息的方式记录下来,为后续的数据查询尽量提供本地索引信息,尽量减少发送无指向性消息,大大节省了网络带宽及性能开销,解决网络拥塞问题;2)本发明的P2P网络数据查询方法和系统,在索引单元未更新有目标数据的直接索引信息和/或间接索引信息时,或者自治域内的节点删除数据块时,才发送广播查询消息以及广播删除消息等无指向性消息,在间接索引时发送定向查询信息,数据查询方式灵活,实现高效数据查询定位,有效提高了自治域内节点间的数据查询效率与命中率;3)本发明的P2P网络数据查询方法和系统,通过域内每个节点实施更新维护一份直接和间接索引信息,将节点自身资源引入到选择机制中,将索引资源分布在多个节点,使得系统自身具有一定的负载均衡能力;4)本发明的P2P网络数据查询方法和系统,在电信网络中运用无结构P2P方式,由于在电信网络中,主机节点具有计算及存储性能高、节点数量规模小、网络带宽资源丰富、在线时间长且稳定等特性,舍弃传统结构化P2P将减少大量不必要的维护性能开销5)本发明的P2P网络数据查询方法和系统,自治域的每个节点对自身索引单元的实时更新为涉及的节点均参与的自学习性实时更新,同域内各个节点的索引单元将过往发生的有关查询的动作信息以直接或间接索引信息的方式记录下来,为后续的数据查询尽量提供本地索引信息,使得数据查询更具有自学习性。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (17)

1.一种无结构P2P网络的数据查询方法,具体包括以下步骤:
无结构P2P网络的每个节点均设置和实时更新索引单元,所述索引单元包括索引信息;所述索引单元的索引信息包括在先查询的直接索引信息和/或在后查询的间接索引信息;
查询发起节点通过本节点索引单元的索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求;
在所述查询发起节点的索引单元没有目标数据的直接索引信息和间接索引信息时或者所述查询发起节点间接索引失败时,查询发起节点向其它节点发送广播查询消息,具有目标数据的节点向查询发起节点发送响应消息,查询发起节点将响应的节点信息记录到直接索引信息,没有响应的节点将查询发起节点和目标数据的关联插入间接索引信息。
2.根据权利要求1所述的无结构P2P网络的数据查询方法,其特征在于:所述直接索引信息包括目标节点信息,所述间接索引信息用来从其记录的节点索引单元中获取直接索引信息。
3.根据权利要求2所述的无结构P2P网络的数据查询方法,其特征在于:查询发起节点先查询直接索引信息发起直接索引,直接索引成功时,查询发起节点将相应直接索引信息的时间戳更新为当前时间,直接索引失败时,查询发起节点删除相应直接索引信息,对应的目标节点将查询发起节点与目标数据关联并插入到间接索引信息中。
4.根据权利要求2所述的无结构P2P网络的数据查询方法,其特征在于:查询发起节点在没有直接索引信息或者直接索引失败时查询间接索引信息向定向查询节点发起间接索引,在间接索引成功时查询发起节点将节点信息插入直接索引信息并删除间接索引信息的相关内容;在间接索引失败时查询发起节点删除间接索引信息的相关内容,对应的定向查询节点将查询发起节点的信息插入间接索引信息。
5.根据权利要求4所述的无结构P2P网络的数据查询方法,其特征在于:在间接索引成功时,查询发起节点插入直接索引信息的节点信息包括三种情况:相关直接索引信息有效的,为定向查询节点直接索引信息中与目标数据有关的节点信息;相关直接索引信息有效并且本地存储目标数据的,为定向查询节点直接索引信息中与目标数据有关的节点信息再加上本地节点信息;没有相关直接索引信息但是本地存储目标数据的,为定向查询节点的本地节点信息。
6.根据权利要求2所述的无结构P2P网络的数据查询方法,其特征在于:无结构P2P网络的节点在删除数据块时,向其它节点广播删除消息,收到删除消息的节点更新或删除索引信息。
7.根据权利要求6所述的无结构P2P网络的数据查询方法,其特征在于:每个节点对自身索引单元的实时更新为将其它节点的查询动作记录在直接索引信息和/或间接索引信息上的自学习性实时更新。
8.一种无结构P2P网络的自学性索引更新方法,具体包括以下步骤:无结构P2P网络的每个节点均设置索引单元,所述索引单元包括索引信息;所述索引单元的索引信息包括在先查询的直接索引信息和/或在后查询的间接索引信息;每个节点将有关的查询动作记录在索引信息中,自学性实时更新所述索引单元;所述自学性实时更新为将其它节点的查询动作记录在直接索引信息和/或间接索引信息上;
所述直接索引信息更新包括:直接索引成功时,查询发起节点将相应直接索引信息的时间戳更新为当前时间;直接索引失败时,查询发起节点删除相应直接索引信息;在间接索引成功时查询发起节点将节点信息插入直接索引信息并删除间接索引信息的相关内容;查询发起节点发送广播查询消息时,具有目标数据的节点向查询发起节点发送响应消息,查询发起节点将响应的节点信息记录到直接索引信息;节点在删除数据块广播删除消息时,收到删除消息的节点更新或删除直接索引信息。
9.根据权利要求8所述的无结构P2P网络的自学性索引更新方法,其特征在于:所述直接索引信息包括目标节点信息,所述间接索引信息用来从其记录的节点索引单元中获取直接索引信息;所述自学性实时更新包括直接索引信息的更新和间接索引信息的更新。
10.根据权利要求8或9所述的无结构P2P网络的自学性索引更新方法,其特征在于:所述间接索引信息更新包括:直接索引失败时,目标节点将查询发起节点与目标数据关联并插入到间接索引信息中;在间接索引成功时,查询发起节点删除间接索引信息的相关内容;在间接索引失败时查询发起节点删除间接索引信息的相关内容;在间接索引失败时,定向查询节点将查询发起节点的信息插入间接索引信息;查询发起节点发送广播查询消息时,没有响应的节点将查询发起节点和目标数据的关联插入间接索引信息;节点在删除数据块广播删除消息时,收到删除消息的节点更新或删除间接索引信息。
11.一种无结构P2P网络系统,包括构成自治域的若干节点,其特征在于:每个节点包括
具有索引信息的索引单元,所述索引单元的索引信息包括在先查询的直接索引信息和/或在后查询的间接索引信息;
实时更新所述索引单元的更新单元,用于将节点有关的查询动作记录在所述索引单元的索引信息中;
所述节点还包括,广播单元,用于在所述查询发起节点的索引单元没有目标数据的直接索引信息和间接索引信息或者所述查询发起节点间接索引失败时,向其它节点发送广播查询消息;
所述直接索引信息更新单元,还用于将广播查询响应的节点信息记录到直接索引信息;
所述间接索引信息更新单元,还用于将查询发起节点和目标数据的关联插入没有响应的节点的间接索引信息中。
12.根据权利要求11所述的无结构P2P网络系统,其特征在于:
所述节点还包括,数据请求单元,用于节点在作为查询发起节点时,通过索引信息获取具有目标数据的目标节点信息,并向目标节点发起数据请求。
13.根据权利要求12所述的无结构P2P网络系统,其特征在于:所述直接索引信息包括目标节点信息,所述间接索引信息用来从其记录的节点索引单元中获取直接索引信息;
所述数据请求单元的数据请求操作包括通过直接索引信息向目标节点发起直接索引和/或通过间接索引信息向定向查询节点发起间接索引;
所述更新单元包括:直接索引信息更新单元和间接索引信息更新单元。
14.根据权利要求13所述的无结构P2P网络系统,其特征在于:所述直接索引信息更新单元,用于在直接索引成功时,将相应直接索引信息的时间戳更新为当前时间,直接索引失败时,删除相应直接索引信息;还用于在间接索引成功时,将目标节点信息插入直接索引信息。
15.根据权利要求13所述的无结构P2P网络系统,其特征在于:所述间接索引信息更新单元,用于在直接索引失败时,将查询发起节点与目标数据关联并插入到目标节点的间接索引信息中;还用于在间接索引成功时,将目标节点信息插入直接索引信息并删除间接索引信息的相关内容;还用于在间接索引失败时,删除间接索引信息的相关内容,并将查询发起节点的信息插入定向查询节点的间接索引信息。
16.根据权利要求11所述的无结构P2P网络系统,其特征在于:
所述广播单元,还用于所述节点删除目标数据后向其他节点广播删除消息;
所述直接索引信息更新单元,还用于收到删除消息后更新或删除被删除目标数据的直接索引信息;
所述间接索引信息更新单元,还用于收到删除消息后更新或删除被删除目标数据的间接索引信息。
17.根据权利要求16所述的无结构P2P网络系统,其特征在于:所述节点还包括,
删除单元,用于在索引单元存储空间已满的情况下,对所述间接索引信息的表项进行随机删除,以插入新的表项;
还用于在间接索引信息的内容没有达到门限的情况下,对所述直接索引信息的表项进行时间排序,对最久未被使用的表项进行删除操作,以插入新的表项。
CN200910188807.1A 2009-12-10 2009-12-10 一种无结构p2p网络及其数据查询方法和索引更新方法 Active CN101710902B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200910188807.1A CN101710902B (zh) 2009-12-10 2009-12-10 一种无结构p2p网络及其数据查询方法和索引更新方法
PCT/CN2010/077540 WO2011069387A1 (zh) 2009-12-10 2010-09-30 一种网络节点及其数据查询方法和索引更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910188807.1A CN101710902B (zh) 2009-12-10 2009-12-10 一种无结构p2p网络及其数据查询方法和索引更新方法

Publications (2)

Publication Number Publication Date
CN101710902A CN101710902A (zh) 2010-05-19
CN101710902B true CN101710902B (zh) 2014-03-05

Family

ID=42403662

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910188807.1A Active CN101710902B (zh) 2009-12-10 2009-12-10 一种无结构p2p网络及其数据查询方法和索引更新方法

Country Status (2)

Country Link
CN (1) CN101710902B (zh)
WO (1) WO2011069387A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710902B (zh) * 2009-12-10 2014-03-05 北京邮电大学 一种无结构p2p网络及其数据查询方法和索引更新方法
CN102271144A (zh) * 2010-06-01 2011-12-07 中兴通讯股份有限公司 P2p叠加网络及其数据资源操作方法和新节点加入方法
CN102202228B (zh) * 2011-05-24 2012-11-14 北京邮电大学 视频资源存储、查找的方法及装置
CN102281332B (zh) * 2011-08-31 2013-09-04 上海西本网络科技有限公司 分布式缓存阵列及其数据更新方法
CN103024009A (zh) * 2012-11-30 2013-04-03 广东欧珀移动通信有限公司 一种基于点对点网络传输的电子书数据更新方法
CN104301364B (zh) * 2013-07-17 2019-08-02 北京千橡网景科技发展有限公司 用于移动社交网络中实时推荐好友的方法和设备
CN104683415A (zh) * 2013-12-02 2015-06-03 乐视网信息技术(北京)股份有限公司 一种点对点网络中删除数据通知消息的发送方法及装置
CN103995265A (zh) * 2014-05-28 2014-08-20 广州南方卫星导航仪器有限公司 一种gnss测量装置中自动循环存储记录的方法及装置
CN105991691B (zh) * 2015-02-05 2019-04-02 中国电信股份有限公司 用于传输信息的方法、设备和系统
CN106126552B (zh) * 2016-06-16 2019-03-29 华中师范大学 一种基于iDistance的P2P空间数据查询方法及系统
CN110209884B (zh) * 2018-01-10 2022-08-05 杭州海康威视数字技术股份有限公司 一种索引校对方法和装置
CN112995285B (zh) * 2018-03-29 2023-04-18 北京忆芯科技有限公司 基于区块技术的分布式kv存储系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722732A (zh) * 2004-07-16 2006-01-18 国际商业机器公司 节点之间进行通信的方法及系统
CN101136916A (zh) * 2007-06-11 2008-03-05 夏莹杰 基于角色和信誉访问控制机制的p2p传输方法
CN101217565A (zh) * 2008-01-04 2008-07-09 华中科技大学 一种对等网络视频共享系统中分类检索的网络组织方法
CN101488137A (zh) * 2008-01-14 2009-07-22 深圳三石科技有限公司 基于热点缓存的搜索方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1126681A2 (en) * 2000-01-14 2001-08-22 Sun Microsystems, Inc. A network portal system and methods
JP4523561B2 (ja) * 2006-03-17 2010-08-11 日本電信電話株式会社 XPath式処理装置
CN1937584B (zh) * 2006-09-05 2010-12-08 华为技术有限公司 非结构化对等网络系统及其资源查找及路由更新方法
CN101364958B (zh) * 2008-09-05 2011-04-27 西安电子科技大学 基于非结构化p2p网络的搜索方法
CN101505272B (zh) * 2009-03-02 2011-04-20 浙江理工大学 一种基于p2p的查找有关节点子集合的方法
CN101710902B (zh) * 2009-12-10 2014-03-05 北京邮电大学 一种无结构p2p网络及其数据查询方法和索引更新方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722732A (zh) * 2004-07-16 2006-01-18 国际商业机器公司 节点之间进行通信的方法及系统
CN101136916A (zh) * 2007-06-11 2008-03-05 夏莹杰 基于角色和信誉访问控制机制的p2p传输方法
CN101217565A (zh) * 2008-01-04 2008-07-09 华中科技大学 一种对等网络视频共享系统中分类检索的网络组织方法
CN101488137A (zh) * 2008-01-14 2009-07-22 深圳三石科技有限公司 基于热点缓存的搜索方法

Also Published As

Publication number Publication date
CN101710902A (zh) 2010-05-19
WO2011069387A1 (zh) 2011-06-16

Similar Documents

Publication Publication Date Title
CN101710902B (zh) 一种无结构p2p网络及其数据查询方法和索引更新方法
WO2016061898A1 (zh) 直播间的频道访问方法和系统
CN111200657B (zh) 一种管理资源状态信息的方法和资源下载系统
CN104731516A (zh) 一种存取文件的方法、装置及分布式存储系统
EP1944944A1 (en) System and method for combining pull and push modes
CN103152423A (zh) 一种云存储系统及其数据存取方法
CN103096177B (zh) 一种视频点播方法、系统、代理节点及媒体服务器
CN102129434B (zh) 读写分离数据库的方法及系统
CN101706817B (zh) 分布式文件系统及其垃圾数据清理方法
CN103281394A (zh) 文件获取方法、节点服务器和系统
CN110401711B (zh) 数据处理方法、装置、系统及存储介质
CN101677325A (zh) 发布媒体描述信息和获取媒体的方法、装置、系统
CN107888666A (zh) 一种跨地域数据存储系统以及数据同步方法和装置
CN108737500A (zh) 目标资源获取、提供方法、装置、存储介质与计算机设备
CN110311979B (zh) 一种mec服务器的任务迁移方法及相关装置
CN101588287B (zh) 对等网络数据调度和下载的方法、装置和系统
CN102647436A (zh) 一种基于点对点的文件发布方法及系统
CN104539982A (zh) 一种视频点对点资源共享调度方法、系统及节点终端
CN108347459A (zh) 一种云端数据快速存储方法及装置
CN102546674A (zh) 一种基于网络存储装置的目录树缓存系统及方法
CN101932065B (zh) 分布式卫星网络资源发现方法
CN101635741A (zh) 分布式网络中查询资源的方法及其系统
US20140222988A1 (en) Method for adaptive content discovery for distributed shared caching system
CN102571942A (zh) 一种在p2p网络中推送资源信息并提供服务的方法与设备
CN102724301B (zh) 云数据库系统以及云数据读写处理方法、设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant