System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,具体而言,涉及一种报文识别方法、装置、电子设备及存储介质。
技术介绍
1、nat(network address translation,网络地址转换)是一种在计算机网络中常用的技术,它用于将内部网络的私有ip地址映射到外部网络的公共ip地址。随着互联网技术的普及和发展,很多业务需要用到网络地址转换技术。而目前的网关设备不具备网络地址转换技术的识别方法,造成对于已经进行网络地址转换处理的报文再次进行地址转换处理,导致nat穿越失效,造成部分报文传输延迟或者无法通信等问题。
技术实现思路
1、本申请实施例的目的在于一种报文识别方法、装置、电子设备及存储介质,用于解决目前的网关设备不具备网络地址转换技术的识别方法,导致nat穿越失效,造成部分报文传输延迟或者无法通信等问题。
2、第一方面,本申请实施例提供了一种报文识别方法,应用于网关设备,包括:获取预先创建的正规则链表以及待识别报文;正规则链表中存储有地址转换识别规则;地址转换识别规则用于检测报文是否进行了网络地址转换处理;遍历正规则链表,将地址转换识别规则与待识别报文进行匹配,识别待识别报文是否进行网络地址转换处理。
3、在上述的实现过程中,通过遍历所述正规则链表中的地址转换识别规则,将地址转换识别规则与待识别报文进行匹配,识别待识别报文是否进行网络地址转换处理。改善因网关设备无法识别网络地址转换技术,造成部分报文传输延迟或者无法通信等问题,提高报文处理的稳定性。
4、可选的,在本
5、在上述的实现过程中,在系统初始化时,首先将预设的地址转换识别规则,存储至副规则链表指针指向的链表,以防直接存储至需要进行报文匹配的正规则链表中,造成数据存储失败,或者影响正在报文匹配的问题,并且利用链表的优点,插入操作和删除操作的效率较高,提高操作的安全性和高效性。
6、可选的,在本申请实施例中,获取预先创建的正规则链表,包括:通过正规则链表指针,获取正规则链表指针指向的正规则链表。
7、在上述的实现过程中,通过正规则链表指针获取正规则链表效率更加快,且可以做到安全高效操作。
8、可选的,在本申请实施例中,替换正规则链表指针和副规则链表指针,包括:对第一链表和第二链表进行加锁处理;在第一链表和第二链表持有锁的情况下,利用预先创建的临时指针变量,替换正规则链表指针和副规则链表指针,使正规则链表指针和副规则链表指针指向的链表互换;对第一链表和第二链表进行解锁。
9、在上述的实现过程中,通过替换正规则链表指针和副规则链表指针之前,对第一链表和第二链表进行加锁处理,以使线程在替换操作时能够执行完整,不会被其他线程中断或干扰替换操作。并且对于被锁的链表,只有进行替换的线程可以获得对链表的操作权限,一定程度上避免在此时进行报文匹配,出现数据不一致或者结构错误的情况。提高了报文识别的准确性和稳定性。
10、可选的,在本申请实施例中,方法还包括:获取更新规则库中的更新识别规则;更新规则库用于更新地址转换识别规则;获取副规则链表指针指向的链表;将更新识别规则存储至副规则链表指针指向的链表;将正规则链表指针和副规则链表指针指向的链表互换,以使正规则链表指针指向存储有更新识别规则的链表;将正规则链表指针指向的、存储有更新识别规则的链表作为正规则链表;遍历正规则链表,将地址转换识别规则与待识别报文进行匹配,包括:遍历正规则链表,将更新识别规则与待识别报文进行匹配。
11、在上述的实现过程中,在对利用更新识别规则对地址转换识别规则进行更新之后,后续对待识别报文进行匹配均使用更新后的更新识别规则进行匹配,以使在无需重启网关设备的情况下,更新地址转换识别规则。且更新的过程是先将更新识别规则存储至副规则链表指针指向的链表,对于正规则链表指针指向的进行报文识别的链表影响很小,从而降低对报文识别的影响,提高网关设备识别报文的稳定性。
12、可选的,在本申请实施例中,遍历正规则链表,将地址转换识别规则与待识别报文进行匹配,识别待识别报文是否进行网络地址转换处理,包括:对待识别报文进行解析,获得预设字段;按照预设的顺序遍历正规则链表中的地址转换识别规则,对每条地址转换识别规则与预设字段进行比较;若预设字段与地址转换识别规则匹配成功,则表征待识别报文已进行网络地址转换处理;若预设字段与地址转换识别规则匹配失败,则表征待识别报文未进行网络地址转换处理。
13、在上述的实现过程中,网关设备通过遍历正规则链表中的地址转换识别规则,对每条地址转换识别规则与预设字段进行比较,判断待识别报文是否进行网络地址转换处理,对待识别报文进行准确的判断,提高报文通信的稳定性。
14、可选的,在本申请实施例中,在识别待识别报文是否进行网络地址转换处理之后,方法还包括:若识别到待识别报文已进行网络地址转换处理,则解析获得待识别报文中的源ip地址和源端口;根据源ip地址和源端口,创建期待条目;期待条目包括用于进行网络地址转换处理的映射规则,映射规则包括目的ip地址和目的端口;基于目的ip地址和目的端口,发送待识别报文。
15、在上述的实现过程中,通过网关设备识别待识别报文是否进行网络地址转换处理,若已经进行过网络地址转换处理,根据源ip地址和源端口,创建期待条目,以使处理待识别报文,提高待识别报文的稳定性。
16、第二方面,本申请实施例还提供了一种报文识别装置,包括:获取报文模块,用于获取预先创建的正规则链表以及待识别报文;正规则链表中存储有地址转换识别规则;地址转换识别规则用于检测报文是否进行了网络地址转换处理;识别模块,用于遍历正规则链表,将地址转换识别规则与待识别报文进行匹配,识别待识别报文是否进行网络地址转换处理。
17、第三方面,本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
18、第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上面描述的方法。
19、采用本申请提供报文识别方法、装置、电子设备及存储介质,通过遍历所述正规则链表中的地址转换识别规则,将地址转换识别规则与待识别报文进行匹配,识别待识别报文是否进行网络地址转换处理。改善因网关设备无法识别网络地址转换技术,造本文档来自技高网...
【技术保护点】
1.一种报文识别方法,其特征在于,应用于网关设备,包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取预先创建的正规则链表之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述获取预先创建的正规则链表,包括:
4.根据权利要求2所述的方法,其特征在于,所述替换所述正规则链表指针和所述副规则链表指针,包括:
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述遍历所述正规则链表,将所述地址转换识别规则与所述待识别报文进行匹配,识别所述待识别报文是否进行网络地址转换处理,包括:
7.根据权利要求1-6任一所述的方法,其特征在于,在所述识别所述待识别报文是否进行网络地址转换处理之后,所述方法还包括:
8.一种报文识别装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。
>10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。
...【技术特征摘要】
1.一种报文识别方法,其特征在于,应用于网关设备,包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取预先创建的正规则链表之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述获取预先创建的正规则链表,包括:
4.根据权利要求2所述的方法,其特征在于,所述替换所述正规则链表指针和所述副规则链表指针,包括:
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述遍历所述正规则链表,将所述地址转换识别规则与所述待识别报文进行匹配,识别所述...
【专利技术属性】
技术研发人员:谭海军,张涛,李志升,
申请(专利权)人:北京天融信网络安全技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。