一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种P2P节点分享方法及装置与流程

2022-12-13 19:50:45 来源:中国专利 TAG:

一种p2p节点分享方法及装置
技术领域
1.本发明涉及网络通信技术领域,尤其涉及一种p2p节点分享方法及装置。


背景技术:

2.当前p2p(peer to peer,对等网络)技术广泛应用于直播,分组模式和树形模式为常见的p2p分享模式。分组模式受限于分组大小,分享率存在硬限制。树形模式,分享率没有硬限制;但受限于网络质量与观看时长分布,树稳定性难以保持,节点深度过深,延迟过高,卡顿率也会随之上升。随着终端网络质量以及硬件质量普遍提升,优质节点比率不断提高,单纯使用分组模式不能最大化利用优质节点,采用现有的分组模式以及树形模式容易造成优质节点的浪费。
3.因此,目前传统技术存在的缺点是节点深度过深容易产生卡顿,无法有效利用网络中的优质节点。


技术实现要素:

4.鉴于上述问题,本发明提出了一种p2p节点分享方法及装置,不会使节点深度过大,降低了节点卡顿,提高了优质节点利用率。
5.第一方面,本技术通过一实施例提供如下技术方案:
6.一种p2p节点分享方法,包括:
7.将数据流划分为n个子流,并将分享节点划分为n个节点组;所述子流与所述节点组一一对应;目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组;所述目标组为所述n个节点组中的任一个;所述目标组中的多个分享节点形成内分享池和外分享池,所述内分享池包含多个第一节点,所述外分享池包含多个第二节点;所述目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组,包括:将所述目标子流发送至第一目标节点;其中,所述第一目标节点属于所述第一节点;基于所述第一目标节点,将所述目标子流分享至所述第二节点;基于所述第二节点,将所述目标子流分享至所述目标节点组之外的节点组。
8.可选的,所述将所述目标子流发送至所述第一目标节点之前,还包括:
9.获取每个所述第一节点的权重值;将权重值最大的所述第一节点,确定为所述第一目标节点。
10.可选的,所述获取每个所述第一节点的权重值之前,还包括:
11.每隔预设时长基于所述第一节点的运行时长、被收听时长以及卡顿上报次数,更新所述第一节点的权重值。
12.可选的,所述每隔预设时长基于所述第一节点的运行时长、被收听时长以及卡顿上报次数,更新所述第一节点的权重值,包括:
13.基于所述卡顿上报次数,修正所述运行时长和所述被收听时长;每隔预设时长,基于第一对数和第二对数,更新所述第一节点的权重值;其中,第一对数为被修正后的运行时
长的对数,第二对数为被修正后的被收听时长的对数。
14.可选的,所述基于所述卡顿上报次数,修正所述运行时长和所述被收听时长,包括:
15.在每次进行卡顿上报时,基于dlive=dlive*m1修正所述运行时长;其中,dlive表示所述运行时长,m1为修正系数;在每次进行卡顿上报时,基于dlisten=dlisten(0,n)*m2修正所述被收听时长;其中,dlisten表示所述被收听时长,m2为修正系数,n为收听所述第一节点的节点数量。
16.可选的,所述每隔预设时长,基于第一对数和第二对数,更新所述第一节点的权重值,包括:
17.每隔预设时长,基于weigh_live=ln(dlive)*k1以及更新所述第一节点的权重值;其中,所述第一节点的权重值weight=weight_live weight_listen,k1、k2为调整系数。
18.可选的,所述基于所述第一目标节点,将所述目标子流分享至所述第二节点,包括:
19.判断所述第一目标节点的分享数量是否达到上限;若否,则基于所述第一目标节点,将所述目标子流分享至所述第二节点;若是,则断开所述第一目标节点与第二目标节点之间的分享关系;其中,所述第二目标节点为目标组之外的节点组中的节点;基于所述第一目标节点,将所述目标子流分享至所述第二节点,并基于所述第二节点将所述目标子流分享至所述第二目标节点。
20.第二方面,基于同一发明构思,本技术通过一实施例提供如下技术方案:
21.一种p2p节点分享装置,包括:
22.划分模块,用于将数据流划分为n个子流,并将分享节点划分为n个节点组;所述子流与所述节点组一一对应;分享模块,用于目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组;所述目标组为所述n个节点组中的任一个;所述目标组中的多个分享节点形成内分享池和外分享池,所述内分享池包含多个第一节点,所述外分享池包含多个第二节点;所述分享模块,包括:第一内分享单元,用于将所述目标子流发送至第一目标节点;其中,所述第一目标节点属于所述第一节点;第二内分享单元,用于基于所述第一目标节点,将所述目标子流分享至所述第二节点;外分享单元,用于基于所述第二节点,将所述目标子流分享至所述目标节点组之外的节点组。
23.可选的,还包括第三内分享单元,用于在所述将所述目标子流发送至所述第一目标节点之前:
24.获取每个所述第一节点的权重值;将权重值最大的所述第一节点,确定为所述第一目标节点。
25.第三方面,基于同一发明构思,本技术通过一实施例提供如下技术方案:
26.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述方法的步骤。
27.本发明实施例中提供的一种p2p节点分享方法及装置,通过将数据流划分为n个子流,并将分享节点划分为n个节点组;子流与所述节点组一一对应。然后,目标组获取目标子
流,并将目标子流发送至目标组之外的节点组,从而实现分享,目标组为n个节点组中的任一个。并且目标组中的多个分享节点可形成内分享池和外分享池,内分享池包含多个第一节点,外分享池包含多个第二节点;目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组,包括:将目标子流发送至第一目标节点;其中,第一目标节点属于第一节点;接着基于第一目标节点,将目标子流分享至第二节点;最后,基于第二节点,将目标子流分享至目标节点组之外的节点组。本发明实施例在分享的过程中形成内分享池实现组内分享,然后通过外分享池实现组外所有节点的分享,不会形成较深的分享树,避免了节点过深造成卡顿问题;同时,通过内分享池和外分享池能够有效的利用节点组中的所有节点,避免节点浪费。
28.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
29.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
30.图1示出了本发明第一实施例提供的一种p2p节点分享方法的流程图;
31.图2示出了图1中步骤s20的具体实施方法的流程图;
32.图3示出了本发明第一实施例中一示例性的p2p分享节点的分享原理示意图;
33.图4示出了本发明第二实施例提供的一种p2p节点分享装置的结构示意图。
具体实施方式
34.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
35.第一实施例
36.请参见图1,示出了本发明第一实施例提供的一种p2p节点分享方法的流程图。该方法的步骤如下:
37.步骤s10:将数据流划分为n个子流,并将分享节点划分为n个节点组;所述子流与所述节点组一一对应。
38.在步骤s10中,将数据流和分享节点进行分组后,可每个分享节点与一路子流对应,这样可方便的对一路子流下的节点进行灵活调度,有利于提高分享效率。本实施例中n取值应当大于等于2,保证数据流可划分为多个子流通过分享节点后实现数据流共享。每个节点组中的分享节点的数量,可以相同也可不同,不作限制。
39.步骤s20:目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组;所述目标组为所述n个节点组中的任一个。
40.在步骤s20中,由于目标组中包含多个分享节点,获取目标子流时由目标组中的分享节点从cdn(content delivery network,内容分发网络)获取目标子流。然后,由目标组中的分享节点将该目标子流分享至目标组之外的节点组。由于目标组为节点组中的任一个,因此,针对任一个节点组均具有上述的分享过程,从而实现数据流的共享,并节省宽带资源。
41.在本实施例中,可基于目标组中的多个分享节点构建分享池,分享池包括内分享池和外分享池。内分享池用于对目标组的组内节点进行目标子流的分享,外分享池用于对目标组之外的其他节点组进行目标子流的分享。内分享池和外分享池中的节点可以部分相同。例如,每个分享节点对应具有一可更新的权重值,外分享池中包含了目标组中的所有未达到分享数量上限的分享节点,内分享池中的分享节点为目标组中权重值最大的前20%的分享节点,并且内分享池的节点数量可根据需求进行适应性调整。分享节点的权重值在后文进行详细阐述。为了便于表述,内分享池中的节点记为第一节点,外分享池中的节点记为第二节点;也即内分享池包含多个第一节点,外分享池包含多个第二节点。
42.请参阅图2,步骤s20包括如下实施的子步骤:
43.步骤s21:将所述目标子流发送至第一目标节点;其中,所述第一目标节点属于所述第一节点。
44.在步骤s21中,第一目标节点从多个第一节点中确定。也即在步骤s21之前首先,可获取每个第一节点的权重值;然后,将权重值最大的第一节点,确定为第一目标节点。本实施例中权重值越大表示节点运行时间越长以及运行时的网络状态越好。选择权重值最大的第一节点作为目标节点,就可保证目标子流在被分享过程中不会被节点运行时间和网络状态所限制,能够提高目标子流的分享效率,以及整个网络的分享率。
45.由于网络状态可能存在实时的波动,以及不同客户端工作的环境不同。为了保证目标子流的分享质量,本实施例中对通过对每个第一节点配置权重值的方式来监测各个第一节点的运行质量,从而保证高质量的分享节点能够被有效利用。本实施例中第一节点的权重值更新过程为:
46.每隔预设时长基于第一节点的运行时长、被收听时长以及卡顿上报次数,更新第一节点的权重值。
47.其中,预设时长可进行自由设定。但本实施例中根据的分享节点的运行状态,可将预设时长设置为3~10s,具体可为3s、5s、6s、9s、等等。较优选的,预设时长取5s,可保证节点的状态更新及时,同时避免产生较大的计算开销;也即每过5s对第一节点的权重值进行一次更新。更新时,若节点的状态良好则增加该节点的权重值,若节点的状态变差则降低该节点的权重值。更新过程具体如下:
48.首先,基于所述卡顿上报次数,修正所述运行时长和所述被收听时长。
49.具体的,若某一第一节点卡顿时,则由收听该第一节点的其他分享节点进行卡顿上报,或者由说订阅该第一节点的其他分享节点进行卡顿上报。当该第一节点卡顿时,则说明该第一节点的网络质量较低,应当降低该第一节点的权重值,避免该第一节点作为中间的分享节点。
50.在本实施例中,由于权重值由第一节点的运行时长和被收听时长所决定的。因此,可通过对第一节点的运行时长和被收听时长进行修正,以降低该第一节点的权重值。具体
的,在每次进行卡顿上报时,基于dlive=dlive*m1修正运行时长;其中,dlive表示运行时长,m1为修正系数;同时,基于dlisten=dlisten(0,n)*m2修正被收听时长;其中,dlisten表示所述被收听时长,dlisten(0,n)表示n个节点的收听时长之和,m2为修正系数,n为收听第一节点的节点数量。m1、m2可以相同,也可以不同;m1、m2取值范围可为0.6~0.9,例如0.7、0.75、0.8、等等;优选的,可取0.75,可保证第一节点在卡顿时能够对权重合理降低,不至于遗漏偶发性卡顿的优质节点;若取值过大,可能无法使低质量节点的权重进行快速调低;若取值过小,可能导致部分优质节点无法被有效利用。
51.本实施例中卡顿衰退时采用上述乘以常数的算法的优势是:在连续发生卡顿时,可以快速将权重降低;并且在偶发卡顿时,权重不至于降低过快,有利于使用长期在线的优质节点。
52.然后,每隔预设时长,基于第一对数和第二对数,更新所述第一节点的权重值;其中,第一对数为被修正后的运行时长的对数,第二对数为被修正后的被收听时长的对数。
53.具体的,第一对数和第二对数的底数不做限制。在本实施中,可采用如下形式进行权重值更新:每隔预设时长,基于weigh_live=ln(dlive)*k1以及更新所述第一节点的权重值;其中,第一节点的权重值weight=weigh_live weight_listen,k1、k2为调整系数,weight可为取整后的值,取整方式不作限制。例如,取整数位或四舍五入取整。k1、k2可在网络整体状况较好的情况下设置为较大的值,以保证第一节点权重值快速达到稳定状态,以反应当前节点的真实运行质量,当k1、k2可在网络整体状况较差的情况下设置为较小值,以保证第一节点的权重值能真实的反应当前节点的运行情况,避免权重值波动过大。具体的,k1、k2取值可为15~25,较优的可取值为20,可保证得到的权重值具有合适的数值大小。k1、k2可取相同的数值也可取不同的数值。采用自然对数,且通过k1、k2进行修正调整,能够保证第一节点在初始启动时权重值能够快速更新变化,并在运行一段时间后趋于稳定,使得权重值能够准确的反映出第一节点的运行质量。
54.步骤s22:基于所述第一目标节点,将所述目标子流分享至所述第二节点。
55.在步骤s22中,第一目标节点属于内分享池,同时第一目标节点也可能属于外分享池。由于性能的限制,一个节点的分享数量存在上限。当该第一目标节点的分享数量达到上限时,就无法再次被其他节点订阅和收听。因此,本实施例中步骤s22具体包括如下的子步骤:
56.步骤s221:判断所述第一目标节点的分享数量是否达到上限。
57.在步骤s221中,第一目标节点的分享数量可在服务器进行设置,也可由节点自身进行设置,不作限制。例如,分享数量上限可设置为6、8、10、12等等。同时,也可通过对节点的硬件性能和网络带宽进行监测,硬件性能越好、网络带宽越大则可将分享数量上限设置更大。
58.步骤s222:若否,则基于所述第一目标节点,将所述目标子流分享至所述第二节点。
59.在步骤s222中,若第一目标节点分享数量未达到上限,则除第一目标节点之外的第二节点可直接订阅第一目标节点,由第一目标节点将子流分享至第二节点。
60.步骤s223:若是,则断开所述第一目标节点与第二目标节点之间的分享关系;其中,所述第二目标节点为目标组之外的节点组中的分享节点。
61.在步骤s223中,若第一目标节点分享数量已经达到上限,则无法在第一目标节点上新增收听节点。此时,为了保证目标组内的其他节点能够直接从第一目标节点获取数据以提高数据的分享率,可将其他节点组中收听第一目标节点的第二目标节点断开。断开的第二目标节点的数量与需要订阅第一目标节点的第二节点数量相同。第二目标节点的确定可有两种方式:其一,可从收听第一目标节点且属于其他节点组的节点中随机确定一节点作为第二目标节点;其二,可将收听第一目标节点且属于其他节点组的节点中确定一权重值最小的节点作为第二目标节点,该方式可将质量最差的节点置于末尾节点,有效提高网络的分享率。
62.步骤s224:基于所述第一目标节点,将所述目标子流分享至所述第二节点,并基于所述第二节点将所述目标子流分享至所述第二目标节点。
63.在步骤s224中,由于第一目标节点断开了一与第二目标节点之间的分享关系,则第一目标节点空出一分享位置而未达到分享数量上限。此时,可通过第一目标节点将目标子流分享至第二节点,该第二节点可将目标子流在分享至第二目标节点,也即置换了第二目标节点的订阅对象。若第二目标节点是权重值较低的节点,则可将质量最差的节点置于末尾节点,可提高网络的分享率。本实施例中,针对每个接入网络的第二节点均可通过上述的方式订阅第一目标节点。
64.步骤s23:基于所述第二节点,将所述目标子流分享至所述目标节点组之外的节点组。
65.在步骤s23中,第二节点将目标子流分享至目标节点组之外的节点组时,可根据各个第二节点之间的权重值由大至小进行依次分享。例如,在外分享池中的节点a、节点b、节点c的权重值依次减少,则可优先使用节点a进行分享,当节点a的分享数量达到上限时,将分享数量达到上限的节点移除外分享池,再依次采用节点b、节点c进行分享。在分享的时候,可根据其他节点组中的节点登录顺序进行依次分享。
66.基于权重值进行依次分享的好处是,优先利用高质量的第二节点进行分享,提高整个网络的分享率。在第二节点是分享给其他节点组中的所有节点,避免了形成过深的分享树,降低了网络的延迟和卡顿。
67.本实施例中,还提供了一具体示例对本方法的各个步骤进行说明,如下:
68.请参阅图3,在一示例中网络节点划分为4个节点组:peer1、peer2、peer3、peer4,每个节点组中包含5个分享节点:0、1、2、3、4。cdn将数据逻辑划分为4等份,即4个子流:子流1、子流2、子流3、子流4。然后,针对每个节点定义内分享池poo1_in和外分享池poo1_out。
69.当节点peerl_0进入p2p分享后,peer1_0最大订阅数为8,节点peer1_0被加入poo1_out和poo1_in,对于poo1_in独立计算本路子流1订阅数。peer1_0在一定限度内,随时间和订阅的分享节点运行,按预设时长每5s更新一次分享节点的权重值,订阅节点peer1_0的其他节点客户端进行卡顿上报。权重值更新如下:
70.随运行时长dlive增加(单位秒),运行时长所对应的第一权重每5s更新方式如下:
71.weigh_live=ln(dlive)*20
72.随节点peer1_0的被收听时长dlisten(n)增加(单位秒),被收听时长所对应的第
二权重每5s更新方式如下:
[0073][0074]
收听节点peer1_0的节点每上报一次卡顿,产生一次累积量衰退,对运行时长dlive以及被收听时长dlisten(n)进行修正,如下:
[0075]
dlive=dlive*0.75
[0076]
dlisten=dlisten(0,n)*0.75
[0077]
最终,节点peer1_0的权重值为:
[0078]
weight=weight_live weight_listen
[0079]
weight值取整,作为权重值。由于peer1中的每一个节点均有权重值,则可根据权重值划分出poo1_in和poo1_out。上述权重值生成使用对数算法,能够在节点登录初期快速变化调整,在运行一段时长后保持稳定,利于优质节点的筛选。卡顿衰退采用乘常数算法,当发生连续卡顿时,可以快速将权重降低;偶发卡顿时,权重不至于降低过快,有利于使用长期在线的优质节点。
[0080]
进一步的,若节点peer1_0的权重值最高,节点peer1_0从cdn上拉取子流1的数据。当分享组peer1中的节点peer1_1进入p2p分享后,从poo1_in取出权重最高节点peer1_0。如果订阅数已满,则选择一个分组peer2~peer4中的分享节点,将其订阅关系更改至节点peer1_1,再使节点peer1_1订阅节点peer1_0。节点peer1_1收到与节点peer1_0建立p2p连接的通知,开始p2p打洞;节点peer1_1和节点peer1_0打洞成功后,即建立p2p通道,开始传输数据。节点peer1_0实时地将从cdn上拉回的子流1数据,完整通过p2p通道,发送到节点peer1_1,完成子流内分享。
[0081]
由于节点peer1_1启动时,权重值较低(节点的初始权重值可置为0),因此节点peer1_1加入poo1_out供对外分享。节点peer1_2~peer1_4进行如p2p分享原理与节点peer1_1同理,均通过订阅节点peer1_0获取子流1的数据。如此便形成节点peer1_0到节点peer1_1~peer1_4的单层订阅树。并且在各个节点加入内分享池和外分享池时,可按照固定比例控制poo1_in节点个数,如果poo1_in节点个数不足,则从poo1_out中选择权重最高节点加入。例如,当节点peer1_0下线之后,可从poo1_out中选择权重最高节点加入。
[0082]
进一步的,当节点组peer2中的节点peer2_0登录后,其组内分享过程可参照关于分享组peer1中的节点peer1_0的说明。子流1的数据分享给peer2_0的过程为:从子流1的poo1_out中取出权重值最高的节点,若最大权重值的节点peer1_0的订阅数达到上限,则将节点peer1_0从poo1_out中移除;取出poo1_out中最高权重值的节点peer1_1,增加收听数。将节点peer1_1的信息下发给节点peer2_0的客户端,开始进行打洞,建立p2p通道。建立p2p连接后,节点peer1_1开始发送子流1的数据给节点peer2_0。同样的,节点peer2_1,节点peer2_2,节点peer2_3,节点peer2_4均通过收听子流1对应的分享节点获取子流1的数据。
[0083]
通过子流内加子流间分享,子流1的数据分享率理论值可以达到95%。同样的,子流2、子流3、子流4也可采用上述的分享方式,使得子流1~子流4的整体分享率理论值可以达到95%。在节点分享过程中,利用恰当的节点权重树控制算法,可以更好的保证优质节点被使用,有效的提升分享率。
[0084]
综上所述,本实施例中提供的一种p2p节点分享方法,通过将数据流划分为n个子流,并将分享节点划分为n个节点组;子流与所述节点组一一对应。然后,目标组获取目标子流,并将目标子流发送至目标组之外的节点组,从而实现分享,目标组为n个节点组中的任一个。并且目标组中的多个分享节点可形成内分享池和外分享池,内分享池包含多个第一节点,外分享池包含多个第二节点;目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组,包括:将目标子流发送至第一目标节点;其中,第一目标节点属于第一节点;接着基于第一目标节点,将目标子流分享至第二节点;最后,基于第二节点,将目标子流分享至目标节点组之外的节点组。在分享的过程中形成内分享池实现组内分享,然后通过外分享池实现组外所有节点的分享,不会形成较深的分享树,避免了节点过深造成卡顿问题;同时,通过内分享池和外分享池能够有效的利用节点组中的所有节点,避免节点浪费。
[0085]
第二实施例
[0086]
基于同一发明构思,本发明第二实施例提供了一种p2p节点分享装置300。图4示出了本发明第二实施例提供的一种p2p节点分享装置300的结构示意图。所述p2p节点分享装置300,包括:
[0087]
划分模块31,用于将数据流划分为n个子流,并将分享节点划分为n个节点组;所述子流与所述节点组一一对应;分享模块32,用于目标组获取目标子流,并将所述目标子流发送至所述目标组之外的节点组;所述目标组为所述n个节点组中的任一个;所述目标组中的多个分享节点形成内分享池和外分享池,所述内分享池包含多个第一节点,所述外分享池包含多个第二节点;所述分享模块32,包括:第一内分享单元321,用于将所述目标子流发送至第一目标节点;其中,所述第一目标节点属于所述第一节点;第二内分享单元322,用于基于所述第一目标节点,将所述目标子流分享至所述第二节点;外分享单元323,用于基于所述第二节点,将所述目标子流分享至所述目标节点组之外的节点组。
[0088]
作为一种可选的实施方式,还包括第三内分享单元,用于在所述将所述目标子流发送至所述第一目标节点之前:
[0089]
获取每个所述第一节点的权重值;将权重值最大的所述第一节点,确定为所述第一目标节点。
[0090]
作为一种可选的实施方式,还包括权重更新单元,用于在所述获取每个所述第一节点的权重值之前:
[0091]
每隔预设时长基于所述第一节点的运行时长、被收听时长以及卡顿上报次数,更新所述第一节点的权重值。
[0092]
作为一种可选的实施方式,所述权重更新单元,还具体用于:
[0093]
基于所述卡顿上报次数,修正所述运行时长和所述被收听时长;每隔预设时长,基于第一对数和第二对数,更新所述第一节点的权重值;其中,第一对数为被修正后的运行时长的对数,第二对数为被修正后的被收听时长的对数。
[0094]
作为一种可选的实施方式,所述权重更新单元,还具体用于:
[0095]
在每次进行卡顿上报时,基于dlive=dlive*m1修正所述运行时长;其中,dlive表示所述运行时长,m1为修正系数;在每次进行卡顿上报时,基于dlisten=dlisten(0,n)*m2修正所述被收听时长;其中,dlisten表示所述被收听时长,m2为修正系数,n为收听所述第
一节点的节点数量。
[0096]
作为一种可选的实施方式,所述权重更新单元,还具体用于:
[0097]
每隔预设时长,基于weigh_live=ln(dlive)*k1以及更新所述第一节点的权重值;其中,所述第一节点的权重值weight=weigh_live weight_listen,k1、k2为调整系数。
[0098]
作为一种可选的实施方式,所述第二内分享单元322,具体用于:
[0099]
判断所述第一目标节点的分享数量是否达到上限;若否,则基于所述第一目标节点,将所述目标子流分享至所述第二节点;若是,则断开所述第一目标节点与第二目标节点之间的分享关系;其中,所述第二目标节点为目标组之外的节点组中的节点;基于所述第一目标节点,将所述目标子流分享至所述第二节点,并基于所述第二节点将所述目标子流分享至所述第二目标节点。
[0100]
需要说明的是,本发明实施例所提供的一种p2p节点分享装置300,其具体实现及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
[0101]
第三实施例
[0102]
基于同一发明构思,本发明第三实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法实施例中任一项所述方法的步骤。
[0103]
需要说明的是,本发明实施例所提供的计算机可读存储介质中,其中程序被处理器执行时,每个步骤的具体实现及产生的技术效果和前述方法实施例相同,为简要描述,本实施例未提及之处可参考前述方法实施例中相应内容。
[0104]
本文中出现的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系;单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0105]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0106]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0107]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0108]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0109]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0110]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献