CN108712307B - 一种基于区块链的带宽能力计算方法及装置 - Google Patents

一种基于区块链的带宽能力计算方法及装置 Download PDF

Info

Publication number
CN108712307B
CN108712307B CN201810450624.1A CN201810450624A CN108712307B CN 108712307 B CN108712307 B CN 108712307B CN 201810450624 A CN201810450624 A CN 201810450624A CN 108712307 B CN108712307 B CN 108712307B
Authority
CN
China
Prior art keywords
bandwidth
value
computing node
computing
node
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.)
Expired - Fee Related
Application number
CN201810450624.1A
Other languages
English (en)
Other versions
CN108712307A (zh
Inventor
赵化强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology 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 Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201810450624.1A priority Critical patent/CN108712307B/zh
Publication of CN108712307A publication Critical patent/CN108712307A/zh
Application granted granted Critical
Publication of CN108712307B publication Critical patent/CN108712307B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供一种基于区块链的带宽能力计算方法及装置,所述方法包括:获取区块链***中计算节点所使用的通信网络的带宽测量值;基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值;获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;基于所述带宽流量,确定所述计算节点的带宽实际值;基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,其中,所述均衡带宽值用于表征所述计算节点处理分布式计算任务的带宽能力。如此,通过均衡带宽值就可以实现确定所述计算节点处理分布式计算任务的带宽能力。

Description

一种基于区块链的带宽能力计算方法及装置
技术领域
本发明涉及计算机应用领域,尤其涉及一种基于区块链的带宽能力计算方法及装置。
背景技术
随着互联网和电子设备的普及,越来越多的用户拥有多个不同类型的硬件设备,如笔记本电脑、台式计算机、服务器、移动硬盘等,这些终端通过可以通过用户网络接入互联网中。但是,在用户不使用这些硬件设备时,就会产生很多闲置网络资源,如闲置的带宽资源、计算资源以及存储空间等,从而,就会产生大量的资源浪费。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。目前,随着区块链技术的快速发展,为了提高网络资源利用效用,任何用户都可以将自己的硬件设备加入区块链***中,成为区块链***中的一个计算节点,通过基于区块链的云共享技术,计算节点来完成任务发布节点所发布的分布式计算任务,来实现共享闲置资源给任务发布节点。
为了鼓励用户积极参与共享计划,共享闲置资源如带宽资源,可以在计算节点基于区块链共享带宽资源后,根据该计算节点处理分布式计算任务的带宽能力,来给计算节点分配相应的通证,如数字货币。所以,亟需一种确定计算节点的带宽能力的方法。
发明内容
有鉴于此,本发明实施例提供一种基于区块链的带宽能力计算方法及装置,主要目的在于通过计算节点的均衡带宽值,来表征计算节点处理分布式任务的带宽能力。
为达到上述目的,本发明实施例主要提供如下技术方案:
第一方面,本发明实施例提供一种基于区块链的带宽能力计算方法,所述方法包括:获取区块链***中计算节点所使用的通信网络的带宽测量值;基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值;获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;基于所述带宽流量,确定所述计算节点的带宽实际值;基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,其中,所述均衡带宽值用于表征所述计算节点处理分布式计算任务的带宽能力。
第二方面,本发明实施例提供一种基于区块链的带宽能力计算装置,所述装置包括:第一获取单元,用于获取区块链***中计算节点所使用的通信网络的带宽测量值;第一确定单元,用于基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值;第二获取单元,用于获取所述计算节点处理分布式计算任务所实际消耗的带宽流量;第二确定单元,用于基于所述带宽流量,确定所述计算节点的带宽实际值;计算单元,用于基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,其中,所述均衡带宽值用于表征所述计算节点处理分布式计算任务的带宽能力。
第三方面,本发明实施例提供一种计算机存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述基于区块链的带宽能力计算方法的步骤。
第四方面,本发明实施例提供一种基于区块链的带宽能力计算设备,所述设备至少包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于区块链的带宽能力计算方法的步骤。
本发明实施例提供的基于区块链的带宽能力计算方法及装置,根据计算节点所使用的通信网络的带宽测量值确定出计算节点的带宽测量值,并根据计算节点处理分布式计算任务所实际消耗的带宽流量后确定出计算节点的带宽实际值,最后,根据计算节点的带宽测量值与计算节点的带宽实际值,就可以计算出计算节点的均衡带宽值。这样,通过均衡带宽值就可以实现确定计算节点处理分布式计算任务的带宽能力。从而,为了鼓励用户积极参与共享计划,共享闲置资源如带宽资源,可以在计算节点基于区块链共享带宽资源后,就可以根据该计算节点处理分布式计算任务的带宽能力,来给计算节点分配相应的通证,如数字货币,进而实现鼓励区块链网络中计算节点的共享带宽资源,能够提高资源利用率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例一中的基于区块链的带宽能力计算方法的流程示意图;
图2为本发明实施例二中的基于区块链的带宽能力计算装置的结构示意图;
图3为本发明实施例三中的基于区块链的带宽能力计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
实施例一
本发明实施例提供一种区块链***,该区块链***包括:任务发布节点、计算节点以及中心节点。各节点基于对等网络(Peer to Peer,P2P)构建。其中,任务发布节点,能够发布分布式计算任务,为索取网络资源的节点;计算节点,能够完成任务发布节点所发布的分布式计算任务,为共享网络资源的节点;中心节点,能够根据计算节点的最大带宽和该计算节点完成分布式任务时所实际消耗的带宽,来确定出计算节点的带宽能力。
这里,分布式计算任务可以为共享CDN(Content Delivery Network,内容分发网络)资源,如去某一URL抓取页面信息,也可以为共享IP(Internet Protocol,互联网协议)资源,如分布式爬虫任务,当然,还可以为其它,这里,本发明实施例不做具体限定。
需要说明的是,上述三类节点实际上都是区块链的节点,只是根据功能的不同而进行了划分,上述三类节点都具有各自的条件,只要满足上述三类节点各自规定的条件,任何一个区块链的节点都能够成为上述三类节点。
结合上述区块链***,本发明实施例提供一种基于区块链的带宽能力计算方法,该基于区块链的带宽能力计算方法的执行主体为区块链***中的中心节点。该基于区块链的带宽能力计算方法可以应用于各种需要计算区块链***中计算节点的带宽能力的场合,如根据计算节点的带宽能力来确定计算节点所应分配的通证(如数字货币)、根据计算节点的带宽能力来选择合适的计算节点来完成分布式计算任务、根据计算节点的带宽能力来给计算节点进行评分等。
那么,图1为本发明实施例一中的基于区块链的带宽能力计算方法的流程示意图,参见图1所示,该基于区块链的带宽能力计算方法包括:
S101:获取区块链***中计算节点所使用的通信网络的带宽测量值;
其中,通信网络的带宽测量值是指通信网络具有的最大带宽。
这里,计算节点所使用的通信网络是指计算节点所连接的用户网络。
S102:基于通信网络的带宽测量值,确定计算节点的带宽测量值;
其中,计算节点的带宽测量值是指计算节点具有的最大带宽,可以指示计算节点处理分布式计算任务的潜在能力。
在具体实施过程中,为了更准确地计算出计算节点的带宽测量值,上述S102可以包括以下步骤:
步骤1021:基于计算节点的IP地址,确定计算节点所使用的通信网络所连接的设备数量;
步骤1022:基于通信网络所连接的设备数量和通信网络的带宽测量值,计算计算节点的带宽测量值。
在实际应用中,当计算节点所使用的通信网络中可以连接有多个设备,每个设备在工作时,必然会消耗通信网络的一部分带宽,而带宽测量值表征的是计算节点的最大带宽,那么,为了更准确地计算计算节点,可以根据计算节点所使用的通信网络所连接的设备数量和通信网络的带宽测量值,来计算出计算节点的带宽测量值。
在具体实施过程中,上述步骤1022可以包括以下步骤:
步骤1022a:基于通信网络所连接的设备数量,确定折算系数;
步骤1022b:基于折算系数和通信网络的带宽测量值,计算计算节点的带宽测量值。
首先,介绍如何确定计算系数。
在具体实施过程中,根据所采用的策略的不同,根据通信网络所连接的设备数量,确定折算系数的具体实现方式至少可以包括以下三种:
第一种方式,通过预设公式来计算折算系数值。
在具体实施过程中,上述步骤1022a可以包括:计算以第一预设值为底,设备总数的对数,获得第一值;将第一值与第二预设值求和,获得第二值;将第三预设值除以第二值的商,确定为折算系数。
具体来说,当中心节点通过上述步骤1021获得了计算节点所使用的通信网络中所连接的设备数量后,就可以通过如下的公式(1),来计算出折算系数。
Figure BDA0001658355590000051
在公式(1)中,λ表示折算系数,E表示计算节点所使用的通信网络中所连接的设备数量,a为第一预设值,b为第二预设值,c为第三预设值,其中,a>0且a≠1。
这里,在实际应用中,a、b、c为本领域技术人员根据区块链***中计算节点处理分布式计算任务的情况所设置的经验值,由本领域技术人员自行设定。在区块链***建设前期,计算节点处理的分布式计算任务较少,此时,需要较大的折算系数。示例性地,在区块链***建设前期,可以将b、c均设定为1,在中后期可以再根据计算节点处理分布式计算任务的情况来进行调整。
示例性地,当第二预设值与第三预设值均设置为1时,上述预设公式可以为公式(2)。
Figure BDA0001658355590000061
在公式(2)中,λ表示折算系数,E表示计算节点所使用的通信网络中所连接的设备数量。
第二种方式,通过查表方式来获取折算系数值。
具体来说,在中心节点中存储有设备数量与折算系数之间的映射表,也就是说,中心节点可以预先将设备数量以一定间隔划分为几档,各档设备数量对应不同的折算系数值,每一档中所包含的所有设备数量对应相同的折算系数值,这样,当中心节点通过上述步骤1021获得了计算节点所使用的通信网络中所连接的设备数量后,就可以查找该映射表,来确定出与通信网络所连接的设备数量对应的第一折算系数值。
举例来说,如表1所示,当设备数量为5时,该设备数量所对应的折算系数值为0.9。
设备数量 折算系数
0~10 0.9
10~20 0.7
20~30 0.5
30~40 0.3
表1
当然,设备数量与折算系数之间的映射表还可以为其它形式和其它取值,本领域技术人员可自行设定,本发明不做具体限定。
第三种方式,直接将通信网络所连接的设备数量的导数,确定为折算系数值。
当然,还可以通过其它方式来确定折算系数。
其次,介绍如何确定计算节点的带宽测量值。
在具体实施过程中,上述步骤1022b可以包括:将折算系数和通信网络的带宽测量值相乘,获得第三值;将第三值与第四预设值的和的自然对数,确定为计算节点的带宽测量值。
具体来说,当中心节点通过上述步骤101获得了计算节点所使用的通信网络的带宽测量值,并通过步骤1022a获得了折算系数后,就可以通过如下的公式(3),来计算出计算节点的带宽测量值。
D=ln(d+λ×A) 公式(3)
在公式(3)中,λ表示折算系数,A表示计算节点所使用的通信网络的带宽测量值(单位为:Mb/s),d为第四预设值,ln(·)表示自然对数,D表示计算节点的带宽测量值(单位为:Mb/s)。
这里,在实际应用中,d为本领域技术人员根据区块链***中计算节点处理分布式计算任务的情况所设置的经验值,由本领域技术人员自行设定。示例性地,在区块链***建设前期,可以将d设定为1,在中后期可以再根据计算节点处理分布式计算任务的情况来进行调整。
示例性地,当第二预设值、第三预设值以及第四预设值设置为1时,可以获得如下公式(4)所示的计算出计算节点的带宽测量值D
Figure BDA0001658355590000071
在公式(4)中,A表示计算节点所使用的通信网络的带宽测量值(单位为:Mb/s),E表示计算节点所使用的通信网络中所连接的设备数量,a为第一预设值,其中,a>0且a≠1,ln(·)表示自然对数,D表示计算节点的带宽测量值(单位为:Mb/s)。
S103:获取计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;
在具体实施过程中,中心节点获取计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量的方法,存在但不限于以下两种情况:
第一种情况,获取计算节点在一定周期(例如一天、预设时长)内处理的所有任务所消耗的带宽流量和。
在具体实施过程中,上述S103可以包括:获取计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量。
具体来说,为了获取计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量,上述S103还可以包括:针对预设时长内的每一个分布式计算任务,至少基于计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量中的一个,确定计算节点处理每一个分布式任务所消耗的带宽流量;将每一个分布式任务对应的带宽流量求和,获得总带宽流量。
具体来说,当任务发布节点发布了分布式计算任务,计算节点完成了该分布式计算任务后,首先,计算节点会将该计算节点处理任务所消耗的第一带宽流量写入到区块链中,以广播给区块链***中的其它节点,接下来,任务发布节点也会根据自己所使用的计算节点的带宽流量,向区块链中写入计算节点处理任务所消耗的第二带宽流量,以广播给区块链***中的其它节点。这样,中心节点就可以获得计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量。
因此,在一定程度上,由于第一带宽流量和第二带宽流量均能表示计算节点处理任务所消耗的带宽流量,那么,为了加快计算速度,当中心节点仅仅获得计算节点所广播的第一带宽流量时,中心节点就可以将第一带宽流量确定为该计算节点处理分布式任务所消耗的带宽流量;同样地,当中心节点仅仅获得任务发布节点所广播的第二带宽流量时,中心节点也可以将第二带宽流量确定为该计算节点处理分布式任务所消耗的带宽流量。
此外,在中心节点单独获得计算节点所广播的第一带宽流量或者任务发布节点所广播的第二带宽流量时,中心节点是无法确定第一带宽流量和该第二带宽流量是否真实可信的,因此,为了更准确地确定计算节点处理每一个分布式任务所消耗的带宽流量,中心节点需要同时获取计算节点所广播的第一带宽流量和任务发布节点所广播的第二带宽流量中。
示例性地,当第一带宽流量与第二带宽流量相同时,中心节点将第一带宽流量与第二带宽流量中的任一个,确定为计算节点处理分布式任务所消耗的带宽流量。当第一带宽流量与第二带宽流量不相同时,可以将第一带宽流量和第二带宽流量的均值确定为计算节点处理分布式任务所消耗的带宽流量,也可以将第一带宽流量和第二带宽流量之中较小的一个确定为计算节点处理分布式任务所消耗的带宽流量。
第二种情况,获取计算节点处理单个分布式计算任务所消耗的带宽流量。
S104:基于带宽流量,确定计算节点的带宽实际值;
其中,计算节点的带宽实际值是指计算节点处理分布式计算任务所实际消耗的带宽,可以指示计算节点历史处理分布式计算任务的实际能力。
在实际应用中,计算节点的带宽实际值可以是计算节点处理单个分布式计算任务所消耗的带宽,也可以是计算节点在一定周期(例如一天、预设时长)内处理的所有分布式计算任务所消耗的带宽。
下面以计算节点的带宽实际值是计算节点在预设时长内处理的所有分布式计算任务所消耗的带宽为例,来说明中心节点如何确定计算节点的带宽实际值。
在具体实施过程中,上述S104可以包括:将总带宽流量除以预设时长的商与第五预设值的和的自然对数,确定为计算节点的带宽实际值。
具体来说,当中心节点通过上述步骤103获得了计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量后,就可以通过如下的公式(5),来计算出计算节点的带宽实际值。
Figure BDA0001658355590000091
在公式(5)中,B表示计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量(单位为Mb),T表示预设时长(单位为:s),e为第五预设值,ln(·)表示自然对数,D表示计算节点的带宽实际值(单位为:Mb/s)。
这里,在实际应用中,e为本领域技术人员根据区块链***中计算节点处理分布式计算任务的情况所设置的经验值,由本领域技术人员自行设定。示例性地,在区块链***建设前期,可以将e设定为1,在中后期可以再根据计算节点处理分布式计算任务的情况来进行调整。
S105:基于计算节点的带宽测量值与计算节点的带宽实际值,计算计算节点的均衡带宽值。
其中,均衡带宽值用于表征计算节点处理分布式计算任务的带宽能力,换言之,该均衡带宽值可以指示该计算节点在处理分布式计算任务时贡献带宽的能力。
在具体实施过程中,可以通过求取计算节点的带宽测量值与计算节点的带宽实际值的加权和的方式来计算出计算节点的均衡带宽值,那么,上述S105可以包括以下步骤:给计算节点的带宽测量值乘以第一权重值,获得第一乘积;给计算节点的带宽实际值乘以第二权重值,获得第二乘积;将第一乘积与第二乘积相加,获得计算节点的均衡带宽值。
具体来说,当中心节点通过上述步骤102获得了计算节点的带宽测量值,并通过上述步骤104获得了计算节点的带宽实际值后,就可以通过如下的公式(6),来计算出计算节点的均衡带宽值。
D=α×D+β×D 公式(6)
在公式(6)中,D表示计算节点的带宽测量值(单位为:Mb/s),α为第一权重值,D表示计算节点的带宽实际值(单位为:Mb/s),β为第二权重值。
在实际应用中,α、β为本领域技术人员根据区块链***中计算节点处理分布式计算任务的情况所设置的经验值,由本领域技术人员自行设定。
由于计算节点的带宽测量值是指计算节点具有的最大带宽,可以指示计算节点处理分布式计算任务的潜在能力,计算节点的带宽实际值是指计算节点处理分布式计算任务所实际消耗的带宽,可以指示计算节点历史处理分布式计算任务的实际能力。在区块链***建设初期,为了激励用户积极参与资源共享,需要给予潜在贡献带宽能力大的计算节点分配更多通证,如数字货币,此时,可以设定为α>β,以使计算节点的带宽测量值所占比重更大。在区块链***建设后期,为保证提供更高质量的共享服务,需要给予历史实际贡献带宽能力大的计算节点分配更多数字货币,此时,可以设定α<β,以使计算节点的带宽实际值所占比重更大。
当然,本领域技术人员还可以每隔一段时间根据计算节点处理分布式计算任务的情况对α、β的取值进行调整,这里,本发明实施例不做具体限定。
本实施例提供的基于区块链的带宽能力计算方法,根据计算节点所使用的通信网络的带宽测量值确定出计算节点的带宽测量值,并根据计算节点处理分布式计算任务所实际消耗的带宽流量后确定出计算节点的带宽实际值,最后,根据计算节点的带宽测量值与带宽实际值,就可以计算出计算节点的均衡带宽值。这样,通过均衡带宽值就可以实现确定计算节点处理分布式计算任务的带宽能力。从而,为了鼓励用户积极参与共享计划,共享闲置资源如带宽资源,可以在计算节点基于区块链共享带宽资源后,就可以根据该计算节点处理分布式计算任务的带宽能力,来给计算节点分配相应的数字货币,进而实现鼓励区块链网络中计算节点的共享带宽资源,能够提高资源利用率。
实施例二
基于同一发明构思,作为对上述方法的实现,本发明实施例提供了一种基于区块链的带宽能力计算装置,该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。
图2为本发明实施例二中的基于区块链的带宽能力计算装置的结构示意图,参见图2所示,该装置20包括:第一获取单元201,用于获取区块链***中计算节点所使用的通信网络的带宽测量值;第一确定单元202,用于基于通信网络的带宽测量值,确定计算节点的带宽测量值;第二获取单元203,用于获取计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;第二确定单元204,用于基于带宽流量,确定计算节点的带宽实际值;计算单元205,用于基于计算节点的带宽测量值与带宽实际值,计算计算节点的均衡带宽值,其中,均衡带宽值用于表征计算节点处理分布式计算任务的带宽能力。
在本发明实施例中,第一确定单元,用于基于计算节点的IP地址,确定计算节点所使用的通信网络所连接的设备数量;基于通信网络所连接的设备数量和通信网络的带宽测量值,计算计算节点的带宽测量值。
在本发明实施例中,第一确定单元,还用于基于设备数量,确定折算系数;基于折算系数和通信网络的带宽测量值,计算计算节点的带宽测量值。
在本发明实施例中,第一确定单元,还用于计算以第一预设值为底,设备总数的对数,获得第一值;将第一值与第二预设值求和,获得第二值;将第三预设值除以第二值的商,确定为折算系数。
在本发明实施例中,第一确定单元,还用于将折算系数和通信网络的带宽测量值相乘,获得第三值;将第三值与第四预设值的和的自然对数,确定为计算节点的带宽测量值。
在本发明实施例中,第二获取单元,还用于获取计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量;第二确定单元,还用于将总带宽流量除以预设时长的商与第五预设值的和的自然对数,确定为计算节点的带宽实际值。
在本发明实施例中,第二获取单元,还用于针对预设时长内的每一个分布式计算任务,至少基于计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量中的一个,确定计算节点处理每一个分布式任务所消耗的带宽流量;将每一个分布式任务对应的带宽流量求和,获得总带宽流量。
在本发明实施例中,计算单元,用于给计算节点的带宽测量值乘以第一权重值,获得第一乘积;给计算节点的带宽实际值乘以第二权重值,获得第二乘积;将第一乘积与第二乘积相加,获得计算节点的均衡带宽值。
在实际应用中,该基于区块链的带宽能力计算装置可应用于硬件设备中。硬件设备可以以各种形式来实施。例如,本发明中描述的硬件设备可以包括诸如平板电脑、笔记本电脑、掌上电脑等移动终端,以及诸如台式计算机、服务器、路由器等固定终端。
实施例三
基于同一发明构思,本发明实施例提供一种基于区块链的带宽能力计算设备。图3为本发明实施例三中的基于区块链的带宽能力计算设备的结构示意图,参见图3所示,该基于区块链的带宽能力计算方法设备30包括:存储器301、处理器302以及存储在存储器301上并可在处理器302上运行的计算机程序303,处理器执行程序303时实现以下步骤:获取区块链***中计算节点所使用的通信网络的带宽测量值;基于通信网络的带宽测量值,确定计算节点的带宽测量值;获取计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;基于带宽流量,确定计算节点的带宽实际值;基于计算节点的带宽测量值与计算节点的带宽实际值,计算计算节点的均衡带宽值,其中,均衡带宽值用于表征计算节点处理分布式计算任务的带宽能力。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:基于计算节点的IP地址,确定计算节点所使用的通信网络所连接的设备数量;基于通信网络所连接的设备数量和通信网络的带宽测量值,计算计算节点的带宽测量值。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:基于设备数量,确定折算系数;基于折算系数和通信网络的带宽测量值,计算计算节点的带宽测量值。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:计算以第一预设值为底,设备总数的对数,获得第一值;将第一值与第二预设值求和,获得第二值;将第三预设值除以第二值的商,确定为折算系数。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:将折算系数和通信网络的带宽测量值相乘,获得第三值;将第三值与第四预设值的和的自然对数,确定为计算节点的带宽测量值。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:获取计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量;将总带宽流量除以预设时长的商与第五预设值的和的自然对数,确定为计算节点的带宽实际值。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:针对预设时长内的每一个分布式计算任务,至少基于计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量中的一个,确定计算节点处理每一个分布式任务所消耗的带宽流量;将每一个分布式任务对应的带宽流量求和,获得总带宽流量。
在本发明实施例中,上述处理器执行程序时还可实现以下步骤:给计算节点的带宽测量值乘以第一权重值,获得第一乘积;给计算节点的带宽实际值乘以第二权重值,获得第二乘积;将第一乘积与第二乘积相加,获得计算节点的均衡带宽值。
上述处理器可由中央处理器(Central Processing Unit,CPU)、微处理器(MicroProcessor Unit,MPU)、数字信号处理器(Digital Signal Processor,DSP)、或现场可编程门阵列(Field Programmable Gate Array,FPGA)等实现。存储器可能包括计算机可读介质中的非永久性存储器,随机存储器(Random Access Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(Flash RAM),存储器包括至少一个存储芯片。
实施例四
基于同一发明构思,本实施例提供一种计算机可读存储介质,上述计算机可读存储介质存储有一个或者多个程序,上述一个或者多个程序可被一个或者多个处理器执行,以实现上述实施例中的基于区块链的带宽能力计算方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,RAM和/或非易失性内存等形式,如ROM或Flash RAM。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机可读存储介质可以是ROM、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是快闪记忆体或其他内存技术、CD-ROM、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息;还可以是包括上述存储器之一或任意组合的各种电子设备,如移动电话、计算机、平板设备、个人数字助理等。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (14)

1.一种基于区块链的带宽能力计算方法,其特征在于,所述方法包括:
获取区块链***中计算节点所使用的通信网络的带宽测量值;
基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值;
获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;
基于所述带宽流量,确定所述计算节点的带宽实际值;
基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,其中,所述均衡带宽值用于表征所述计算节点处理分布式计算任务的带宽能力;
其中,所述基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值,包括:
基于所述计算节点的IP地址,确定所述计算节点所使用的通信网络所连接的设备数量;
基于所述设备数量和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值;
其中,所述基于所述设备数量和所述通信网络的带宽测量值,确定所述计算节点的带宽测量值,包括:
基于所述设备数量,确定折算系数;
基于所述折算系数和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值;
其中,所述基于所述折算系数和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值,包括:
将所述折算系数和所述通信网络的带宽测量值相乘,获得第三值;
将所述第三值与第四预设值的和的自然对数,确定为所述计算节点的带宽测量值;
其中,当中心节点通过上述获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量,获得了计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量后,就能够通过如下的公式,来计算出计算节点的带宽实际值;
Figure FDA0002704787620000011
在公式中,B表示计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量,单位为Mb,T表示预设时长,单位为s,e为第五预设值,ln(g)表示自然对数,D表示计算节点的带宽实际值,单位为Mb/s。
2.根据权利要求1所述的方法,其特征在于,所述基于所述设备数量,确定折算系数,包括:
计算以第一预设值为底,所述设备数量的对数,获得第一值;
将所述第一值与第二预设值求和,获得第二值;
将第三预设值除以所述第二值的商,确定为所述折算系数。
3.根据权利要求1所述的方法,其特征在于,所述基于所述折算系数和所述通信网络的带宽测量值,确定所述计算节点的带宽测量值,包括:
将所述折算系数和所述通信网络的带宽测量值相乘,获得第三值;
将所述第三值与第四预设值的和的自然对数,确定为所述计算节点的带宽测量值。
4.根据权利要求1所述的方法,其特征在于,所述获取所述计算节点处理分布式计算任务所实际消耗的带宽流量,包括:获取所述计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量;
所述基于所述带宽流量,确定所述计算节点的带宽实际值,包括:
将所述总带宽流量除以所述预设时长的商与第五预设值的和的自然对数,确定为所述计算节点的带宽实际值。
5.根据权利要求4所述的方法,其特征在于,所述获取所述计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量,包括:
针对预设时长内的每一个分布式计算任务,至少基于所述计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量中的一个,确定所述计算节点处理每一个分布式任务所消耗的带宽流量;
将所述每一个分布式任务对应的带宽流量求和,获得所述总带宽流量。
6.根据权利要求1所述的方法,其特征在于,所述基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,包括:
给所述计算节点的带宽测量值乘以第一权重值,获得第一乘积;
给所述计算节点的带宽实际值乘以第二权重值,获得第二乘积;
将所述第一乘积与所述第二乘积相加,获得所述计算节点的均衡带宽值。
7.一种基于区块链的带宽能力计算装置,其特征在于,所述装置包括:
第一获取单元,用于获取区块链***中计算节点所使用的通信网络的带宽测量值;
第一确定单元,用于基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值;
第二获取单元,用于获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量;
第二确定单元,用于基于所述带宽流量,确定所述计算节点的带宽实际值;
计算单元,用于基于所述计算节点的带宽测量值与所述计算节点的带宽实际值,计算所述计算节点的均衡带宽值,其中,所述均衡带宽值用于表征所述计算节点处理分布式计算任务的带宽能力
其中,所述基于所述通信网络的带宽测量值,确定所述计算节点的带宽测量值,包括:
基于所述计算节点的IP地址,确定所述计算节点所使用的通信网络所连接的设备数量;
基于所述设备数量和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值;
其中,所述基于所述设备数量和所述通信网络的带宽测量值,确定所述计算节点的带宽测量值,包括:
基于所述设备数量,确定折算系数;
基于所述折算系数和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值;
其中,所述基于所述折算系数和所述通信网络的带宽测量值,计算所述计算节点的带宽测量值,包括:
将所述折算系数和所述通信网络的带宽测量值相乘,获得第三值;
将所述第三值与第四预设值的和的自然对数,确定为所述计算节点的带宽测量值;
其中,当中心节点通过上述获取所述计算节点处理任务发布节点所发布的分布式计算任务所实际消耗的带宽流量,获得了计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量后,就能够通过如下的公式,来计算出计算节点的带宽实际值;
Figure FDA0002704787620000031
在公式中,B表示计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量,单位为Mb,T表示预设时长,单位为s,e为第五预设值,ln(g)表示自然对数,D表示计算节点的带宽实际值,单位为Mb/s。
8.根据权利要求7所述的装置,其特征在于,所述第一确定单元,还用于计算以第一预设值为底,所述设备数量的对数,获得第一值;将所述第一值与第二预设值求和,获得第二值;将第三预设值除以所述第二值的商,确定为所述折算系数。
9.根据权利要求7所述的装置,其特征在于,所述第一确定单元,还用于将所述折算系数和所述通信网络的带宽测量值相乘,获得第三值;将所述第三值与第四预设值的和的自然对数,确定为所述计算节点的带宽测量值。
10.根据权利要求7所述的装置,其特征在于,所述第二获取单元,还用于获取所述计算节点在预设时长内处理分布式计算任务所消耗的总带宽流量;
所述第二确定单元,还用于将所述总带宽流量除以所述预设时长的商与第五预设值的和的自然对数,确定为所述计算节点的带宽实际值。
11.根据权利要求10所述的装置,其特征在于,所述第二获取单元,还用于针对预设时长内的每一个分布式计算任务,至少基于所述计算节点所广播的第一带宽流量和区块链***中任务发布节点所广播的第二带宽流量中的一个,确定所述计算节点处理每一个分布式任务所消耗的带宽流量;将所述每一个分布式任务对应的带宽流量求和,获得所述总带宽流量。
12.根据权利要求7所述的装置,其特征在于,所述计算单元,用于给所述计算节点的带宽测量值乘以第一权重值,获得第一乘积;给所述计算节点的带宽实际值乘以第二权重值,获得第二乘积;将所述第一乘积与所述第二乘积相加,获得所述计算节点的均衡带宽值。
13.一种计算机可读介质,其特征在于,存储计算机程序,所述程序可被处理器执行以实现如权利要求1至6任一项所述的基于区块链的带宽能力计算方法的步骤。
14.一种基于区块链的带宽能力计算设备,其特征在于,所述设备至少包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至6任一项所述的基于区块链的带宽能力计算方法的步骤。
CN201810450624.1A 2018-05-11 2018-05-11 一种基于区块链的带宽能力计算方法及装置 Expired - Fee Related CN108712307B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810450624.1A CN108712307B (zh) 2018-05-11 2018-05-11 一种基于区块链的带宽能力计算方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810450624.1A CN108712307B (zh) 2018-05-11 2018-05-11 一种基于区块链的带宽能力计算方法及装置

Publications (2)

Publication Number Publication Date
CN108712307A CN108712307A (zh) 2018-10-26
CN108712307B true CN108712307B (zh) 2021-01-29

Family

ID=63868027

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810450624.1A Expired - Fee Related CN108712307B (zh) 2018-05-11 2018-05-11 一种基于区块链的带宽能力计算方法及装置

Country Status (1)

Country Link
CN (1) CN108712307B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2579635A (en) * 2018-12-07 2020-07-01 Dragon Infosec Ltd A node testing method and apparatus for a blockchain system
CN109510713A (zh) * 2018-12-29 2019-03-22 杭州趣链科技有限公司 一种基于区块链的流量共享激励方法
CN109871279B (zh) * 2019-03-11 2021-10-01 京东方科技集团股份有限公司 共识任务协调方法及装置、区块链***、存储介质
CN111355630B (zh) * 2020-02-18 2021-07-06 杭州复杂美科技有限公司 一种区块链性能定量分析方法和***、设备及存储介质
CN112269657B (zh) * 2020-10-23 2022-11-11 苏州浪潮智能科技有限公司 一种分布式存储***中节点的带宽均衡控制方法及装置
CN113645087A (zh) * 2021-06-21 2021-11-12 天津津航计算技术研究所 一种VxWorks下网络带宽利用率的计算方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101019355A (zh) * 2004-04-30 2007-08-15 伊姆西公司 存储开关流量带宽控制
CN101753457A (zh) * 2009-12-24 2010-06-23 中国人民解放军理工大学指挥自动化学院 预测因特网端节点间端到端路径可用带宽的方法与***
CN103067524A (zh) * 2013-01-18 2013-04-24 浪潮电子信息产业股份有限公司 一种基于云计算环境的蚁群优化计算资源分配方法
CN103441906A (zh) * 2013-09-25 2013-12-11 哈尔滨工业大学 基于自主计算的代理缓存集群异常检测***
CN104488231A (zh) * 2012-06-01 2015-04-01 欧朋软件爱尔兰有限责任公司 利用按照需求的装置的实时网络监视和订户标识
CN107748693A (zh) * 2017-11-30 2018-03-02 成都启力慧源科技有限公司 云计算环境下的群组虚拟机调度策略
CN107832139A (zh) * 2017-09-26 2018-03-23 上海点融信息科技有限责任公司 用于管理区块链节点的计算资源的方法、设备和***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9641452B2 (en) * 2014-11-25 2017-05-02 Vmware, Inc. Resolving a convex optimization problem to optimize network traffic in a distributed system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101019355A (zh) * 2004-04-30 2007-08-15 伊姆西公司 存储开关流量带宽控制
CN101753457A (zh) * 2009-12-24 2010-06-23 中国人民解放军理工大学指挥自动化学院 预测因特网端节点间端到端路径可用带宽的方法与***
CN104488231A (zh) * 2012-06-01 2015-04-01 欧朋软件爱尔兰有限责任公司 利用按照需求的装置的实时网络监视和订户标识
CN103067524A (zh) * 2013-01-18 2013-04-24 浪潮电子信息产业股份有限公司 一种基于云计算环境的蚁群优化计算资源分配方法
CN103441906A (zh) * 2013-09-25 2013-12-11 哈尔滨工业大学 基于自主计算的代理缓存集群异常检测***
CN107832139A (zh) * 2017-09-26 2018-03-23 上海点融信息科技有限责任公司 用于管理区块链节点的计算资源的方法、设备和***
CN107748693A (zh) * 2017-11-30 2018-03-02 成都启力慧源科技有限公司 云计算环境下的群组虚拟机调度策略

Also Published As

Publication number Publication date
CN108712307A (zh) 2018-10-26

Similar Documents

Publication Publication Date Title
CN108712307B (zh) 一种基于区块链的带宽能力计算方法及装置
CN108712487B (zh) 基于区块链的通证分配方法、装置和设备
KR102499076B1 (ko) 그래프 데이터 기반의 태스크 스케줄링 방법, 디바이스, 저장 매체 및 장치
Fan et al. Cloud/edge computing resource allocation and pricing for mobile blockchain: an iterative greedy and search approach
CN107332902B (zh) 在线客服***的用户请求分配方法、装置和计算设备
Rao et al. QoS guarantees and service differentiation for dynamic cloud applications
US7594016B1 (en) Calculating numbers of servers for tiers of a multi-tiered system
Song et al. An optimization-based scheme for efficient virtual machine placement
ES2837048T3 (es) Método y sistema para asignar recursos a consumidores de recursos en un entorno informático en la nube
Kumar et al. Dynamic load balancing algorithm to minimize the makespan time and utilize the resources effectively in cloud environment
Kang et al. Dynamic scheduling strategy with efficient node availability prediction for handling divisible loads in multi-cloud systems
CN105227489B (zh) 一种带宽管理方法及电子设备
Woo et al. Optimal application allocation on multiple public clouds
US20180176148A1 (en) Method of dynamic resource allocation for public clouds
CN107707612B (zh) 一种负载均衡集群的资源利用率的评估方法及装置
Inoue et al. Power consumption and processing models of servers in computation and storage based applications
CN113159190B (zh) 联邦激励分配方法、装置、计算机设备及存储介质
Gupta et al. Reputation based probabilistic resource allocation for avoiding free riding and formation of common interest groups in unstructured P2P networks
Aazam et al. Broker as a service (baas) pricing and resource estimation model
CN109032800A (zh) 一种负载均衡调度方法、负载均衡器、服务器及***
Miriam et al. Non-dominated Sorting Genetic Algorithm (NSGA-III) for effective resource allocation in cloud
CN107291551B (zh) 一种容器的负载均衡调度方法和装置
Gupta et al. Trust estimation in peer-to-peer network using blue
Nosrati et al. Energy efficient and latency optimized media resource allocation
Zhang et al. Crowd-Funding: a new resource cooperation mode for mobile cloud computing

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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210129

CF01 Termination of patent right due to non-payment of annual fee