CN108737208B - 基于安全网关深度包检测的连接同步方法、装置及计算机 - Google Patents
基于安全网关深度包检测的连接同步方法、装置及计算机 Download PDFInfo
- Publication number
- CN108737208B CN108737208B CN201810235070.3A CN201810235070A CN108737208B CN 108737208 B CN108737208 B CN 108737208B CN 201810235070 A CN201810235070 A CN 201810235070A CN 108737208 B CN108737208 B CN 108737208B
- Authority
- CN
- China
- Prior art keywords
- message queue
- length
- message
- queue information
- rate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/028—Capturing of monitoring data by filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于安全网关深度包检测的连接同步方法、装置及计算机,所述方法包括:消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;所述消息发送端根据所述新建消息速率与所述删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。本发明实现最大限度地提高删除消息队列的吞吐机制和最大限度的减少新建消息的延迟机制,提高了双机系统中对于DPI应用的可靠性。
Description
技术领域
本发明涉及网络通信和网络安全领域,具体涉及一种基于安全网关深度包检测的连接同步方法、装置、计算机设备及计算机可读存储介质。
背景技术
在现有的各类网络环境中,安全网关作为重要的网络安全设备,一般都采用双机冗余备份模式。在实际使用中,由于应用和的连接信息同步到备份设备即备份防火墙,且在进行主安全网关软件代码的日益复杂,安全网关在文件传输协议(File TransferProtocol,FTP)、oracle提供的与网络层面交互协议SQL(Structured Query Language)*NET(Network Transaction)、会话初始协议(Session Initiation Protocol,SIP)、音视频传输协议(H.323)等应用协议处理过程中,需要将主设备即主防火墙、备份设备切换时不影响业务系统的正常运行。但是目前在设备切换时,当主设备的并发连接数量达到主设备的极限,会启动连接回收机制。连接回收机制当中处于关闭状态的连接首先被回收,后续依次分别握手状态的连接、数据报模式的连接及传输状态的连接。若某一个时刻父连接即控制连接刚刚建立,由于连接的回收机制被启动,这样大量的删除消息很快将深度包检测模块的删除消息队列填满,立即启动发送。那么此时深度包检测模块的新建消息队列并没有满,且没有超时,那么就会出现删除消息先于新建消息到达备份设备的情况。
例如:以FTP为例,在应用中父连接的新建和删除消息在不同的队列当中,新建连接消息存放在新建消息队列,删除连接消息存放在删除队列,这两个消息队列各自按照自己的状态运行,超时或者队列满时消息发送给备份设备。但是系统在运行时存在这样的情况,当系统并发连接数达到安全网关设备的最大情况下,主设备上连接并发满的时候,由于系统存在大量像FTP一样的带子连接即数据连接应用情况,在连接表回收过程中,存在刚刚新建的FTP父连接被回收的情况。另外,由于深度包检测模块在处理新建消息和删除消息同步时,新建和删除两个逻辑使用两套发送缓冲区。一旦大量FTP的父连接被回收时,很快删除消息被同步到备份设备。而FTP的新建消息可能因为发包缓存还没有满,暂时处于缓存状态。当FTP的新建消息缓存满时,将会启动发送。此时,发送给备份设备的连接就会重建。但是,此连接已经在主设备被回收,不会再同步删除消息。如果备份备份设备系统出现大量连接残留,这些连接将无法回收,对系统冗余备份的可靠性产生非常的影响,甚至在系统出现切换的情况下会出现业务中断的情况。
综上所述,因此需要解决删除消息先于新建消息达到备份设备,导致备份设备的连接残留问题。
发明内容
鉴于上述问题,提出了一种基于安全网关深度包检测的连接同步方法、装置及、计算机设备及计算机可读存储介质以便解决上述问题。
依据本发明的一个方面,提供一种基于安全网关深度包检测的连接同步方法,包括:
消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
所述消息发送端根据所述新建消息速率与所述删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
可选地,本发明所述方法中,所述消息发送端根据所述新建消息速率与所述删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和,按照预设时长减少新建消息队列信息的超时时间,包括:
在新建消息速率大于删除消息速率的情况下,按照预设时长减小新建消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照所述预设时长减少新建消息队列信息的超时时间。
可选地,本发明所述方法中,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,包括:
按照第一预设长度减少所述新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。
可选地,本发明所述方法中,所述按照预设时长减少新建消息队列信息的超时时间,包括:
按照所述预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。
依据本发明的第二个方面,提供一种基于安全网关深度包检测的连接同步装置,包括:
信息检测模块,用于通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
信息处理模块,用于根据所述新建消息速率与所述删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
可选地,本发明所述装置中,所述信息处理模块,具体用于:
在新建消息速率大于删除消息速率的情况下,按照预设时长减小新建消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照所述预设时长减少新建消息队列信息的超时时间。
可选地,本发明所述装置中,所述信息处理模块,用于按照第一预设长度减少所述新建消息队列信息的缓冲区长度,并按照所述第一预设长度增加删除消息队列信息的缓冲区长度。
可选地,本发明所述装置中,所述信息处理模块,用于按照所述预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。
依据本发明的第三个方面,提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器存储有基于安全网关深度包检测的连接同步方法的第一计算机程序,所述处理器执行所述第一计算机程序,以实现如上述基于安全网关深度包检测的连接同步方法的任意一项步骤。
依据本发明的第四个方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述基于安全网关深度包检测的连接同步方法任意一项步骤。
与现有技术相比,本发明的效果如下:
本发明提供的基于安全网关深度包检测的连接同步方法、装置、计算机设备及计算机可读存储介质,在同步消息的消息发送端利用新建消息速率与所述删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,实现最大限度地提高删除消息队列的吞吐机制,和/或,按照预设时长减少新建消息队列信息的超时时间,实现最大限度的减少新建消息的延迟机制,从而提高了双机系统中对于深度报文解析(Deep Packet Inspection,DPI)应用的可靠性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的基于安全网关深度包检测的连接同步方法流程图;
图2是本发明第一实施例中示例一在新建消息速率大于删除消息速率的情况下的流程图;
图3是本发明第二实施例提供的基于安全网关深度包检测的连接同步装置的结构原理框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术中的问题,本发明提供一种基于安全网关深度包检测的连接同步方法,参见图1所示,包括:
步骤S001:消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;新建消息队列信息包括新建消息队列的缓冲区(简称缓冲区),和新建消息队列的超时时间(简称超时时间);删除消息队列信息包括删除消息队列的缓冲区(简称缓冲区),和删除消息队列的超时时间(简称超时时间)。
步骤S002:消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
本发明的一个具体实施例,消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和,按照预设时长减少新建消息队列信息的超时时间,包括:
在新建消息速率大于删除消息速率的情况下,按照预设时长减小新建消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照预设时长减少新建消息队列信息的超时时间。
进一步地,本实施例中,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,包括:
按照第一预设长度减少新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。可采用如下方法:按照第一预设长度缩短新建消息队列信息的缓冲区,删除消息队列信息的缓冲区长度不变;或者新建消息队列信息的缓冲区长度不变,按照第二预设长度增加删除消息队列信息的缓冲区长度;或者新建消息队列信息的缓冲区长度缩短第一预设长度,同时删除消息队列信息的缓冲区长度增加第二预设长度,该第一预设长度可以等于第二预设长度,或者第一预设长度不等于第二预设长度。在本发明的一个具体实施例中,新建消息队列信息的缓冲区和删除消息队列信息的缓冲区总长度保持不变,采用第一预设长度等于第二预设长度,缩短新建消息队列信息的缓冲区长度,并将缩短的新建消息队列信息的缓冲区长度补偿到删除消息队列信息的缓冲区,使删除消息队列信息的缓冲区长度增加。第一预设长度的范围在新建消息队列信息的缓冲区的1/2~1/3之间,第二预设长度的范围在删除消息队列信息的缓冲区的1/2~1/3之间,在该预设范围内调整新建消息队列信息的缓冲区长度,保证了删除消息总是充分缓存后被发送,新建消息的缓冲区不大于删除消息的缓冲区大小,在超时时间相同的情况下,新建消息最有可能先满。
进一步地,本实施例中,按照预设时长减少新建消息队列信息的超时时间,包括:
按照所述预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。预设时长范围为1/2~1/3,或者新建消息队列信息的超时时间设置为0,设置为0表示立即执行。减少新建消息的超时时间,在某些情况下,新建消息调整为0,使新建消息队列的超时间任意时刻都是不大于删除消息队列的超时时间,从而保证新建消息先于删除消息达到消息接收端,或同时达到消息接收端。
本实施例将结合具体应用示例,对本发明方法进行阐述,需要指出的是,本实施例中公开的大量技术细节用于解释本发明,并不用于唯一限定本发明。下面通过具体示例一,对本发明实施例的实施过程进行详细说明。
示例一
初始状态,父连接的新建消息和删除消息分别采用各自同步队列,新建消息队列A的缓冲区和删除消息队列B的缓冲区大小均为1200字节,假设新建消息长度为44字节,删除消息长度为22字节,如果是1200字节的缓冲区,那么新建消息累积到27个时,就认为缓冲区满,删除消息累积到54个时,就认为缓冲区满,新建消息队列的超时时间和删除消息队列的超时时间均为200ms。
基于安全网关深度包检测的连接同步方法的具体步骤如下:
步骤1:消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
步骤2:消息发送端根据新建消息速率与删除消息速率的关系,
在新建消息速率大于删除消息速率的情况下,参见图2所示,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度,采用第一预设长度等于第二预设长度,按照第一预设长度C减少新建消息队列A的缓冲区长度,采用BRA算法按照第一预设长度C补充给删除消息队列B的缓冲区长度,该,该第一预设长度C为新建消息队列A的缓冲区长度的1/3,将新建消息队列信息的缓冲区缩短的第一预设长度补偿到删除消息队列信息的缓冲区长度,使新建消息队列的缓冲区长度变小,删除消息队列的缓冲区长度变大,删除消息的缓冲区不小于新建缓冲区的大小,保证删除消息充分缓存后被发送,即攒足之后再发送;并且自动按照预设时长减小新建消息队列信息的超时时间,预设时长为新建消息队列的超时时间的1/2。超时立即发送,立即发送的消息优先级低于新建消息优先级。通过网卡发包队列调度分别将调整后的新建消息和删除消息发送到消息接收端。本示例中新建消息队列缓冲区最大为1200字节,删除消息队列的缓冲区最大为1800字节。
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度,按照第一预设长度减少新建消息队列信息的缓冲区长度,并按照第二预设长度增加删除消息队列信息的缓冲区长度,该第一预设长度等于第二预设长度,该第一预设长度为新建消息队列的缓冲区的1/2,将新建消息队列信息的缓冲区缩短的第一预设长度补偿到删除消息队列信息的缓冲区长度。
在新建消息速率等于删除消息速率的情况下,调整使删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照预设时长减少新建消息队列信息的超时时间,该预设时长为新建消息队列的超时时间的1/2。
本发明实施例在极限流量的情况下,该基于安全网关深度包检测的连接同步方法适用于网关双机系统中的主设备,在网关双机系统中的主设备利用同步使用的缓冲区,在超时时间相同的情况下,新建消息的缓冲区不大于删除消息的缓冲区,新建消息最有可能先满发送到备用设备,从而避免了删除消息先于新建消息到达备用设备。新建消息缓冲区的超时间任意时刻都是不大于删除缓冲区的超时时间,在某些情况下,新建消息调整为0,减少了新建消息的缓存时间。在同步消息的发送端通过最大限度地提高删除消息的吞吐机制和最大限度的减少新建消息的延迟机制,提高了双机系统中对于DPI应用的可靠性。
在本发明的第二实施例中,提供一种基于安全网关深度包检测的连接同步装置,适用于消息发送端,参见图3所示,包括:
信息检测模块1,用于通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
信息处理模块2,用于根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
本发明实施例中,信息处理模块,具体用于:
在新建消息速率大于删除消息速率的情况下,按照预设时长减少所述新建消息队列信息的超时时间至小于或等于删除消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度。具体的按照第一预设长度减少新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度;可存在如下情况:按照第一预设长度缩短新建消息队列信息的缓冲区,删除消息队列信息的缓冲区长度不变;或者新建消息队列信息的缓冲区长度不变,按照第二预设长度增加删除消息队列信息的缓冲区长度;或者新建消息队列信息的缓冲区长度缩短第一预设长度,同时删除消息队列信息的缓冲区长度增加第二预设长度,该第一预设长度可以等于第二预设长度,或者第一预设长度不等于第二预设长度。在本发明的一个具体实施例中,新建消息队列信息的缓冲区和删除消息队列信息的缓冲区总长度保持不变,该第一预设长度等于第二预设长度,缩短新建消息队列信息的缓冲区长度,并将缩短的新建消息队列信息的缓冲区长度补偿到删除消息队列信息的缓冲区,使删除消息队列信息的缓冲区长度增加。并且自动按照预设时长减小新建消息队列信息的超时时间,预设时长为新建消息队列的超时时间的1/2。
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度,该调整方法同上述所述的按照第一预设长度减少新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度,故在此省略。
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照预设时长减少新建消息队列信息的超时时间,按照预设时长减少新建消息队列信息的超时时间至小于或等于删除消息队列信息的超时时间。
本发明在同步消息的发送端通过最大限度地提高删除消息的吞吐机制和最大限度的减少新建消息的延迟机制,提高了双机系统中对于DPI应用的可靠性。
在本发明的第三实施例中,提供一种计算机设备,该计算机设备应用于主设备。计算机设备包括处理器和存储器,存储器存储有基于安全网关深度包检测的连接同步方法的第一计算机程序,处理器执行第一计算机程序,以实现本发明第一实施例的基于安全网关深度包检测的连接同步方法的步骤。
该计算机设备采用的基于安全网关深度包检测的连接同步方法,包括:
步骤S001:消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;新建消息队列信息包括新建消息队列的缓冲区(简称缓冲区),和新建消息队列的超时时间(简称超时时间);删除消息队列信息包括删除消息队列的缓冲区(简称缓冲区),和删除消息队列的超时时间(简称超时时间)。
步骤S002:消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
本发明的一个具体实施例,消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和,按照预设时长减少新建消息队列信息的超时时间,包括:
在新建消息速率大于删除消息速率的情况下,按照预设时长减小新建消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照预设时长减少新建消息队列信息的超时时间。
进一步地,本实施例中,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,包括:
按照第一预设长度减少新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。可采用如下方法:按照第一预设长度缩短新建消息队列信息的缓冲区,删除消息队列信息的缓冲区长度不变;或者新建消息队列信息的缓冲区长度不变,按照第二预设长度增加删除消息队列信息的缓冲区长度;或者新建消息队列信息的缓冲区长度缩短第一预设长度,同时删除消息队列信息的缓冲区长度增加第二预设长度,该第一预设长度可以等于第二预设长度,或者第一预设长度不等于第二预设长度。在本发明的一个具体实施例中,新建消息队列信息的缓冲区和删除消息队列信息的缓冲区总长度保持不变,采用第一预设长度等于第二预设长度,将缩短的新建消息队列信息的缓冲区长度补偿到删除消息队列信息的缓冲区,使删除消息队列信息的缓冲区长度增加。第一预设长度的范围在新建消息队列信息的缓冲区的1/2~1/3之间,第二预设长度的范围在删除消息队列信息的缓冲区的1/2~1/3之间,在该预设范围调整新建消息队列信息的缓冲区长度,保证删除消息总是充分缓存后被发送,新建消息的缓冲区不大于删除消息的缓冲区大小,所以在超时时间相同的情况下,新建消息最有可能先满。
进一步地,本实施例中,按照预设时长减少新建消息队列信息的超时时间,包括:
按照所述预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。预设时长范围为1/2~1/3,或者新建消息队列信息的超时时间设置为0,设置为0表示立即执行。减少新建消息的超时时间,在某些情况下,新建消息调整为0,使新建消息队列的超时间任意时刻都是不大于删除消息队列的超时时间,从而保证新建消息先于删除消息达到消息接收端,或同时达到消息接收端。
本发明在同步消息的发送端通过最大限度地提高删除消息的吞吐机制和最大限度的减少新建消息的延迟机制,提高了双机系统中对于DPI应用的可靠性。
在本发明的第四实施例中,提供一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现本发明第一实施例的基于安全网关深度包检测的连接同步方法的步骤。
该计算机可读存储介质采用的基于安全网关深度包检测的连接同步方法,包括:
步骤S001:消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;新建消息队列信息包括新建消息队列的缓冲区简称缓冲区,和新建消息队列的超时时间简称超时时间;删除消息队列信息包括删除消息队列的缓冲区简称缓冲区,和删除消息队列的超时时间简称超时时间。
步骤S002:消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和/或,按照预设时长减少新建消息队列信息的超时时间。
本发明的一个具体实施例,消息发送端根据新建消息速率与删除消息速率的关系,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,和,按照预设时长减少新建消息队列信息的超时时间,包括:
在新建消息速率大于删除消息速率的情况下,按照预设时长减小新建消息队列信息的超时时间,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率小于删除消息速率的情况下,将新建消息队列信息的超时时间设置为0,调整删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在新建消息速率等于删除消息速率的情况下,调整删除消息队列信息的缓冲区长度至等于新建消息队列信息的缓冲区长度,并按照预设时长减少新建消息队列信息的超时时间。
进一步地,本实施例中,调整删除消息队列信息的缓冲区长度至大于或等于新建消息队列信息的缓冲区长度,包括:
按照第一预设长度减少新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。可采用如下方法:按照第一预设长度缩短新建消息队列信息的缓冲区,删除消息队列信息的缓冲区长度不变;或者新建消息队列信息的缓冲区长度不变,按照第二预设长度增加删除消息队列信息的缓冲区长度;或者新建消息队列信息的缓冲区长度缩短第一预设长度,同时删除消息队列信息的缓冲区长度增加第二预设长度,该第一预设长度可以等于第二预设长度,或者第一预设长度不等于第二预设长度。在本发明的一个具体实施例中,新建消息队列信息的缓冲区和删除消息队列信息的缓冲区总长度保持不变,采用第一预设长度等于第二预设长度,缩短新建消息队列信息的缓冲区长度,并将缩短的新建消息队列信息的缓冲区长度补偿到删除消息队列信息的缓冲区,使删除消息队列信息的缓冲区长度增加。第一预设长度的范围在新建消息队列信息的缓冲区的1/2~1/3之间,第二预设长度的范围在删除消息队列信息的缓冲区的1/2~1/3之间,在该预设范围内调整新建消息队列信息的缓冲区长度,保证删除消息总是充分缓存后被发送,新建消息的缓冲区不大于删除消息的缓冲区大小,在超时时间相同的情况下,新建消息最有可能先满。
进一步地,本实施例中,按照预设时长减少新建消息队列信息的超时时间,包括:
按照所述预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。预设时长范围为1/2~1/3,或者新建消息队列信息的超时时间设置为0,设置为0表示立即执行。减少新建消息的超时时间,在某些情况下,新建消息调整为0,使新建消息队列的超时间任意时刻都是不大于删除消息队列的超时时间,从而保证新建消息先于删除消息达到消息接收端,或同时达到消息接收端。
本实施例中,所述的存储介质可以包括但不限于为:ROM、RAM、磁盘或光盘等。
本发明在同步消息的发送端通过最大限度地提高删除消息的吞吐机制和最大限度的减少新建消息的延迟机制,提高了双机系统中对于DPI应用的可靠性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种基于安全网关深度包检测的连接同步方法,其特征在于,包括:
消息发送端通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
所述消息发送端根据所述新建消息速率与所述删除消息速率的关系,调整所述删除消息队列信息的缓冲区长度至大于或等于所述新建消息队列信息的缓冲区长度,和/或,按照预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。
2.如权利要求1所述的连接同步方法,其特征在于,所述消息发送端根据所述新建消息速率与所述删除消息速率的关系,调整所述删除消息队列信息的缓冲区长度至大于或等于所述新建消息队列信息的缓冲区长度,和,按照预设时长减少所述新建消息队列信息的超时时间,包括:
在所述新建消息速率大于所述删除消息速率的情况下,按照预设时长减小所述新建消息队列信息的超时时间,调整所述删除消息队列信息的缓冲区长度至大于所述新建消息队列信息的缓冲区长度;
在所述新建消息速率小于所述删除消息速率的情况下,将所述新建消息队列信息的超时时间设置为0,调整所述删除消息队列信息的缓冲区长度至大于新建消息队列信息的缓冲区长度;
在所述新建消息速率等于所述删除消息速率的情况下,调整所述删除消息队列信息的缓冲区长度至等于所述新建消息队列信息的缓冲区长度,并按照所述预设时长减少所述新建消息队列信息的超时时间。
3.如权利要求1或2所述的连接同步方法,其特征在于,调整所述删除消息队列信息的缓冲区长度至大于或等于所述新建消息队列信息的缓冲区长度,包括:
按照第一预设长度减少所述新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。
4.一种基于安全网关深度包检测的连接同步装置,其特征在于,包括:
信息检测模块,用于通过深度包检测获取报文的新建消息速率、删除消息速率、新建消息队列信息及删除消息队列信息;
信息处理模块,用于根据所述新建消息速率与所述删除消息速率的关系,调整所述删除消息队列信息的缓冲区长度至大于或等于所述新建消息队列信息的缓冲区长度,和/或,按照预设时长减少所述新建消息队列信息的超时时间至小于或等于所述删除消息队列信息的超时时间。
5.根据权利要求4所述的连接同步装置,其特征在于,所述信息处理模块,具体用于:
在所述新建消息速率大于所述删除消息速率的情况下,按照预设时长减小所述新建消息队列信息的超时时间,调整所述删除消息队列信息的缓冲区长度至大于所述新建消息队列信息的缓冲区长度;
在所述新建消息速率小于所述删除消息速率的情况下,将所述新建消息队列信息的超时时间设置为0,调整所述删除消息队列信息的缓冲区长度至大于所述新建消息队列信息的缓冲区长度;
在所述新建消息速率等于所述删除消息速率的情况下,调整所述删除消息队列信息的缓冲区长度至等于所述新建消息队列信息的缓冲区长度,并按照所述预设时长减少所述新建消息队列信息的超时时间。
6.根据权利要求4或5所述的连接同步装置,其特征在于,所述信息处理模块,具体用于按照第一预设长度减少所述新建消息队列信息的缓冲区长度,按照第二预设长度增加删除消息队列信息的缓冲区长度。
7.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器存储有基于安全网关深度包检测的连接同步方法的第一计算机程序,所述处理器执行所述第一计算机程序,以实现如权利要求1至3任意一项所述方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至3任意一项所述方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810235070.3A CN108737208B (zh) | 2018-03-21 | 2018-03-21 | 基于安全网关深度包检测的连接同步方法、装置及计算机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810235070.3A CN108737208B (zh) | 2018-03-21 | 2018-03-21 | 基于安全网关深度包检测的连接同步方法、装置及计算机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737208A CN108737208A (zh) | 2018-11-02 |
CN108737208B true CN108737208B (zh) | 2020-09-22 |
Family
ID=63940850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810235070.3A Active CN108737208B (zh) | 2018-03-21 | 2018-03-21 | 基于安全网关深度包检测的连接同步方法、装置及计算机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108737208B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611090B (zh) * | 2020-05-13 | 2021-12-28 | 浙江创邻科技有限公司 | 分布式消息处理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011211530A (ja) * | 2010-03-30 | 2011-10-20 | Fujitsu Ltd | 帯域制御装置,帯域制御方法,及びプログラム |
CN103825822A (zh) * | 2014-02-18 | 2014-05-28 | 杭州华三通信技术有限公司 | 一种网络设备的状态信息传输方法和装置 |
CN104092566A (zh) * | 2014-06-25 | 2014-10-08 | 电子科技大学 | 一种区分服务的队列管理方法 |
CN105591810A (zh) * | 2015-10-22 | 2016-05-18 | 杭州华三通信技术有限公司 | 备份消息发送方法和设备 |
-
2018
- 2018-03-21 CN CN201810235070.3A patent/CN108737208B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011211530A (ja) * | 2010-03-30 | 2011-10-20 | Fujitsu Ltd | 帯域制御装置,帯域制御方法,及びプログラム |
CN103825822A (zh) * | 2014-02-18 | 2014-05-28 | 杭州华三通信技术有限公司 | 一种网络设备的状态信息传输方法和装置 |
CN104092566A (zh) * | 2014-06-25 | 2014-10-08 | 电子科技大学 | 一种区分服务的队列管理方法 |
CN105591810A (zh) * | 2015-10-22 | 2016-05-18 | 杭州华三通信技术有限公司 | 备份消息发送方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108737208A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108200544B (zh) | 短信下发方法和短信平台 | |
US10069894B2 (en) | Electronic device, storage medium and file transferring method | |
US9401958B2 (en) | Method, apparatus, and system for migrating user service | |
KR20200087231A (ko) | 비동기 버퍼를 처리하기 위한 방법 및 장치 | |
US10165618B2 (en) | Service processing method and device | |
WO2014187220A1 (en) | Electronic device, storage medium and file transferrting method | |
WO2018014729A1 (zh) | 一种上下文更新方法、系统及设备、存储介质 | |
CN108924485B (zh) | 客户端实时视频流中断处理方法及系统、监控系统 | |
WO2018228193A1 (zh) | 一种业务数据单元分段处理方法和数据接收端 | |
CN110740195B (zh) | 一种基于消息引擎的分布式系统数据同步方法及系统 | |
WO2023179538A1 (zh) | 数据传输方法、装置、电子设备和存储介质 | |
WO2023045551A1 (zh) | 摄像头控制方法、系统、电子设备和存储介质 | |
CN108737208B (zh) | 基于安全网关深度包检测的连接同步方法、装置及计算机 | |
CN104821889B (zh) | 一种备份报文的处理方法和设备 | |
US10911541B1 (en) | Data transmission and network interface controller | |
CN111447253B (zh) | 缓冲区管理方法、系统、设备及存储介质 | |
US9992309B2 (en) | Communication device and communication method | |
CN103888283B (zh) | 一种sctp通信方法及装置 | |
CN108667682B (zh) | 基于安全网关深度包检测的连接同步方法、装置及介质 | |
CN112969244B (zh) | 一种会话恢复方法及其装置 | |
EP4175207A1 (en) | Method, apparatus and device for supporting tcp dynamic migration, and storage medium | |
KR101612312B1 (ko) | 데이터 처리속도 증가장치 및 그 방법 | |
CN113132758A (zh) | 内容分发网络的控制方法、装置及计算机程序产品 | |
CN107872842B (zh) | 一种数据接收方法及装置 | |
CN107592967B (zh) | 控制帧在网络中传输的方法和装置及相关单元和运输工具 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |