冗余前端处理器的数据同步方法、前端处理器和处理系统技术方案

技术编号:25598906 阅读:35 留言:0更新日期:2020-09-11 23:56
本发明专利技术实施例提供了一种冗余前端处理器的数据同步方法、前端处理器和处理系统,通过第一前端处理器获得第二前端处理器发送的数据同步请求;获得与请求中的目标虚拟设备标识对应的配置信息,配置信息至少包括数据版本号和存储空间的容量;若配置信息中的数据版本号与请求中的数据版本号一致,且配置信息中的存储空间的容量与请求中的存储空间的容量一致,则获得存储目标虚拟设备的数据的存储空间的首地址;根据首地址和存储空间的容量,获得目标虚拟设备的数据;将目标虚拟设备的数据发送到第二前端处理器,使得第二前端处理器将本地数据库中的该目标虚拟设备的数据修改为第一前端处理器发送的目标虚拟设备的数据,以此提高数据的同步性和时效性。

【技术实现步骤摘要】
冗余前端处理器的数据同步方法、前端处理器和处理系统
本专利技术涉及数据传输
,特别是涉及一种冗余前端处理器的数据同步方法、前端处理器和处理系统。
技术介绍
在大型的通信网络系统中,都必须配有前端处理器。一般一台前端处理器就是一台计算机,主要具有的功能是:字符或数据的分段与重组,各终端之间的数据代码转换,错误检测与恢复,为不同终端提供协议支持,各终端之间的数据交换,轮询终端,公用电话网络中自动应答,编辑网上的统计资料等。有的前端处理器还需要支持边缘计算、软可编程逻辑控制器(PLC,ProgrammableLogicController)以及数据转发的功能。为了提高系统的可靠性,冗余前端处理器系统成为行业标配。冗余前端处理器系统在与设备或者子系统通信时,为了保持数据一致性或者为了避免通信链路通信冲突(例如RS485总线在同一时刻只允许有一个通信主站发起通信会话,若多个通信主站同时会话则会导致RS485链路冲突)。冗余前端处理器系统至少包括两个前端处理器(分别记为第一前端处理器和第二前端处理器),同一个实际的设备或子系统在两个前端处理器会分别映射有相应的一个虚拟设备。针对同一个实际的设备或子系统,同一个时刻仅有一个前端处理器的一个相应的虚拟设备实时通过各种接口协议从外部接口系统获得数据,通常需在该前端处理器本地以共享内存方式缓存数据,即对于同一个实际的设备或子系统,在同一个时刻仅能通过一个虚拟设备将数据更新至一个前端处理器的数据库中。为了保持冗余前端处理器系统中的前端处理器的各自数据库中的数据的实时性和同步性,目前一般是主用虚拟设备与设备或者子系统通信一段时间后,预留一段短暂的通信时间,在该时间内将通信权限交给备用虚拟设备,备用虚拟设备在该短暂的通信时间内与设备或者子系统通信,并获得相应数据并更新至本地数据库,从而实现第一前端处理器的本地数据库中的该设备或者子系统的数据与第二前端处理器的本地数据库中的该设备或者子系统的数据同步。这种方式,第一前端处理器的本地数据库中的设备或者子系统的数据与第二前端处理器的本地数据库中的设备或者子系统的数据的同步性和时效性较差,且每次同步的数据量有限。
技术实现思路
本专利技术实施例的目的在于提供一种冗余前端处理器的数据同步方法、前端处理器和处理系统,以提高第一前端处理器的本地数据库中的设备或者子系统的数据与第二前端处理器的本地数据库中的设备或者子系统的数据的同步性和时效性。具体技术方案如下:第一方面,一种冗余前端处理器的数据同步方法,包括:第一前端处理器获得第二前端处理器发送的数据同步请求,其中,所述数据同步请求至少包括:目标虚拟设备的标识、所述目标虚拟设备的数据版本号和用于存储所述目标虚拟设备的数据的存储空间的容量,其中,所述数据同步请求是所述第一前端处理器中的所述目标虚拟设备作为主用虚拟设备且在线且所述第二前端处理器中的所述目标虚拟设备作为备用虚拟设备时,所述第二前端处理器所发送的数据同步请求,或,所述第一前端处理器中的所述目标虚拟设备在线且所述第二前端处理器中的所述目标虚拟设备离线时,所述第二前端处理器所发送的数据同步请求,所述第一前端处理器与所述第二前端处理器为一对互相冗余的前端处理器;所述第一前端处理器从本地的配置信息库中搜索获得与所述目标虚拟设备标识对应的第一配置信息,所述第一配置信息至少包括数据版本号和存储空间的容量;若所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号一致,且所述第一配置信息中的存储空间的容量与所述数据同步请求中的存储空间的容量一致,则所述第一前端处理器获得存储所述目标虚拟设备的数据的存储空间的第一首地址,其中,所述存储所述目标虚拟设备的数据的存储空间位于第一数据库中;所述第一前端处理器根据所述第一首地址和所述存储空间的容量,获得所述第一数据库中存储的所述目标虚拟设备的数据,所述目标虚拟设备在所述第一数据库中的数据为以所述第一首地址开始,跨越所述存储空间的容量的存储区域中的数据;所述第一前端处理器将所述目标虚拟设备在所述第一数据库中的数据发送到所述第二前端处理器,使得所述第二前端处理器将第二数据库中的所述目标虚拟设备的数据修改为所述第一前端处理器发送的所述目标虚拟设备的数据。结合第一方面,在某些可选的实施方式中,在所述第一前端处理器获得存储所述目标虚拟设备的数据的存储空间的第一首地址之后,所述方法还包括:将所述第一首地址和所述存储空间的容量发送到所述第二前端处理器。可选的,在某些可选的实施方式中,所述第二前端处理器将第二数据库中的所述目标虚拟设备的数据修改为所述第一前端处理器发送的所述目标虚拟设备的数据,包括:所述第二前端处理器获得与所述第一首地址匹配的第二首地址,其中,所述第二首地址为第二数据库中存储所述目标虚拟设备的数据的存储空间的首地址;将所述第二数据库中以所述第二首地址开始,跨越所述存储空间的容量的存储区域中的数据修改为接收到的所述目标虚拟设备的数据。可选的,在某些可选的实施方式中,所述第二前端处理器获得与所述第一首地址匹配的第二首地址,包括:所述第二前端处理器从预先建立好的地址对照表中,获得与所述第一首地址匹配的第二首地址。结合第一方面,在某些可选的实施方式中,所述方法还包括:当所述第一前端处理器向所述第二前端处理器发送数据的次数达到预设次数时,所述第一前端处理器在预设时长内停止向所述第二前端处理器发送数据。结合第一方面,在某些可选的实施方式中,若所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号不一致,和/或,所述第一配置信息中的存储空间的容量与所述数据同步请求中的存储空间的容量不一致,则所述第一前端处理器向所述第二前端处理器发送所述第一配置信息中的数据版本号和所述第一配置信息中的存储空间的容量。第二方面,一种前端处理器,所述前端处理器包括:同步触发模块、配置搜索模块、配置比较模块、首地址获得模块、数据获得模块和数据发送模块;所述同步触发模块,用于获得第二前端处理器发送的数据同步请求,其中,所述数据同步请求至少包括:目标虚拟设备的标识、所述目标虚拟设备的数据版本号和用于存储所述目标虚拟设备的数据的存储空间的容量,其中,所述数据同步请求是所述第一前端处理器中的所述目标虚拟设备作为主用虚拟设备且在线且所述第二前端处理器中的所述目标虚拟设备作为备用虚拟设备时,所述第二前端处理器所发送的数据同步请求,或,所述第一前端处理器中的所述目标虚拟设备在线且所述第二前端处理器中的所述目标虚拟设备离线时,所述第二前端处理器所发送的数据同步请求,所述第一前端处理器与所述第二前端处理器为一对互相冗余的前端处理器;所述配置搜索模块,用于从本地的配置信息库中搜索获得与所述目标虚拟设备标识对应的第一配置信息,所述第一配置信息至少包括数据版本号和存储空间的容量;所述配置比较模块,用于确定是否所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号一致,且所述第一配置信息中的存储空间的容量与本文档来自技高网
...

【技术保护点】
1.一种冗余前端处理器的数据同步方法,其特征在于,包括:/n第一前端处理器获得第二前端处理器发送的数据同步请求,其中,所述数据同步请求至少包括:目标虚拟设备的标识、所述目标虚拟设备的数据版本号和用于存储所述目标虚拟设备的数据的存储空间的容量,其中,所述数据同步请求是所述第一前端处理器中的所述目标虚拟设备作为主用虚拟设备且在线且所述第二前端处理器中的所述目标虚拟设备作为备用虚拟设备时,所述第二前端处理器所发送的数据同步请求,或,所述第一前端处理器中的所述目标虚拟设备在线且所述第二前端处理器中的所述目标虚拟设备离线时,所述第二前端处理器所发送的数据同步请求,所述第一前端处理器与所述第二前端处理器为一对互相冗余的前端处理器;/n所述第一前端处理器从本地的配置信息库中搜索获得与所述目标虚拟设备标识对应的第一配置信息,所述第一配置信息至少包括数据版本号和存储空间的容量;/n若所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号一致,且所述第一配置信息中的存储空间的容量与所述数据同步请求中的存储空间的容量一致,则所述第一前端处理器获得存储所述目标虚拟设备的数据的存储空间的第一首地址,其中,所述存储所述目标虚拟设备的数据的存储空间位于第一数据库中;/n所述第一前端处理器根据所述第一首地址和所述存储空间的容量,获得所述第一数据库中存储的所述目标虚拟设备的数据,所述目标虚拟设备在所述第一数据库中的数据为以所述第一首地址开始,跨越所述存储空间的容量的存储区域中的数据;/n所述第一前端处理器将所述目标虚拟设备在所述第一数据库中的数据发送到所述第二前端处理器,使得所述第二前端处理器将第二数据库中的所述目标虚拟设备的数据修改为所述第一前端处理器发送的所述目标虚拟设备的数据。/n...

【技术特征摘要】
1.一种冗余前端处理器的数据同步方法,其特征在于,包括:
第一前端处理器获得第二前端处理器发送的数据同步请求,其中,所述数据同步请求至少包括:目标虚拟设备的标识、所述目标虚拟设备的数据版本号和用于存储所述目标虚拟设备的数据的存储空间的容量,其中,所述数据同步请求是所述第一前端处理器中的所述目标虚拟设备作为主用虚拟设备且在线且所述第二前端处理器中的所述目标虚拟设备作为备用虚拟设备时,所述第二前端处理器所发送的数据同步请求,或,所述第一前端处理器中的所述目标虚拟设备在线且所述第二前端处理器中的所述目标虚拟设备离线时,所述第二前端处理器所发送的数据同步请求,所述第一前端处理器与所述第二前端处理器为一对互相冗余的前端处理器;
所述第一前端处理器从本地的配置信息库中搜索获得与所述目标虚拟设备标识对应的第一配置信息,所述第一配置信息至少包括数据版本号和存储空间的容量;
若所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号一致,且所述第一配置信息中的存储空间的容量与所述数据同步请求中的存储空间的容量一致,则所述第一前端处理器获得存储所述目标虚拟设备的数据的存储空间的第一首地址,其中,所述存储所述目标虚拟设备的数据的存储空间位于第一数据库中;
所述第一前端处理器根据所述第一首地址和所述存储空间的容量,获得所述第一数据库中存储的所述目标虚拟设备的数据,所述目标虚拟设备在所述第一数据库中的数据为以所述第一首地址开始,跨越所述存储空间的容量的存储区域中的数据;
所述第一前端处理器将所述目标虚拟设备在所述第一数据库中的数据发送到所述第二前端处理器,使得所述第二前端处理器将第二数据库中的所述目标虚拟设备的数据修改为所述第一前端处理器发送的所述目标虚拟设备的数据。


2.根据权利要求1所述的方法,其特征在于,在所述第一前端处理器获得存储所述目标虚拟设备的数据的存储空间的第一首地址之后,所述方法还包括:
将所述第一首地址和所述存储空间的容量发送到所述第二前端处理器。


3.根据权利要求2所述的方法,其特征在于,所述第二前端处理器将第二数据库中的所述目标虚拟设备的数据修改为所述第一前端处理器发送的所述目标虚拟设备的数据,包括:
所述第二前端处理器获得与所述第一首地址匹配的第二首地址,其中,所述第二首地址为第二数据库中存储所述目标虚拟设备的数据的存储空间的首地址;
将所述第二数据库中以所述第二首地址开始,跨越所述存储空间的容量的存储区域中的数据修改为接收到的所述目标虚拟设备的数据。


4.根据权利要求3所述的方法,其特征在于,所述第二前端处理器获得与所述第一首地址匹配的第二首地址,包括:
所述第二前端处理器从预先建立好的地址对照表中,获得与所述第一首地址匹配的第二首地址。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一前端处理器向所述第二前端处理器发送数据的次数达到预设次数时,所述第一前端处理器在预设时长内停止向所述第二前端处理器发送数据。


6.根据权利要求1所述的方法,其特征在于,若所述第一配置信息中的数据版本号与所述数据同步请求中的数据版本号不一致,和/或,所述第一配置信息中的存储空间的容量与所述数据同步请求中的存储空间的容量不一致,则所述第一前端处理器向所述第二前端处理器发送所述第一配置信息中的数据版本号和所述第一配置信息中的存储空间的容量。


7.一种前端处理器,其特征在于,所述前端处理器包括:同步触发模块、配置搜索模块、配置比较模块、首地址获得模块、数据获得模块和数据发送模块;
所述同步触发模块,用于获得第二前端处理器发送的数据同步请求,其中,所述数据同步请求至少包括:目标虚拟设备的标识、所述目标虚拟设备的数据版本号和用于存储所述目标虚拟设备的数据的存储空间的容量,其中,所述数据同步请求是所述第一前端处理器中的所述目标虚拟设备作为主用虚拟设备且在线且所述第二前端处理器中的所述目标虚拟设备作为备用虚拟设备时,所述第二前端处理器所发送的数据同步请求,或,所述第一前端处理器中的所述目标虚...

【专利技术属性】
技术研发人员:贺学文陈斌宋小莉熊辉李剑张保航房茂彬于龙
申请(专利权)人:北京和利时系统工程有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1