一种数据分发过程中的失败检测及恢复方法

文档序号:1952391 发布日期:2021-12-10 浏览:11次 >En<

阅读说明:本技术 一种数据分发过程中的失败检测及恢复方法 (Failure detection and recovery method in data distribution process ) 是由 门殿春 江何 周鑫 李忱 陈忠国 孟繁荣 姚志强 于 2021-11-05 设计创作,主要内容包括:本发明公开了一种数据分发过程中的失败检测及恢复方法,具体涉及数据分发技术领域,通过采用RSA签名的秘钥处理,使其能够在公钥的同步发送过程中,实现数据的完整性验证,同时采用序列号反馈方式方式,实现数据的接收登记,实现丢包后能够实现对一个时间段内的丢包数据进行及时修复,使其能够实现数据的传输及时检测,以及完整性的有效检验,配合RSA数字签名完整性检测同时,其能够保障缓存节点及下层数据库内暂存的缓存文件进行很好的保护,且采用下层数据库配合对传输历史文件暂存的方式,使其能够实现一段时间内丢失数据恢复的直接处理,无需对发送端口发出数据重新调用请求,降低传输压力,提升整体的运作效率。(The invention discloses a failure detection and recovery method in the data distribution process, in particular to the technical field of data distribution, which can realize the integrity verification of data in the synchronous transmission process of a public key by adopting the secret key processing of RSA signature, simultaneously realize the receiving and registering of the data by adopting a serial number feedback mode, realize the timely repair of the lost data in a time period after the lost data is lost, realize the timely detection of the transmission of the data and the effective verification of the integrity, ensure that a buffer node and a buffer file temporarily stored in a lower database can be well protected by matching with the integrity detection of the RSA digital signature, and realize the direct processing of the recovery of the lost data in a period of time by matching with the lower database and transmitting a temporary storage mode of a history file without sending a data recall request to a transmitting port, reduce transmission pressure, promote holistic operating efficiency.)

一种数据分发过程中的失败检测及恢复方法

技术领域

本发明涉及数据分发技术领域,更具体地说,本发明涉及一种数据分发过程中的失败检测及恢复方法。

背景技术

数据分发服务(DDS)的核心是以数据为中心的发布-订阅DCPS(Data-CentricPublish-Subscribe),即发布者能高效地将正确的信息传递给适当的订阅者, DDS中间件是一个软件层,它将应用程序从操作系统、网络传输和底层数据格式的细节中抽象出来。DDS提供多种编程语言的API,允许应用程序跨操作系统、跨语言、跨处理器体系结构交换信息。数据格式、发现匹配机制、连接方式、可靠性、网络协议、传输方式选择、QoS、安全性等底层细节由中间件管理,DDS在概念上创建了一个“全局数据空间”的本地的数据存储空间。对应用程序来说,全局数据空间看起来像是通过API访问的本地内存:发送端应用程序写入数据时,就像是写到了本地的存储空间;而实际上,由DDS发送消息以更新远程节点上的存储内容;接收端应用程序方可通过读取本地存储获取到数据。

针对于大容量少任务量的关键dds数据分发而言,其数据分发的过程中,除常见的故障原因导致其分发失败外,其数据传输过程中网络造成的丢包现象以及数据部分缺失均为一定程度上的数据传输失败,然而数据传输缺失极易造成完整性无法得到有效的验证,使其完整性无法得到有效的保障,同时针对于数据丢包这一过程中,会在恢复过程中增加处理任务量,使其影响其正常的运作效率。

发明内容

为了克服现有技术的上述缺陷,本发明提供了一种数据分发过程中的失败检测及恢复方法,本发明所要解决的技术问题是:数据传输过程造成的缺失问题,极易在完整性无法得到有效的验证的情况下,使其完整性的保障成为一个难题,同时针对于数据丢包这一过程中,会在恢复过程中增加处理任务量,使其影响发送端正常的运作效率的问题。

为实现上述目的,本发明提供如下技术方案:一种数据分发过程中的失败检测方法,包括以下步骤:

S1、读取dds分发数据,对分发数据添加唯一序列号,并做RSA签名处理,同步获取RSA数字签名的公钥与私钥。

S2、建立数据分发缓存节点及下层数据库,所述缓存节点对数据压缩或直接分发,同步数据录入下层数据库。

S3、接收端与缓存节点均建立序列接收表,所述缓存节点数据分发过程中将公钥与分发数据同步进行分发传输。

S4、所述分发数据接收后通过公钥验证数据完整性,并通过序列号录入序列接收表,检索其序列位置。

S5、若所述序列号检索与实际接收顺序不符则接收端在一个时间段周期后,进行数据恢复。

S6、所述数据恢复操作前预先通过失败检测模块与QoS服务策略配合对该分发系统整体检测。

作为本发明的进一步方案:所述数据恢复包括以下步骤:

S5.1、所述S1中公钥数据完整性验证的过程中,dds数据部分缺失则公钥无法解密,则无法解密的接收端口反馈公钥。

S5.2、在完整性检测过程中,通过序列接收表对序列号检测其增量变化。

S5.3、通过对缓存节点访问上一时间段内的序列号日志及其发送端口,并与实际接收端口接收序列接收表对比,获取缺失数据。

S5.4、在出现数据缺失后,通过启动失败检测模块对分发系统检测,随即接收端口通过将缺失文件序列端口发送到缓存节点,并与缓存节点的下层数据库匹配出暂存的缺失文件进行重新调用发送即可,并对其通过公钥验证无误即可停止响应。

S5.5、在失败检测模块修复失败后提取日志的报错信息,并进行人工窗口反馈。

作为本发明的进一步方案:所述失败检测模块包括以下修复策略:

a、数据库实例检测。

b、客户端连接方式验证。

c、ssl连接方式安全连接验证。

d、连接命令验证。

e、网络检测。

f、实例的连接数余量验证。

g、磁盘、处理器硬件自检。

h、日志读取报错信息提取。

i、报错信息反馈。

作为本发明的进一步方案:所述客户端连接方式验证具体包括客户端运行检测、dds与ecs实例是否位于cpc内的检测,以及同步检测dds实例是否绑定到eip中,所述ssl连接方式安全连接验证具体包括基于dds的ssl开关打开状态验证和根证书重新上传到ecs操作。

作为本发明的进一步方案:所述连接命令验证包括连接地址核对、端口参数配置核对、用户名及密码核对和ssl配置项连接命令核对,所述网络检测包括内网访问验证、公网访问验证和跨网访问验证。

作为本发明的进一步方案:所述序列号为递增式,其序列格式为,日期+时间段+当日发送数列,所述缓存节点的序列接收表包括了添加对应序列号的发送对应端口数据。

作为本发明的进一步方案:所述下层数据库使用基于内存存储引擎的MySQL关系型数据库。

作为本发明的进一步方案:所述报错信息反馈与日志读取报错信息均会录入故障历史数据并备注对应处理策略。

本发明的有益效果在于:

本发明通过采用RSA签名的秘钥处理,使其能够在公钥的同步发送过程中,实现数据的完整性验证,同时采用序列号反馈方式方式,实现数据的接收登记,实现丢包后能够实现对一个时间段内的丢包数据进行及时修复,提供失败检测模块启动条件,使其增加系统自检修复策略,能够与QoS服务策略实现配合,提升整体的完善性,使其能够实现数据的传输及时检测,以及完整性的有效检验,便于数据分发的恢复,配合RSA数字签名完整性检测同时,其能够保障缓存节点及下层数据库内暂存的缓存文件进行很好的保护,起到一定的数据加密效果,降低暂存的文件过多受攻击泄露的风险,且采用下层数据库配合对传输历史文件暂存的方式,使其能够实现一段时间内丢失数据恢复的直接处理,无需对发送端口发出数据重新调用请求,降低传输压力,提升整体的运作效率。

附图说明

图1为本发明整体原理流程图;

图2为本发明数据恢复流程框图。

具体实施方式

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

实施例1:

一种数据分发过程中的失败检测方法,包括以下步骤:

S1、读取dds分发数据,对分发数据添加唯一序列号,并做RSA签名处理,同步获取RSA数字签名的公钥与私钥。

S2、建立数据分发缓存节点及下层数据库,缓存节点对数据压缩或直接分发,同步数据录入下层数据库。

S3、接收端与缓存节点均建立序列接收表,缓存节点数据分发过程中将公钥与分发数据同步进行分发传输。

S4、分发数据接收后通过公钥验证数据完整性,并通过序列号录入序列接收表,检索其序列位置。

S5、若序列号检索与实际接收顺序不符则接收端在一个时间段周期后,进行数据恢复。

S6、数据恢复操作前预先通过失败检测模块与QoS服务策略配合对该分发系统整体检测。

数据恢复包括以下步骤:

S5.1、S1中公钥数据完整性验证的过程中,dds数据部分缺失则公钥无法解密,则无法解密的接收端口反馈公钥。

S5.2、在完整性检测过程中,通过序列接收表对序列号检测其增量变化。

S5.3、通过对缓存节点访问上一时间段内的序列号日志及其发送端口,并与实际接收端口接收序列接收表对比,获取缺失数据。

S5.4、在出现数据缺失后,通过启动失败检测模块对分发系统检测,随即接收端口通过将缺失文件序列端口发送到缓存节点,并与缓存节点的下层数据库匹配出暂存的缺失文件进行重新调用发送即可,并对其通过公钥验证无误即可停止响应。

S5.5、在失败检测模块修复失败后提取日志的报错信息,并进行人工窗口反馈。

失败检测模块包括以下修复策略:

a、数据库实例检测。

b、客户端连接方式验证。

c、ssl连接方式安全连接验证。

d、连接命令验证。

e、网络检测。

f、实例的连接数余量验证。

g、磁盘、处理器硬件自检。

h、日志读取报错信息提取。

i、报错信息反馈。

在其他实施例中,客户端连接方式验证具体包括客户端运行检测、dds与ecs实例是否位于cpc内的检测,以及同步检测dds实例是否绑定到eip中,ssl连接方式安全连接验证具体包括基于dds的ssl开关打开状态验证和根证书重新上传到ecs操作。连接命令验证包括连接地址核对、端口参数配置核对、用户名及密码核对和ssl配置项连接命令核对,网络检测包括内网访问验证、公网访问验证和跨网访问验证。

通过采用控制台对数据库实例状态检测的方式,使其能够判断并排除DDS系统故障,实例状态异常,实例或表被锁定的问题,使其能够及时反馈其状态进行处理。

在其他实施例中,序列号为递增式,其序列格式为,日期+时间段+当日发送数列,缓存节点的序列接收表包括了添加对应序列号的发送对应端口数据。下层数据库使用基于内存存储引擎的MySQL关系型数据库。报错信息反馈与日志报错信息均会录入故障历史数据并备注对应处理策略。

通过设置序列号,序列号采用日期+时间段+当日发送数列的格式,其日期数据能够实现当日序列的重复区分,同时其时间段为二十四小时制,采用小时或时刻区分时间段的方式,对数据恢复的检测周期进行控制,保持对同一时刻内的数据进行配合下层数据库很好的临时留存,进行直接的调用恢复处理。

实施例2:

一种数据分发过程中的失败检测方法,包括以下步骤:

S1、读取dds分发数据,对分发数据添加唯一序列号,并做ECDSA签名处理。

S2、建立数据分发缓存节点及下层数据库,缓存节点对数据压缩或直接分发,同步数据录入下层数据库。

S3、接收端与缓存节点均建立序列接收表,缓存节点数据分发过程中将密钥与分发数据同步进行分发传输。

S4、分发数据接收后通过密钥验证数据完整性,并通过序列号录入序列接收表,检索其序列位置。

S5、若序列号检索与实际接收顺序不符则接收端在一个时间段周期后,进行数据恢复。

S6、数据恢复操作前预先通过失败检测模块与QoS服务策略配合对该分发系统整体检测。

数据恢复包括以下步骤:

S5.1、S1中密钥数据完整性验证的过程中,dds数据部分缺失则密钥无法解密,则无法解密的接收端口反馈密钥。

S5.2、在完整性检测过程中,通过序列接收表对序列号检测其增量变化。

S5.3、通过对缓存节点访问上一时间段内的序列号日志及其发送端口,并与实际接收端口接收序列接收表对比,获取缺失数据。

S5.4、在出现数据缺失后,通过启动失败检测模块对分发系统检测,随即接收端口通过将缺失文件序列端口发送到缓存节点,并与缓存节点的下层数据库匹配出暂存的缺失文件进行重新调用发送即可,并对其通过密钥验证无误即可停止响应。

S5.5、在失败检测模块修复失败后提取日志的报错信息,并进行人工窗口反馈。

失败检测模块包括以下修复策略:

b、数据库实例检测。

b、客户端连接方式验证。

c、ssl连接方式安全连接验证。

d、连接命令验证。

e、网络检测。

f、实例的连接数余量验证。

g、磁盘、处理器硬件自检。

h、日志读取报错信息提取。

i、报错信息反馈。

客户端连接方式验证具体包括客户端运行检测、dds与ecs实例是否位于cpc内的检测,以及同步检测dds实例是否绑定到eip中,ssl连接方式安全连接验证具体包括基于dds的ssl开关打开状态验证和根证书重新上传到ecs操作。连接命令验证包括连接地址核对、端口参数配置核对、用户名及密码核对和ssl配置项连接命令核对,网络检测包括内网访问验证、公网访问验证和跨网访问验证。

序列号为递增式,其序列格式为,日期+时间段+当日发送数列,缓存节点的序列接收表包括了添加对应序列号的发送对应端口数据。下层数据库使用基于内存存储引擎的MySQL关系型数据库。报错信息反馈与日志报错信息均会录入故障历史数据并备注对应处理策略。

实施例3:

一种数据分发过程中的失败检测方法,包括以下步骤:

S1、读取dds分发数据,对分发数据添加唯一序列号,并做DSA签名处理,同步获取DSA数字签名的密钥与私钥。

S2、建立数据分发缓存节点及下层数据库,缓存节点对数据压缩或直接分发,同步数据录入下层数据库。

S3、接收端与缓存节点均建立序列接收表,缓存节点数据分发过程中将密钥与分发数据同步进行分发传输。

S4、分发数据接收后通过密钥验证数据完整性,并通过序列号录入序列接收表,检索其序列位置。

S5、若序列号检索与实际接收顺序不符则接收端在一个时间段周期后,进行数据恢复。

S6、数据恢复操作前预先通过失败检测模块与QoS服务策略配合对该分发系统整体检测。

数据恢复包括以下步骤:

S5.1、S1中密钥数据完整性验证的过程中,dds数据部分缺失则密钥无法解密,则无法解密的接收端口反馈密钥。

S5.2、在完整性检测过程中,通过序列接收表对序列号检测其增量变化。

S5.3、通过对缓存节点访问上一时间段内的序列号日志及其发送端口,并与实际接收端口接收序列接收表对比,获取缺失数据。

S5.4、在出现数据缺失后,通过启动失败检测模块对分发系统检测,随即接收端口通过将缺失文件序列端口发送到缓存节点,并与缓存节点的下层数据库匹配出暂存的缺失文件进行重新调用发送即可,并对其通过密钥验证无误即可停止响应。

S5.5、在失败检测模块修复失败后提取日志的报错信息,并进行人工窗口反馈。

失败检测模块包括以下修复策略:

c、数据库实例检测。

b、客户端连接方式验证。

c、ssl连接方式安全连接验证。

d、连接命令验证。

e、网络检测。

f、实例的连接数余量验证。

g、磁盘、处理器硬件自检。

h、日志读取报错信息提取。

i、报错信息反馈。

客户端连接方式验证具体包括客户端运行检测、dds与ecs实例是否位于cpc内的检测,以及同步检测dds实例是否绑定到eip中,ssl连接方式安全连接验证具体包括基于dds的ssl开关打开状态验证和根证书重新上传到ecs操作。连接命令验证包括连接地址核对、端口参数配置核对、用户名及密码核对和ssl配置项连接命令核对,网络检测包括内网访问验证、公网访问验证和跨网访问验证。

序列号为递增式,其序列格式为,日期+时间段+当日发送数列,缓存节点的序列接收表包括了添加对应序列号的发送对应端口数据。下层数据库使用基于内存存储引擎的MySQL关系型数据库。报错信息反馈与日志报错信息均会录入故障历史数据并备注对应处理策略。

综上可知,本发明:采用序列号丢包验证与电子签章完整性验证方式的配合,其电子签章的方式包括以上三个实施例但并不仅限于此,其序列的验证与多种电子签章的方式能够保障数据的稳定高效验证,同时采用失败检测模块配合QoS策略的方式,较大程度上保障了该系统的运作稳定。

最后应说明的几点是:虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明的基础上,以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于嵌入式系统的关键数据自毁与自动还原方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!