一种丢包自动检测系统及方法技术方案

技术编号:19780685 阅读:44 留言:0更新日期:2018-12-15 11:58
本发明专利技术涉及一种丢包自动检测系统及方法,该系统包括报文存储模块、SN定位模块、报文检测模块和日志记录模块,所述的报文存储模块和SN定位模块设在与外部设备物理连接的通信板上;所述的报文检测模块和日志记录模块设在逻辑板多个消息处理模块上;所述的SN定位模块定位成功后,所述的报文检测模块和日志记录模块被触发。与现有技术相比,本发明专利技术具有自动化、应用范围更广等优点。

【技术实现步骤摘要】
一种丢包自动检测系统及方法
本专利技术涉及丢包检测领域,尤其是涉及一种丢包自动检测系统及方法。
技术介绍
为了提高复用性,越来越多的系统采用应用+平台的架构,平台为运行在它之上的应用提供与外部设备的通信,将从外部设备收到的消息经过过滤,解析,协议处理后提供给上层应用。这中间经过网络,交换机,网卡多个硬件设备,驱动,平台软件多个模块处理,每个环节都有可能发生消息包丢失,进而造成通信中断,影响系统运营。当系统运营中如若真的发生通信中断,需要先确认是否发生丢包,迫切需要一种自动丢包检测方法,快速确认是否丢包,丢包环节和原因。目前,丢包检测都是借助于抓包工具,在现场部署抓包环境,收集大量的通信包分析,再结合系统日志,过程繁琐,而且如果是系统内部丢包,定位困难。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种丢包自动检测系统及方法。本专利技术的目的可以通过以下技术方案来实现:一种丢包自动检测系统,该系统分别与通信板和逻辑板连接,该系统包括报文存储模块、SN定位模块、报文检测模块和日志记录模块,所述的报文存储模块和SN定位模块设在与外部设备物理连接的通信板上;所述的报文检测模块和日志记录模块设在逻辑板多个消息处理模块上;所述的SN定位模块定位成功后,所述的报文检测模块和日志记录模块被触发。优选地,所述的报文存储模块的工作内容包括:所述的报文存储模块从外部每个通道接收到数据后,分开存储到不同空间,报文存储数目达到预设值则触发SN定位模块,若所述的SN定位模块定位失败,所述的报文存储模块继续存储消息直到成功找到SN或者超时。优选地,所述的SN定位模块的工作内容包括:遍历存储数据,找到符合递增序列且总和等于固定值的SN位置,记录SN位置和当前SN值,将SN定位值标记为成功。优选地,所述的报文检测模块的工作内容包括:识别SN成功学习标识,对报文SN值的连续性进行检查。优选地,所述的日志记录模块的工作内容包括:当发现SN值异常时报警,并将模块名、通道号和序列号等信息记录下来便于故障定位。一种所述的丢包自动检测系统的方法,包括以下步骤:步骤1、从外部某个通道上收到数据后,先将数据存储起来,报文个数到达预设值后进行SN定位;步骤2、从消息头扫描预设大小的存储数据每个bit位,若找到符合规则的bit位,则结束SN学习,并标识成功标志,记录SN位置和SN当前值,并执行步骤3;否则转步骤1;步骤3、若SN学习标识为成功,则将后续收到的消息包的SN值与上次接收到SN值进行比较,若连续则通信传输正常;如SN值相同则报文重复;其它情况则为乱序或者丢包,转步骤4;步骤4:触发日志模块,记录检测失败信息;步骤5:无论学习或者SN检测是否成功,都要将从外部收到的数据流转到下一个模块处理,并最后提交给上层应用。优选地,所述的方法还可用于对外输出流程中的消息检测。优选地,所述的方法还可用于系统通信性能测试。优选地,所述的SN值的规则不限于递增序列。与现有技术相比,本专利技术具有以下优点:1、自动化:当发生报文在传输过程中发生丢失,重复,乱序甚至延迟时,自动报警并记录错误信息,便于故障排查和分析定位。2、应用范围更广:无需额外的辅助设备,不管是外部传输中,还是系统内容;不管是通过网络消,还是串口,CAN总线传输只要符合规则都可以应用;即使不符合规则,在测试中也可以模拟负责规则的数据来验证系统各个环境数据流的无损传递。附图说明图1为本专利技术的系统结构示意图;图2为本专利技术的方法流程图。具体实施方式下面将对本专利技术实施例中的技术方案进行清楚,完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。本专利技术的原理:根据系统设计,每个通道连接上的消息报文都会包含一个序列号,每发送一条消息该值递增,从初始值累加到最大值,再从0重新累加。由此判定该序列号最后一个bit的数值(SN)会出现从0到255递增序列。根据此规则遍历256包消息报文,定位到SN的位置和记录当前值。如果成功学习到SN,对于之后收到的消息报文通过检查当前SN值和上次的SN值的连续性,判断SN值是否正确:若当前SN值是上次SN值的递增,包括累加和最大值的翻转两种情况,则判定SN正确,再通过两条报文时间差判定通信是否正常;若这两个数值相等,则可判定收到重复消息报文;若这两个值既不是递增关系又不相等,则判定消息报文丢失或者乱序。若发现消息报文重复,丢失,乱序,延迟则认为通信异常,报警并记录关键信息用于故障定位。在外部消息入口处需要收集报文,定位SN,标识SN成功学习标识和位置,并流向在系统内部后根据SN信息来确认报文传输是否发生异常。如图1所示,本专利技术包含通信报文存储模块,SN定位模块,报文检测模块,日志记录模块四部分,其中报文存储和SN定位两个模块部署在与外部设备物理相连的通信板上即外部数据入口处;除了通信板,在逻辑板多个消息处理模块部署了报文检测模块和日志记录模块,当SN定位成功后,这两个模块才会被触发。如图2所示,针对外部输入流程中的消息检测,应用于现场故障记录定位,SN值规则为递增序列,为实施例的本专利技术的方法流程:步骤1:从外部设备接收到消息报文后,将不同连接通道的报文分类存储,存储数目达到256个则转步骤2;若是系统内部消息处理模块则转步骤3;步骤2:遍历256个通信报文,根据预设值,以数据内容的Bit位为单位进行扫描,找到符合规则bit位,即SN。若成功学习到SN后,标识成功标识,SN位置,转步骤3,否则转步骤1,其中若尝试多次数都失败则放弃学习;步骤3:若SN学习标识为成功,则将后续收到的消息包的SN值与上次接收到SN值进行比较,若连续则通信传输正常;如SN值相同则报文重复;其它情况则为乱序或者丢包,转步骤4;步骤4:触发日志模块,记录检测失败信息;步骤5:无论学习或者SN检测是否成功,都要将从外部收到的数据流转到下一个模块处理,并最后提交给上层应用。以上所述,仅为本专利技术的具体实施方式,但本专利技术的保护范围并不局限于此,任何熟悉本
的技术人员在本专利技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本专利技术的保护范围之内。因此,本专利技术的保护范围应以权利要求的保护范围为准。本文档来自技高网
...

【技术保护点】
1.一种丢包自动检测系统,该系统分别与通信板和逻辑板连接,其特征在于,该系统包括报文存储模块、SN定位模块、报文检测模块和日志记录模块,所述的报文存储模块和SN定位模块设在与外部设备物理连接的通信板上;所述的报文检测模块和日志记录模块设在逻辑板多个消息处理模块上;所述的SN定位模块定位成功后,所述的报文检测模块和日志记录模块被触发。

【技术特征摘要】
1.一种丢包自动检测系统,该系统分别与通信板和逻辑板连接,其特征在于,该系统包括报文存储模块、SN定位模块、报文检测模块和日志记录模块,所述的报文存储模块和SN定位模块设在与外部设备物理连接的通信板上;所述的报文检测模块和日志记录模块设在逻辑板多个消息处理模块上;所述的SN定位模块定位成功后,所述的报文检测模块和日志记录模块被触发。2.根据权利要求1所述的一种丢包自动检测系统,其特征在于,所述的报文存储模块的工作内容包括:所述的报文存储模块从外部每个通道接收到数据后,分开存储到不同空间,报文存储数目达到预设值则触发SN定位模块,若所述的SN定位模块定位失败,所述的报文存储模块继续存储消息直到成功找到SN或者超时。3.根据权利要求1所述的一种丢包自动检测系统,其特征在于,所述的SN定位模块的工作内容包括:遍历存储数据,找到符合递增序列且总和等于固定值的SN位置,记录SN位置和当前SN值,将SN定位值标记为成功。4.根据权利要求1所述的一种丢包自动检测系统,其特征在于,所述的报文检测模块的工作内容包括:识别SN成功学习标识,对报文SN值的连续性进行检查。5.根据权利要求1所述的一种丢包自动检测系统,其...

【专利技术属性】
技术研发人员:郭延霞张磊陈晓轩方永佳瞿玲燕郭舟兰青辉
申请(专利权)人:卡斯柯信号有限公司
类型:发明
国别省市:上海,31

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

1