CN107659634B - 邻居节点选择的方法、装置、设备及计算机存储介质 - Google Patents
邻居节点选择的方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN107659634B CN107659634B CN201710854403.6A CN201710854403A CN107659634B CN 107659634 B CN107659634 B CN 107659634B CN 201710854403 A CN201710854403 A CN 201710854403A CN 107659634 B CN107659634 B CN 107659634B
- Authority
- CN
- China
- Prior art keywords
- node
- preselected
- preselected node
- data
- type
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000012634 fragment Substances 0.000 claims abstract description 93
- 230000005540 biological transmission Effects 0.000 claims abstract description 45
- 238000004590 computer program Methods 0.000 claims description 10
- 238000003491 array Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 2
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种点对点传输邻居节点选择的方法、装置、设备及计算机可读存储介质,包括:判断预选节点的类型;若所述预选节点为第一类节点,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;根据所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;若所述预选节点为第二类节点,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。本发明所提供的方法、装置、设备及计算机可读存储介质可以提高节点间数据交换的速率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种点对点传输邻居节点选择的方法、装置、设备及计算机可读存储介质。
背景技术
数据中心是容纳了计算资源、网络连接、存储等相关组件的设施,为了数据中心的稳定性和可用性,通常还设置有冗余、备用电源以及空调等安全设施。节点间的数据传输是数据中心中最常见的问题,比如虚拟机镜像分发,以及并行计算时中间结果的传递,如何快速地在集群中的机器间传输数据也成为数据中心的热点之一。
现有的点对点传输技术,例如BitTorrent、迅雷、btorrent等传输方式被广泛应用于互联网来进行文件交换。在使用BitTorrent协议进行文件交换时将一个文件分成很多小的分片,需要下载同一个文件的节点间通过彼此间交换该文件的分片来完成。节点可以被分成两类:seeders和leechers。已经包含有整个文件的节点被称为seeders,相应的未含有或者含有部分文件的节点被称为leechers。
现有技术中下载文件时,节点间通过选用文件下载策略决定交换分片的邻居并选用一个合适的顺序来交换分片,这两种行为对应着两个算法:邻居节点选择算法和片选算法,邻居节点为指相互交换数据的节点。对邻居节点选择算法而言,BitTorrent采取tit-for-tat(以牙还牙)机制来避免free-riders。即当一个节点选择上传数据的节点时,它会首先根据过去20s内向自己传输的数据量的大小对连接的节点进行排序,之后选择4个为自己上传速率最大的4个节点上传数据。对片选算法而言,BitTorrent协议希望每个节点都有数据和其他节点进行交换。在开始阶段,每个参与者将使用随机分片优先算法(randomfirst algorithm)下载第一个分片,这样使得其可以尽快的拥有可以和其他节点交换的一个分片。之后,BitTorrent将转化为最稀有文件块优先算法(rarest piece first)策略,即选择和它相连接的节点中最稀有的分片下载,从而避免节点的离开导致的稀有分片缺失。否则,所有的节点可能都不能再得到完整的文件。
由于现有技术中的seeder节点在选择邻居节点时,考虑的是所选节点向自己返回文件最多的节点,不考虑所选的节点的接收能力,从而降低了节点间数据交换的速率。leecher节点在选择邻居节点时,随机选择下载第一个分片,以保证可以与其他节点进行数据交换,下载第一个分片后,优先与稀有的分片连接,防止在互联网中某节点断开与其他节点的连接时,导致稀有分片的缺失,否则,所有节点可能都不能再得到完整的文件。但是集群中节点不同于互联网中的节点,网络连接更加稳定,不需要以牙还牙的机制去限制只想下载不想上传的节点,所以,依然使用现有技术中邻居节点选择算法和片选算法去选择进行数据交换的邻居节点,会降低数据中心节点间的数据交换速率。
综上所述可以看出,如何提高数据中心节点间的数据交换速率是目前有待解决的问题。
发明内容
本发明的目的是提供一种点对点传输邻居节点选择的方法、装置、设备及计算机可读存储介质,已解决现有技术中数据中心节点数据交换速率低的问题。
为解决上述技术问题,本发明提供一种点对点传输邻居节点选择的方法,包括:判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;若所述预选节点为第一类节点,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;根据所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;若所述预选节点为第二类节点,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
优选地,所述判断预选节点的类型具体包括:保存所述预选节点包含的数据分片至位数组,所述预选节点的位数组在所述预选节点已经包含的数据分片对应的位数上置1,所述预选节点未包含的数据分片对应的位数上置0;根据所述预选节点的位数组判断所述预选节点的类型。
优选地,所述获取与所述预选节点包含的数据分片的差异分片数量具体包括:保存所述预选节点及与所述预选节点连接的所有第一类节点包含的数据分片至与所述预选节点及与所述预选节点连接的所有第一类节点相应的位数组;发送与所述预选节点连接的所有第一类节点的位数组数据至所述预选节点,以便与所述预选节点连接的所有第一类节点的位数组与所述预选节点的位数组执行异或操作;根据异或操作的结果,获取与所述预选节点包含的数据分片的差异分片数量。
优选地,所述根据所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点具体包括:排序异或操作的结果,以便作为所述差异分片数量的排列顺序;根据所述差异分片数量的排列顺序,由大到小依次选取预设数量的与所述预选节点连接的第一类节点作为邻居节点。
优选地,所述根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的对应剩余接收带宽大的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点具体包括:响应于提供与所述预选节点连接的所有第一类节点的剩余接收带宽的请求,返回与所述预选节点连接的所有第一类节点的剩余接收带宽的数据信息至所述预选节点,以便对与所述预选节点连接的所有第一类节点的剩余接收带宽由大到小排序;据剩余接收带宽的排序,由大到小依次选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;每隔第二预设时间间隔,更新重新统计与所述预选节点连接的所有第一类节点的剩余接收带宽,从而更新与所述预选节点连接的邻居节点。
本发明还提供了一种点对点传输邻居节点选择的装置,包括:
判断类型模块,用于判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;
获取差异模块:用于所述预选节点为第一类节点时,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;
第一选取模块:用于所述预选节点为第一类节点时,根据与所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
第二选取模块:用于所述预选节点为第二类节点时,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
优选地,所述预选节点为第一类节点时还包括第一更新模块,用于每隔第一预设时间间隔后,重新比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,更新差异分片数量。
本发明还提供了一种点对点传输邻居节点选择的设备,包括:
存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述一种点对点传输邻居节点选择的方法的步骤。
本发明还提供了一种点对点传输邻居节点选择的计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述一种点对点传输邻居节点选择的方法的步骤。
本发明所提供的一种点对点传输邻居节点选择的方法、装置、设备及计算机可读存储介质,对于不同节点类型,运用不同的邻居节点选择策略,对于不包含完整数据的节点,通过比较预选节点包含的数据分片及与预选节点连接的所有第一类节点包含的数据分片,获取差异分片数量,根据差异分片数量大小选择邻居节点;对于包含完整数据的节点,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小选择邻居节点。根据上述的方法以及装置,不包含完整数据的节点的邻居节点的选择策略,利用节点间的差异分片的交换,使不包含完整数据的节点快速的成为包含完整数据的节点;包含完整数据的节点的邻居节点的选择策略,利用了与所述节点连接的第一类节点的剩余接收带宽,剩余接收带宽越大,数据交换的速率也更高;第一类节点快速成为第二类节点,第二类节点利用与其相连的第一类节点的剩余接收带宽,快速向其传输数据,从而提高了点对点传输在数据中心的数据交换的速率。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的点对点传输邻居节点选择的方法的第一种具体实施例的流程图;
图2为本发明所提供的点对点传输邻居节点选择的方法的第二种具体实施例的流程图;
图3为本发明实施例提供的一种点对点传输邻居节点选择的装置的结构框图。
具体实施方式
本发明的核心是提供一种点对点传输邻居节点选择的方法、装置、设备及计算机可读存储介质,提高了点对点传输在数据中心的数据交换的速率。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明所提供的点对点传输邻居节点选择的方法的第一种具体实施例的流程图,具体步骤如下:
步骤S101:判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;
步骤S102:若所述预选节点为第一类节点,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;
步骤S103:根据所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
步骤S104:若所述预选节点为第二类节点,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
经过实验可知P2P文件传输协议中,在同样配置、相同的带宽网络下,两个节点之间拥有越多对方不含有的分片,则在一定时段内可以交换的数据分片更多,提高了交换速率。在集群中的第二类节点已经拥有完整的数据,并不需要从其他节点下载数据,只作为数据的提供者保障集群中所有节点都可以得到完整的数据文件,因此第二类节点选择邻居节点的方法不同于第一类节点的选择方法,也不需要现有技术中以牙还牙的机制约束只下载不上传的节点。
在本具体实施例中,第一类节点的邻居节点的选择策略,利用节点间的差异分片的交换,第一类节点快速的成为第二类节点;第二类节点的邻居节点的选择策略,利用了与所述节点连接的第一类节点的剩余接收带宽,剩余接收带宽越大,数据交换的速率也更高;第一类节点快速成为第二类节点,第二类节点利用与其相连的第一类节点的剩余接收带宽,快速向其传输数据,从而提高了点对点传输在数据中心的数据交换的速率。
请参考图2,图2为本发明所提供的点对点传输邻居节点选择的方法的第二种具体实施例的流程图。
在上述具体实施例的基础上,增加对与所述预选节点连接的所有第一类节点的数据分片和剩余接收带宽的在每隔预设时间间隔内的重新统计,第一类节点为leecher节点,不含有或者只含有部分文件的节点,即还未开始下载或还未下载完成;第二类节点为seeder节点,已经包含了整个文件,即已经完成了文件下载的节点。具体步骤如下:
步骤S201:寻找集群中拥有或者需要下载同一文件的节点,建立连接;
步骤S202:对所述预选节点需要下载的文件进行统计,计算得出所述预选节点已经包括的数据分片保存至位数组,所述预选节点的位数组在所述预选节点已经包含的数据分片对应的位数上置1,所述预选节点未包含的数据分片对应的位数上置0;
步骤S203:根据位数组判断所述预选节点是否包含整个数据文件;
步骤S204:若已经包含完整数据文件,则所述预选节点为seeder节点,向建立连接的所有leecher节点发送提供剩余网络带宽数据的请求;
步骤S205:seeder节点接收到建立连接的所有leecher节点返回的剩余接收带宽数据后,根据剩余接收带宽的大小进行排序,选出最大的四个leecher节点作为所述预选节点的邻居节点;
所述与seeder节点进行数据传输的leecher节点的个数可以根据集群的需求进行调整,通过实验发现,选取四个leecher节点作为所述预设节点的邻居节点时,数据交换速率快,选取的节点个数过多加大了集群系统在进行维修时的成本。
步骤S206:seeder节点向选定的邻居leecher节点发送文件分片数据,并且每隔5秒回重新统计与所述预选节点所连接的所有leecher节点的剩余接收带宽;
集群中机器的带宽使用情况通常是动态变化的,每隔时间间隔,各节点内数据分片都可能进行了变化,邻居节点的leecher节点可能会变为seeder节点不再需要数据。统计与seeder节点连接节点的剩余接收带宽时要去掉所述seeder产生的影响。
步骤S207:若预选节点并未完成下载,所述预设节点为leecher节点,与所述预设节点立连接的所有leecher节点交换位数组;
步骤S208:从其他leecher节点接收到位数组后,与所述节点的位数组做异或操作;
由于位数组中每一位代表了文件的一个分片,那么相应的位置上异或值为1时说明它们之间仅有一个节点含有该分片,说明它们在是否拥有该分片上是差异的;在比较节点之间数据分片的差异时,若直接比较两节点内的文件,需要的时间过长,因此利用位数组表示每个节点的数据分片,在进行差异比较时,可以之间根据位数组进行比较,大大地提高了节点之间数据交换的速率。
步骤S209:按照节点间含有的差异分片数量从大到小进行排序;
步骤S210:根据差异分片数量的排序结果,选出含分片差异量最大的四个leecher节点作为所述预选节点的邻居节点;
步骤S211:向选定的邻居leecher节点传输文件分片数据,同时,当节点接收到分片数据并在检验了数据完整性存盘后,应及时更新位数组;
步骤S212:接收到分片并更新位数组后,判断是否已经下载完成;
步骤S213:若还未下载完成,则每隔10秒,重新统计与周围连接的所有leecher节点的数据分片的差异量,替换掉分片差异量小的节点或者已经完成下载的节点;
时间间隔设置为10秒,10秒的时间间隔足够让处于集群中心的节点对于新的连接传输达到在其带宽下的TCP传输最高速率;当然时间间隔也可以设置为其他时间,并不影响本发明的实现。
步骤S214:若所述预选节点已经完成下载,则将其标记为seeder节点并执行seeder节点对应的操作步骤。
在本具体实施例中,将节点包含的数据分片保存至位数组,在判断节点是否包含完整数据文件以及进行节点间的异或操作时,节省了操作时间,加快了节点间数据交换的速率。seeder节点选择四台剩余接收带宽最大的节点并向四个节点传输数据分片,这样的选择邻居节点的策略可以最大限度的利用seeder节点的上传带宽,同时四个leecher节点可以快速积累数据分片用于与其他节点进行数据交换;leecher节点选择与自身包含数据分片差异量最大的分片进行数据交换,可以使leecher节点快速拥有不同的数据分片,成为seeder节点,使集群中数据交换速率提高,并且数据交换速率随着seeder节点数量增加,交换速率也逐渐增加,即数据传输速率越来越高。
下面对本发明实施例提供的点对点传输邻居节点装置进行介绍,下文描述的一种点对点传输邻居节点选择的装置与上文描述的点对点传输邻居节点选择的方法可相互对应参照。
请参考图3,图3为本发明实施例提供的一种点对点传输邻居节点选择的装置的结构框图;具体装置可以包括:
判断类型模块100,用于判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;
获取差异模块200,用于所述预选节点为第一类节点时,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;
第一选取模块300,用于所述预选节点为第一类节点时,根据与所述差异分片数量的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
第二选取模块400,用于所述预选节点为第二类节点时,根据与所述预选节点连接的第一类节点的剩余接收带宽的大小,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
本装置具体实施中,可以进一步包括:
第一更新模块500,用于每隔第一预设时间间隔后,重新比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,更新差异分片数量;
第二更新模块600,用于每隔第二预设时间间隔,更新重新统计与所述预选节点连接的所有第一类节点的剩余接收带宽,从而更新与所述预选节点连接的邻居节点。
本实施例的点对点传输邻居节点选择的装置用于实现前述的点对点传输邻居节点选择的方法,因此点对点传输邻居节点选择的装置中的具体实施方式可见前文中的点对点传输邻居节点选择的方法的实施例部分,例如,判断类型模块100,获取差异模块200,第一选择模块300,第二选择模块400,分别用于实现上述点对点传输邻居节点选择的方法中步骤S101,S102,S103和S104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本发明具体实施例还提供了一种点对点传输邻居节点选择的设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述点对点传输邻居节点选择的方法的具体实施例的步骤。
本发明具体实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述点对点传输邻居节点选择的方法的具体实施例的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。此外,使用第一、第二等术语等并不指示任何的顺序或重要性,相反,使用第一、第二等术语是为了将两个类型、两个更新模块、两个间隔时间区分开来。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的点对点传输邻居节点选择的方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种点对点传输邻居节点选择的方法,其特征在于,包括:
判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;
若所述预选节点为第一类节点,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;根据所述差异分片数量从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
若所述预选节点为第二类节点,根据与所述预选节点连接的第一类节点的剩余接收带宽从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
2.如权利要求1所述的方法,其特征在于,所述判断预选节点的类型具体包括:
保存所述预选节点包含的数据分片至位数组,所述预选节点的位数组在所述预选节点已经包含的数据分片对应的位数上置1,所述预选节点未包含的数据分片对应的位数上置0;根据所述预选节点的位数组判断所述预选节点的类型。
3.如权利要求1所述的方法,其特征在于,所述获取与所述预选节点包含的数据分片的差异分片数量具体包括:
保存所述预选节点及与所述预选节点连接的所有第一类节点包含的数据分片至与所述预选节点及与所述预选节点连接的所有第一类节点相应的位数组;
发送与所述预选节点连接的所有第一类节点的位数组数据至所述预选节点,以便与所述预选节点连接的所有第一类节点的位数组与所述预选节点的位数组执行异或操作;
根据异或操作的结果,获取与所述预选节点包含的数据分片的差异分片数量。
4.如权利要求3所述的方法,其特征在于,所述根据所述差异分片数量从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点具体包括:
排序异或操作的结果,以便作为所述差异分片数量的排列顺序;
根据所述差异分片数量的排列顺序,由大到小依次选取预设数量的与所述预选节点连接的第一类节点作为邻居节点。
5.如权利要求1所述的方法,其特征在于,所述获取与所述预选节点包含的数据分片的差异分片数量包括:
每隔第一预设时间间隔后,重新比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,更新差异分片数量。
6.如权利要求1至5任一项所述的方法,其特征在于,所述根据与所述预选节点连接的第一类节点的剩余接收带宽从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点具体包括:
响应于提供与所述预选节点连接的所有第一类节点的剩余接收带宽的请求,返回与所述预选节点连接的所有第一类节点的剩余接收带宽的数据信息至所述预选节点,以便对与所述预选节点连接的所有第一类节点的剩余接收带宽由大到小排序;
根据剩余接收带宽的排序,由大到小依次选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
每隔第二预设时间间隔,更新重新统计与所述预选节点连接的所有第一类节点的剩余接收带宽,从而更新与所述预选节点连接的邻居节点。
7.一种点对点传输邻居节点选择的装置,其特征在于,包括:
判断类型模块,用于判断预选节点的类型,所述预选节点的类型为不包含完整数据的第一类节点,和/或包含完整数据的第二类节点;
获取差异模块:用于所述预选节点为第一类节点时,比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,获取与所述预选节点包含的数据分片的差异分片数量;
第一选取模块:用于所述预选节点为第一类节点时,根据与所述差异分片数量从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点;
第二选取模块:用于所述预选节点为第二类节点时,根据与所述预选节点连接的第一类节点的剩余接收带宽从大到小的顺序,选取预设数量的与所述预选节点连接的第一类节点作为所述预选节点的邻居节点。
8.如权利要求7所述的装置,其特征在于,所述预选节点为第一类节点时还包括第一更新模块,用于每隔第一预设时间间隔后,重新比较所述预选节点包含的数据分片以及与所述预选节点连接的所有第一类节点包含的数据分片,更新差异分片数量。
9.一种点对点传输邻居节点选择的设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述点对点传输邻居节点选择的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述点对点传输邻居节点选择的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710854403.6A CN107659634B (zh) | 2017-09-20 | 2017-09-20 | 邻居节点选择的方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710854403.6A CN107659634B (zh) | 2017-09-20 | 2017-09-20 | 邻居节点选择的方法、装置、设备及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107659634A CN107659634A (zh) | 2018-02-02 |
CN107659634B true CN107659634B (zh) | 2020-08-21 |
Family
ID=61130504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710854403.6A Active CN107659634B (zh) | 2017-09-20 | 2017-09-20 | 邻居节点选择的方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107659634B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110086847B (zh) * | 2019-03-12 | 2021-03-09 | 中国科学院计算技术研究所 | 数据分发方法、介质及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101808079A (zh) * | 2009-02-12 | 2010-08-18 | 华为技术有限公司 | 一种确定直接邻居节点的方法、服务器和客户端 |
CN101945129A (zh) * | 2010-09-10 | 2011-01-12 | 北京易视腾科技有限公司 | P2p流媒体直播的低延时传输方法及系统 |
CN103188279A (zh) * | 2011-12-27 | 2013-07-03 | 中国电信股份有限公司 | 通过对等网络从多个邻居节点下载文件的方法和装置 |
US8560654B2 (en) * | 2007-02-02 | 2013-10-15 | Hewlett-Packard Development Company | Change management |
CN103873385A (zh) * | 2012-12-18 | 2014-06-18 | 中国科学院声学研究所 | 一种基于反馈控制的p2p流媒体数据请求方法及系统 |
CN104536800A (zh) * | 2014-09-29 | 2015-04-22 | 杭州华为数字技术有限公司 | 一种虚拟机放置方法及装置 |
US9258361B2 (en) * | 2009-04-08 | 2016-02-09 | New Jersey Institute Of Technology | Transferring data among nodes on a network |
CN105426427A (zh) * | 2015-11-04 | 2016-03-23 | 国家计算机网络与信息安全管理中心 | 基于raid 0 存储的mpp 数据库集群副本实现方法 |
-
2017
- 2017-09-20 CN CN201710854403.6A patent/CN107659634B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8560654B2 (en) * | 2007-02-02 | 2013-10-15 | Hewlett-Packard Development Company | Change management |
CN101808079A (zh) * | 2009-02-12 | 2010-08-18 | 华为技术有限公司 | 一种确定直接邻居节点的方法、服务器和客户端 |
US9258361B2 (en) * | 2009-04-08 | 2016-02-09 | New Jersey Institute Of Technology | Transferring data among nodes on a network |
CN101945129A (zh) * | 2010-09-10 | 2011-01-12 | 北京易视腾科技有限公司 | P2p流媒体直播的低延时传输方法及系统 |
CN103188279A (zh) * | 2011-12-27 | 2013-07-03 | 中国电信股份有限公司 | 通过对等网络从多个邻居节点下载文件的方法和装置 |
CN103873385A (zh) * | 2012-12-18 | 2014-06-18 | 中国科学院声学研究所 | 一种基于反馈控制的p2p流媒体数据请求方法及系统 |
CN104536800A (zh) * | 2014-09-29 | 2015-04-22 | 杭州华为数字技术有限公司 | 一种虚拟机放置方法及装置 |
CN105426427A (zh) * | 2015-11-04 | 2016-03-23 | 国家计算机网络与信息安全管理中心 | 基于raid 0 存储的mpp 数据库集群副本实现方法 |
Non-Patent Citations (1)
Title |
---|
HDID:An Efficient Hybrid Docker Image Distribution System for Datacenters;Mingyuan Liang;《NASAC 2016:Software Engineering and Methodology for Emerging Domains》;20170117;第179-194页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107659634A (zh) | 2018-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107276765B (zh) | 区块链中共识的处理方法及装置 | |
CN107171810B (zh) | 区块链的验证方法及装置 | |
Hegeman et al. | Toward optimal bounds in the congested clique: Graph connectivity and MST | |
CN107404541B (zh) | 一种对等网络传输邻居节点选择的方法及系统 | |
CN110995513A (zh) | 物联网系统中的数据发送、接收方法、物联网设备及平台 | |
CN104052803A (zh) | 一种去中心化的分布式渲染方法及渲染系统 | |
CN111431802B (zh) | 区块链节点通信优化系统及方法 | |
CN110557304B (zh) | 一种地址探测方法、设备及计算机可读存储介质 | |
CN108875035B (zh) | 分布式文件系统的数据存储方法及相关设备 | |
CN114567681B (zh) | 一种区块链网络高效率数据传输方法 | |
CN109962947A (zh) | 一种对等网络中的任务分配方法及装置 | |
CN107659634B (zh) | 邻居节点选择的方法、装置、设备及计算机存储介质 | |
CN113542077B (zh) | openstack加密链路管理方法和系统 | |
US8984100B2 (en) | Data downloading method, terminal, server, and system | |
CN115348278A (zh) | 区块链的分布式存储方法 | |
CN107959702B (zh) | 路由方法和装置 | |
CN110855492B (zh) | 一种数据处理方法、装置及存储介质 | |
CN114492849B (zh) | 一种基于联邦学习的模型更新方法及装置 | |
CN110888892A (zh) | 一种区块同步方法、装置及存储介质 | |
JP2007272540A (ja) | データ配信方法及びデータ配信システム | |
CN111614966B (zh) | 基于同步树的同步方法、系统、装置、设备及存储介质 | |
CN114173396A (zh) | 终端联网时间的确定方法和装置、电子设备和存储介质 | |
CN112256658B (zh) | 日志记录的分流方法及装置、存储介质、电子装置 | |
CN111200560B (zh) | 微服务注册方法、装置、设备及存储介质 | |
CN114339937A (zh) | 一种自组网任意设备间最优路径通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200723 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |