区块链业务服务器数据异常检测方法、设备及区块链系统与流程

文档序号:15394539发布日期:2018-09-08 01:52阅读:253来源:国知局

本发明涉及区块链技术领域,尤其涉及一种区块链业务服务器数据异常检测方法、设备及区块链系统。



背景技术:

区块链技术的核心是一个分布式账本技术,是一种通过去中心化、去信任的方式集体维护一个可靠数据库的技术方案。目前区块链技术由以比特币为主的1.0版本向智能合约2.0版本演进,成为非常有潜力应用于各个行业的新技术。区块链的技术特点具有很强的两面性:其开放性、共识性、去中心化合和去信任的特点使得区块链具有很强的鲁棒性和公开透明性,但因为原有的区块链系统中每一个服务器节点都存储有区块链系统中所有用户的交易信息和财产信息,而且因为区块链系统中的数据变动是不可修改同时区块链用户信息时保密的无法追踪,所以一旦区块链的整个系统遭遇黑客网络袭击和网络勒索,区块链系统本身是无法保障财产的追回和犯罪分子的定位的。例如基于区块链技术建设的比特币交易平台bitfinex在2016年被盗12万比特币,而由于区块链技术本身的缺陷该交易平台无法溯源和追踪黑客,只能由用户平摊损失。



技术实现要素:

本发明的实施例提供一种区块链业务服务器数据异常检测方法、设备及区块链系统,能够建立一种可以检测自身故障的区块链系统,避免区块链用户遭受损失。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,提供一种区块链系统中区块链业务服务的数据异常检测方法,包括:

区块链核心服务器通过区块链核心服务器连接的核心sdn路由器获取至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成,并通过各自连接的业务sdn路由器发送至与至少一个区块链业务数据中的地址数据对应的sdn路由器以及区块链核心服务器连接的核心sdn路由器;

区块链核心服务器根据获取到的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;

当区块链核心服务器确定目标区块链业务服务器存在数据异常时,经由区块链核心服务器连接的核心sdn路由器和sdn控制器连接的控制sdn路由器发送与数据异常对应的处理指令给sdn控制器;目标区块链业务服务器为至少一个区块链业务服务器中任一区块链业务服务器;

sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器;

目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置。

可选的,任一区块链业务服务器连接的业务sdn路由器在发送区块链业务数据之前,还包括:任一区块链业务服务器连接的业务sdn路由器给区块链业务数据设置预设标签,以使接收区块链业务数据的业务sdn路由器或核心sdn路由器识别并获取区块链业务数据。

可选的,目标区块链业务服务器的数据异常至少包括:目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符、目标区块链业务服务器发布非法信息和目标区块链业务服务器生成的区块链业务数据的数量超过预设标准;

处理指令至少为以下各项中一种:第一处理指令、第二处理指令和第三处理指令;目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符对应第一处理指令,目标区块链业务服务器发布非法信息对应第二处理指令,目标区块链业务服务器区块链业务数据的数量超过预设标准对应第三处理指令。

可选的,sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器包括:

当sdn控制器接收到第一处理指令时生成路由器防火墙配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器防火墙配置参数给目标区块链业务服务器连接的业务sdn路由器;

当sdn控制器接收到第二处理指令时生成路由器端口配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器端口配置参数给目标区块链业务服务器连接的业务sdn路由器;

当sdn控制器接收到第三处理指令时生成路由器带宽配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器带宽配置参数给目标区块链业务服务器连接的业务sdn路由器。

进一步可选的,目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置包括:目标区块链业务服务器连接的业务sdn路由器根据路由器防火墙配置参数更新自身的防火墙配置;目标区块链业务服务器连接的业务sdn路由器根据路由器端口配置参数关闭发布非法信息的端口;目标区块链业务服务器连接的业务sdn路由器根据路由器带宽配置参数调整数据发送的可用带宽。

可选的,当有新的区块链业务服务器加入区块链系统时,该方法还包括:sdn控制器通过sdn控制器连接的控制sdn路由器接收新的区块链业务服务器通过其连接的业务sdn路由器发送的对接指令以完成对接,对接指令中携带新的区块链业务服务器的地址数据;

区块链核心服务器将自身存储的区块链系统中所有区块链业务服务器的区块链业务数据和地址数据经由区块链核心服务器连接的核心sdn路由器和新的区块链业务服务器连接的业务sdn路由器发送给新的区块链业务服务器;

区块链核心服务器在新的区块链业务服务器连接的业务sdn路由器与sdn控制器完成对接后,通过区块链核心服务器连接的核心sdn路由器获取新的区块链业务服务器生成并通过自身连接的业务sdn路由器发送的区块链业务数据。

第二方面,提供一种区块链核心服务器,包括:获取模块、处理模块和发送模块;

获取模块用于获取与区块链核心服务器连接的核心sdn路由器发送的至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成并通过各自连接的业务sdn路由器发送至区块链核心服务器连接的核心sdn路由器;

处理模块用于根据获取模块接收的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;

发送模块用于在处理模块确定目标区块链业务服务器存在数据异常时,发送与数据异常对应的处理指令给区块链核心服务器连接的核心sdn路由器。

具体的,目标区块链业务服务器存在的数据异常包括:目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符、目标区块链业务服务器发布非法信息和目标区块链业务服务器生成的区块链业务数据的数量超过预设标准。

可选的,该区块链核心服务器还包括存储模块;存储模块用于存储获取模块获取的所有区块链业务数据和所有区块链业务服务器的地址数据;

当有新的区块链业务服务器加入区块链核心服务器所在的区块链系统时,发送模块还用于将存储模块中存储的所有区块链业务数据和所有区块链业务服务器的地址数据发送给新的区块链业务服务器连接的业务sdn路由器,以使新的区块链业务服务器通过其连接的业务sdn路由器获取所有区块链业务数据和所有区块链业务服务器的地址数据;

获取模块还用于获取区块链核心服务器连接的核心sdn路由器发送的新的区块链业务服务器的区块链业务数据,新的区块链业务服务器的区块链业务数据由新的区块链业务服务器生成并通过自身连接的业务sdn路由器发送至区块链核心服务器连接的核心sdn路由器。

第三方面,提供一种sdn控制器,包括:接收模块、发送模块和处理模块;

接收模块用于接收sdn控制器连接的控制sdn路由器发送的处理指令,处理指令由区块链核心服务器生成并通过自身连接的核心sdn路由器发送至sdn控制器连接的控制sdn路由器;

处理模块用于根据接收模块接收的处理指令生成路由器配置参数;

发送模块用于将处理模块生成的路由器配置参数发送给sdn控制器连接的控制sdn路由器。

具体的,处理指令至少为以下各项中一种:第一处理指令、第二处理指令和第三处理指令;第一处理指令对应的目标进程的数据异常为目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符,第二处理指令对应的目标进程的数据异常为目标区块链业务服务器发布非法信息,第三处理指令对应的目标进程的数据异常为目标区块链业务服务器区块链业务数据的数量超过预设标准;

处理模块具体用于:根据第一处理指令生成路由器防火墙配置参数;根据第二处理指令生成路由器端口配置参数;根据第三处理指令生成路由器带宽配置参数。

可选的,当有新的区块链业务服务器加入sdn控制器所在的区块链系统时,接收模块还用于接收sdn控制器连接的sdn路由器发送的对接指令,对接指令由新的区块链业务服务器新的区块链业务服务器连接的业务sdn路由器发送至sdn控制器连接的控制sdn路由器,对接指令中携带新的区块链业务服务器新的区块链业务服务器连接的业务sdn路由器的地址数据。

第四方面,提供一种业务sdn路由器,其特征在于,包括:接收模块、发送模块和处理模块;

接收模块用于接收业务sdn路由器连接的区块链业务服务器生成的区块链业务数据;

发送模块用于将接收模块接收的区块链业务数据发送给区块链核心服务器连接的核心sdn路由器以及与区块链业务数据中的地址数据对应的业务sdn路由器;

当业务sdn路由器连接的区块链业务服务器存在数据异常时,接收模块还用于接收sdn控制器生成并通过自身连接的控制sdn路由器发送的路由器配置参数;

处理模块用于根据路由器配置参数对业务sdn路由器的配置进行更改。

可选的,处理模块还用于在发送模块发送区块链业务数据之前给接收模块接收的区块链业务数据设置预设标签,以使区块链核心服务器连接的核心sdn路由器以及与区块链业务数据中的地址数据对应的业务sdn路由器获取并识别区块链业务数据。

可选的,当路由器配置参数为路由器防火墙配置参数时,处理模块用于根据路由器防火墙配置参数更改业务sdn路由器当前的防火墙配置;

当路由器配置参数为路由器端口配置参数时,处理模块用于根据路由器端口配置参数更改业务sdn路由器当前的端口配置;

当路由器配置参数为路由器带宽配置参数时,处理模块用于根据路由器带宽配置参数更改业务sdn路由器当前的可用带宽。

第五方面,提供一种区块链系统,包括第二方面提供的区块链核心服务器、第三方面提供的sdn控制器、第四方面提供的sdn路由器。

本发明实施例提供的区块链业务服务器数据异常检测方法、设备及区块链系统,该方法包括:区块链核心服务器通过区块链核心服务器连接的核心sdn路由器获取至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成,并通过各自连接的业务sdn路由器发送至与至少一个区块链业务数据中的地址数据对应的sdn路由器以及区块链核心服务器连接的核心sdn路由器;区块链核心服务器根据获取到的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;当区块链核心服务器确定目标区块链业务服务器存在数据异常时,经由区块链核心服务器连接的核心sdn路由器和sdn控制器连接的控制sdn路由器发送与数据异常对应的处理指令给sdn控制器;目标区块链业务服务器为至少一个区块链业务服务器中任一区块链业务服务器;sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器;目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置。所以该区块链系统在使用过程中,区块链核心服务器可以获取至少一个区块链业务服务器连接的sdn路由器发送的区块链业务数据;然后区块链核心服务器根据所有区块链业务服务器连接的业务sdn路由器发送的区块链业务数据依据预设算法便可以判断所有区块链业务服务器中是否有区块链业务服务器存在数据异常;当确定目标区块链业务服务器存在数据异常时,发送与数据异常连接的处理指令给sdn控制器,以使其根据该处理指令生成相应的路由器配置参数并发送给目标区块链业务服务器连接的业务sdn路由器,以使其根据路由器配置参数更新自身配置。所以本发明实施例提供的区块链系统通过sdn技术的参与可以在区块链系统中的区块链业务服务器被外界攻击或者出现故障时及时对区块链系统进行相应控制,从而避免用户的损失。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种区块链系统中区块链业务服务器的数据异常检测方法流程示意图;

图2为本发明实施例提供的另一种区块链系统中区块链业务服务器的数据异常检测方法流程示意图;

图3为本发明实施例提供的新的区块链业务服务器加入方法流程示意图;

图4为本发明实施例提供的一种区块链系统结构示意图;

图5为本发明实施例提供的一种区块链核心服务器结构示意图;

图6为本发明实施例提供的一种sdn控制器结构示意图;

图7为本发明实施例提供的一种业务sdn路由器结构示意图;

图8为本发明实施例提供的一种区块链系统实际结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

还需要说明的是,本发明实施例中,“的(英文:of)”,“相应的(英文:corresponding,relevant)”和“对应的(英文:corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。

为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不是在对数量和执行次序进行限定。

现有的区块链技术中的区块链结构因为其开放性、共识性、去中心化合和去信任的特点使得区块链具有很强的鲁棒性和公开透明性,但因为原有的区块链系统中每一个服务器节点都存储有区块链系统中所有用户的交易信息和财产信息,而且因为区块链系统中的数据变动是不可修改同时区块链用户信息时保密的无法追踪,所以一旦区块链的整个系统遭遇黑客网络袭击和网络勒索,区块链系统本身是无法保障用户的财产安全的。

针对上述问题,参照图1所示,本发明实施例提供一种区块链系统中区块链业务服务的数据异常检测方法,包括:

101、区块链核心服务器通过区块链核心服务器连接的核心sdn(softwaredefinednetwork,软件定义网络)路由器获取至少一个区块链业务数据。

其中,至少一个区块链业务数据由至少一个区块链业务服务器生成,并通过各自连接的业务sdn路由器发送至与至少一个区块链业务数据中的地址数据对应的业务sdn路由器以及区块链核心服务器连接的核心sdn路由器;实际中,因为区块链核心服务器在区块链系统中会存在不止一个,所以一般会将整个系统的区块链业务服务器分为几部分归不同的区块链核心服务器管理,当然也可以全部由一个区块链核心服务器管理,此处不做具体限制。

另外,因为需要区分区块链系统自身的网络与公共网络,业务sdn路由器在发送区块链业务服务器产生的区块链业务数据时会给区块链业务数据加上只能由区块链系统中的业务sdn路由器或核心路由器识别的标签,所以可选的:任一区块链业务服务器连接的sdn路由器在发送区块链业务数据之前,还包括:任一区块链业务服务器连接的业务sdn路由器给区块链业务数据设置预设标签,以使接收区块链业务数据的业务sdn路由器或核心sdn路由器识别并获取区块链业务数据;

需要说明的是,核心sdn路由器、业务sdn路由器和控制sdn路由器之间的数据传输,只要传输的数据是属于区块链系统中的使用数据时,相应发送数据的sdn路由器均会对发送的数据设置预设标签,此处仅为示意性选择一种进行情况进行说明;

具体的,sdn路由器在通信网络三层转发设备的正常数据转发功能技术上,通过隧道技术(例如mpls(multi-protocollabelswitching,多协议标签交换),vxlan(virtualextensiblelan,虚拟拓展局域网)等技术)对区块链系统中的转发报文做一定封装,从而使得整个区块链系统中的sdn路由器之间可以互相识别组成专属于各sdn路由器连接的区块链业务服务器的专网。

102、区块链核心服务器根据获取到的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常。

实际中,除了通过预设算法根据数据来判断出现数据异常的区块链业务服务器,还可以将数据展示给具体专业管理人员进行判断;区块链核心服务器在这里不仅仅需要判断哪些区块链业务服务器有数据异常现象,也同时确定出现的数据异常为哪种数据异常;另外,一种特殊情况是,区块链核心服务器自身也进行区块链业务服务器的业务活动时,区块链核心服务器自身也会出现数据异常,此时区块链核心服务器也是一个特殊的区块链业务服务器,此时区块链核心服务器的数据异常也由自身判断,处理过程和对普通区块链业务服务器的处理过程相同。

103、当区块链核心服务器确定目标区块链业务服务器存在数据异常时,经由区块链核心服务器连接的核心sdn路由器和sdn控制器连接的控制sdn路由器发送与数据异常对应的处理指令给sdn控制器。

其中,目标区块链业务服务器为至少一个区块链业务服务器中任一区块链业务服务器;

实际中,处理指令携带着区块链核心服务器根据出现数据异常的区块链业务服务器具体数据异常类别判断出的初步处理策略(例如对区块链业务服务器临时隔离、调整区块链业务服务器的可用网络带宽)。

104、sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器。

示例性的,目标区块链业务服务器的数据异常至少包括:目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符、目标区块链业务服务器发布非法信息和目标区块链业务服务器生成的区块链业务数据的数量超过预设标准;处理指令至少为以下各项中一种:第一处理指令、第二处理指令和第三处理指令;目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符对应第一处理指令,目标区块链业务服务器发布非法信息对应第二处理指令,目标区块链业务服务器区块链业务数据的数量超过预设标准对应第三处理指令;

示例性的,参照图2所示104步骤具体包括:

1041、当sdn控制器接收到第一处理指令时生成路由器防火墙配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器防火墙配置参数给目标区块链业务服务器连接的业务sdn路由器。

1042、当sdn控制器接收到第二处理指令时生成路由器端口配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器端口配置参数给目标区块链业务服务器连接的业务sdn路由器。

1043、当sdn控制器接收到第三处理指令时生成路由器带宽配置参数,并通过sdn控制器连接的控制sdn路由器发送路由器带宽配置参数给目标区块链业务服务器连接的业务sdn路由器。

105、目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置。

具体的,参照图2所示,105步骤具体包括:

1051、目标区块链业务服务器连接的业务sdn路由器根据路由器防火墙配置参数更新自身的防火墙配置。

1052、目标区块链业务服务器连接的业务sdn路由器根据路由器端口配置参数关闭发布非法信息的端口。

1053、目标区块链业务服务器连接的业务sdn路由器根据路由器带宽配置参数调整数据发送的可用带宽。

因为实际中,区块链系统随时都会有新的用户加入,从而会产生新的区块链业务服务器,所以可选的,参照图3所示,当有新的区块链业务服务器加入sdn控制器所在的区块链系统时该方法还包括:

s1、sdn控制器通过sdn控制器连接的控制sdn路由器接收新的区块链业务服务器通过其连接的业务sdn路由器发送的对接指令以完成对接,对接指令中携带新的区块链业务服务器的地址数据。

具体的,新的区块链业务服务器的地址数据中应当包括其连接的业务sdn路由器的地址,最终是通过业务sdn路由器转发至新的区块链业务服务器的。

s2、区块链核心服务器将自身存储的区块链系统中所有区块链业务服务器的区块链业务数据和地址数据经由区块链核心服务器连接的核心sdn路由器和新的区块链业务服务器连接的业务sdn路由器发送给新的区块链业务服务器。

具体的,因为区块链系统需要每一个区块链业务服务器都存在有所有区块链系统产生的业务信息以及其他可进行业务联系的区块链业务服务器的地址,所以存在s2。

s3、区块链核心服务器在新的区块链业务服务器连接的业务sdn路由器与sdn控制器完成对接后,通过区块链核心服务器连接的核心sdn路由器获取新的区块链业务服务器生成并通过自身连接的业务sdn路由器发送的区块链业务数据。

本发明实施例提供的区块链系统中区块链业务服务器的数据异常检测方法,该方法包括:区块链核心服务器通过区块链核心服务器连接的核心sdn路由器获取至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成,并通过各自连接的业务sdn路由器发送至与至少一个区块链业务数据中的地址数据对应的sdn路由器以及区块链核心服务器连接的核心sdn路由器;区块链核心服务器根据获取到的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;当区块链核心服务器确定目标区块链业务服务器存在数据异常时,经由区块链核心服务器连接的核心sdn路由器和sdn控制器连接的控制sdn路由器发送与数据异常对应的处理指令给sdn控制器;目标区块链业务服务器为至少一个区块链业务服务器中任一区块链业务服务器;sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器;目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置。所以该区块链系统在使用过程中,区块链核心服务器可以获取至少一个区块链业务服务器连接的sdn路由器发送的区块链业务数据;然后区块链核心服务器根据所有区块链业务服务器连接的业务sdn路由器发送的区块链业务数据依据预设算法便可以判断所有区块链业务服务器中是否有区块链业务服务器存在数据异常;当确定目标区块链业务服务器存在数据异常时,发送与数据异常连接的处理指令给sdn控制器,以使其根据该处理指令生成相应的路由器配置参数并发送给目标区块链业务服务器连接的业务sdn路由器,以使其根据路由器配置参数更新自身配置。所以本发明实施例提供的区块链系统通过sdn技术的参与可以在区块链系统中的区块链业务服务器被外界攻击或者出现故障时及时对区块链系统进行相应控制,从而避免用户的损失。

参照图4所示,本发明实施例提供一种区块链系统,包括区块链核心服务器41、sdn控制器42和业务sdn路由器43(43-1,43-2,43-3);另外该区块链系统还包括与业务sdn路由器43功能相同的核心sdn路由器44和控制sdn路由器45以及至少一个区块链业务服务器46(46-1,46-2,46-3);该区块链系统能够完成上述实施例中提供的区块链系统中区块链业务服务器数据异常检测方法;实际中,区块链系统结构如图8所示。

另外,在本发明实施例提供的区块链系统中,各个组成部分之间的信息交互需要符合下表1所示的协议:

表1

具体的,表1中sdn路由器包括前述实施例中的核心sdn路由器、业务sdn路由器和核心sdn路由器。

参照图5所示,本发明实施例提供一种区块链系统中的区块链核心服务器41,包括:获取模块411、处理模块412和发送模块413;

获取模块411用于获取与区块链核心服务器41连接的核心sdn路由器44发送的至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成并通过各自连接的业务sdn路由器发送至区块链核心服务器41连接的核心sdn路由器44;

处理模块412用于根据获取模块411接收的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;

发送模块413用于在处理模块412确定目标区块链业务服务器存在数据异常时,发送与数据异常对应的处理指令给区块链核心服务器41连接的核心sdn路由器44。

具体的,目标区块链业务服务器存在的数据异常包括:目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符、目标区块链业务服务器发布非法信息和目标区块链业务服务器生成的区块链业务数据的数量超过预设标准。

可选的,该区块链核心服务器41还包括存储模块;存储模块用于存储获取模块411获取的所有区块链业务数据和所有区块链业务服务器的地址数据;

当有新的区块链业务服务器加入区块链核心服务器41所在的区块链系统时,发送模块413还用于将存储模块中存储的所有区块链业务数据和所有区块链业务服务器的地址数据发送给新的区块链业务服务器连接的业务sdn路由器43-4,以使新的区块链业务服务器通过其连接的业务sdn路由器获取所有区块链业务数据和所有区块链业务服务器的地址数据;

获取模块411还用于获取区块链核心服务器41连接的核心sdn路由器44发送的新的区块链业务服务器的区块链业务数据,新的区块链业务服务器的区块链业务数据由新的区块链业务服务器生成并通过自身连接的业务sdn路由器43-4发送至区块链核心服务器41连接的核心sdn路由器44。

实际中,在区块链系统中,区块链核心服务器是在某个区块链服务器具备所有区块链业务功能(例如比特币系统中,功能完整的区块链服务器需要具备:路由、挖矿、完整区块链系统数据、钱包功能等)的基础上添加一个区块链分析管理系统而成,区块链分析管理系统可以基于区块链核心服务器获取的区块链业务数据对区块链系统中的所有服务器运行情况进行分析;在本发明实施例提供的技术方案中,区块链核心服务器仅指区块链核心服务器中的分析管理系统,其实施业务功能的部分被列入区块链业务服务器中的一员;实际中区块链业务服务器为区块链系统中具备一部分或者所有业务功能的区块链服务器。

参照图6所示,本发明实施例提供一种区块链系统中的sdn控制器42,包括:接收模块421、发送模块422和处理模块423;

接收模块421用于接收sdn控制器42连接的控制sdn路由器45发送的处理指令,处理指令由区块链核心服务器连接的核心sdn路由器发送至sdn控制器连接的控制sdn路由器;

处理模块423用于根据接收模块421接收的处理指令生成路由器配置参数;

发送模块422用于将处理模块423生成的路由器配置参数发送给sdn控制器42连接的控制sdn路由器45。

具体的,处理指令至少为以下各项中一种:第一处理指令、第二处理指令和第三处理指令;第一处理指令对应的目标进程的数据异常为目标区块链业务服务器被攻击导致其拥有的区块链业务功能和预设不符,第二处理指令对应的目标进程的数据异常为目标区块链业务服务器发布非法信息,第三处理指令对应的目标进程的数据异常为目标区块链业务服务器区块链业务数据的数量超过预设标准;

处理模块423具体用于:根据第一处理指令生成路由器防火墙配置参数;根据第二处理指令生成路由器端口配置参数;根据第三处理指令生成路由器带宽配置参数。

可选的,当有新的区块链业务服务器加入sdn控制器42所在的区块链系统时,接收模块421还用于接收sdn控制器42连接的控制sdn路由器45发送的对接指令,对接指令由新的区块链业务服务器新的区块链业务服务器连接的业务sdn路由器发送至sdn控制器连接的控制sdn路由器,对接指令中携带新的区块链业务服务器新的区块链业务服务器连接的sdn路由器的地址数据。

参照图7所示,本发明实施例提供一种区块链系统中的业务sdn路由器43-1(图7中仅以43-1为例说明,并不作为限制条件),包括:接收模块431、发送模块432和处理模块433;

接收模块431用于接收业务sdn路由器43-1连接的区块链业务服务器46-1生成的区块链业务数据;

发送模块432用于将接收模块431接收的区块链业务数据发送给区块链核心服务器连接的核心sdn路由器44以及与区块链业务数据中的地址数据对应的业务sdn路由器43-2(图7中仅以43-2为例进行说明,并不作为限制条件);

当业务sdn路由器43连接的区块链业务服务器存在数据异常时,接收模块431还用于接收sdn控制器生成并通过自身连接的控制sdn路由器45发送的路由器配置参数;

处理模块433用于根据路由器配置参数对业务sdn路由器43的配置进行更改。

可选的,处理模块433还用于在发送模块432发送区块链业务数据之前给接收模块431接收的区块链业务数据设置预设标签,以使区块链核心服务器连接的核心sdn路由器44以及与区块链业务数据中的地址数据对应的业务sdn路由器43-2获取并识别区块链业务数据。

可选的,当路由器配置参数为路由器防火墙配置参数时,处理模块433用于根据路由器防火墙配置参数更改业务sdn路由器43-1当前的防火墙配置;

当路由器配置参数为路由器端口配置参数时,处理模块433用于根据路由器端口配置参数更改业务sdn路由器43-1当前的端口配置;

当路由器配置参数为路由器带宽配置参数时,处理模块433用于根据路由器带宽配置参数更改业务sdn路由器43-1当前的可用带宽。

综上所述,本发明实施例提供的区块链业务服务器数据异常检测方法、设备及区块链系统,该方案在对区块链业务服务器数据异常时具体包括:区块链核心服务器通过区块链核心服务器连接的核心sdn路由器获取至少一个区块链业务数据,其中至少一个区块链业务数据由至少一个区块链业务服务器生成,并通过各自连接的业务sdn路由器发送至与至少一个区块链业务数据中的地址数据对应的sdn路由器以及区块链核心服务器连接的核心sdn路由器;区块链核心服务器根据获取到的所有区块链业务数据依据预设算法判断至少一个区块链业务服务器中是否有区块链业务服务器存在数据异常;当区块链核心服务器确定目标区块链业务服务器存在数据异常时,经由区块链核心服务器连接的核心sdn路由器和sdn控制器连接的控制sdn路由器发送与数据异常对应的处理指令给sdn控制器;目标区块链业务服务器为至少一个区块链业务服务器中任一区块链业务服务器;sdn控制器在接收到处理指令后生成与处理指令对应的路由器配置参数,并通过sdn控制器连接的控制sdn路由器将路由器配置参数发送给目标区块链业务服务器连接的业务sdn路由器;目标区块链业务服务器连接的业务sdn路由器根据路由器配置参数更新自身配置。所以该区块链系统在使用过程中,区块链核心服务器可以获取至少一个区块链业务服务器连接的sdn路由器发送的区块链业务数据;然后区块链核心服务器根据所有区块链业务服务器连接的业务sdn路由器发送的区块链业务数据依据预设算法便可以判断所有区块链业务服务器中是否有区块链业务服务器存在数据异常;当确定目标区块链业务服务器存在数据异常时,发送与数据异常连接的处理指令给sdn控制器,以使其根据该处理指令生成相应的路由器配置参数并发送给目标区块链业务服务器连接的业务sdn路由器,以使其根据路由器配置参数更新自身配置。所以本发明实施例提供的区块链系统通过sdn技术的参与可以在区块链系统中的区块链业务服务器被外界攻击或者出现故障时及时对区块链系统进行相应控制,从而避免用户的损失。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1