一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

报文处理方法、装置、电子设备及计算机可读存储介质与流程

2022-10-26 04:43:38 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,具体而言,涉及一种报文处理方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.防火墙位于tcp(transmission control protocol,传输控制协议)客户端与tcp服务器之间。且在防火墙上,一般会延迟几秒删除tcp会话,从而让tcp乱序或重传的报文在防火墙上能在tcp会话被删除前成功匹配到该tcp会话,以避免该报文尝试建立新的tcp会话。
3.如果在这段延迟删除的时间,tcp会话连接被重用(即tcp会话在最后一个ack报文发出后尽快重用,不用经过等待状态),新的tcp连接的前几个报文则会在防火墙上匹配到处于延迟删除状态的tcp会话,这几个报文则会被防火墙放行。但是,因该tcp会话在延迟删除状态结束后,会被马上删除,且新的tcp连接的用于建立tcp会话的报文已被放行,则会使得新的tcp连接的后续报文到达防火墙后,匹配不到会话,且无法建立新的会话。此时,新的tcp连接上的后续报文都会被丢弃,从而会导致业务不通。


技术实现要素:

4.本技术实施例的目的在于提供一种报文处理方法、装置、电子设备及计算机可读存储介质,以在防火墙中,对处于等待删除状态的tcp连接进行重用操作的时间段内,能保证新的tcp连接的报文能顺利通过防火墙,从而能保证业务能畅通进行。
5.本发明是这样实现的:
6.第一方面,本技术实施例提供一种报文处理方法,应用于防火墙的业务卡,所述方法包括:在对处于等待删除状态的tcp连接进行重用操作的时间段内,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,且所述目标tcp会话为所述tcp连接中唯一的会话;通过所述目标tcp会话将所述报文转发出去,并使所述目标tcp会话将所述tcp连接上的后续报文均转发出去。
7.在本技术实施例中,在对处于等待删除状态的tcp连接进行重用操作的时间段内,且检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,能通过该目标tcp会话将用于建立tcp连接的报文转发出去,并使新的tcp连接的后续报文均能匹配命中目标tcp会话,并通过该目标tcp会话转发出去。通过该方式,能避免在新的tcp会话发出的用于建立tcp连接的报文后,因该报文匹配命中处于等待删除状态的tcp会话后,被转发出去,而未建立新的tcp会话,使得在处于等待删除状态的tcp会话被删除后,新的tcp连接的后续报文匹配不到新的会话,从而能保证新的tcp连接上的报文均能顺利从防火墙上转发出去,进而能保证业务畅通进行。
8.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述生成处于初始状态的目标tcp会话,包括:删除所述处于延迟删除状态的tcp会话;新建tcp会话,该tcp
会话为所述目标tcp会话。
9.在本技术实施例中,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,删除处于延时状态的tcp会话,并建立新的tcp会话,即新的tcp会话的状态已不再是处于延迟删除的状态,能使新的tcp连接上的报文均能匹配至新的tcp会话,并由该tcp会话顺利的从防火墙上转发出去。并且,通过删除处于延迟删除状态的tcp会话,能避免防火墙上出现两个一模一样的会话,使得新的报文不知道应该匹配命中哪一个会话,从而出现错误。此外,在现有技术中,均是设置处于延时删除状态的tcp会话将用于建立tcp连接的报文丢弃,使得tcp主动发起新连接方通过tcp重传机制再次发送用于建立tcp连接的报文,通过该报文建立新的tcp会话,以将后续报文均通过该tcp会话转发出去。而通过直接删除处于延迟删除状态的tcp会话,以及新建tcp会话,能避免在重传报文后才建立新的tcp会话,进而能避免降低tcp会话的新建速度,从而降低网络整体的处理性能。
10.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述生成处于初始状态的目标tcp会话,包括:对所述处于延迟删除状态的tcp会话进行初始化操作,且经过初始化操作后的tcp会话为所述目标tcp会话。
11.在本技术实施例中,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,通过对处于延迟删除状态的tcp会话进行初始化操作,能使该tcp会话的状态不再为处于延迟删除状态,从而能保证新的tcp连接的报文均能匹配命中该tcp会话,并通过该tcp会话顺利转发出去。
12.结合上述第一方面提供的技术方案,在一些可能的实现方式中,当所述防火墙中存在至少一个存储有与所述处于延迟删除状态的tcp会话对应的内容的业务板卡和/或io板卡时,所述方法还包括:向每个所述业务板卡和/或每个所述io板卡发送删除消息,所述删除消息包括删除与所述处于延迟删除状态的tcp会话对应的内容的信息。
13.在本技术实施例中,通过上述方式,能将防火墙上的其他板卡和/或io板卡中存储的与处于延迟删除状态的tcp会话对应的内容删除,从而能避免防火墙上的其他板卡和/或io板卡上存在过时的和错误的会话信息,进而引起相关错误。
14.结合上述第一方面提供的技术方案,在一些可能的实现方式中,当所述防火墙存在至少一个存储有与所述处于延迟删除状态的tcp会话对应的内容的业务板卡和/或io板卡时,所述方法还包括:向每个所述业务板卡和/或每个所述io板卡发送初始化消息,所述初始化消息包括对与所述处于延迟删除状态的tcp会话对应的内容进行初始化操作的信息。
15.在本技术实施例中,通过上述方式,能将防火墙上的其他板卡和/或io板卡中存储的与处于延迟删除状态的tcp会话对应的内容通过初始化操作清空,从而能避免防火墙上的其他板卡和/或io板卡上存在过时的和错误的会话信息,进而引起相关错误。
16.结合上述第一方面提供的技术方案,在一些可能的实现方式中,在所述检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话之前,所述方法还包括:接收用于对所述报文进行处理的指令。
17.在本技术实施例中,通过在接收到用于对报文进行处理的指令后,才开始检测到用于建立tcp连接的报文是否匹配到处于延迟删除状态的tcp会话,以及进行后续报文处理步骤,能够按照用户的需求对防火墙上的报文进行相应的处理。
18.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述对处于等待删除状态的tcp连接进行重用操作的时间段为开启tcp_tw_reuse开关的时间段。
19.第二方面,本技术实施例提供一种报文处理装置,应用于防火墙,所述装置包括:获取模块,用于在对处于等待删除状态的tcp连接进行重用操作的时间段内,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,且所述目标tcp会话为所述tcp连接中唯一的会话;处理模块,用于通过所述目标tcp会话将所述报文转发出去,并使所述目标tcp会话将所述tcp连接上的后续报文均转发出去。
20.第三方面,本技术实施例提供一种电子设备,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于调用存储在所述存储器中的程序,执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
21.第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
附图说明
22.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
23.图1为本技术实施例提供的一种报文处理方法的步骤流程图。
24.图2为本技术实施例提供的一种报文处理装置的模块框图。
25.图3为本技术实施例提供的一种电子设备的模块框图。
具体实施方式
26.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
27.鉴于在处于等待删除状态的tcp连接进行重用操作的时间段内,新的tcp连接的前几个报文会在防火墙上匹配到处于延迟删除状态的tcp会话,使得该报文通过该tcp会话转发出去,而未建立新的会话。在处于延迟删除状态的tcp会话被删除后,新的tcp连接的后续报文将匹配不到tcp会话,从而导致新的tcp连接上的后续报文都会被丢弃,进而使得业务不通。本技术发明人经过研究探索,提出以下实施例以解决上述问题。
28.以下结合图1对一种报文处理方法的具体流程及步骤进行描述。本技术实施例提供一种报文处理方法,可应用于防火墙的业务卡。
29.需要说明的是,本技术实施例提供的报文处理方法不以图1及以下所示的顺序为限制。
30.步骤s101:在对处于等待删除状态的tcp连接进行重用操作的时间段内,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,且目标tcp会话为tcp连接中唯一的会话。
31.其中,用于建立tcp连接的报文可为tcp syn(synchronize)报文,即tcp三次握手过程中的首个报文。
32.可选的,在检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话之前,上述报文处理方法还可包括:接收用于对报文进行处理的指令。
33.需要说明的是,可在防火墙上增加一个全局配置开关用于开启或关闭上述的报文处理方法,即在选择开启该全局配置开关时,防火墙的业务卡接收到用于对报文进行处理的指令,此时,开始进行步骤s101;以及,在选择关闭该全局配置开关时,防火墙的业务卡会接收到用于停止对报文进行处理的指令,此时,则停止执行该报文处理方法。
34.进一步,用户可通过与防火墙连接的电子设备控制全局配置开关的开启与关闭,比如:与防火墙连接的计算机上设置有与该全局配置开关对应的按钮,用户则可通过点击计算机显示界面上的该按钮,开启或关闭该全局配置开关。此外,用户还可通过远程计算机登录到防火墙,通过执行命令行配置控制全局配置开关的开启与关闭,比如:在命令行界面输入表征控制全局配置开关开启或关闭的字符串后回车即可。
35.在本技术实施例中,通过在接收到用于对报文进行处理的指令后,才开始检测到用于建立tcp连接的报文是否匹配到处于延迟删除状态的tcp会话,以及进行后续报文处理步骤,能够按照用户的需求对防火墙上的报文进行相应的处理。
36.进一步,对处于等待删除状态的tcp连接进行重用操作的时间段可以为开启tcp_tw_reuse开关的时间段。
37.其中,tcp_tw_reuse开关为linux操作系统中的net.ipv4.tcp_tw_reuse开关。当tcp_tw_reuse开关开启时,表示可以将处于等待状态(即time_wait状态)的tcp主动关闭连接方的套接字(sockets)重新用于新的tcp连接。
38.具体的,当tcp_tw_reuse开关开启时,在tcp主动关闭连接方发出最后一个ack报文的1秒后,就可以将tcp主动关闭连接方的套接字重新用于新的tcp连接,而无需等待2msl(maximum segment lifetime,报文最大生存时间)后,才可将本端的tcp连接彻底关闭。需要说明的是,tcp_tw_reuse开关的具体原理可参考现有技术中的原理,避免赘述,此处不再说明。
39.可以理解的是,在tcp协议断开连接时,只有tcp主动关闭连接方才有等待状态,tcp被动关闭连接方则没有等待状态。因此,当tcp主动关闭连接方为tcp客户端时,则可由tcp客户端控制上述tcp_tw_reuse开关的开启与关闭。相应的,当tcp主动关闭连接方为tcp服务器时,则可由tcp服务器控制上述tcp_tw_reuse开关的开启与关闭。
40.作为一种可选的实施方式,生成处于初始状态的目标tcp会话可具体包括:删除处于延迟删除状态的tcp会话;新建tcp会话,该tcp会话为目标tcp会话。
41.其中,建立tcp会话的具体原理可参考现有技术中的原理,避免赘述,此处不再说明。
42.在本技术实施例中,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,删除处于延时状态的tcp会话,并建立新的tcp会话,即新的tcp会话的状态已不再是处于延迟删除的状态,能使新的tcp连接上的报文均能匹配至新的tcp会话,并由该tcp会话顺利的从防火墙上转发出去。并且,通过删除处于延迟删除状态的tcp会话,能避免防火墙上出现两个一模一样的会话,使得新的报文不知道应该匹配命中哪一个会话,从而
出现错误。
43.此外,在现有技术中,均是设置处于延时删除状态的tcp会话将用于建立tcp连接的报文丢弃,使得tcp主动发起新连接方通过tcp重传机制再次发送用于建立tcp连接的报文,通过该报文建立新的tcp会话,以将后续报文均通过该tcp会话转发出去。而通过直接删除处于延迟删除状态的tcp会话,以及新建tcp会话,能避免在重传报文后才建立新的tcp会话,进而能避免降低tcp会话的新建速度,从而降低网络整体的处理性能。
44.作为另一种可选的实施方式,生成处于初始状态的目标tcp会话可具体包括:对处于延迟删除状态的tcp会话进行初始化操作,且经过初始化操作后的tcp会话为目标tcp会话。
45.其中,对处于延迟删除状态的tcp会话进行初始化操作的具体原理可参考现有技术中的原理,避免赘述,此处不再说明。
46.在本技术实施例中,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,通过对处于延迟删除状态的tcp会话进行初始化操作,能使该tcp会话的状态不再为处于延迟删除状态,从而能保证新的tcp连接的报文均能匹配命中该tcp会话,并通过该tcp会话顺利转发出去。
47.在生成处于初始状态的目标tcp会话之后,若防火墙上的其他板卡和/或io板卡上存储有与处于延迟删除状态的tcp会话对应的内容,则可对该板卡和/或io板卡上的该内容进行删除。
48.具体的,向每个业务板卡和/或每个io板卡发送删除消息,删除消息包括删除与处于延迟删除状态的tcp会话对应的内容的信息。
49.在本技术实施例中,通过上述方式,能将防火墙上的其他板卡和/或io板卡中存储的与处于延迟删除状态的tcp会话对应的内容删除,从而能避免防火墙上的其他板卡和/或io板卡上存在过时的和错误的会话信息,进而引起相关错误。
50.可选的,当防火墙存在至少一个存储有与处于延迟删除状态的tcp会话对应的内容的业务板卡和/或io板卡时,上述报文处理方法还可包括:向每个业务板卡和/或每个io板卡发送初始化消息,初始化消息包括对与处于延迟删除状态的tcp会话对应的内容进行初始化操作的信息。
51.在本技术实施例中,通过上述方式,能将防火墙上的其他板卡和/或io板卡中存储的与处于延迟删除状态的tcp会话对应的内容清空,从而能避免防火墙上的其他板卡和/或io板卡上存在过时的和错误的会话信息,进而引起相关错误。
52.在生成处于初始状态的目标tcp会话之后,本方法可继续进行步骤s102。
53.步骤s102:通过目标tcp会话将报文转发出去,并使目标tcp会话将tcp连接上的后续报文均转发出去。
54.在本技术实施例中,在对处于等待删除状态的tcp连接进行重用操作的时间段内,且检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,能通过该目标tcp会话将用于建立tcp连接的报文转发出去,并使新的tcp连接的后续报文均能匹配命中目标tcp会话,并通过该目标tcp会话转发出去。
55.通过上述方式,能避免在新的tcp会话发出的用于建立tcp连接的报文后,因该报文匹配命中处于等待删除状态的tcp会话后,被转发出去,而未建立新的tcp会话,使得在处
于等待删除状态的tcp会话被删除后,新的tcp连接的后续报文无法建立新的tcp会话,且匹配不到新的会话,从而能保证新的tcp连接上的报文均能顺利从防火墙上转发出去,进而能保证业务畅通进行。
56.请参阅图2,基于同一发明构思,本技术实施例还提供一种报文处理装置100,该装置100包括:生成模块101和处理模块102。
57.生成模块101,用于在对处于等待删除状态的tcp连接进行重用操作的时间段内,当检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话时,生成处于初始状态的目标tcp会话,且目标tcp会话为tcp连接中唯一的会话。
58.处理模块102,用于通过目标tcp会话将报文转发出去,并使目标tcp会话将tcp连接上的后续报文均转发出去。
59.可选的,生成模块101具体用于删除处于延迟删除状态的tcp会话;新建tcp会话,该tcp会话为目标tcp会话。
60.可选的,生成模块101具体用于对处于延迟删除状态的tcp会话进行初始化操作,且经过初始化操作后的tcp会话为目标tcp会话。
61.可选的,当防火墙中存在至少一个存储有与处于延迟删除状态的tcp会话对应的内容的业务板卡和/或io板卡时,处理模块102还用于向每个业务板卡和/或每个io板卡发送删除消息,删除消息包括删除与处于延迟删除状态的tcp会话对应的内容的信息。
62.可选的,当防火墙存在至少一个存储有与处于延迟删除状态的tcp会话对应的内容的业务板卡和/或io板卡时,处理模块102还用于向每个业务板卡和/或每个io板卡发送初始化消息,初始化消息包括对与处于延迟删除状态的tcp会话对应的内容进行初始化操作的信息。
63.可选的,报文处理装置100还包括获取模块103,在检测到用于建立tcp连接的报文匹配到处于延迟删除状态的tcp会话之前,获取模块103用于接收用于对报文进行处理的指令。
64.请参阅图3,基于同一发明构思,本技术实施例提供的一种电子设备200的示意性结构框图,该电子设备200可用于实施上述的一种报文处理方法。本技术实施例中,电子设备200可以是,但不限于个人计算机(personal computer,pc)、智能手机、平板电脑、个人数字助理(personal digital assistant,pda)、移动上网设备(mobile internet device,mid)等。在结构上,电子设备200可以包括处理器210和存储器220。
65.处理器210与存储器220直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。其中,处理器210可以是一种集成电路芯片,具有信号处理能力。处理器210也可以是通用处理器,例如,可以是中央处理器(central processing unit,cpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
66.存储器220可以是,但不限于,随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦可编程序只读存储器(erasable programmable read-only memory,
eprom),以及电可擦编程只读存储器(electric erasable programmable read-only memory,eeprom)。存储器220用于存储程序,处理器210在接收到执行指令后,执行该程序。
67.应当理解,图3所示的结构仅为示意,本技术实施例提供的电子设备200还可以具有比图3更少或更多的组件,或是具有与图3所示不同的配置。此外,图3所示的各组件可以通过软件、硬件或其组合实现。
68.需要说明的是,由于所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
69.基于同一发明构思,本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被运行时执行上述实施例中提供的方法。
70.该存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
71.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
72.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
73.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
74.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献