基于区块链和智能合约的数据访问系统、方法转让专利
申请号 : CN202010577371.1
文献号 : CN111741000B
文献日 : 2021-06-22
发明人 : 刘江 , 张然 , 黄韬 , 刘韵洁 , 于非 , 杨丹
申请人 : 北京邮电大学
摘要 :
权利要求 :
1.一种基于区块链和智能合约的数据访问系统,其特征在于,包括:多个缓存节点和内容提供服务器,以及设置在移动基站的多个缓存与区块链控制器;其中,缓存节点包括:至少一个设置在移动基站的移动边缘缓存节点和至少一个缓存有内容数据的第一用户终端;
所述内容提供服务器,用于接收第二用户终端发送的包含目标数据标识的数据访问请求;基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定是否有缓存节点缓存有目标数据;若有,则向所述第二用户终端所属的本地基站的缓存与区块链控制器发送智能合约部署请求;
所述缓存与区块链控制器,用于接收所述智能合约部署请求,基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定至少一个目标缓存节点,从目标缓存节点中,确定至少一个智能合约执行节点;并生成智能合约描述,将所述智能合约描述发送至所述智能合约执行节点进行存储;获得智能合约地址,并将所述智能合约地址发送至所述内容提供服务器;所述智能合约描述中携带有付款信息,报酬信息,以及智能合约执行节点信息;
所述智能合约地址为智能合约描述的链接地址;
所述内容提供服务器,还用于将所述智能合约地址发送至所述第二用户终端;
所述第二用户终端,还用于基于所述区块链或智能合约描述,获得目标缓存节点的标识,并将所述智能合约地址发送至所述目标缓存节点;
所述目标缓存节点,用于基于所述智能合约地址获得所述智能合约描述,并向所述第二用户终端发送所述目标数据;
所述第二用户终端,进一步接收所述目标数据,并向所述目标缓存节点发送内容传输收据;
所述目标缓存节点,进一步根据所述智能合约描述中的智能合约执行节点信息,将所述内容传输收据,发送至所述智能合约执行节点;
所述智能合约执行节点,用于从所述第二用户终端获得支付费用,按照所述智能合约描述,分别向所述目标缓存节点、所述内容提供服务器以及所述智能合约执行节点支付相应报酬,以执行智能合约;或者,用于从所述内容提供服务器获得支付费用,按照所述智能合约描述,分别向所述目标缓存节点以及所述智能合约执行节点支付相应报酬,以执行智能合约。
2.根据权利要求1所述的系统,其特征在于,所述缓存与区块链控制器,基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定至少一个目标缓存节点,从目标缓存节点中,确定至少一个智能合约执行节点,包括:
获取各个目标缓存节点存储在区块链中的历史行为数据;根据各个目标缓存节点的所述历史行为数据,确定各个目标缓存节点的可信度;所述可信度用于表征该缓存节点作为智能合约执行节点时,按照智能合约描述执行的概率;
根据各个所述目标缓存节点的可信度,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点,其中一个为主智能合约执行节点,其他为从智能合约执行节点;
所述主智能合约执行节点,具体用于:与各个从智能合约执行节点进行交互,获取各个从智能合约执行节点的交易真实性确认信息,并基于实用拜占庭容错协议,自身的交易真实性确认信息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定是否执行智能合约;如果确定执行,则按照所述智能合约描述,分别向所述目标缓存节点、内容提供服务器以及所述智能合约执行节点支付相应报酬。
3.根据权利要求2所述的系统,其特征在于,所述缓存与区块链控制器,根据各个所述目标缓存节点的可信度,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点,包括:
根据预设表达式,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点,所述预设表达式为:
上式中, 表示所述智能合约执行节点的预设数量, 表示第 个智能合约执行节点的可信度。
4.根据权利要求2所述的系统,其特征在于,所述主智能合约执行节点,进一步在按照所述智能合约描述,分别向所述目标缓存节点、所述内容提供服务器以及所述智能合约执行节点支付相应报酬,以执行智能合约之后,将内容分发记录,转账记录以及各个所述智能合约执行节点对该交易的交易真实性确认信息,发送至区块链共识算法见证节点,所述区块链共识算法见证节点为:从多个缓存节点和内容提供服务器中定时选举出的;
所述区块链共识算法见证节点,用于:将所述内容分发记录、所述转账记录以及各个所述智能合约执行节点对该交易的交易真实性确认信息作为历史行为数据,写入所述区块链的新区块中;
根据所述主智能合约执行节点发送的所述交易真实性确认信息,确定所述新区块中内容是否真实;
如果所述新区块中的内容为真实的,则将所述新区块添加至所述区块链上。
5.根据权利要求1所述的系统,其特征在于,每个移动基站对应多个缓存与区块链控制器;
所述第二用户终端所属的本地基站的缓存与区块链控制器为:从第二用户终端所属的本地基站对应的多个缓存与区块链控制器定时选举出的。
6.根据权利要求1所述的系统,其特征在于,所述缓存与区块链控制器,进一步用于:建立马尔可夫决策过程MDP,所述MDP中包括:预设的状态空间,奖励函数以及动作空间,所述状态空间中的状态所表征的信息中包含各个缓存节点的分享意愿;所述奖励函数包含:各个所述缓存节点,与所述缓存节点向用户终端提供所缓存的内容数据时所产生的流量之间的关系;所述动作空间中的动作表征各个缓存节点与该缓存节点所缓存内容数据的对应关系;所述分享意愿为基于每次用户终端访问数据时缓存节点所获得的报酬与预期报酬之间的关系确定的;
定时获取各个缓存节点在历史访问数据的过程中,所获得的报酬,并基于报酬确定各个缓存节点的新的分享意愿,利用新的分享意愿更新所述状态,获得更新后的状态;
将所述更新后的状态输入预先训练好的深度Q网络DQN中,获得新的动作,所述新的动作表征:各个缓存节点与该缓存节点所缓存内容数据的新的对应关系;向所述缓存节点发送所述新的对应关系,以及更新所述区块链中所存储的对应关系;所述DQN为预先基于样本状态空间、样本奖励函数以及样本动作空间训练得到的;
所述缓存节点还用于根据所述新的对应关系,对该缓存节点所缓存的数据内容进行更新。
7.一种基于区块链和智能合约的数据访问方法,其特征在于,应用于权利要求1‑6任一项所述的基于区块链和智能合约的数据访问系统,所述方法包括:内容提供服务器接收第二用户终端发送的包含目标数据标识的数据访问请求;基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定是否有缓存节点缓存有目标数据;若有,则向所述第二用户终端所属的本地基站的缓存与区块链控制器发送智能合约部署请求;
缓存与区块链控制器接收所述智能合约部署请求,基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定至少一个目标缓存节点,从目标缓存节点中,确定至少一个智能合约执行节点;并生成智能合约描述,将所述智能合约描述发送至所述智能合约执行节点进行存储;获得智能合约地址,并将所述智能合约地址发送至所述内容提供服务器;所述智能合约描述中携带有付款信息,报酬信息,以及智能合约执行节点信息;所述智能合约地址为智能合约描述的链接地址;
内容提供服务器将所述智能合约地址发送至所述第二用户终端;
第二用户终端基于所述区块链或智能合约描述,获得目标缓存节点的标识,并将所述智能合约地址发送至所述目标缓存节点;
目标缓存节点基于所述智能合约地址获得所述智能合约描述,并向所述第二用户终端发送所述目标数据;
所述第二用户终端进一步接收所述目标数据,并向所述目标缓存节点发送内容传输收据;
所述目标缓存节点进一步根据所述智能合约描述中的智能合约执行节点信息,将所述内容传输收据,发送至所述智能合约执行节点;
智能合约执行节点从所述第二用户终端获得支付费用,按照所述智能合约描述,分别向所述目标缓存节点、所述内容提供服务器以及所述智能合约执行节点支付相应报酬,以执行智能合约;或者,从所述内容提供服务器获得支付费用,按照所述智能合约描述,分别向所述目标缓存节点以及所述智能合约执行节点支付相应报酬,以执行智能合约。
8.根据权利要求7所述的方法,其特征在于,所述基于预先存储在区块链中的数据内容与缓存节点的对应关系,确定至少一个目标缓存节点,从目标缓存节点中,确定至少一个智能合约执行节点的步骤,包括:
获取各个目标缓存节点存储在区块链中的历史行为数据;根据各个目标缓存节点的所述历史行为数据,确定各个目标缓存节点的可信度;所述可信度用于表征该缓存节点作为智能合约执行节点时,按照智能合约描述执行的概率;
根据各个所述目标缓存节点的可信度,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点,其中一个为主智能合约执行节点,其他为从智能合约执行节点;
所述分别向所述目标缓存节点、所述内容提供服务器以及所述智能合约执行节点支付相应报酬,以执行智能合约的步骤,包括:主智能合约执行节点与各个从智能合约执行节点进行交互,获取各个从智能合约执行节点的交易真实性确认信息,并基于实用拜占庭容错协议,自身的交易真实性确认信息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定是否执行智能合约;如果确定执行,则按照所述智能合约描述,分别向所述目标缓存节点、内容提供服务器以及所述智能合约执行节点支付相应报酬。
9.根据权利要求8所述的方法,其特征在于,所述缓存与区块链控制器,根据各个所述目标缓存节点的可信度,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点的步骤,包括:
所述缓存与区块链控制器,根据预设表达式,从各个目标缓存节点中选择多个缓存节点作为智能合约执行节点,所述预设表达式为:上式中, 表示所述智能合约执行节点的预设数量, 表示第 个智能合约执行节点的可信度。
说明书 :
基于区块链和智能合约的数据访问系统、方法
技术领域
背景技术
研究与部署。
户终端和一个调度服务器110,调度服务器中存储有每个用户终端与所缓存的内容的对应
关系。例如:当用户终端1需要访问内容时,首先向调度服务器110发送一个访问请求,调度
服务器110将缓存待访问内容的用户终端2的信息发送给用户终端1,用户终端1向缓存有待
访问内容的用户终端2支付相应积分,用户终端2获得该积分后,将待访问内容发送给用户
终端1。
容发送给请求的用户终端。因此,在整个访问过程中,缺少集中的管控与调度。
发明内容
其中,缓存节点包括:至少一个设置在移动基站的移动边缘缓存节点和至少一个缓存有内
容数据的第一用户终端;
缓存有目标数据;若有,则向所述第二用户终端所属的本地基站的缓存与区块链控制器发
送智能合约部署请求;
中,确定至少一个智能合约执行节点;并生成智能合约描述,将所述智能合约描述发送至所
述智能合约执行节点进行存储;获得智能合约地址,并将所述智能合约地址发送至所述内
容提供服务器;所述智能合约描述中携带有付款信息,报酬信息,以及智能合约执行节点信
息;所述智能合约地址为智能合约描述的链接地址;
付相应报酬,以执行智能合约;或者,用于从所述内容提供服务器获得支付费用,按照所述
智能合约描述,分别向所述目标缓存节点以及所述智能合约执行节点支付相应报酬,以执
行智能合约。
执行节点,包括:
作为智能合约执行节点时,按照智能合约描述执行的概率;
易真实性确认信息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定是否
执行智能合约;如果确定执行,则按照所述智能合约描述,分别向所述目标缓存节点、内容
提供服务器以及所述智能合约执行节点支付相应报酬。
能合约之后,将内容分发记录,转账记录以及各个所述智能合约执行节点对该交易的交易
真实性确认信息,发送至区块链共识算法见证节点,所述区块链共识算法见证节点为:从多
个缓存节点和内容提供服务器中定时选举出的;
中;
缓存节点,与所述缓存节点向用户终端提供所缓存的内容数据时所产生的流量之间的关
系;所述动作空间中的动作表征各个缓存节点与该缓存节点所缓存内容数据的对应关系;
所述分享意愿为基于每次用户终端访问数据时缓存节点所获得的报酬与预期报酬之间的
关系确定的;
述新的对应关系,以及更新所述区块链中所存储的对应关系;所述DQN为预先基于样本状态
空间、样本奖励函数以及样本动作空间训练得到的;
存节点和内容提供服务器,以及设置在移动基站的多个缓存与区块链控制器;其中,缓存节
点包括:至少一个设置在移动基站的移动边缘缓存节点和至少一个缓存有内容数据的第一
用户终端;
有目标数据;若有,则向所述第二用户终端所属的本地基站的缓存与区块链控制器发送智
能合约部署请求;
定至少一个智能合约执行节点;并生成智能合约描述,将所述智能合约描述发送至所述智
能合约执行节点进行存储;获得智能合约地址,并将所述智能合约地址发送至所述内容提
供服务器;所述智能合约描述中携带有付款信息,报酬信息,以及智能合约执行节点信息;
所述智能合约地址为智能合约描述的链接地址;
应报酬,以执行智能合约;或者,从所述内容提供服务器获得支付费用,按照所述智能合约
描述,分别向所述目标缓存节点以及所述智能合约执行节点支付相应报酬,以执行智能合
约。
移动边缘缓存节点,第二用户终端所属的本地基站的缓存与区块链控制器为:从第二用户
终端所属的本地基站对应的多个缓存与区块链控制器定时选举出的。
中,确定至少一个智能合约执行节点;生成智能合约描述,并将所述智能合约描述发送至所
述智能合约执行节点进行存储,获得智能合约地址,并将所述智能合约地址发送至所述内
容提供服务器;目标缓存提供者向第二用户终端发送目标数据,并接收用户终端发送的内
容传输收据,在智能合约执行节点接收到内容传输收据后,向目标缓存提供者、内容提供服
务器以及智能合约执行节点支付相应报酬。在本发明实施例中,每一次用户访问内容数据
的过程中,均由缓存与区块链控制器统一管理与调度。
附图说明
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的实施例。
具体实施方式
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
块链控制器260;其中,缓存节点包括:至少一个设置在移动基站270的移动边缘缓存节点
250和至少一个缓存有内容数据的第一用户终端210。
络与移动基站通信连接,移动基站可以为蜂窝网基站。
控制下,通过D2D(Device‑to‑Device,设备到设备)链路互相通信连接。
存数据内容的服务器。如图2所示,至少一个第一用户终端之间互相通信连接,且至少一个
第一用户终端可以通过无线接入点240与移动基站连接。因此,第一用户终端和移动边缘缓
存节点均可以用于缓存内容提供服务器所提供的内容数据。因此,能够充分利用整个基于
区块链和智能合约的数据访问系统中的缓存资源,避免缓存资源的浪费。
缓存有目标数据;若有,则向第二用户终端所属的本地基站的缓存与区块链控制器发送智
能合约部署请求。
据内容与缓存节点的对应关系。内容提供服务器可以通过与缓存节点交互,获取该对应关
系,并根据该对应关系,确定是否有缓存节点缓存有目标数据。
如,按照实际需求,一个城市中多个不同区域分别部署一个移动基站。其中,与第二用户终
端通过无线接入点240通信连接的移动基站为本地基站。因此,在确定缓存节点中缓存有目
标数据之后,则可以向第二用户终端所属的本地基站的缓存与区块链控制器发送智能合约
部署请求,以减少消耗的网络流量,进而减小数据访问过程中的成本,而且还能够提高访问
数据内容的速度。
少一个智能合约执行节点;并生成智能合约描述,将智能合约描述发送至智能合约执行节
点进行存储;获得智能合约地址,并将智能合约地址发送至内容提供服务器;智能合约描述
中携带有付款信息,报酬信息,以及智能合约执行节点信息;智能合约地址为智能合约描述
的链接地址。
节点中;也可以将一个数据内容分别缓存至不同的缓存节点中,这些缓存节点可以为位于
不同移动基站中的移动边缘缓存节点,或者第一用户终端。
数量,以及各个目标缓存节点的标识。缓存与区块链控制器可以从至少一个目标缓存节点
中确定至少一个智能合约节点,即,从至少一个目标缓存节点中选择预设数量个目标缓存
节点作为智能合约执行节点。
要支付的费用。报酬信息包括:缓存节点提供缓存服务所应该获得的报酬,内容提供服务器
提供目标内容应该获得的报酬,以及智能合约执行节点执行智能合约应该获得的报酬。或
者,付款信息为内容提供服务器需要支付的费用,相应地,报酬信息包括:缓存节点提供缓
存服务所应该获得的报酬,以及智能合约执行节点执行智能合约应该获得的报酬。
执行,并向缓存与区块链控制器返回一个智能合约描述地址,该智能合约描述地址为智能
合约描述的链接地址,例如,智能合约描述地址可以为URL(Uniform Resource Locator,统
一资源定位符)。缓存与区块链控制器将智能合约描述第一发送至内容提供服务器。
链中的数据内容与缓存节点的对应关系,获得目标缓存节点的标识,并将智能合约地址发
送至目标缓存节点。此处需要说明的是,如果有多个目标缓存节点时,优先选择由位于本地
网络中的目标缓存节点提供服务,即,第二用户终端将智能合约地址发送至位于本地网络
中的目标缓存节点中,也即,发送给位于本地基站中的移动边缘缓存节点,或者与第二用户
终端通过 D2D通信连接的第一用户终端。
目标数据。
节点的标识。当目标缓存节点接收到内容传输收据,表明第二用户终端已成功接收目标数
据。当所接收到的内容传输收据的数量,与发送目标数据的次数相同时,或者接收到的内容
传输收据为目标缓存节点最后一次发送的目标数据对应的内容传输收据,则表明第二用户
终端已全部接收目标数据。
或者,用于从内容提供服务器获得支付费用,按照智能合约描述,分别向目标缓存节点以及
智能合约执行节点支付相应报酬,以执行智能合约。
节点支付相应报酬,以执行智能合约。
付相应报酬,以执行智能合约。
合约执行节点;生成智能合约描述,并将所述智能合约描述发送至所述智能合约执行节点
进行存储,获得智能合约地址,并将所述智能合约地址发送至所述内容提供服务器;目标缓
存提供者向第二用户终端发送目标数据,并接收用户终端发送的内容传输收据,在智能合
约执行节点接收到内容传输收据后,向目标缓存提供者、内容提供服务器以及智能合约执
行节点支付相应报酬。在本发明实施例中,每一次用户访问数据的过程中,均由缓存与区块
链控制器统一管理与调度。
点中,确定至少一个智能合约执行节点,包括:
合约执行节点时,按照智能合约描述执行的概率。
约执行节点时的交易真实性确认信息,以及内容分发记录和转账记录。其中交易真实性确
认信息为是否同意按照智能合约执行智能合约。
内容分发记录中存在目标缓存节点向第二用户终端发送目标数据,智能合约执行节点应该
执行智能合约向目标缓存节点发送报酬。此时,查看智能合约执行节点的交易真实性确认
信息,如果该智能合约执行节点是同意执行,那么该智能合约执行节点的可信度升高,反
之,则下降。可以根据每个智能合约执行节点参与的交易中,内容分发记录中是否分发内
容,与交易真实性确认信息相一致的次数,与总参与次数之间的比值,确定该智能合约执行
节点的可信度。
最大的多个缓存节点作为智能合约执行节点。智能合约执行节点的数量可以为预设数值,
因此,可以从各个目标节点中选择预设数值和缓存节点作为智能合约执行节点。
执行节点。
实性确认信息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定是否执行
智能合约;如果确定执行,则按照智能合约描述,分别向目标缓存节点、内容提供服务器以
及智能合约执行节点支付相应报酬。
执行节点从目标缓存节点获得内容传输收据,并将内容传输数据发送至多个从智能合约执
行节点,各个智能合约执行节点对根据内容传输收据确定交易真实性确认信息,该交易真
实性确认信息可以表征智能合约执行节点是否确认执行智能合约。
以及各个从智能合约执行节点发送的交易真实性确认信息,是否同意执行智能合约。具体
过程可以为:统计同意执行智能合约的智能合约执行节点的第一数量;利用预设的计算式
计算最少同意执行智能合约的执行节点的第二数量,其中N为智能合约执行节点的数
量;判断第一数量是否大于或等于第二数量;如果是,则主智能合约执行节点执行智能合
约。如果否,则主智能合约执行节点不执行智能合约。
的智能合约执行节点的可信度高,智能合约的执行准确性也高。此外,主智能合约执行节点
获取各个从智能合约执行节点的交易真实性确认信息,并基于实用拜占庭容错协议,自身
的交易真实性确认信息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定
是否执行智能合约。因此,可以在一定程度上避免当其中一个智能合约执行节点因被黑客
攻击或者其他原因导致对是否同意执行智能合约做出错误决定,进而导致缓存节点在提供
缓存服务后无法得到相应报酬的情况。
代入预设表达式中,判断是否满足预设表达式,如果满足,则可以将该预设数量个目标缓存
节点作为智能合约执行节点。
以执行智能合约之后,将内容分发记录,转账记录以及各个智能合约执行节点对该交易的
交易真实性确认信息,发送至区块链共识算法见证节点,该区块链共识算法见证节点为:从
多个缓存节点和内容提供服务器中定时选举出的。
见证节点。其中内容分发记录中可以包含:在第二用户终端访问目标数据的过程中,提供目
标缓存节点的标识,该标识例如可以为ID (Identity document,身份证标识号)。转账记录
中可以包含:代币输入账户、代币输入数量以及输入代币的ID。其中代币可以表示费用,当
由第二用户终端支付费用时,则输入代币账户可以为该第二用户终端的支付账户。代币输
入数量表示支付的费用,输入代币的ID表示该条交易记录的标识。转账记录中还可以包括:
代币输出账户、代币输出数量以及输出代币的ID。当由内容提供服务器、缓存节点以及智能
合约执行节点接收报酬时,则输出代币账户可以为内容提供服务器、缓存节点以及智能合
约执行节点的收款账户。代币输出数量表示支付的费用,输出代币的ID表示该条交易记录
的标识。
提供服务器作为区块链共识算法见证节点时的历史行为,从多个缓存节点和内容提供服务
器中选举多个节点,作为区块链共识算法见证节点。具体选举过程可以为:缓存节点按照区
块链区块中所存储的内容分发记录,判断是否有为第二用户终端提供目标数据,但是区块
链中并未存储该次交易记录的情况,并以此对多个缓存节点和内容提供服务器进行选举。
内容服务提供者也可以采用判断是否存在第二用户访问数据内容,但是区块链中并未存储
该次交易的情况,并据此对多个缓存节点和内容提供服务器进行选举。
酬时,可以预先从区块链获取目标缓存节点对应的账户,并向该账户支付相应报酬。
可以如表1所示。其中新区块中包括:版本号、区块高度、时间戳、父块哈希值、交易数量、
Merkel根、内容服务列表以及内容代币交易记录区。其中内容服务列表中包括:第二用户终
端访问的目标数据标识,以及缓存该目标数据的缓存节点的标识。
智能合约。
预设的计算式 计算最少同意执行智能合约的执行节点的第二数量,其中N为智能合约
执行节点的数量;判断第一数量是否大于或等于第二数量;如果是,则区块链共识算法见证
节点确认新区块中的内容是真实的。如果否,则区块链共识算法见证节点确认新区块中的
内容是不真实的。
法见证节点的数量)个区块之后,则新区块的内容将不可修改。
访问数据的过程中,各个缓存与区块链控制器是否及时响应访问请求,以及是否及时从缓
存节点中获得目标数据,并以此为依据从多个缓存与区块链控制器中选择一个控制器。移
动边缘缓存节点可以根据第二用户终端在历史访问数据的过程中,在向第二用户终端提供
了目标数据之后,是否收到了预期的报酬,并以此为依据从多个缓存与区块链控制器中选
择一个控制器。内容提供服务器可以根据在每一次用户历史访问数据的过程中,是否获得
预期的报酬,并以此为依据从多个缓存与区块链控制器中选择一个控制器。
所属的本地基站的缓存与区块链控制器。
史处理能力较好的缓存与区块链控制器。
分享意愿;奖励函数包含:各个缓存节点,与缓存节点向用户终端提供所缓存的内容数据时
所产生的流量之间的关系;动作空间中的动作表征各个缓存节点与该缓存节点所缓存内容
数据的对应关系;分享意愿为基于每次用户终端访问数据时缓存节点所获得的报酬与预期
报酬之间的关系确定的。
间隔内的请求频率;各个第二用户终端对不同内容数据的偏好程度,缓存与区块链控制器
可以获取各个第二用户终端的历史访问记录,并根据历史访问记录中的目标数据标识,以
及预设的各个不同类型目标数据对应的偏好程度,综合确定各个第二用户终端对各不同类
型的数据内容的偏好程度;各个第二用户终端历史访问数据内容的大小;每个内容数据对
应的分发报酬;从网络控制器中获取各个第二用户终端之间的链路信息,并根据链路信息
确定第二用户终端与其他第二用户终端之间的网络连通性,如果连通,网络连通性则为1,
如果不连通,网络连通性则为0;以及各个缓存节点的可用缓存空间,该可用缓存空间可以
从各个缓存节点中获取。
状态,获得更新后的状态。
得的总报酬。接着可以基于上一个分享意愿,以及本次对应的报酬,确定新的分享意愿,上
一个分享意愿可以指,上一次获取各个缓存节点在历史访问数据的过程中所获得的报酬的
时刻所得到的分享意愿。
酬等于预设报酬时,分享意愿不变;当报酬小于预期报酬时,分享意愿降低。另外,还可以预
先设置获得的报酬之差与分享意愿增加值之间的对应关系,根据所获得的报酬与预期报酬
之差,查找该对应关系,即可得到分享意愿增加值,进而得到新的分享意愿。在得到新的分
享意愿之后,可以利用新的分享意愿更新状态,得到更新后的状态,即,更新后的状态中的
分享意愿为新的分享意愿。
所缓存内容数据的新的对应关系;向缓存节点发送新的对应关系,以及更新区块链中所存
储的对应关系;DQN为预先基于样本状态空间、样本奖励函数以及样本动作空间训练得到
的。
的对应关系之后,可以向缓存节点发送新的对应关系,以及更新区块链中所存储的对应关
系。
终端提供所缓存的内容数据时所产生的流量之间的关系。
基于当前迭代过程中缓存节点为位于本地基站内的第二用户终端提供内容数据时所产生
的流量计算状态‑动作值,并用状态‑动作值计算策略DQN的新的网络参数。在这个过程中,
缓存节点的分享意愿影响到缓存节点提供缓存服务所产生的流量,而缓存节点的分享意愿
与缓存节点所获得的报酬相关;因此,训练完成的DQN可以根据缓存节点所获得的报酬确定
新的动作,即,可以基于各个缓存节点的分享意愿确定新的动作,并将内容数据优先分配给
分享意愿较低的缓存节点进行缓存。
新的对应关系中需要缓存在本缓存节点的、但是目前并未缓存的数据内容,若是,则向内容
提供服务器发送获取数据内容的请求,由内容提供服务器将该数据内容发送至缓存节点进
行缓存。
获得的报酬。此外,缓存与区块链控制器还可以根据第二用户终端对不同内容数据的偏好
程度,在确定对应关系的过程中,将第二用户终端比较偏好的内容数据优先缓存至与该第
二用户终端通过D2D链路互相通信连接的第一用户终端,或者第二用户终端所属的本地基
站的移动便于缓存节点中,以提高第二用户终端对目标数据的访问速度。
置在移动基站的多个缓存与区块链控制器;其中,缓存节点包括:至少一个设置在移动基站
的移动边缘缓存节点和至少一个缓存有内容数据的第一用户终端。
存有目标数据。
少一个智能合约执行节点;并生成智能合约描述。
述的链接地址。
合约执行节点;生成智能合约描述,并将所述智能合约描述发送至所述智能合约执行节点
进行存储,获得智能合约地址,并将所述智能合约地址发送至所述内容提供服务器;目标缓
存提供者向第二用户终端发送目标数据,并接收用户终端发送的内容传输收据,在智能合
约执行节点接收到内容传输收据后,向目标缓存提供者、内容提供服务器以及智能合约执
行节点支付相应报酬。在本发明实施例中,每一次用户访问数据的过程中,均由缓存与区块
链控制器统一管理与调度。
行节点的步骤,包括:
合约执行节点时,按照智能合约描述执行的概率。
息,以及各个从智能合约执行节点发送的交易真实性确认信息,确定是否执行智能合约;如
果确定执行,则按照智能合约描述,分别向目标缓存节点、内容提供服务器以及智能合约执
行节点支付相应报酬。
示,本发明实施例提供的基于区块链和智能合约的数据访问方法还可以包括:
证节点为:从多个缓存节点和内容提供服务器中定时选举出的。
含:各个缓存节点,与缓存节点向用户终端提供所缓存的内容数据时所产生的流量之间的
关系;动作空间中的动作表征各个缓存节点与该缓存节点所缓存内容数据的对应关系;分
享意愿为基于每次用户终端访问数据时缓存节点所获得的报酬与预期报酬之间的关系确
定的。
先基于样本状态空间、样本奖励函数以及样本动作空间训练得到的。
第二用户终端所属的本地基站的缓存与区块链控制器为:从第二用户终端所属的本地基站
对应的多个缓存与区块链控制器定时选举出的。
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或
部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计
算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质
中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机
指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字
用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或
数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者
是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以
是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘
Solid State Disk(SSD))等。
在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要
素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在
包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例
的部分说明即可。