[go: up one dir, main page]

CN102065112B - Peer-to-peer (P2P) network system and method and related device for establishing the same - Google Patents

Peer-to-peer (P2P) network system and method and related device for establishing the same Download PDF

Info

Publication number
CN102065112B
CN102065112B CN2009102380837A CN200910238083A CN102065112B CN 102065112 B CN102065112 B CN 102065112B CN 2009102380837 A CN2009102380837 A CN 2009102380837A CN 200910238083 A CN200910238083 A CN 200910238083A CN 102065112 B CN102065112 B CN 102065112B
Authority
CN
China
Prior art keywords
node
sign
super node
super
primary
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
CN2009102380837A
Other languages
Chinese (zh)
Other versions
CN102065112A (en
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.)
China Mobile Communications Group Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
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 China Mobile Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN2009102380837A priority Critical patent/CN102065112B/en
Publication of CN102065112A publication Critical patent/CN102065112A/en
Application granted granted Critical
Publication of CN102065112B publication Critical patent/CN102065112B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种对等网络系统、建立对等网络系统的方法及相关装置,用以解决现有对等网络可扩展性不高的问题。该系统包括:主用超级节点,包括用于在确定出自身所在簇中存在第二普通节点存储有对应的资源时,获得第二普通节点的路由信息的单元;在确定出自身所在簇中不存在存储有对应的资源的普通节点时,将搜索请求发送给其他主用超级节点,并将其他主用超级节点反馈的第三普通节点的路由信息作为获得的路由信息的单元;以及将获得的路由信息发送给发送搜索请求的第一普通节点或其他主用超级节点的单元;普通节点,用于向所在簇内的主用超级节点发送搜索请求,并从所在簇内的主用超级终端发送的路由信息对应的普通节点中获取要搜索的资源。

Figure 200910238083

The invention discloses a peer-to-peer network system, a method for establishing the peer-to-peer network system and related devices, which are used to solve the problem of low scalability of the existing peer-to-peer network. The system includes: an active super node, including a unit for obtaining the routing information of the second common node when it is determined that there is a second common node in the cluster where it is located and storing corresponding resources; When there is an ordinary node that stores corresponding resources, send the search request to other active super nodes, and use the routing information of the third ordinary node fed back by other active super nodes as the unit of the obtained routing information; and the obtained The routing information is sent to the first common node that sends the search request or other main super node units; the common node is used to send the search request to the main super node in the cluster, and send the search request from the main hyper terminal in the cluster Obtain the resource to be searched from the common node corresponding to the route information of

Figure 200910238083

Description

对等网络系统、建立对等网络系统的方法及相关装置Peer-to-peer network system, method for establishing a peer-to-peer network system, and related devices

技术领域technical field

本发明涉及网络技术领域,尤其涉及一种对等网络系统、建立对等网络系统的方法、一种对等网络系统中的普通节点设备、超级节点设备、一种建立对等网络系统的装置和一种节点设备。The present invention relates to the field of network technology, in particular to a peer-to-peer network system, a method for establishing a peer-to-peer network system, a common node device in a peer-to-peer network system, a super node device, a device for establishing a peer-to-peer network system and A node device.

背景技术Background technique

随着网络技术和多媒体技术的快速发展,人们对网络数据的传输速度、网络性能等方面提出了越来越高的要求。由于网络用户数量的急剧增长,使用传统的客户端/服务器(C/S,Client/Server)方式构建的网络应用服务已经难以满足人们的要求。With the rapid development of network technology and multimedia technology, people put forward higher and higher requirements for network data transmission speed and network performance. Due to the sharp increase in the number of network users, the network application services constructed in the traditional client/server (C/S, Client/Server) manner have been difficult to meet people's requirements.

为了解决上述问题,点对点(P2P,Peer-to-Peer)网络技术应运而生。点对点网络技术又被称为对等网络技术,该技术是一种用在不同的终端节点(或客户端)之间,不经过中继设备直接交换数据的技术。在对等网络中,终端节点可以直接连接其他的终端节点,而不需要连接到服务器上再进行浏览与下载。对等网络技术因为其具有负载均衡、自适应的特点而被广泛应用于流媒体传输等领域。In order to solve the above problems, peer-to-peer (P2P, Peer-to-Peer) network technology came into being. Peer-to-peer network technology, also known as peer-to-peer network technology, is a technology used between different terminal nodes (or clients) to directly exchange data without going through a relay device. In a peer-to-peer network, terminal nodes can directly connect to other terminal nodes without connecting to a server for browsing and downloading. Peer-to-peer network technology is widely used in streaming media transmission and other fields because of its load balancing and self-adaptive characteristics.

对等网络中常用的资源搜索方式主要有:基于中央目录服务器的对等网络搜索、泛洪(flooding)搜索和分布式哈希表搜索三种。Common resource search methods in peer-to-peer networks mainly include: peer-to-peer network search based on the central directory server, flooding (flooding) search and distributed hash table search.

请参照附图1,为现有的基于中央目录服务器的资源搜索方式的示意图。每个终端节点都向中央目录服务器提交本地存储的资源(包括文档、流媒体视频、图片等)的目录,并由中央目录服务器编制资源索引,资源索引包含每个终端节点的路由信息(例如网络地址等)与该终端节点存储的资源的对应关系。终端节点在有资源需求时,向中央目录服务器发起搜索请求,中央目录服务器通过自身存储的资源索引获取存储有终端节点请求的资源的其他终端节点的路由信息,并将获取到的其他终端节点的路由信息反馈给发起搜索请求的终端节点。此后,资源下载或传输可以直接在发起搜索请求的终端节点和存储有资源的其他终端节点之间进行,无需中央目录服务器的参与。Please refer to Figure 1, which is a schematic diagram of an existing resource search method based on a central directory server. Each terminal node submits a catalog of locally stored resources (including documents, streaming media videos, pictures, etc.) Address, etc.) and the corresponding relationship between the resources stored in the terminal node. When a terminal node has a resource demand, it initiates a search request to the central directory server, and the central directory server obtains the routing information of other terminal nodes that store the resources requested by the terminal node through the resource index stored by itself, and sends the obtained routing information of other terminal nodes Routing information is fed back to the terminal node that initiated the search request. Thereafter, resource downloads or transfers can occur directly between the end node that initiated the search request and other end nodes where the resource is stored, without the involvement of a central directory server.

请参照附图2,为泛洪搜索的示意图。在无结构对等网络中,由于不存在中央目录服务器,因而资源查找时采用基本方式为类似泛洪的盲目搜索。附图2中的每个终端节点接收到的其他终端节点发送的搜索请求后,在判断出自身并未存储有搜索请求所请求的资源时,都将上述接收到搜索请求发送给自身的所有邻居终端节点,并由邻居终端节点进一步发送给更多的间接邻居终端节点,直到找到存储有搜索请求所请求的资源的终端节点为止,或者达到系统允许的最大搜索跳数后以搜索失败告终。在找到存储有搜索请求所请求的资源的终端节点后,最初发送搜索请求的终端节点可以依据存储有所请求的资源的终端节点反馈的路由信息,直接从找到的存储有请求的资源的终端节点下载资源。例如,终端节点1为发送搜索请求的终端节点,终端节点4在接收到终端节点1发送的搜索请求后,判断出自身未存储有终端节点1请求的资源后,将搜索请求发送给自身的邻居终端节点5、6,恰好终端节点5存储有终端节点1请求的资源,终端节点1可以直接从终端节点5下载所需的资源。Please refer to Figure 2, which is a schematic diagram of flood search. In an unstructured peer-to-peer network, since there is no central directory server, the basic method of resource lookup is blind search similar to flooding. After each terminal node in Figure 2 receives the search request sent by other terminal nodes, when it judges that it does not store the resources requested by the search request, it will send the above-mentioned received search request to all its neighbors The terminal node is further sent by the neighbor terminal node to more indirect neighbor terminal nodes until the terminal node storing the resources requested by the search request is found, or the search fails after reaching the maximum number of search hops allowed by the system. After finding the terminal node that stores the resource requested by the search request, the terminal node that originally sent the search request can directly transfer from the found terminal node that stores the requested resource based on the routing information fed back by the terminal node that stores the requested resource. Download resources. For example, terminal node 1 is the terminal node that sends the search request. After receiving the search request sent by terminal node 1, terminal node 4 determines that it does not store the resources requested by terminal node 1, and then sends the search request to its neighbors The terminal nodes 5 and 6 happen to have the resources requested by the terminal node 1 stored in the terminal node 5, and the terminal node 1 can directly download the required resources from the terminal node 5.

请参照附图3,为结构化、完全分布式的对等网络的示意图,在此类对等网络中采用分布式哈希表(DHT,Distributed Hash Table)来确定资源的关键字以及来搜索资源。可以根据用户需求的资源的关键字来有目的性的确定存储有所需求的资源的终端节点的地址。每个终端节点除了保存存储资源之外,还保存有至少2个上行/下行邻居终端节点的标识、以及上行/下行邻居终端节点对应的路由信息。Please refer to Figure 3, which is a schematic diagram of a structured and fully distributed peer-to-peer network. In such a peer-to-peer network, a distributed hash table (DHT, Distributed Hash Table) is used to determine the keyword of the resource and to search for the resource . The address of the terminal node storing the required resource can be purposefully determined according to the keyword of the resource required by the user. In addition to storing storage resources, each terminal node also stores at least two identities of uplink/downlink neighbor terminal nodes and routing information corresponding to the uplink/downlink neighbor terminal nodes.

在存储资源时,首先按照预定的哈希函数,对待存储文件的标识(例如文件名)进行哈希运算,获得待存储文件对应的键值,然后将该待存储文件存储到节点标识与该待存储文件对应的键值最为接近的终端节点中。When storing resources, first perform a hash operation on the identification of the file to be stored (such as the file name) according to a predetermined hash function to obtain the key value corresponding to the file to be stored, and then store the file to be stored in the node ID and the file to be stored. The key value corresponding to the storage file is closest to the terminal node.

在其中一个终端节点因需要搜索资源而发起搜索请求时,首先按照预定的哈希函数,对所要搜索的文件的标识进行哈希运算,获得所要搜索的文件对应的键值,然后从邻居终端节点中选择出节点标识与所要搜索的文件对应的键值最为接近的其中一个邻居终端节点,并将搜索请求发送给选择出的邻居终端节点。When one of the terminal nodes initiates a search request due to the need to search for resources, first perform a hash operation on the identifier of the file to be searched according to a predetermined hash function to obtain the key value corresponding to the file to be searched, and then obtain the corresponding key value from the neighbor terminal node Select one of the neighbor terminal nodes whose node identification is closest to the key value corresponding to the file to be searched, and send the search request to the selected neighbor terminal node.

例如,请参照附图3,为完全分布式的对待网络的示意图。其中包含5个终端节点,分别为:节点标识为000500的终端节点1、节点标识为000800的终端节点2、节点标识为000200的终端节点3、节点标识为000120的终端节点4和节点标识为000060的终端节点5。终端节点1需要搜索一个键值为000080的文件时,首先比较自身的邻居终端节点,终端节点2和终端节点3的标识,比较结果为终端节点3的标识与所需搜索的文件对应的键值更为接近,则将携带有所需搜索的文件对应的键值的搜索请求发送给终端节点3,终端节点3接到搜索请求后,经过类似的比较和转发处理,最终到达终端节点5,终端节点5的标识与所需搜索的文件对应的键值最为接近,说明所需搜索的文件保存在终端节点5中,最终终端节点5将自身的路由信息反馈给终端节点1,终端节点1可以从终端节点5处获得所要搜索的资源。For example, please refer to FIG. 3 , which is a schematic diagram of a completely distributed network. It contains 5 terminal nodes, namely: terminal node 1 with node ID 000500, terminal node 2 with node ID 000800, terminal node 3 with node ID 000200, terminal node 4 with node ID 000120 and node ID 000060 The terminal node 5. When terminal node 1 needs to search for a file with a key value of 000080, it first compares the identifiers of its neighbor terminal nodes, terminal node 2 and terminal node 3, and the comparison result is the key value corresponding to the identifier of terminal node 3 and the file to be searched If it is closer, the search request carrying the key value corresponding to the file to be searched is sent to the terminal node 3. After the terminal node 3 receives the search request, after similar comparison and forwarding processing, it finally reaches the terminal node 5, and the terminal node The identity of node 5 is the closest to the key value corresponding to the file to be searched, indicating that the file to be searched is stored in terminal node 5, and finally terminal node 5 feeds back its own routing information to terminal node 1, and terminal node 1 can get from The resource to be searched is obtained at the terminal node 5 .

在第一种搜索方式中,中央目录服务器需要承担所有编制目录索引、根据终端节点的搜索请求确定存储有对应资源的终端节点地址的工作,在对等网络中的终端节点过多时,中央目录服务器处理能力会成为搜索的瓶颈。并且,一旦中央目录服务器出现故障,整个对等网络将陷入瘫痪状态。In the first search method, the central directory server needs to undertake all the work of indexing the directory and determining the address of the terminal node that stores the corresponding resource according to the search request of the terminal node. When there are too many terminal nodes in the peer-to-peer network, the central directory server Processing power can become a bottleneck for searches. And, once the central directory server fails, the entire peer-to-peer network will be paralyzed.

泛洪搜索虽然解决了基于中央目录服务器的对等网络搜索的上述问题,然而由于终端节点向自身所有的邻居终端节点转发搜索请求时的盲目性,会大量增加网络中的消息,在对等网络的规模过大、网络中包含的终端节点数量过多时,转发的搜索请求的数量将会急剧增多,严重的占用网络带宽,因此采用该搜索方式时,对等网络的可扩展性不佳。Although flood search solves the above-mentioned problems of peer-to-peer network search based on the central directory server, due to the blindness of terminal nodes forwarding search requests to all their neighbor terminal nodes, it will greatly increase the messages in the network. When the scale of the network is too large and the number of terminal nodes in the network is too large, the number of forwarded search requests will increase sharply, seriously occupying the network bandwidth. Therefore, when this search method is used, the scalability of the peer-to-peer network is not good.

基于DHT的搜索方式在网络情况不稳定,例如频繁有终端节点加入/或退出网络时,相关终端节点需要更新自身所存储的路由信息,因而存在维护成本较高的问题,因此也不适用于网络规模较大、频繁有终端节点加入/或退出网络的情况。The DHT-based search method is unstable in the network situation. For example, when terminal nodes frequently join/exit the network, the relevant terminal nodes need to update their stored routing information, so there is a problem of high maintenance costs, so it is not suitable for the network Large scale, frequent end nodes joining/or exiting the network.

发明内容Contents of the invention

本发明实施例提供一种对等网络系统,用以解决现有技术中对等网络可扩展性不高的问题。An embodiment of the present invention provides a peer-to-peer network system to solve the problem of low scalability of the peer-to-peer network in the prior art.

对应地,本发明实施例还提供了一种建立所述对等网络系统的方法、一种主用超级节点设备、一种普通节点设备、一种建立对等网络系统的装置。Correspondingly, the embodiment of the present invention also provides a method for establishing the peer-to-peer network system, a master super node device, a common node device, and a device for establishing the peer-to-peer network system.

本发明实施例提供的技术方案如下:The technical scheme that the embodiment of the present invention provides is as follows:

一种对等网络系统,包括至少两个簇,每个簇中包含一个主用超级节点和至少一个普通节点,其中:A peer-to-peer network system, including at least two clusters, each cluster contains a master super node and at least one ordinary node, wherein:

主用超级节点,包括用于根据自身所在簇中的第一普通节点或其他主用超级节点发来的携带要搜索资源对应的标识的搜索请求,在确定出自身所在簇中存在第二普通节点存储有所述标识对应的资源时,获得所述第二普通节点的路由信息的单元;以及在确定出自身所在簇中不存在存储有所述标识对应的资源的普通节点时,将所述搜索请求发送给除发送所述搜索请求的主用超级节点之外的主用超级节点,并接收除发送所述搜索请求的主用超级节点之外的其他主用超级节点反馈的存储有所述标识对应的资源的第三普通节点的路由信息,作为获得的路由信息的单元;以及将获得的路由信息发送给发送所述搜索请求的第一普通节点或其他主用超级节点的单元;The active super node includes a search request that carries the identifier corresponding to the resource to be searched sent by the first ordinary node in the cluster where it is located or other active super nodes, and determines that there is a second ordinary node in the cluster where it is located When the resource corresponding to the identification is stored, a unit for obtaining the routing information of the second common node; Send the request to an active super node other than the active super node that sent the search request, and receive feedback from other active super nodes other than the active super node that sent the search request. The routing information of the third common node corresponding to the resource is used as a unit of the obtained routing information; and the unit of sending the obtained routing information to the first normal node or other active super nodes sending the search request;

普通节点,用于向自身所在簇内的主用超级节点发送携带要搜索的资源对应的标识的搜索请求,并从自身所在簇内的主用超级节点发送的路由信息对应的普通节点中获取要搜索的资源。The ordinary node is used to send a search request carrying the identifier corresponding to the resource to be searched to the active super node in the cluster where it is located, and obtain the required resources from the ordinary node corresponding to the routing information sent by the active super node in the cluster where it is located. Search resources.

一种建立所述对等网络系统的方法,包括:A method for establishing the peer-to-peer network system, comprising:

将第一个请求加入所述对等网络的节点作为第一个主用超级节点,将所述节点的标识加入超级节点标识集合;The first node requesting to join the peer-to-peer network is used as the first active supernode, and the identifier of the node is added to the supernode identifier set;

在后续其他新节点请求加入所述对等网络时,执行:When other new nodes subsequently request to join the peer-to-peer network, execute:

从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该新节点的距离是超级节点标识集合中所有标识对应的各个超级节点与该新节点的距离中最近的;Select an active super node identification from the super node identification set, and the distance between the super node corresponding to the selected active super node identification and the new node is the distance between each super node corresponding to all identifications in the super node identification set the closest in distance to the new node;

在选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将该新节点作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The distance between the super node corresponding to the selected active super node ID and the new node is less than the first threshold, and the number of ordinary nodes in the cluster where the selected active super node ID corresponds to the super node is not greater than the second threshold , add the new node as a normal node to the cluster where the super node corresponding to the selected primary super node ID is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

一种主用超级节点设备,包括:A primary super node device, including:

第一接收单元,用于接收所述主用超级节点设备所在簇中的第一普通节点或其他主用超级节点发来的包含要搜索资源对应的标识的搜索请求;The first receiving unit is configured to receive a search request containing an identification corresponding to the resource to be searched from the first ordinary node in the cluster where the active super node device is located or other active super nodes;

判断单元,用于判断所述主用超级节点设备所在簇中是否存在第二普通节点存储有第一接收单元接收到的搜索请求中包含的标识对应的资源;A judging unit, configured to judge whether there is a resource corresponding to the identifier included in the search request received by the first receiving unit stored in a second common node in the cluster where the master supernode device is located;

第一获取单元,用于在判断单元判断出所述主用超级节点设备所在簇中存在第二普通节点存储有所述标识对应的资源时,获得所述第二普通节点的路由信息;The first obtaining unit is configured to obtain the routing information of the second normal node when the judging unit judges that there is a second normal node in the cluster where the active super node device is located and stores the resource corresponding to the identifier;

第二获取单元,用于在判断单元判断出所述主用超级节点设备所在簇中不存在存储有所述标识对应的资源的普通节点时,将所述搜索请求发送给除发送所述搜索请求的主用超级节点之外的主用超级节点,并接收除发送所述搜索请求的主用超级节点之外的其他主用超级节点反馈的存储有所述标识对应的资源的第三普通节点的路由信息,作为获得的路由信息;The second acquisition unit is configured to send the search request to a host other than sending the search request when the judging unit judges that there is no common node storing the resource corresponding to the identifier in the cluster where the master supernode device is located The active super node other than the active super node, and receive the feedback of the third common node that stores the resource corresponding to the identification from other active super nodes except the active super node that sent the search request routing information, as the obtained routing information;

发送单元,用于将第一获取单元或第二获取单元获得的路由信息发送给发送所述搜索请求的第一普通节点或其他主用超级节点。The sending unit is configured to send the routing information obtained by the first obtaining unit or the second obtaining unit to the first common node or other active super nodes that send the search request.

一种普通节点设备,包括:A common node device, including:

存储单元,用于存储同簇中的主用超级节点的路由信息;A storage unit for storing the routing information of the active supernode in the same cluster;

发送单元,用于根据存储单元存储的路由信息,向同簇内的超级节点设备发送搜索请求,该搜索请求中包含要搜索的资源的标识;The sending unit is configured to send a search request to the super node device in the same cluster according to the routing information stored in the storage unit, the search request includes the identifier of the resource to be searched;

接收单元,用于接收所述超级节点设备发来的与发送单元发送的搜索请求对应的存储有要搜索的资源的其他普通节点设备的路由信息;The receiving unit is configured to receive the routing information of other common node devices that store the resources to be searched and corresponding to the search request sent by the sending unit from the super node device;

下载单元,用于根据接收单元接收到的路由信息,从所述其他普通节点中下载要搜索的资源;A downloading unit, configured to download resources to be searched from other common nodes according to the routing information received by the receiving unit;

第二上报单元,用于定期地向同簇中的超级节点上报该普通节点设备预定性能参数的参数值。The second reporting unit is configured to regularly report the parameter value of the predetermined performance parameter of the common node device to the super node in the same cluster.

一种建立对等网络系统的装置,包括:A device for establishing a peer-to-peer network system, comprising:

第一确定单元,用于将第一个请求加入所述对等网络的节点作为第一个主用超级节点,将所述节点的标识加入超级节点标识集合;The first determination unit is configured to use the first node requesting to join the peer-to-peer network as the first active supernode, and add the node's identifier to the supernode identifier set;

选择单元,用于在后续其他新节点加入所述对等网络时,执行:The selection unit is configured to execute when other new nodes subsequently join the peer-to-peer network:

从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该新节点的距离是超级节点标识集合中所有标识对应的各个超级节点与该新节点的距离中最近的;Select an active super node identification from the super node identification set, and the distance between the super node corresponding to the selected active super node identification and the new node is the distance between each super node corresponding to all identifications in the super node identification set the closest in distance to this new node;

第二确定单元,用于在选择单元选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将该新节点作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The second determination unit is configured to be in the cluster where the distance between the supernode corresponding to the master supernode identifier selected by the selection unit and the new node is less than the first threshold and where the supernode corresponding to the selected master supernode identifier is located When the number of ordinary nodes is not greater than the second threshold, the new node is added as an ordinary node to the cluster where the supernode corresponding to the selected master supernode identifier is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

一种节点设备,包括:A node device, comprising:

判断单元,用于判断所述节点设备是否为第一个请求加入对等网络系统的节点;a judging unit, configured to judge whether the node device is the first node requesting to join the peer-to-peer network system;

第一确定单元,用于在判断单元判断出所述节点设备为第一个请求加入所述对等网络系统的节点时,将自身作为第一个主用超级节点,将自身的标识加入超级节点标识集合;The first determining unit is configured to use itself as the first active super node and add its own identity to the super node when the judging unit determines that the node device is the first node requesting to join the peer-to-peer network system set of identities;

选择单元,用于在判断单元判断出所述节点设备不是第一个请求加入所述对等网络系统的节点时,从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该节点设备的距离是超级节点标识集合中所有标识对应的各个超级节点与该节点设备的距离中最近的;The selection unit is configured to select a master super node ID from the super node ID set when the judging unit determines that the node device is not the first node requesting to join the peer-to-peer network system, and the selection The distance between the super node corresponding to the primary super node ID and the node device is the shortest distance between each super node corresponding to all the IDs in the super node ID set and the node device;

第二确定单元,用于在选择单元选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将自身作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The second determination unit is configured to be in the cluster where the distance between the supernode corresponding to the master supernode identifier selected by the selection unit and the new node is less than the first threshold and where the supernode corresponding to the selected master supernode identifier is located When the number of ordinary nodes is not greater than the second threshold, add itself as an ordinary node to the cluster where the supernode corresponding to the selected active supernode identifier is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

本发明实施例提供了一种新颖结构的对等网络,该对等网络包括至少两个簇和至少一个注册服务器节点,其中每个所述簇中包含一个主用超级节点、以及至少一个普通节点;所述注册服务器节点,用于存储超级节点集合、以及超级节点集合中的每个主用超级节点的标识和对应的路由信息,所述超级节点集合包含每个簇中的主用超级节点。基于上述结构的对等网络,在进行资源搜索时,在簇内为类似于基于中央目录服务器的搜索方法,在簇间采用基于DHT路由表的搜索方法,避免了洪泛搜索大量增加网络中的消息、基于中央目录服务器的资源搜索存在的存在瓶颈问题,以及基于DHT路由表的搜索方法维护较为复杂的问题导致的对等网络扩展性不佳的问题。The embodiment of the present invention provides a peer-to-peer network with a novel structure, the peer-to-peer network includes at least two clusters and at least one registration server node, wherein each cluster contains a master super node and at least one common node ; The registration server node is used to store a set of super nodes, and the identification and corresponding routing information of each active super node in the set of super nodes, and the set of super nodes includes the active super nodes in each cluster. Based on the peer-to-peer network with the above structure, when searching for resources, the search method is similar to that based on the central directory server in the cluster, and the search method based on the DHT routing table is used between the clusters, which avoids flooding searches and greatly increases the number of resources in the network. There are bottleneck problems in resource search based on message and central directory server, and the problem of poor scalability of peer-to-peer network caused by complicated maintenance of search method based on DHT routing table.

附图说明Description of drawings

图1为现有的基于中央目录服务器的资源搜索方式的示意图;FIG. 1 is a schematic diagram of an existing resource search method based on a central directory server;

图2为现有的泛洪搜索的示意图;FIG. 2 is a schematic diagram of an existing flood search;

图3为现有的基于DHT路由表进行资源搜索的示意图;FIG. 3 is a schematic diagram of resource search based on an existing DHT routing table;

图4为本发明实施例提出的对等网络的结构示意图;FIG. 4 is a schematic structural diagram of a peer-to-peer network proposed by an embodiment of the present invention;

图5为基于附图4所示结构的对等网络,进行资源搜索的流程图;Fig. 5 is based on the peer-to-peer network of structure shown in accompanying drawing 4, carries out the flowchart of resource search;

图6为在附图4所示结构的对等网络中的每个簇中增加备用超级节点的示意图;Fig. 6 is the schematic diagram that increases standby super node in each cluster in the peer-to-peer network of structure shown in accompanying drawing 4;

图7为本发明实施例提供的一种主用超级节点设备的结构示意图;FIG. 7 is a schematic structural diagram of an active super node device provided by an embodiment of the present invention;

图8为本发明实施例提供的主用超级节点设备中第二获取单元的结构示意图;FIG. 8 is a schematic structural diagram of a second acquisition unit in an active super node device provided by an embodiment of the present invention;

图9为本发明实施例提供的改进的一种主用超级节点设备的结构示意图;FIG. 9 is a schematic structural diagram of an improved primary super node device provided by an embodiment of the present invention;

图10为本发明实施例提供的普通节点设备的结构示意图;FIG. 10 is a schematic structural diagram of a common node device provided by an embodiment of the present invention;

图11为本发明实施例提供的一种建立对等网络系统的装置的结构示意图;FIG. 11 is a schematic structural diagram of an apparatus for establishing a peer-to-peer network system provided by an embodiment of the present invention;

图12为本发明实施例提供的一种节点设备的结构示意图。FIG. 12 is a schematic structural diagram of a node device provided by an embodiment of the present invention.

具体实施方式Detailed ways

由于现有的对等网络存在可扩展性不高的问题,本发明实施例提出新的结构的对等网络。该对等网络中包含至少一个注册服务器节点和至少两个簇,其中每个簇中包含有一个主用超级节点和若干普通节点,每个簇中的超级节点除了像现有的中央目录服务器一样存储有簇内各个普通节点的标识、路由信息和存储的资源的标识之外,还存储有相邻簇中的超级节点的标识、路由信息。Since the existing peer-to-peer network has a problem of low scalability, the embodiment of the present invention proposes a peer-to-peer network with a new structure. The peer-to-peer network contains at least one registration server node and at least two clusters, each of which contains a master super node and several ordinary nodes, and the super nodes in each cluster are the same as the existing central directory server In addition to storing the identifiers, routing information and identifiers of stored resources of each common node in the cluster, the identifiers and routing information of super nodes in adjacent clusters are also stored.

上述结构的对等网络在进行资源搜索时,采用基于中央目录服务器的搜索方式与基于DHT路由表的搜索方式相结合的一种搜索方式,具体为:When searching for resources, the peer-to-peer network with the above structure adopts a search method based on a search method based on a central directory server and a search method based on a DHT routing table, specifically:

在进行资源搜索时,超级节点在接收到簇内的普通节点发送的搜索请求之后,首先判断簇内是否有其他普通节点存储有所请求的资源,在簇内没有普通节点存储有请求的资源时,向其他簇内的超级节点转发搜索请求,直到其他簇内有普通节点存储有请求的资源为止。When searching for resources, after receiving the search request sent by the ordinary nodes in the cluster, the super node first judges whether there are other ordinary nodes in the cluster that store the requested resources. When there is no ordinary node in the cluster that stores the requested resources , forward the search request to super nodes in other clusters until there are common nodes in other clusters that store the requested resources.

下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。The main realization principles, specific implementation modes and corresponding beneficial effects that can be achieved of the technical solutions of the embodiments of the present invention will be described in detail below in conjunction with each accompanying drawing.

请参照附图4,为本发明实施例提出的一种对等网络系统的结构示意图,其中圆形为普通节点,方块为主用超级节点,以及一个注册服务器节点。Please refer to FIG. 4 , which is a schematic structural diagram of a peer-to-peer network system proposed by an embodiment of the present invention, wherein circles are common nodes, squares are main super nodes, and a registration server node.

附图4中包含3个簇,每个簇中包含一个主用超级节点、以及至少一个普通节点peer,且针对每个簇,该簇中的主用超级节点存储有该簇中每个普通节点的标识、对应的路由信息和该普通节点存储的资源的标识信息、以及分布式哈希表DHT路由表,所述DHT路由表中包含其他簇中主用超级节点的标识和对应的路由信息,如相邻簇中主用超级节点的标识和对应的路由信息,其中路由信息可以为节点的IP地址、端口等信息。例如普通节点peerA1、peerA2和主用超级节点A构成簇A、普通节点peerB1、peerB2、peerB3和主用超级节点B构成簇B、peerC1、peerC2、peerC3和主用超级节点C构成簇C。在簇A中,主用超级节点A中存储有peerA1的标识、peerA1的路由信息和peerA1中存储的资源的标识、以及peerA2的标识、peerA2的路由信息和peerA2中存储的资源的标识,而peerA1、peerA2中都分别存储有同簇中的主用超级节点-主用超级节点A的路由信息。其他簇的情况类似,在这里不再赘述。Attached Figure 4 contains 3 clusters, each cluster contains a primary super node and at least one common node peer, and for each cluster, the primary super node in the cluster stores the information of each common node in the cluster identification, corresponding routing information, and identification information of resources stored by the common node, and a distributed hash table DHT routing table, the DHT routing table includes the identification and corresponding routing information of the main super node in other clusters, For example, the identity of the active super node in the adjacent cluster and the corresponding routing information, where the routing information may be the IP address, port and other information of the node. For example, ordinary nodes peerA1, peerA2 and master supernode A form cluster A; common nodes peerB1, peerB2, peerB3 and master supernode B form cluster B; peerC1, peerC2, peerC3 and master supernode C form cluster C. In cluster A, the primary supernode A stores the identity of peerA1, the routing information of peerA1, and the identity of resources stored in peerA1, the identity of peerA2, the routing information of peerA2, and the identity of resources stored in peerA2, and peerA1 , peerA2 respectively store the routing information of the master super node in the same cluster - the master super node A. The situation of other clusters is similar and will not be repeated here.

注册服务器节点超级节点标识集合,所述超级节点集合包含每个簇中的主用超级节点的标识。还可以存储超级节点标识集合中的每个超级节点的标识对应的主用超级节点的路由信息。注册服务器是用于在有新的终端节点加入对等网络时,为新的终端节点提供超级节点的信息的。The registration server node super node identification set, the super node set includes the main super node identification in each cluster. It is also possible to store the routing information of the master supernode corresponding to the identifier of each supernode in the supernode identifier set. The registration server is used to provide super node information for new terminal nodes when new terminal nodes join the peer-to-peer network.

如附图4所示的对等网络系统是采用以下方式来建立的:The peer-to-peer network system shown in Figure 4 is established in the following manner:

在第一个新节点请求加入对等网络时,将该新节点作为第一个主用超级节点,确定该第一个主用超级节点的标识,将所述第一个主用超级节点的标识加入超级节点标识集合、较佳地可以存储所述第一个主用超级节点的位置信息或路由信息。When the first new node requests to join the peer-to-peer network, the new node is used as the first active super node, the identification of the first active super node is determined, and the identification of the first active super node Adding to the super node identification set may preferably store the location information or routing information of the first active super node.

在此后有新节点请求加入对等网络时,确定该新节点的标识,并从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该新节点的距离是超级节点标识集合中所有标识对应的主用超级节点与该新节点的距离中最近的。Afterwards, when a new node requests to join the peer-to-peer network, the identification of the new node is determined, and a main super node identification is selected from the set of super node identifications, and the super node identification corresponding to the selected main super node identification The distance between the node and the new node is the closest among the distances between the active super nodes corresponding to all the identities in the super node identification set and the new node.

在上述距离为地理距离时,可以基于存储的超级节点标识集合中每个主用超级节点标识对应的超级节点的位置信息和该新节点的位置信息来确定超级节点标识集合中每个主用超级节点标识对应的超级节点与该新节点的地理距离,进而选取距离最近的超级节点;When the above distance is a geographical distance, the position information of each active super node in the super node identification set can be determined based on the location information of the super node corresponding to each active super node identification in the stored super node identification set and the position information of the new node. The geographical distance between the super node corresponding to the node identifier and the new node, and then select the super node with the closest distance;

在上述距离为地理距离时,可以基于存储的超级节点标识集合中每个主用超级节点标识对应的超级节点的路由信息和该新节点的路由信息来确定超级节点标识集合中每个主用超级节点标识对应的超级节点与该新节点的网络距离,进而选取距离最近的超级节点,所述网络距离为数据包往返时间和网络节点跳数的函数。新节点从注册服务器节点中获取超级节点集合中所有超级节点的标识和对应的路由信息,并基于各个超级节点的路由信息,进行网络报文往返时间测试,以确定该新节点与超级节点集合中每个超级节点的网络距离。When the above distance is a geographical distance, it can be determined based on the routing information of the super node corresponding to each active super node identification in the stored super node identification set and the routing information of the new node to determine the location of each active super node in the super node identification set. The node identifies the network distance between the corresponding super node and the new node, and then selects the closest super node, and the network distance is a function of the round-trip time of the data packet and the hop number of the network node. The new node obtains the identifiers and corresponding routing information of all super nodes in the super node set from the registration server node, and based on the routing information of each super node, conducts a network message round-trip time test to determine the new node and the super node set. The network distance of each super node.

新节点选择出与该待新节点距离最近的超级节点后,判断选择出的超级节点与该待分配终端节点的距离是否小于第一预定阈值D;若是,将该新节点作为一个普通节点加入选择出的超级节点所在的簇,在选择出的超级节点中存储该待分配终端节点的标识和对应的路由信息;否则,将该待分配终端节点作为一个新簇中的主用超级节点,并将该待新节点的标识加入所述超级节点标识集合,并存储该待分配终端节点的标识和对应的路由信息,该待分配的终端节点建立自身的DHT路由表,并且直接相邻的簇中的超级节点修改自身的DHT路由表。After the new node selects the super node with the closest distance to the node to be new, it judges whether the distance between the selected super node and the terminal node to be allocated is less than the first predetermined threshold D; if so, the new node is added to the selection as a normal node Store the identity of the terminal node to be allocated and the corresponding routing information in the selected super node; otherwise, use the terminal node to be allocated as the active super node in a new cluster, and set The identity of the to-be-new node is added to the super node identity set, and the identity of the terminal node to be allocated and the corresponding routing information are stored. The terminal node to be allocated establishes its own DHT routing table, and the directly adjacent clusters The super node modifies its own DHT routing table.

在新节点作为一个新簇中的主用超级节点时,可以采用以下方式来建立自身的DHT路由表:首先基于注册服务器节点所保存的超级节点标识集合中各个超级节点的路由信息,向所述超级节点标识集合中的超级节点发送用于获取超级节点的标识的消息,根据获取到的各个超级节点的标识,将标识与自身的标识数值上最接近的至少两个其他主用超级节点所在的簇作为相邻簇,并保存所述最接近的至少两个其他主用超级节点的标识和对应的路由信息;When the new node is used as the main super node in a new cluster, it can establish its own DHT routing table in the following way: first, based on the routing information of each super node in the super node identification set saved by the registration server node, send to the The super node in the super node identification set sends a message for obtaining the identification of the super node, and according to the obtained identification of each super node, identifies at least two other active super nodes that are closest to its own identification value. The cluster serves as an adjacent cluster, and saves the identifiers and corresponding routing information of the closest at least two other active supernodes;

也可以直接从注册服务器节点中获取其他主用超级节点的标识,选择出与自身的标识数值上最接近的至少两个其他主用超级节点所在的簇作为相邻簇,并保存所述最接近的至少两个其他主用超级节点的标识和对应的路由信息。It is also possible to directly obtain the identifiers of other active supernodes from the registration server node, select at least two clusters of other active supernodes that are closest to their own identifier values as adjacent clusters, and save the closest IDs and corresponding routing information of at least two other active supernodes.

此后要求所述最接近的至少两个其他主用超级节点将自身作为其相邻簇中的超级节点,即要求找到的下行节点修改其上行节点的信息,将新的待分配终端节点作为其上行节点,保存该待分配终端节点的标识和路由信息;以及要求找到的上行节点修改其下行节点的信息,将该新节点作为其下行节点,保存该待分配终端节点的标识和路由信息。Afterwards, the closest at least two other active supernodes are required to regard themselves as supernodes in their adjacent clusters, that is, the downlink nodes found are required to modify the information of their uplink nodes, and use the new terminal node to be allocated as their uplink node. The node saves the identification and routing information of the terminal node to be allocated; and requires the found upstream node to modify the information of its downstream node, and uses the new node as its downstream node to store the identification and routing information of the terminal node to be allocated.

以上是以请求加入网络的新节点为例,介绍建立或扩展对等网络系统的方法的,同样处理过程也可以由注册服务器来实现,具体如下:The above is an example of a new node requesting to join the network to introduce the method of establishing or expanding the peer-to-peer network system. The same process can also be implemented by the registration server, as follows:

注册服务器将第一个请求加入所述对等网络的节点作为第一个主用超级节点,将所述节点的标识加入超级节点标识集合;The registration server takes the first node requesting to join the peer-to-peer network as the first active supernode, and adds the node's identifier to the supernode identifier set;

在后续其他新节点请求加入所述对等网络时,执行:When other new nodes subsequently request to join the peer-to-peer network, execute:

从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该新节点的距离是超级节点标识集合中所有标识对应的各个超级节点与该新节点的距离中最近的;Select an active super node identification from the super node identification set, and the distance between the super node corresponding to the selected active super node identification and the new node is the distance between each super node corresponding to all identifications in the super node identification set the closest in distance to this new node;

在选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将该新节点作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The distance between the super node corresponding to the selected active super node ID and the new node is less than the first threshold, and the number of ordinary nodes in the cluster where the selected active super node ID corresponds to the super node is not greater than the second threshold , add the new node as a normal node to the cluster where the super node corresponding to the selected primary super node ID is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

在一个普通节点退出网络时,该普通节点所在簇中的主用超级节点应删除存储的该普通节点的标识、路由信息和存储的资源标识。When an ordinary node exits the network, the active super node in the cluster where the ordinary node is located shall delete the stored identification, routing information and stored resource identification of the ordinary node.

在一个主用超级节点退出网络时,该主用超级节点相邻的上行主用超级节点和下行主用超级节点应查找标识最接近的其他主用超级节点,以重新建立路由表;或者在对等网络中,所有主用超级节点除了保存上述直接相邻的上行/下行主用超级节点的标识和路由信息之外,还保存n跳之内的间接相邻的上行/下行主用超级节点的标识和路由信息,这样在直接相邻的主用超级节点退出网络时,可以直接尝试是否能连接上与退出网络的主用超级节点最接近的(1跳)的主用超级节点,连接成功的话,可以将与退出网络的主用超级节点最接近的(1跳)的主用超级节点作为更新后的直接相邻的上行/下行主用超级节点,据此修改路由表。When an active super node exits the network, the adjacent upstream active super nodes and downlink active super nodes of the active super node should search for other active super nodes with the closest identification to re-establish the routing table; or In a network such as , all active supernodes save the identification and routing information of the above-mentioned directly adjacent uplink/downlink active supernodes, and also save the indirect adjacent uplink/downlink active supernodes within n hops. Identification and routing information, so that when the directly adjacent primary supernode exits the network, you can directly try to connect to the primary supernode that is closest (1 hop) to the primary supernode that exited the network. If the connection is successful , the master super node that is closest (1 hop) to the master super node exiting the network can be used as the updated directly adjacent uplink/downlink master super node, and the routing table can be modified accordingly.

较佳地,请求加入的网络的新节点可以通过基于预定的哈希函数,对自身路由信息(例如IP地址、端口标识等)进行哈希运算,将哈希运算结果作为该终端节点的标识。也可以由注册服务器节点采用类似的方式来确定新加入的网络的待分配的终端节点的标识。Preferably, the new node requesting to join the network can perform a hash operation on its own routing information (such as IP address, port identifier, etc.) based on a predetermined hash function, and use the result of the hash operation as the identifier of the terminal node. The registrar node may also use a similar manner to determine the identity of the terminal node to be allocated to the newly joined network.

较佳地,为了保证一个簇的规模不会过大,即一个簇中普通节点的数量不会过多,还可以:在选择出的主用超级节点与该新节点的距离小于第一预定阈值D、且选择出的主用超级节点所在的簇中普通节点的数量不多于第二预定阈值G时,将该新节点加入选择出的主用超级节点所在的簇;在选择出的主用超级节点与该新节点的距离小于第一预定阈值D、且选择出的主用超级节点所在的簇中普通节点的数量多于第二预定阈值G时,将该新节点作为一个新簇中的主用超级节点,并将该新节点的标识加入所述超级节点标识集合。Preferably, in order to ensure that the size of a cluster will not be too large, that is, the number of ordinary nodes in a cluster will not be too large, it is also possible: when the distance between the selected active super node and the new node is less than the first predetermined threshold D. When the number of ordinary nodes in the cluster where the selected master super node is located is not more than the second predetermined threshold G, add the new node to the cluster where the selected master super node is located; When the distance between the super node and the new node is less than the first predetermined threshold D, and the number of ordinary nodes in the cluster where the selected active super node is located is more than the second predetermined threshold G, the new node will be used as a new node in the new cluster. The active super node, and the identification of the new node is added to the super node identification set.

除了网络距离、地理距离之外,还可以选择其他指标,例如报文往返时间、作为新节点加入簇的依据,在这里不再一一列举。In addition to network distance and geographical distance, other indicators can also be selected, such as message round-trip time, as the basis for new nodes to join the cluster, which will not be listed here.

采用上述方式建立的对等网络系统,在有新节点加入或退出网络时,在该终端节点为普通节点时,只需该普通节点所在的簇中的超级节点修改存储的信息;只有在该终端节点为主用超级节点时,才需要相邻簇中的超级节点来修改存储的信息、以及在超级节点标识集合中去除该节点的标识,与现有技术中第3种完全分布式的对等网络相比较,简化了维护机制,在大多数终端节点加入或退出网络时,不会导致大量的终端节点修改所存储的信息。In the peer-to-peer network system established by the above method, when a new node joins or exits the network, when the terminal node is an ordinary node, only the super node in the cluster where the ordinary node is located needs to modify the stored information; When the node is the active super node, the super nodes in the adjacent clusters are required to modify the stored information and remove the node’s identity from the super node identity set, which is the same as the third fully distributed peer-to-peer in the prior art Compared with the network, the maintenance mechanism is simplified, and when most terminal nodes join or exit the network, it will not cause a large number of terminal nodes to modify the stored information.

请参照附图5,为基于附图4所示的对等网络系统,进行资源搜索过程的示意图,在进行资源搜索时,超级节点起索引服务器(tracker)的作用,具体搜索过程如下:Please refer to Figure 5, which is a schematic diagram of the resource search process based on the peer-to-peer network system shown in Figure 4. When performing resource search, the super node acts as an index server (tracker), and the specific search process is as follows:

步骤51,PeerA1需要搜索一个资源标识为X的文件时,向同簇中的主用超级节点A发送搜索请求,所述搜索请求中包含所要搜索的资源的标识X;Step 51, when PeerA1 needs to search for a file whose resource identifier is X, it sends a search request to the active supernode A in the same cluster, and the search request includes the identifier X of the resource to be searched;

步骤52,超级节点A根据存储的簇内每个普通节点的路由信息与存储的资源的标识的对应关系、接收到的搜索请求中包含的资源的标识,判断簇内是否有其他普通节点存储有标识为X的文件,若是,进行步骤53,否则进行步骤55;Step 52, supernode A judges whether there are other common nodes in the cluster that store For the file marked as X, if so, proceed to step 53, otherwise proceed to step 55;

步骤53,主用超级节点A在簇内有其他普通节点,例如peerA2存储有peerA1所搜索的资源时,即存储的资源的标识与搜索请求中包含的资源的标识一致时,将存储有资源标识为X的普通节点peerA2的路由信息发送给peerA1;Step 53, the active supernode A has other ordinary nodes in the cluster, for example, when peerA2 stores the resource searched by peerA1, that is, when the identifier of the stored resource is consistent with the identifier of the resource contained in the search request, it will store the resource identifier The routing information of ordinary node peerA2 of X is sent to peerA1;

步骤54,peerA1就可以根据peerA2的路由信息从peerA2处获得要搜索的资源;Step 54, peerA1 can obtain the resources to be searched from peerA2 according to the routing information of peerA2;

步骤55,主用超级节点A在簇内没有普通节点存储的资源的标识与所述搜索请求中包含的资源的标识一致时,将所述搜索请求发送给其他簇,例如相邻簇中的主用超级节点,例如主用超级节点B或超主用级节点C,进入步骤45;Step 55: When there is no resource identifier stored by a common node in the cluster that is consistent with the resource identifier contained in the search request, the master supernode A sends the search request to other clusters, such as the master supernode in the adjacent cluster. Use a super node, such as the main super node B or the super main level node C, go to step 45;

步骤56,假定主用超级节点A将搜索请求发送给主用超级节点B后,主用超级节点B根据自身存储的簇B内每个普通节点的标识、路由信息与存储的资源的标识的对应关系、接收到的搜索请求中包含的资源的标识,判断出peerB1存储有peerA1要搜索的资源时,将peerB1的路由信息发送给主用超级节点A;Step 56, assuming that after the active super node A sends the search request to the active super node B, the active super node B, according to the identification of each common node in the cluster B stored by itself, the routing information and the stored resource identification relationship, the identifier of the resource contained in the received search request, and when it is determined that peerB1 stores the resource that peerA1 wants to search for, send the routing information of peerB1 to the active supernode A;

步骤57,主用超级节点A将接收到的所述相邻簇中的主用超级节点发来的存储有所要搜索的资源的普通节点peerB1的路由信息发送给peerA1;Step 57, the active super node A sends the received routing information of the common node peerB1 storing the resource to be searched sent by the active super node in the adjacent cluster to peerA1;

步骤58,peerA1就可以根据peerB1的路由信息从peerB1处获得要搜索的资源。In step 58, peerA1 can obtain the resource to be searched from peerB1 according to the routing information of peerB1.

较佳地,主用超级节点A采用以下方式从相邻的簇内的主用超级节点B、主用超级节点C中选择出转发搜索请求的一个主用超级节点:主用超级节点A按照预定的哈希算法,对所述搜索请求中包含的资源的标识X进行哈希运算,并从存储的DHT路由表中选择出对应的超级节点标识与哈希运算结果Y最接近的相邻簇中的主用超级节点B,以及根据选择出的主用超级节点B的路由信息,将所述搜索请求发送给选择出的主用超级节点B。Preferably, the active super node A selects an active super node that forwards the search request from the active super node B and the active super node C in the adjacent cluster in the following manner: the active super node A follows a predetermined Hash algorithm, perform hash operation on the resource identifier X contained in the search request, and select the corresponding super node identifier from the stored DHT routing table in the adjacent cluster that is closest to the hash operation result Y and send the search request to the selected active SuperNode B according to the routing information of the selected active SuperNode B.

较佳地,在附图4所示的对等网络系统中,普通节点定期地将自身当前存储的资源的标识上报给簇内的主用超级节点,以便簇内的主用超级节点能够及时更新自身存储的簇中每个普通节点的标识、对应的路由信息和该普通节点存储的资源的标识信息。例如,peerA1、peerA2应定期地将自身当前存储的资源的标识上报给主用超级节点A。Preferably, in the peer-to-peer network system shown in FIG. 4 , ordinary nodes regularly report the identifiers of their currently stored resources to the active supernodes in the cluster, so that the active supernodes in the cluster can update in time The identification of each common node in the cluster stored by itself, the corresponding routing information and the identification information of the resources stored by the common node. For example, peerA1 and peerA2 should periodically report the identifiers of the resources they currently store to the active supernode A.

较佳地,请参照附图6,为了提高附图4所示的对等网络系统的安全性,避免在一个簇中,因主用超级节点发生故障、或退出网络而导致簇内的普通节点无法进行资源搜索,每个簇中除了主用超级节点之外,还可以包含至少一个备用超级节点,备用超级节点中存储有与主用超级节点一致的信息,即该簇中每个普通节点路由信息与该普通节点存储的资源的标识的对应关系、以及分布式哈希表DHT路由表,所述DHT路由表中包含其他簇中超级节点的标识和对应的路由信息;并且该簇中的每个普通节点都存储有该簇中至少一个备用超级节点的标识和路由信息,以便在主用超级节点发生故障时,可以通过备用超级节点进行资源搜索。每个所述簇内的主用超级节点和备用超级节点周期性地进行信息同步,以保证所存储的信息的一致性。普通节点定期地将自身性能参数的参数值,性能参数包括在线时间、空闲存储空间、信息处理能力、网络稳定性等,以便主用超级节点根据簇内普通节点上报的上述性能参数的参数值从普通节点中选择出备用超级节点。在一个普通节点被选做备用超级节点之前,应提醒该普通节点的用户是否同意,因为作为备用超级节点会占用该普通节点的一部分存储空间和处理能力。除了主用超级节点发生故障之外,在其他一些预定情况下,例如主用超级节点的处理能力或存储空间下降超过移动阈值时,备用超级节点还可以主动的作为主用超级节点工作。Preferably, please refer to accompanying drawing 6, in order to improve the security of the peer-to-peer network system shown in accompanying drawing 4, in order to avoid in a cluster, because the primary super node breaks down, or withdraws from the network and cause the common node in the cluster Resource search is not possible. In addition to the main super node, each cluster can contain at least one backup super node. The backup super node stores the same information as the main super node, that is, the route of each common node in the cluster The corresponding relationship between the information and the identifier of the resource stored by the ordinary node, and the distributed hash table DHT routing table, which contains the identifier of the super node in other clusters and the corresponding routing information; and each cluster in the cluster Each common node stores the identification and routing information of at least one standby supernode in the cluster, so that when the active supernode fails, resource search can be performed through the standby supernode. The active supernode and standby supernode in each cluster periodically synchronize information to ensure the consistency of the stored information. Ordinary nodes regularly update the parameter values of their own performance parameters, including online time, free storage space, information processing capabilities, network stability, etc., so that the master supernode can change from A backup super node is selected from ordinary nodes. Before an ordinary node is selected as a backup super node, the user of the ordinary node should be reminded whether to agree, because being a backup super node will occupy part of the storage space and processing power of the ordinary node. In addition to the failure of the active super node, in some other predetermined situations, such as when the processing capacity or storage space of the active super node drops beyond the mobile threshold, the standby super node can also actively work as the active super node.

在存在备用超级节点的情况下,上述建立对等网络的方案中,注册服务器节点中存储的应是主用超级节点的标识和路由信息。In the case of a backup super node, in the above-mentioned solution for establishing a peer-to-peer network, the registration server node should store the identification and routing information of the active super node.

本发明实施例提出的对等网络所采用的上述搜索方式,是基于中央目录服务器的搜索方式与基于DHT路由表的搜索方式相结合的一种搜索方式,避免了洪泛搜索大量增加网络中的消息、占用大量网络带宽的弊端,同时只有每个簇内的普通节点搜索时依赖该簇内的超级节点(包括主用超级节点和备用超级节点),即使一个簇内的超级节点发生故障宕机,其他簇内的普通节点也不会受影响,很大程度上解决了现有的基于中央目录服务器的对等网络搜索存在瓶颈问题和安全性较差的问题、以及瓶颈问题引发的扩展性不佳的问题。The above-mentioned search method adopted by the peer-to-peer network proposed by the embodiment of the present invention is a search method based on the combination of the search method based on the central directory server and the search method based on the DHT routing table, which avoids a large increase in the flood search method in the network. Disadvantages of messages and occupying a large amount of network bandwidth. At the same time, only ordinary nodes in each cluster rely on super nodes in the cluster (including active super nodes and standby super nodes) when searching, even if a super node in a cluster fails and goes down , ordinary nodes in other clusters will not be affected, which largely solves the bottleneck and poor security of the existing peer-to-peer network search based on the central directory server, as well as the poor scalability caused by the bottleneck good question.

下面以P2P网络流媒体业务为例,介绍基于如附图4所示的对等网络系统进行资源搜索的过程:Taking the P2P network streaming media service as an example, the process of resource search based on the peer-to-peer network system shown in Figure 4 is introduced below:

PeerA1需要搜索一个名为“新闻联播2009-7-1.rmvb”的视频文件,首先peerA1向主用超级节点A发送搜索请求,所述搜索请求中包含所要搜索的资源的名称“新闻联播2009-7-1.rmvb”。PeerA1 needs to search for a video file named "News Network 2009-7-1.rmvb". First, peerA1 sends a search request to the main super node A, which contains the name of the resource to be searched "News Network 2009- 7-1. rmvb".

主用超级节点A根据存储的簇内每个普通节点的标识、路由信息与存储的资源的标识的对应关系(如表1所示)、接收到的搜索请求中包含的资源的标识,判断簇内的其他普通节点是否存储有名称为“新闻联播2009-7-1.rmvb”的文件,若peerA2存储有该文件,将peerA2的路由信息反馈给peerA1;否则主用超级节点A按照预定的哈希算法,对要搜索的资源的名称“新闻联播2009-7-1.rmvb”进行哈希运算,得到哈希运算结果12,主用超级节点A存储的DHT路由表如表2所示。The master supernode A judges the cluster according to the identifier of each common node stored in the cluster, the corresponding relationship between routing information and the identifier of the stored resource (as shown in Table 1), and the identifier of the resource contained in the received search request. Whether other ordinary nodes in the network store a file named "News Network 2009-7-1.rmvb", if peerA2 stores the file, feed back the routing information of peerA2 to peerA1; Hash algorithm, perform hash operation on the name of the resource to be searched "News Network 2009-7-1.rmvb", and get the hash operation result 12. The DHT routing table stored by the main super node A is shown in Table 2.

表1主用超级节点A存储的簇内普通节点的信息Table 1 Information of common nodes in the cluster stored by master super node A

普通节点名称common node name 路由信息routing information 存储的资源的标识ID of the stored resource 其他信息other information PeerA1PeerA1 202.111.220.1202.111.220.1 新闻联播2009-7-2.rmvbNews broadcast 2009-7-2.rmvb PeerA2PeerA2 202.111.220.1202.111.220.1 新闻联播2009-7-3.rmvbNews broadcast 2009-7-3.rmvb

表2主用超级节点A存储的相邻簇中主用超级节点的信息Table 2 Information of the master super node in the adjacent cluster stored by the master super node A

主用超级节点名称Primary super node name 标识logo 路由信息routing information 其他信息other information 主用超级节点BPrimary Super Node B 1111 202.111.222.1202.111.222.1 主用超级节点CPrimary Super Node C 2020 202.111.222.20202.111.222.20

由于主用超级节点B的标识与哈希运算结果最为接近,主用超级节点A将搜索请求发给选择出的主用超级节点B。主用超级节点B根据自身存储的簇B内每个普通节点的标识、路由信息与存储的资源的标识的对应关系(如表3所示)、接收到的搜索请求中包含的资源的名称,判断出peerB1存储有peerA1要搜索的资源时,将peerB1的路由信息“202.111.230.1”发送给主用超级节点A。Since the identity of the primary supernode B is the closest to the result of the hash operation, the primary supernode A sends the search request to the selected primary supernode B. According to the identity of each common node in the cluster B stored by the master supernode B, the corresponding relationship between routing information and the identity of the stored resource (as shown in Table 3), and the name of the resource contained in the received search request, When it is determined that peerB1 stores the resource that peerA1 wants to search for, it sends the routing information "202.111.230.1" of peerB1 to the active supernode A.

表1主用超级节点B存储的簇内普通节点的信息Table 1. The information of common nodes in the cluster stored by the main SuperNode B

普通节点名称common node name 路由信息routing information 存储的资源的标识ID of the stored resource 其他信息other information PeerB1PeerB1 202.111.230.1202.111.230.1 新闻联播2009-7-1.rmvbNews broadcast 2009-7-1.rmvb PeerB2PeerB2 202.111.230.2202.111.230.2 新闻联播2009-7-4.rmvbNews broadcast 2009-7-4.rmvb PeerB3PeerB3 202.111.230.3202.111.230.3 新闻联播2009-7-7.rmvbNews broadcast 2009-7-7.rmvb

主用超级节点A将接收到的peerB1的路由信息发送给peerA1,peerA1就可以根据peerB1的路由信息从peerB1处获得要搜索的资源。The master supernode A sends the received routing information of peerB1 to peerA1, and peerA1 can obtain the resource to be searched from peerB1 according to the routing information of peerB1.

下面以视频点播(VOD,Video On Demand)业务为例,介绍资源搜索的过程:The following takes the VOD (Video On Demand) business as an example to introduce the resource search process:

普通节点中存储的资源除了视频文件之外,也可以为视频文件中的分片或片段(chunk)。In addition to video files, resources stored in common nodes can also be slices or chunks in video files.

在VOD系统中,当有新节点请求加入对等网络时,注册服务器RS首先判断提供节目源的视频服务器是否有足够的带宽用于为该新节点提供服务,在视频服务器没有足够的带宽用于为新节点提供服务时,将超级节点集合中的超级节点的路由信息提供给新节点。In the VOD system, when a new node requests to join the peer-to-peer network, the registration server RS first judges whether the video server providing the program source has enough bandwidth to provide services for the new node, and if the video server does not have enough bandwidth for When providing services for a new node, the routing information of the super nodes in the super node set is provided to the new node.

新节点根据上述建立对等网络系统的方式中记载方案,根据与现有超级节点的距离、第一预定阈值D和第二预定阈值G来确定自身为一个已有簇中的普通节点,或是一个新簇中的主用超级节点。The new node determines itself as an ordinary node in an existing cluster based on the distance from the existing super node, the first predetermined threshold D, and the second predetermined threshold G according to the scheme described in the above-mentioned method of establishing a peer-to-peer network system, or A primary supernode in a new cluster.

在如附图4所示的对等网络系统中,主用超级节点A、主用超级节点B和主用超级节点C都分别存储有各自簇内的各普通节点的名称、对应的路由信息和存储的同一个视频文件“新闻联播2009-7-1.rmvb”中不同视频片段chunk的标识,视频片段的标识Seg[n]对应的视频片段是由开始时间和结束时间来确定的,例如Seg[n]=[00:01:25,00:03:25]是指视频文件在播放时,从第1分钟25秒到第3分钟25秒之间的视频信号对应的视频数据。In the peer-to-peer network system as shown in Figure 4, the master supernode A, the master supernode B and the master supernode C all store the names of the common nodes in their respective clusters, the corresponding routing information and The identifiers of different video segments chunks stored in the same video file "News Network 2009-7-1.rmvb", the corresponding video segment of the identifier Seg[n] of the video segment is determined by the start time and end time, for example, Seg [n]=[00:01:25,00:03:25] refers to the video data corresponding to the video signal from the first minute 25 seconds to the third minute 25 seconds when the video file is played.

主用超级节点A存储的簇内普通节点的信息如表4所示。Table 4 shows the information of common nodes in the cluster stored by primary super node A.

表4主用超级节点A存储的簇内普通节点的信息Table 4 Information of ordinary nodes in the cluster stored by master super node A

普通节点名称common node name 路由信息routing information 存储的资源的标识ID of the stored resource 其他信息other information PeerA1PeerA1 202.111.220.1202.111.220.1 Seg[1]、Seg[3]Seg[1], Seg[3] PeerA2PeerA2 202.111.220.1202.111.220.1 Seg[3]、Seg[4]Seg[3], Seg[4]

PeerA1需要搜索“新闻联播2009-7-1.rmvb”中的第2个视频片段Seg[2],首先peerA1向同簇中的主用超级节点A发送搜索请求,所述搜索请求中包含所要搜索的视频片段的标识Seg[2]。PeerA1 needs to search for the second video clip Seg[2] in "News Network 2009-7-1.rmvb". First, peerA1 sends a search request to the active super node A in the same cluster, and the search request contains the The identifier of the video segment Seg[2].

主用超级节点A根据自身存储的簇A内的各普通节点的名称、对应的路由信息和存储的同一个视频文件“新闻联播2009-7-1.rmvb”中不同视频片段的标识,判断簇A内的其他普通节点是否存储有文件“新闻联播2009-7-1.rmvb”中的第2个视频片段Seg[2],若簇A中有其他普通节点存储有该视频片段时,将对应的路由信息反馈给peerA1,较佳地,如果有至少1个其他普通节点存储有视频片段Seg[2]时,可以将存储有视频片段Seg[2]的所有普通节点的路由信息列表提供给peerA1,由peerA1选择其中至少1个普通节点来获取第2个视频片段Seg[2];否则向相邻的簇中的主用超级节点转发搜索请求,具体过程与前一实施例类似,在这里不再赘述。The master supernode A judges the cluster according to the names of the common nodes in the cluster A stored by itself, the corresponding routing information and the identifiers of different video clips stored in the same video file "News Network 2009-7-1.rmvb". Whether other ordinary nodes in A store the second video segment Seg[2] in the file "News Network 2009-7-1.rmvb", if there are other ordinary nodes in cluster A storing this video segment, it will correspond The routing information of the node is fed back to peerA1. Preferably, if there is at least one other common node storing the video segment Seg[2], the routing information list of all common nodes storing the video segment Seg[2] can be provided to peerA1 , peerA1 selects at least one of the common nodes to obtain the second video segment Seg[2]; otherwise, it forwards the search request to the active super node in the adjacent cluster, the specific process is similar to the previous embodiment, and here Let me repeat.

在peerA1从簇内其他普通节点,例如peerA2或其他簇中的普通节点,例如peerB1处获取到了“新闻联播2009-7-1.rmvb”中的第2个视频片段Seg[2]后,主用超级节点A应修改peerA1的相关记录中已存储的视频片段的标识,修改后的peerA1的相关信息如表5所示。After peerA1 obtains the second video segment Seg[2] in "News Network 2009-7-1. Supernode A should modify the ID of the video segment stored in the related record of peerA1, and the modified peerA1 related information is shown in Table 5.

表5超级节点A存储的簇内普通节点的信息Table 5 Information of ordinary nodes in the cluster stored by super node A

普通节点名称common node name 路由信息routing information 存储的资源的标识ID of the stored resource 其他信息other information PeerA1PeerA1 202.111.220.1202.111.220.1 Seg[1]、Seg[2]、Seg[3]Seg[1], Seg[2], Seg[3]

较佳地,在VOD系统中,各普通节点中存储的chunk变化较快,簇内的主用超级节点可以较为频繁地从普通节点处获取该普通节点存储的资源的标识,以便更新自身所存储的普通节点的信息。Preferably, in the VOD system, the chunks stored in each common node change quickly, and the active supernode in the cluster can obtain the identifier of the resource stored by the common node from the common node more frequently, so as to update its own stored The information of common nodes.

较佳地,普通节点在需要下一个视频片段时,在向簇内的主用超级节点发送搜索请求之前,可以查询已建立下载连接的其他普通节点是否存储有需要的下一个视频片段,若已建立下载连接的普通节点存储有需要的下一个视频片段,则优先地从已建立下载连接的普通节点中下载下一个视频片段,而无需向簇内的超级节点发送搜索请求。Preferably, when an ordinary node needs the next video segment, before sending a search request to the active super node in the cluster, it can inquire whether other ordinary nodes that have established a download connection have stored the next video segment needed. Ordinary nodes that have established download connections store the next video segment in need, and then download the next video segment from the ordinary nodes that have established download connections preferentially, without sending search requests to super nodes in the cluster.

相应地,本发明实施例还提供了一种对等网络中的主用超级节点设备,如图7所示,该设备包括第一接收单元701、判断单元702、第一获取单元703、第二获取单元704和发送单元705,其中:Correspondingly, the embodiment of the present invention also provides a primary super node device in a peer-to-peer network. As shown in FIG. Acquiring unit 704 and sending unit 705, wherein:

第一接收单元701,用于接收所述主用超级节点设备所在簇中的第一普通节点或其他主用超级节点发来的包含要搜索资源对应的标识的搜索请求;The first receiving unit 701 is configured to receive a search request containing an identification corresponding to the resource to be searched from the first ordinary node in the cluster where the active super node device is located or other active super nodes;

判断单元702,用于判断所述主用超级节点设备所在簇中是否存在第二普通节点存储有第一接收单元701接收到的搜索请求中包含的标识对应的资源;A judging unit 702, configured to judge whether there is a resource corresponding to the identifier included in the search request received by the first receiving unit 701 stored in a second common node in the cluster where the active supernode device is located;

第一获取单元703,用于在判断单元702判断出所述主用超级节点设备所在簇中存在第二普通节点存储有所述标识对应的资源时,获得所述第二普通节点的路由信息;The first obtaining unit 703 is configured to obtain the routing information of the second normal node when the judging unit 702 judges that there is a second normal node in the cluster where the active super node device is located and stores the resource corresponding to the identifier;

第二获取单元704,用于在判断单元702判断出所述主用超级节点设备所在簇中不存在存储有所述标识对应的资源的普通节点时,将所述搜索请求发送给除发送所述搜索请求的主用超级节点之外的主用超级节点,并接收除发送所述搜索请求的主用超级节点之外的其他主用超级节点反馈的存储有所述标识对应的资源的第三普通节点的路由信息,作为获得的路由信息;The second obtaining unit 704 is configured to send the search request to the server other than sending the Search for active super nodes other than the active super node that sent the search request, and receive feedback from other active super nodes other than the active super node that sent the search request, and store the resources corresponding to the identification. The routing information of the node, as the obtained routing information;

发送单元705,用于将第一获取单元703或第二获取单元704获得的路由信息发送给发送所述搜索请求的第一普通节点或其他主用超级节点。The sending unit 705 is configured to send the routing information obtained by the first obtaining unit 703 or the second obtaining unit 704 to the first common node or other active super nodes that send the search request.

具体地,上述判断单元702根据所述主用超级节点设备预先存储的所在簇内每个普通节点的路由信息与该普通节点存储的资源的标识的对应关系,将存储的资源的标识与搜索请求中携带的标识一致的普通节点作为存储有所述标识对应的资源的第二普通节点;以及Specifically, the judging unit 702 compares the stored resource identifiers and search request An ordinary node with the same identifier carried in the ID is used as the second ordinary node storing the resource corresponding to the identifier; and

在不存在普通节点存储的资源的标识与搜索请求中携带的标识一致时,确定自身所在簇中不存在存储有所述标识对应的资源的普通节点。When there is no identifier of the resource stored by the common node that is consistent with the identifier carried in the search request, it is determined that there is no common node that stores the resource corresponding to the identifier in the cluster where it is located.

较佳地,请参照附图8,第二获取单元704具体包括选择子单元801、发送子单元802、接收子单元803和确定子单元804,其中:Preferably, referring to FIG. 8, the second acquiring unit 704 specifically includes a selection subunit 801, a sending subunit 802, a receiving subunit 803, and a determining subunit 804, wherein:

选择子单元801,用于选择出除发送所述搜索请求的主用超级节点之外的一个主用超级节点,所述搜索请求为第一接收单元接收到的搜索请求;The selection subunit 801 is configured to select an active super node other than the active super node that sent the search request, the search request being the search request received by the first receiving unit;

发送子单元802,用于将第一接收单元701接收到的搜索请求发送给选择子单元801选择出的主用超级节点;a sending subunit 802, configured to send the search request received by the first receiving unit 701 to the active super node selected by the selecting subunit 801;

接收子单元803,用于接收选择子单元801选择出的主用超级节点根据发送子单元802发送的搜索请求反馈的存储有所述标识对应的资源的第三普通节点的路由信息;The receiving subunit 803 is configured to receive the routing information of the third common node that stores the resources corresponding to the identifier and is fed back by the active super node selected by the selecting subunit 801 according to the search request sent by the sending subunit 802;

确定子单元804,用于将接收子单元803接收到的路由信息作为获得的路由信息。The determining subunit 804 is configured to use the routing information received by the receiving subunit 803 as the obtained routing information.

较佳地,上述选择子单元801具体包括运算模块和选择模块,其中:Preferably, the selection subunit 801 specifically includes an operation module and a selection module, wherein:

运算模块,用于按照预定的哈希算法,对接收单元接收到的所述搜索请求中包含的资源的标识进行哈希运算;An operation module, configured to perform a hash operation on the identifier of the resource contained in the search request received by the receiving unit according to a predetermined hash algorithm;

选择模块,用于从存储的DHT路由表中选择出对应的标识与运算模块的哈希运算结果最接近的第二主用超级节点,所述DHT路由表中包含除自身之外的其他主用超级节点的标识和对应的路由信息。The selection module is used to select from the stored DHT routing table the second active supernode whose corresponding identifier is closest to the hash operation result of the operation module, and the DHT routing table contains other active supernodes except itself. The identification of the super node and the corresponding routing information.

较佳地,请参照附图9,附图7中的主用超级节点设备还包括第二接收单元901和选择单元902,其中:Preferably, please refer to accompanying drawing 9, the active super node device in accompanying drawing 7 also includes the second receiving unit 901 and the selecting unit 902, wherein:

第二接收单元901,用于接收同簇中的普通节点定期上报的所述普通节点的性能参数的参数值;The second receiving unit 901 is configured to receive the parameter value of the performance parameter of the common node regularly reported by the common nodes in the same cluster;

选择单元902,用于根据第二接收单元901接收到的参数值,选择出至少一个普通节点作为备用超级节点。The selection unit 902 is configured to select at least one common node as a standby super node according to the parameter value received by the second receiving unit 901 .

较佳地,如附图9所述的主用超级节点设备还包括信息同步单元,用于定期地与选择单元选择出的备用超级节点进行信息同步。Preferably, the active super node device as shown in FIG. 9 further includes an information synchronization unit, configured to regularly perform information synchronization with the backup super node selected by the selection unit.

请参照附图10,为本发明实施例提供的普通节点设备的结构示意图,该普通节点设备包括存储单元110、发送单元120、接收单元130和下载单元140,其中:Please refer to the accompanying drawing 10, which is a schematic structural diagram of a common node device provided by an embodiment of the present invention. The common node device includes a storage unit 110, a sending unit 120, a receiving unit 130, and a downloading unit 140, wherein:

存储单元110,用于存储同簇中的主用超级节点的路由信息;a storage unit 110, configured to store routing information of active super nodes in the same cluster;

发送单元120,用于根据存储单元110存储的路由信息,向同簇内的超级节点设备发送搜索请求,该搜索请求中包含要搜索的资源的标识;The sending unit 120 is configured to send a search request to the super node device in the same cluster according to the routing information stored in the storage unit 110, and the search request includes the identifier of the resource to be searched;

接收单元130,用于接收所述超级节点设备发来的与发送单元120发送的搜索请求对应的存储有要搜索的资源的其他普通节点设备的路由信息;The receiving unit 130 is configured to receive the routing information of other ordinary node devices that store the resources to be searched and corresponding to the search request sent by the sending unit 120 sent by the super node device;

下载单元140,用于根据接收单元130接收到的路由信息,从所述其他普通节点中下载要搜索的资源。The downloading unit 140 is configured to download the resources to be searched from the other common nodes according to the routing information received by the receiving unit 130 .

较佳地,附图10中的普通节点设备还包括第一上报单元,用于定期地向同簇内的超级节点上报所述普通节点设备存储的资源的标识。Preferably, the common node device in FIG. 10 further includes a first reporting unit, configured to periodically report the identifier of the resource stored by the common node device to the super nodes in the same cluster.

较佳地,附图10中的普通节点设备还包括第二上报单元,用于定期地向同簇中的超级节点上报该普通节点设备预定性能参数的参数值。Preferably, the common node device in FIG. 10 further includes a second reporting unit, configured to periodically report the parameter value of the predetermined performance parameter of the common node device to the super nodes in the same cluster.

请参照附图11,为本发明实施例提供的一种建立对等网络系统的装置,该装置包括第一确定单元111、选择单元112和第二确定单元113,其中Please refer to the accompanying drawing 11, which is a device for establishing a peer-to-peer network system provided by an embodiment of the present invention, the device includes a first determination unit 111, a selection unit 112 and a second determination unit 113, wherein

第一确定单元111,用于将第一个请求加入所述对等网络的节点作为第一个主用超级节点,将所述节点的标识加入超级节点标识集合;The first determining unit 111 is configured to use the first node requesting to join the peer-to-peer network as the first active supernode, and add the node's identifier to the supernode identifier set;

选择单元112,用于在后续其他新节点加入所述对等网络时,执行:The selection unit 112 is configured to execute when other new nodes subsequently join the peer-to-peer network:

从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该新节点的距离是超级节点标识集合中所有标识对应的各个超级节点与该新节点的距离中最近的;Select an active super node identification from the super node identification set, and the distance between the super node corresponding to the selected active super node identification and the new node is the distance between each super node corresponding to all identifications in the super node identification set the closest in distance to this new node;

第二确定单元113,用于在选择单元112选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将该新节点作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The second determination unit 113 is configured to select the location where the distance between the supernode corresponding to the master supernode identifier selected by the selection unit 112 and the new node is less than the first threshold, and where the supernode corresponding to the selected master supernode identifier is located. When the number of ordinary nodes in the cluster is not greater than the second threshold, the new node is added as an ordinary node to the cluster where the supernode corresponding to the selected master supernode identifier is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

附图11所示的建立对等网络系统的装置可以为方法实施例中的注册服务器。The apparatus for establishing a peer-to-peer network system shown in FIG. 11 may be the registration server in the method embodiment.

请参照附图12,为本发明实施例提供的一种节点设备的结构示意图,该节点设备包括判断单元121、第一确定单元122、选择单元123和第二确定单元124,其中:Please refer to Figure 12, which is a schematic structural diagram of a node device provided by an embodiment of the present invention. The node device includes a judgment unit 121, a first determination unit 122, a selection unit 123, and a second determination unit 124, wherein:

判断单元121,用于判断所述节点设备是否为第一个请求加入所述对等网络系统的节点;A judging unit 121, configured to judge whether the node device is the first node requesting to join the peer-to-peer network system;

第一确定单元122,用于在判断单元121判断出所述节点设备为第一个请求加入所述对等网络系统的节点时,将自身作为第一个主用超级节点,将自身的标识加入超级节点标识集合;The first determining unit 122 is configured to, when the judging unit 121 judges that the node device is the first node requesting to join the peer-to-peer network system, use itself as the first active super node, and add its own identity to the peer-to-peer network system. super node identification set;

选择单元123,用于在判断单元121判断出所述节点设备不是第一个请求加入所述对等网络系统的节点时,从所述超级节点标识集合中选择出一个主用超级节点标识,所述选择出的主用超级节点标识对应的超级节点与该节点设备的距离是超级节点标识集合中所有标识对应的各个超级节点与该节点设备的距离中最近的;The selection unit 123 is configured to select a master supernode identifier from the supernode identifier set when the judging unit 121 judges that the node device is not the first node requesting to join the peer-to-peer network system. The distance between the supernode corresponding to the main supernode identifier selected above and the node device is the closest among the distances between each supernode corresponding to all the identifiers in the supernode identifier set and the node device;

第二确定单元124,用于在选择单元123选择出的主用超级节点标识对应的超级节点与该新节点的距离小于第一阈值、且选择出的主用超级节点标识对应的超级节点所在的簇中普通节点的数量不大于第二阈值时,将自身作为普通节点加入选择出的主用超级节点标识对应的超级节点所在的簇中;否则The second determination unit 124 is configured to select the location where the distance between the supernode corresponding to the active supernode identifier selected by the selection unit 123 and the new node is less than the first threshold, and where the selected active supernode identifier corresponds to the supernode. When the number of ordinary nodes in the cluster is not greater than the second threshold, add itself as an ordinary node to the cluster where the supernode corresponding to the selected master supernode identifier is located; otherwise

将该新节点作为主用超级节点,将该新节点的标识加入超级节点标识集合。The new node is used as the active super node, and the identification of the new node is added to the super node identification set.

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention also intends to include these modifications and variations.

Claims (23)

1. a peer-to-peer network system is characterized in that, comprises at least two bunches, comprises a primary super node and at least one ordinary node in each bunch, wherein:
Primary super node, comprise for the searching request of wanting sign corresponding to searching resource of carrying of sending according to first ordinary node at self place bunch or other primary super nodes, when in determining self place bunch, existing the second ordinary node to store resource corresponding to described sign, obtain the unit of the routing iinformation of described the second ordinary node; And when in determining self place bunch, not having the ordinary node that stores resource corresponding to described sign, described searching request is sent to primary super node except the primary super node that sends described searching request, and receive the routing iinformation of the 3rd ordinary node that stores resource corresponding to described sign of other the primary super nodes feedbacks except the primary super node that sends described searching request, as the unit of the routing iinformation of acquisition; And the routing iinformation that obtains sent to the first ordinary node of sending described searching request or the unit of other primary super nodes;
Ordinary node, be used for primary super node in self place bunch and send the searching request of carrying sign corresponding to the resource that will search for, and obtain the resource that to search for ordinary node corresponding to the routing iinformation that sends of the primary super node in self place bunch.
2. peer-to-peer network as claimed in claim 1 system, it is characterized in that, described primary super node specifically is used for according to the routing iinformation of each ordinary node in self pre-stored place bunch and the corresponding relation of the sign of the resource of this ordinary node storage, and the ordinary node that the sign of carrying in the sign of the resource of storage and the searching request is consistent is as storing described the second ordinary node that identifies corresponding resource; And the sign of carrying in the sign of the resource that does not have ordinary node storage and searching request is when consistent, determines not exist in self place bunch the ordinary node of the resource that stores described sign correspondence.
3. peer-to-peer network as claimed in claim 1 system, it is characterized in that, described primary super node is selected a primary super node except the primary super node that sends described searching request, and described searching request is sent to the primary super node of selecting.
4. peer-to-peer network as claimed in claim 3 system, it is characterized in that, described primary super node specifically is used for according to predetermined hash algorithm, sign to the resource that comprises in the described searching request is carried out Hash operation, and from the distributed hashtable DHT routing table of storage, select corresponding sign and Hash operation result the immediate second primary super node, comprise sign and the corresponding routing iinformation of other the primary super nodes except self in the described DHT routing table.
5. peer-to-peer network as claimed in claim 1 system is characterized in that, also comprises super node for subsequent use in each bunch, be used for termly with bunch primary super node carry out information synchronization, and under predetermined condition, replace primary super node work.
6. peer-to-peer network as claimed in claim 5 system is characterized in that, described ordinary node also be used for termly the sign of the resource of self storage or/and the parameter value of self performance parameter report with bunch primary super node;
Described primary super node also be used for according to bunch the parameter value of the performance parameter that reports of ordinary node, in self place bunch, select at least 1 ordinary node as super node for subsequent use.
7. peer-to-peer network as claimed in claim 6 system is characterized in that, the performance parameter of described ordinary node comprises line duration, idle storage space, information processing capability, the network bandwidth or network stabilization.
8. a method of setting up peer-to-peer network as claimed in claim 1 system is characterized in that, comprising:
First node of asking to add described peer-to-peer network as first primary super node, is gathered the sign adding super node sign of described node;
When follow-up other new node requests add described peer-to-peer network, carry out:
Select a primary super node sign from the set of described super node sign, super node corresponding to the described primary super node sign of selecting and the distance of this new node are that all identify in the distance of each corresponding super node and this new node nearest in the set of super node sign;
The distance of super node corresponding to the primary super node sign of selecting and this new node super node place corresponding less than first threshold and the primary super node sign selected bunch in the quantity of ordinary node when being not more than Second Threshold, the primary super node that this new node is brought Selection In out as ordinary node identify correspondence the super node place bunch in; Otherwise
This new node as primary super node, is gathered the sign adding super node sign of this new node.
9. method as claimed in claim 8 is characterized in that, when follow-up other new nodes add described peer-to-peer network, selects a primary super node sign from the set of described super node sign, specifically comprises:
Based on the routing iinformation of the primary super node of the sign correspondence of each node in the pre-stored super node sign set, determine the network distance of the primary super node that described new node is corresponding with each sign in the set of super node sign; And
Select the sign of a primary super node, super node corresponding to the described primary super node sign of selecting and the network distance of this new node are that all identify in the network distance of each corresponding super node and this new node nearest in the set of super node sign.
10. method as claimed in claim 8 is characterized in that, when follow-up other new nodes add described peer-to-peer network, selects a primary super node sign from the set of described super node sign, specifically comprises:
Based on the primary super positional information of the sign correspondence of each node in the pre-stored super node sign set, determine the geographic distance of the primary super node that described new node is corresponding with each sign in the set of super node sign; And
Select the sign of a primary super node, super node corresponding to the described primary super node sign of selecting and the geographic distance of this new node are that all identify in the geographic distance of each corresponding super node and this new node nearest in the set of super node sign.
11. method as claimed in claim 8 is characterized in that, after the sign adding super node sign set with described new node, also comprises the DHT routing table of storing in definite this new node.
12. method as claimed in claim 11 is characterized in that, determines specifically to comprise the DHT routing table of storing in this new node:
Determine the sign of described new node, and
Obtain the sign of the primary super node that comprises in the set of super node sign, and
In the sign of the primary super node that obtains, choose immediate at least two other primary super nodes on the sign numerical value with described new node, and in this new node, preserve sign and the corresponding routing iinformation of at least two other primary super nodes choosing.
13. method as claimed in claim 11 is characterized in that, after the DHT routing table of storing in determining this new node, also comprises:
Revise the DHT routing table of storing in primary super node corresponding to part sign in the set of super node sign, primary super node corresponding to described part sign is the primary super node of the sign correspondence that comprises in the DHT routing table of storing in the described new node.
14. method as claimed in claim 13 is characterized in that, revises the DHT routing table of storing in primary super node corresponding to described part sign, specifically comprises:
The sign and the corresponding routing iinformation that add this new node in the DHT routing table of in primary super node corresponding to described part sign, storing.
15. such as the described method of arbitrary claim in the claim 8 to 14, it is characterized in that, determine that in the following manner request adds the sign of the new node of described peer-to-peer network:
Obtain the IP address of described new node, and
Hash function based on predetermined carries out Hash operation to the IP address that gets access to, and
With the result of the described Hash operation sign as described new node.
16. a method of setting up the peer-to-peer network system is characterized in that, comprising:
The new node of the described peer-to-peer network of request adding is determined when self being the node of the described peer-to-peer network of first request adding system, and self as first primary super node, is gathered the sign adding super node sign of self; And
Self not first request when adding the node of described peer-to-peer network system determining, carry out:
Described new node is selected a primary super node sign from the set of described super node sign, super node corresponding to the described primary super node sign of selecting and the distance of this new node are that all identify in the distance of each corresponding super node and this new node nearest in the set of super node sign; And
The distance of super node corresponding to the primary super node sign of selecting and this new node super node place corresponding less than first threshold and the primary super node sign selected bunch in the quantity of ordinary node when being not more than Second Threshold, the primary super node that self brings Selection In out as ordinary node is identified correspondence the super node place bunch in; Otherwise
This new node as primary super node, is gathered the sign adding super node sign of this new node.
17. a primary super node equipment is characterized in that, comprising:
The first receiving element is used for receiving the searching request of wanting sign corresponding to searching resource that comprises that first ordinary node at described primary super node equipment place bunch or other primary super nodes send;
Judging unit is used for judging whether described primary super node equipment place bunch exists the second ordinary node to store the resource of the sign correspondence that comprises in the searching request that the first receiving element receives;
The first acquiring unit is used for obtaining the routing iinformation of described the second ordinary node when judgment unit judges goes out described primary super node equipment place and bunch exists second ordinary node to store resource corresponding to described sign;
Second acquisition unit, be used for when judgment unit judges goes out described primary super node equipment place and bunch do not have the ordinary node that stores resource corresponding to described sign, described searching request is sent to primary super node except the primary super node that sends described searching request, and the routing iinformation of the 3rd ordinary node that stores resource corresponding to described sign of other the primary super nodes feedbacks of reception except the primary super node that sends described searching request, as the routing iinformation of acquisition;
Transmitting element is used for the routing iinformation of the first acquiring unit or second acquisition unit acquisition is sent to the first ordinary node or other the primary super nodes that sends described searching request.
18. primary super node equipment as claimed in claim 17 is characterized in that, described second acquisition unit specifically comprises:
The chooser unit is used for selecting a primary super node except the primary super node that sends described searching request, and described searching request is the searching request that the first receiving element receives;
Send subelement, the searching request that is used for the first receiving element is received sends to the primary super node that the chooser unit is selected;
The reception subelement, the routing iinformation of the 3rd ordinary node of the resource that stores described sign correspondence that the searching request that the primary super node that is used for selecting reception chooser unit sends according to the transmission subelement is fed back;
Determine subelement, be used for to receive routing iinformation that subelement receives as the routing iinformation of acquisition.
19. primary super node equipment as claimed in claim 18 is characterized in that, described chooser unit specifically comprises:
Computing module is used for according to predetermined hash algorithm, and the sign of the resource that comprises in the described searching request that receiving element is received is carried out Hash operation;
Select module, be used for selecting corresponding sign and Hash operation result's immediate second primary super node of computing module from the DHT routing table of storage, comprise sign and the corresponding routing iinformation of other the primary super nodes except self in the described DHT routing table.
20. primary super node equipment as claimed in claim 17 is characterized in that, also comprises:
The second receiving element, be used for to receive with bunch the parameter value of performance parameter of the described ordinary node that regularly reports of ordinary node;
Selected cell for the parameter value that receives according to the second receiving element, is selected at least one ordinary node as super node for subsequent use.
21. an ordinary node equipment is characterized in that, comprising:
Memory cell is for the routing iinformation of storing same bunch primary super node;
Transmitting element is used for the routing iinformation according to cell stores, and the super node equipment in same bunch sends searching request, comprises the sign of the resource that will search in this searching request;
Receiving element is used for receiving the routing iinformation of other ordinary node equipment that store the resource that will search for corresponding to searching request that described super node equipment sends sends with transmitting element;
Download unit for the routing iinformation that receives according to receiving element, is downloaded the resource that will search for from described other ordinary nodes;
Second reports the unit, is used for reporting to same bunch super node termly the parameter value of this ordinary node equipment pre-determined characteristics parameter.
22. a device of setting up the peer-to-peer network system is characterized in that, comprising:
The first determining unit, the node that is used for first request is added described peer-to-peer network are as first primary super node, with the sign adding super node sign set of described node;
Selected cell is used for carrying out when follow-up other new nodes add described peer-to-peer network:
Select a primary super node sign from the set of described super node sign, super node corresponding to the described primary super node sign of selecting and the distance of this new node are that all identify in the distance of each corresponding super node and this new node nearest in the set of super node sign;
The second determining unit, when the distance that is used for super node corresponding to the primary super node sign selected at selected cell and this new node is not more than Second Threshold less than the quantity of bunch ordinary node at super node place corresponding to first threshold and the primary super node sign selected, the primary super node that this new node is brought Selection In out as ordinary node identify correspondence the super node place bunch in; Otherwise
This new node as primary super node, is gathered the sign adding super node sign of this new node.
23. a node device is characterized in that, comprising:
Judging unit is used for judging whether described node device is the node that first request adds the peer-to-peer network system;
The first determining unit is used for when judgment unit judges goes out the node of described node device described peer-to-peer network system for first request adds, and self as first primary super node, is added the super node sign with self sign and gather;
Selected cell, being used for going out described node device in judgment unit judges is not that first request is when adding the node of described peer-to-peer network system, select a primary super node sign from the set of described super node sign, super node corresponding to the described primary super node sign of selecting and the distance of this node device are that all identify in the distance of each corresponding super node and this node device nearest in the set of super node sign;
The second determining unit, when the distance that is used for super node corresponding to the primary super node sign selected at selected cell and this new node is not more than Second Threshold less than the quantity of bunch ordinary node at super node place corresponding to first threshold and the primary super node sign selected, the primary super node that self brings Selection In out as ordinary node is identified correspondence the super node place bunch in; Otherwise
This new node as primary super node, is gathered the sign adding super node sign of this new node.
CN2009102380837A 2009-11-18 2009-11-18 Peer-to-peer (P2P) network system and method and related device for establishing the same Active CN102065112B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102380837A CN102065112B (en) 2009-11-18 2009-11-18 Peer-to-peer (P2P) network system and method and related device for establishing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102380837A CN102065112B (en) 2009-11-18 2009-11-18 Peer-to-peer (P2P) network system and method and related device for establishing the same

Publications (2)

Publication Number Publication Date
CN102065112A CN102065112A (en) 2011-05-18
CN102065112B true CN102065112B (en) 2013-04-03

Family

ID=44000213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102380837A Active CN102065112B (en) 2009-11-18 2009-11-18 Peer-to-peer (P2P) network system and method and related device for establishing the same

Country Status (1)

Country Link
CN (1) CN102065112B (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095742B (en) * 2011-10-28 2016-04-27 中国移动通信集团公司 For node Adding Way and the corresponding P2P system of P2P system
CN102377826B (en) * 2011-11-28 2013-01-09 中国科学院研究生院 Method for optimal placement of unpopular resource indexes in peer-to-peer network
CN103179160B (en) * 2011-12-22 2016-01-27 中国移动通信集团公司 A kind of load transfer method, Apparatus and system
CN102752883B (en) * 2012-06-18 2018-09-25 南京中兴软件有限责任公司 A kind of communication system and the means of communication based on point to point network
CN103049572B (en) * 2013-01-04 2015-08-05 福建星网视易信息系统有限公司 Be applicable to the document retrieval method of the point-to-point communication of effective guarantee communication system
CN103618801B (en) * 2013-12-09 2017-01-04 中国联合网络通信集团有限公司 Method, equipment and the system of a kind of P2P resource-sharing
CN104836783B (en) * 2014-06-04 2018-10-30 腾讯科技(北京)有限公司 The method, apparatus and system of data transmission
CN105282203B (en) * 2014-07-21 2019-06-04 腾讯科技(深圳)有限公司 A kind of method for building up and equipment of catalogue centralized P2P network
CN104199679A (en) * 2014-08-01 2014-12-10 百度在线网络技术(北京)有限公司 Method and device used for obtaining updating
CN106161492B (en) * 2015-03-24 2019-05-10 华为技术有限公司 A data decision-making method, device and system
CN108234543A (en) * 2016-12-14 2018-06-29 中国航空工业集团公司西安航空计算技术研究所 A kind of polycentric large scale distributed system management method
CN107341207B (en) * 2017-06-23 2020-03-17 深圳市盛路物联通讯技术有限公司 Node information management method and device
CN108848191A (en) * 2018-07-26 2018-11-20 深圳市元征科技股份有限公司 A kind of joint connecting method and relevant device
US11108640B2 (en) * 2018-12-20 2021-08-31 Advantest Corporation Controlling devices in a decentralized storage environment
CN109951544A (en) * 2019-03-14 2019-06-28 中国电子技术标准化研究院 Distributed method, device and system for information exchange and sharing in the Internet of Things
CN111225037A (en) * 2019-12-20 2020-06-02 语联网(武汉)信息技术有限公司 Term corpus sharing method, terminal and server
CN111464600B (en) * 2020-03-20 2023-04-07 深圳赛安特技术服务有限公司 Point-to-point storage network establishing method, device, medium and electronic equipment
CN112073275B (en) * 2020-09-08 2022-06-21 广西民族大学 Content distribution method and device for ultra-dense network UDN
CN112491951B (en) * 2020-10-20 2022-11-25 网宿科技股份有限公司 Request processing method, server and storage medium in peer-to-peer network
CN119556959B (en) * 2025-01-14 2025-05-09 上海卫星互联网研究院有限公司 A software reconstruction method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150465A (en) * 2006-09-22 2008-03-26 腾讯科技(深圳)有限公司 A method for obtaining seed information and supernode and common nodes in P2P network
CN101247193A (en) * 2008-02-28 2008-08-20 华为技术有限公司 Method, system, node and super node for sending data in peer-to-peer network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150465A (en) * 2006-09-22 2008-03-26 腾讯科技(深圳)有限公司 A method for obtaining seed information and supernode and common nodes in P2P network
CN101247193A (en) * 2008-02-28 2008-08-20 华为技术有限公司 Method, system, node and super node for sending data in peer-to-peer network

Also Published As

Publication number Publication date
CN102065112A (en) 2011-05-18

Similar Documents

Publication Publication Date Title
CN102065112B (en) Peer-to-peer (P2P) network system and method and related device for establishing the same
EP3595268B1 (en) Streaming media resource distribution method, system, edge node and central dispatching system
US7978631B1 (en) Method and apparatus for encoding and mapping of virtual addresses for clusters
EP2230802B1 (en) A method and apparatus for maintaining route information
US20150215400A1 (en) File Upload Method And System
CN104519036B (en) Method and device for sending service request message
WO2008034352A1 (en) A resource delivery method, system and edge server
WO2010127618A1 (en) System and method for implementing streaming media content service
WO2008034353A1 (en) A method, system and device for establishing a peer to peer connection in a p2p network
CN101510899B (en) Method, system and equipment for implementing content source selection
CN101741750A (en) Resource downloading method and system in P2P
CN101378325A (en) Superposition network and building method thereof
CN101841553A (en) Method, user node and server for requesting location information of resources on network
CN1988449A (en) Data distributing/obtaining method based on network information
Ariefianto et al. Routing in NDN network: A survey and future perspectives
Drolia et al. Krowd: A key-value store for crowded venues
CN100505662C (en) Methods for creating peer-to-peer data channels
Shen et al. A proximity-aware interest-clustered P2P file sharing system
US20110282883A1 (en) Indexing server and method therefor
CN102647364B (en) Method, device and system for Mesh network routing
JP2006244223A (en) P2P content transfer method
Graffi et al. Skyeye. kom: An information management over-overlay for getting the oracle view on structured p2p systems
JP4533923B2 (en) Super-peer with load balancing function in hierarchical peer-to-peer system and method of operating the super-peer
CN111737029B (en) A server, data push method, and data push system
KR101243071B1 (en) Source switching method, system and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant