CN115296900A - 一种网络报文修正方法、装置、电子设备及存储介质 - Google Patents
一种网络报文修正方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115296900A CN115296900A CN202210927196.3A CN202210927196A CN115296900A CN 115296900 A CN115296900 A CN 115296900A CN 202210927196 A CN202210927196 A CN 202210927196A CN 115296900 A CN115296900 A CN 115296900A
- Authority
- CN
- China
- Prior art keywords
- correction
- information
- network message
- network
- quintuple information
- 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.)
- Granted
Links
- 238000012937 correction Methods 0.000 title claims abstract description 223
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000004048 modification Effects 0.000 claims description 22
- 238000012986 modification Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 11
- 230000002829 reductive effect Effects 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 15
- 230000004044 response Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 241000700605 Viruses Species 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000002715 modification method Methods 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000010979 ruby Substances 0.000 description 2
- 229910001750 ruby Inorganic materials 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种网络报文修正方法、装置、电子设备及存储介质,该方法包括:获取网络报文,并解析出网络报文中的五元组信息;若获取到五元组信息对应的修正信息,则根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文;根据五元组信息转发修正后的网络报文。通过在获取到网络报文中的五元组信息对应的修正信息的情况下,就根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文,并根据五元组信息转发修正后的网络报文,由于该网络报文的序列号会被有效地修正,防止了后续网络报文的序列号出现乱序的情况,从而避免了后续网络报文的序列号没有对应被修改导致通信速率下降或者通信中断的问题。
Description
技术领域
本申请涉及计算机网络和网络安全的技术领域,具体而言,涉及一种网络报文修正方法、装置、电子设备及存储介质。
背景技术
目前,网络设备在发现终端设备请求的文件存在安全威胁(例如病毒和木马等)时,需要向终端设备发送告警信息。目前通常是通过在网络设备上设置服务代理,由服务代理根据告警信息生成终端设备的网络响应报文,并向该终端设备发送网络响应报文,由于告警信息的长度和次数等不确定因素,往往会导致网络报文在传输过程中产生错误(例如乱序导致报文重传),造成通信速率下降或传输中断的问题,例如:发送电子邮件时,告警信息插入位置错误会破坏整封邮件体结构导致发送失败等等。
发明内容
本申请实施例的目的在于提供一种网络报文修正方法、装置、电子设备及存储介质,用于改善网络报文的传输过程中产生错误导致通信速率下降或者通信中断的问题。
本申请实施例提供了一种网络报文修正方法,包括:获取网络报文,并解析出网络报文中的五元组信息;若获取到五元组信息对应的修正信息,则根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文;根据五元组信息转发修正后的网络报文。在上述方案的实现过程中,通过在获取到网络报文中的五元组信息对应的修正信息的情况下,就根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文,并根据五元组信息转发修正后的网络报文,由于该网络报文的序列号会被有效地修正,防止了后续网络报文的序列号出现乱序的情况,从而避免了后续网络报文的序列号没有对应被修改导致通信速率下降或者通信中断的问题。
可选地,在本申请实施例中,修正信息包括:待插入内容;根据修正信息对网络报文的序列号进行修正,包括:向网络报文插入待插入内容;根据待插入内容确定网络报文的序列号的修正数量,并根据修正数量修改网络报文的序列号。
在上述方案的实现过程中,通过向网络报文插入待插入内容,然后,根据待插入内容确定网络报文的序列号的修正数量,并根据修正数量修改网络报文的序列号,由于该网络报文的序列号会被有效地修正,防止了后续网络报文的序列号出现乱序的情况,从而避免了后续网络报文的序列号没有对应被修改导致通信速率下降或者通信中断的问题。
可选地,在本申请实施例中,修正信息包括:修正数量;根据修正信息对网络报文的序列号进行修正,包括:将网络报文的序列号修改为序列号与修正数量的和值;或者,将网络报文的序列号修改为序列号与修正数量的差值。
在上述方案的实现过程中,通过将网络报文的序列号修改为序列号与修正数量的和值;或者,将网络报文的序列号修改为序列号与修正数量的差值,从而避免了没有同步修正返回的报文导致后续网络报文的序列号出现乱序的情况,有效改善了通信速率下降或者通信中断的问题。
可选地,在本申请实施例中,获取到五元组信息对应的修正信息,包括:若从连接表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
在上述方案的实现过程中,通过在从连接表中查询到五元组信息对应的修正标识的情况下,才从修正表中查询修正标识对应的修正信息,从而避免了所有五元组信息均查询修正表的情况,从而避免了没有同步修正返回的报文导致后续网络报文的序列号出现乱序的情况,有效改善了通信速率下降或者通信中断的问题。
可选地,在本申请实施例中,从修正表中查询五元组信息对应的修正信息,包括:判断是否从活跃表中查询到五元组信息对应的修正标识;若否,则将五元组信息以及五元组信息对应的修正标识从连接表复制存储至活跃表中,并从修正表中查询修正标识对应的修正信息。
在上述方案的实现过程中,通过优先从活跃表中查询到五元组信息对应的修正标识,查到就直接从修正表中查询修正标识对应的修正信息,并根据修正信息进行修改和转发,从而使用轻量化的活跃表来提高了表查询速率,以降低查表带来的速率影响,提高了电子设备(例如网络设备)的转发性能。
可选地,在本申请实施例中,在判断是否从活跃表中查询到五元组信息对应的修正标识之后,还包括:若从活跃表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
在上述方案的实现过程中,通过在活跃表中查询到五元组信息对应的修正标识的情况下,就直接从修正表中查询修正标识对应的修正信息,从而使用轻量化的活跃表来提高了表查询速率,以降低查表带来的速率影响,提高了电子设备(例如网络设备)的转发性能。
可选地,在本申请实施例中,还包括:判断活跃表中的数据记录是否超过预设时长,数据记录包括:五元组信息以及五元组信息对应的修正标识;若是,则从活跃表中删除数据记录。
在上述方案的实现过程中,通过定时更新活跃表中的数据记录,并删除超过预设时长的数据记录,避免长时间没有进行数据传输的数据记录占用活跃表的空间,从而保证了活跃表的查询效率,实现了快速查表并转发网络报文的功能,提高了网络报文的修正和转发性能。
本申请实施例还提供了一种网络报文修正装置,包括:信息获取解析模块,用于获取网络报文,并解析出网络报文中的五元组信息;报文序列修正模块,用于若获取到五元组信息对应的修正信息,则根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文;网络报文转发模块,用于根据五元组信息转发修正后的网络报文。
可选地,在本申请实施例中,修正信息包括:待插入内容;报文序列修正模块,包括:网络报文插入子模块,用于向网络报文插入待插入内容;网络报文修正子模块,用于根据待插入内容确定网络报文的序列号的修正数量,并根据修正数量修改网络报文的序列号。
可选地,在本申请实施例中,修正信息包括:修正数量;报文序列修正模块,还包括:报文序列修改子模块,用于将网络报文的序列号修改为序列号与修正数量的和值;或者,将网络报文的序列号修改为序列号与修正数量的差值。
可选地,在本申请实施例中,报文序列修正模块,包括:修正信息查询子模块,用于若从连接表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,修正信息查询子模块,包括:修正标识查询单元,用于判断是否从活跃表中查询到五元组信息对应的修正标识;第一信息查询单元,用于若没有从活跃表中查询到五元组信息对应的修正标识,则将五元组信息以及五元组信息对应的修正标识从连接表复制存储至活跃表中,并从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,修正信息查询子模块,还包括:第二信息查询单元,用于若从活跃表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,网络报文修正装置,还包括:数据记录判断模块,用于判断活跃表中的数据记录是否超过预设时长,数据记录包括:五元组信息以及五元组信息对应的修正标识;数据记录删除模块,用于若活跃表中的数据记录超过预设时长,则从活跃表中删除数据记录。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请实施例中的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的网络报文修正方法的流程示意图;
图2示出的本申请实施例提供的根据修正表对网络报文进行修正的示意图;
图3示出的本申请实施例提供的终端设备与服务器通信的交互时序示意图;
图4示出的本申请实施例提供的网络报文修正装置的结构示意图;
图5示出的本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请实施例中的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请实施例的详细描述并非旨在限制要求保护的本申请实施例的范围,而是仅仅表示本申请实施例中的选定实施例。基于本申请实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请实施例保护的范围。
可以理解的是,本申请实施例中的“第一”、“第二”用于区别类似的对象。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
在介绍本申请实施例提供的网络报文修正方法之前,先介绍本申请实施例中所涉及的一些概念:
网络设备是指并非数据流量的最终接收者,而只是将数据流量转发给最终接收者的设备,网络设备包括:网桥、交换机和路由器等。
网络安全设备(Network Security Device,NSD),是指部署在调度内部网与外部网之间、专用网与公共网之间的一组软件和硬件设备,用于构成内部网与外部网之间、专用网与公共网之间界面上的保护屏障。
需要说明的是,本申请实施例提供的网络报文修正方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的网络设备、网络安全设备(NSD)、设备终端或者服务器,设备终端例如:智能手机、个人电脑、平板电脑、个人数字助理或者移动上网设备等。服务器是指通过网络提供计算服务的设备,服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和UNIX服务器。
下面介绍该网络报文修正方法适用的应用场景,这里的应用场景包括但不限于:使用该网络报文修正方法来增强网络设备或者网络安全防护设备(NSD)的功能等等,防止了经过网络设备或者网络安全防护设备(NSD)的后续网络报文的序列号出现乱序的情况。其中,此处的网络设备包括但不限于:网桥、交换机和路由器等,此处的网络安全防护设备(NSD)以包括但不限于:横向隔离装置、纵向加密认证装置、防火墙、防病毒系统设备、入侵检测系统(Intrusion Detection System,IDS)设备或入侵保护装置(IntrusionProtection System,IPS)等设备。
请参见图1示出的本申请实施例提供的网络报文修正方法的流程示意图;该网络报文修正方法的主要思路是,根据修正信息对获取到的网络报文的序列号进行修正,获得修正后的网络报文,并根据五元组信息转发修正后的网络报文,通过有效修正序列号的方式来避免后续网络报文的序列号出现乱序的情况。上述网络报文修正方法的实施方式可以包括:
步骤S110:获取网络报文,并解析出网络报文中的五元组信息。
上述的网络报文可以是传输控制协议(Transmission Control Protocol,TCP)报文。为了便于理解和说明,下面以网络报文是TCP报文为例进行详细地说明,TCP报文可以包括TCP请求报文和TCP响应报文。
五元组信息,是指能够确定通信双方唯一连接的信息,该五元组包括:来源IP地址、来源端口号、目的IP地址、目的端口号和协议类型。
上述步骤S110的实施方式例如:电子设备通过超文本传输协议(Hyper TextTransfer Protocol,HTTP)或者超文本传输安全协议(Hyper Text Transfer ProtocolSecure,HTTPS)接收目标设备发送的网络报文,并采用深度数据包检测(Deep PacketInspection,DPI)技术解析出网络报文中的五元组信息。其中,此处的深度数据包检测(DPI)是一种基于数据包的深度检测技术,针对不同的网络应用层载荷进行深度检测,通过对报文的有效载荷检测获得报文的载荷数据,并根据载荷数据进行处理。
步骤S120:若获取到五元组信息对应的修正信息,则根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文。
可以理解的是,在根据修正信息对网络报文的序列号进行修正时,可以是在Linux内核态中对网络报文的序列号进行修正的,相比于在用户态修正,能够提高对网络报文的序列号进行修正的速度和效率。
步骤S130:根据五元组信息转发修正后的网络报文。
上述步骤S130的实施方式例如:电子设备获取五元组信息中的目标IP地址,在路由表中查找该目标IP地址对应的网络物理接口(Interface),并将修正后的网络报文从网络物理接口中转发给对应的对端设备。
在上述的实现过程中,通过在获取到网络报文中的五元组信息对应的修正信息的情况下,就根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文,并根据五元组信息转发修正后的网络报文,由于该网络报文的序列号会被有效地修正,防止了后续网络报文的序列号出现乱序的情况,从而避免了后续网络报文的序列号没有对应被修改导致通信速率下降或者通信中断的问题。
作为步骤S120的一种可选实施方式,上述的修正信息可以包括:待插入内容;上述的修正过程可以是插入内容的修正过程,该修正过程的实施方式可以包括:
步骤S121:电子设备向网络报文插入待插入内容。
步骤S122:电子设备根据待插入内容确定网络报文的序列号的修正数量,并根据修正数量修改网络报文的序列号。
上述步骤S121至步骤S122的实施方式包括:假设电子设备获取到的网络报文的序列号是n,然后向网络报文插入待插入内容,此处的待插入内容使用c来表示,然后,电子设备根据待插入内容确定网络报文的序列号的修正数量,那么此处的修正数量可以表示为m=Len[c],此处的Len[]表示待插入内容的长度整数,然后根据修正数量修改网络报文的序列号,修改后的序列号是n+Len[c],具体例如:假设网络报文的序列号是2,且待插入内容是“hello\n”,那么根据待插入内容确定网络报文的序列号的修正数量m为m=Len[c]=6,因此,应该将网络报文的序列号2修改为2+6=8,从而获得修改后的网络报文,最后,重新计算修改后的网络报文的TCP校验和后,并根据该网络报文的五元组信息转发修改后的网络报文。
请参见图2示出的本申请实施例提供的根据修正表对网络报文进行修正的示意图;电子设备可以分别与终端设备和服务器通信,终端设备先通过电子设备向服务器发送TCP请求报文,然后,服务器在接收到终端设备发送的TCP请求报文之后,通过电子设备向终端设备发送TCP响应报文。可以理解的是,在电子设备向网络报文插入待插入内容的过程中或者之后,还可以存储该网络报文中的序列号(即图中TCP请求报文的序列号或TCP响应报文的确认号)和修正数量,例如将该网络报文中的序列号和修正数量存储在修正表中,修正表是指存储网络报文需要修正的信息数据表。
作为步骤S120的一种可选实施方式,上述的网络报文可以是TCP报文,TCP报文可以包括TCP请求报文和TCP响应报文。上述的修正信息可以包括:修正数量;在电子设备插入内容到网络报文的修正过程之后,还可以将该网络报文的序列号增加或者减少对应的修正数量,该实施方式可以包括但不限于:
步骤S123:若该网络报文是TCP请求报文,则将网络报文的序列号修改为序列号与修正数量的和值。
TCP请求报文(TCP Request Packet),是指TCP客户端(Client)发送到TCP服务端(Sever)的TCP报文。
上述步骤S123的实施方式例如:假设该网络报文是终端设备经过电子设备发送给服务器的TCP请求报文,且该TCP请求报文的报文载荷长度是32,且该TCP请求报文的序列号是2,且从修正表中查出该序列号的修正数量m为6,因此,应该将网络报文的序列号2修改为2+6=8。由于该TCP请求报文的报文载荷长度是32,因此,服务器返回给该终端设备的TCP响应报文的确认号是8+32=40。
步骤S124:若该网络报文是TCP响应报文,则将网络报文的确认号修改为确认号与修正数量的差值。
TCP响应报文(TCP Response Packet),是指TCP服务端(Sever)返回给TCP客户端(Client)的TCP报文。
上述步骤S124的实施方式例如:假设该网络报文是TCP响应报文,且该TCP响应报文的确认号(ACK)是40,且从修正表中查出该序列号的修正数量m为6,因此,应该将网络报文的确认号40修改为40-6=34。
作为步骤S120的一种可选实施方式,在获取到五元组信息对应的修正信息时,可以从电子设备维护的连接表中查询修正标识之后,才从修正表中查询修正信息,该实施方式可以包括:
步骤S125:若从连接表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
连接表又被称为通信连接表,是指由五元组信息和修正标识构成的数据表。修正标识可以是修正表的主键,那么该修正标识字段就可以是连接表的一个外键,假设0或者NULL表示不修正,任何正数(即修正表的主键值)表示需要修正。可以理解的是,该连接表可以是关系型数据或者非关系数据库中的数据表,可以使用的关系型数据库例如:Mysql、PostgreSQL、Oracle和SQLSever等,可以使用的非关系型数据库包括:grakn数据库、Neo4j图数据库、Hadoop子系统HBase、MongoDB和CouchDB等。
修正表,是指存储网络报文需要修正的信息数据表,修正表中的字段包括但不限于:修正标识(即修正表的主键)、网络报文的序列号n和修正数量m。可以理解的是,该修正表可以采用Memcached和Redis等内存数据库。
作为上述步骤S125的第一种可选实施方式,可以根据直接从连接表中查询的修正标识来修正,例如:假设五元组信息具体例如:源IP地址:1.1.1.1,源端口:1234,目的IP地址:1.1.1.2,目的端口:80,协议类型:HTTP,那么从连接表中可以查询到五元组信息对应的修正标识是1,则从修正表中查询该修正标识对应的修正信息是:网络报文的序列号是2,且修正数量是6,因此,应该将网络报文的序列号2修改为2+6=8。
请参见图3示出的本申请实施例提供的终端设备与服务器通信的交互时序示意图;图中的ACK可以理解为是TCP响应报文中的确认号。作为上述步骤S125的第二种可选实施方式,在从修正表中查询五元组信息对应的修正信息时,可以设置一个活跃表(类似于缓存表)来缓存五元组信息和其对应的修正标识,该活跃表是一种轻量化数据表(即只存储活跃连接的五元组信息和修正标识),上述查询修正信息的实施方式可以包括:
步骤S125a:判断是否从活跃表中查询到五元组信息对应的修正标识。
上述步骤S125a的实施方式例如:使用预设编程语言编译或者解释的可执行程序判断是否从活跃表中查询到五元组信息对应的修正标识;其中,可以使用的编程语言例如:C、C++、Java、BASIC、JavaScript、LISP、Shell、Perl、Ruby、Python和PHP等等。
步骤S125b:若没有从活跃表中查询到五元组信息对应的修正标识,且从连接表中已查询到五元组信息对应的修正标识,则将五元组信息以及五元组信息对应的修正标识从连接表复制存储至活跃表中,并从修正表中查询修正标识对应的修正信息。
上述步骤S125b的实施方式例如:假设无法在活跃表中查询到五元组信息对应的修正标识,那么可以从连接表中查询该五元组信息对应的修正标识。若在连接表中已查询到五元组信息对应的修正标识,且没有从活跃表中查询到五元组信息对应的修正标识,则将五元组信息以及五元组信息对应的修正标识从连接表复制存储至活跃表中,并从修正表中查询该修正标识对应的修正信息,然后根据该修正标识对应的修正信息对网络报文进行修正,具体的修正方式与上述步骤S123和步骤S124的实施方式类似,因此不再赘述。
步骤S125c:若从活跃表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
上述步骤S125c的实施方式例如:假设五元组信息是源IP地址:1.1.1.1,源端口:1234,目的IP地址:1.1.1.2,目的端口:80,协议类型:HTTP,若从活跃表中查询到五元组信息对应的修正标识,则从修正表中查询该修正标识对应的修正信息,然后根据该修正标识对应的修正信息对网络报文进行修正,具体的修正方式与上述步骤S123和步骤S124的实施方式类似,因此不再赘述。
在上述的实现过程中,通过在需要查询时,优先从活跃表中查询到五元组信息对应的修正标识,查到就直接从修正表中查询修正标识对应的修正信息,并根据修正信息进行修改和转发,从而使用轻量化的活跃表来提高了表查询速率,以降低查表带来的速率影响,提高了电子设备(例如网络设备)的转发性能。
作为上述步骤S125的一种可选实施方式,上述的活跃表中的数据记录在超过预设时长(即超时)之后,还可以将该数据记录从活跃表中删除,该实施方式可以包括:
步骤S125d:判断活跃表中的数据记录是否超过预设时长,数据记录包括:五元组信息以及五元组信息对应的修正标识。
上述步骤S125d的实施方式例如:使用预设编程语言编译或者解释的可执行程序判断活跃表中的数据记录是否超过预设时长。其中,数据记录包括:五元组信息以及五元组信息对应的修正标识(请参照图2),可以使用的编程语言例如:C、C++、Java、BASIC、JavaScript、LISP、Shell、Perl、Ruby、Python和PHP等等。
步骤S125e:若活跃表中的数据记录超过预设时长,则从活跃表中删除数据记录。
在上述的实现过程中,通过定时更新活跃表中的数据记录,并删除超过预设时长的数据记录,避免长时间没有进行数据传输的数据记录占用活跃表的空间,从而保证了活跃表的查询效率,实现了快速查表并转发网络报文的功能,提高了网络报文的修正和转发性能。
作为上述网络报文修正方法的一种可选实施方式,还可以将序列号连续的多个网络报文收集起来,并从序列号连续的多个网络报文中提取和识别出病毒文件,完成识别跨报文传输的病毒文件的功能。当然,还可以在序列号连续的多个网络报文中的最后一个网络报文中插入告警信息,有效地避免针对同一个病毒文件多次插入相同告警信息,从而提高了告警信息的插入效率以及减少了打扰率。
请参见图4示出的本申请实施例提供的网络报文修正装置的结构示意图;本申请实施例提供了一种网络报文修正装置200,包括:
信息获取解析模块210,用于获取网络报文,并解析出网络报文中的五元组信息。
报文序列修正模块220,用于若获取到五元组信息对应的修正信息,则根据修正信息对网络报文的序列号进行修正,获得修正后的网络报文。
网络报文转发模块230,用于根据五元组信息转发修正后的网络报文。
可选地,在本申请实施例中,修正信息包括:待插入内容;报文序列修正模块,包括:
网络报文插入子模块,用于向网络报文插入待插入内容。
网络报文修正子模块,用于根据待插入内容确定网络报文的序列号的修正数量,并根据修正数量修改网络报文的序列号。
可选地,在本申请实施例中,修正信息包括:修正数量;报文序列修正模块,还包括:
报文序列修改子模块,用于将网络报文的序列号修改为序列号与修正数量的和值;或者,将网络报文的序列号修改为序列号与修正数量的差值。
可选地,在本申请实施例中,报文序列修正模块,包括:
修正信息查询子模块,用于若从连接表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,修正信息查询子模块,包括:
修正标识查询单元,用于判断是否从活跃表中查询到五元组信息对应的修正标识。
第一信息查询单元,用于若没有从活跃表中查询到五元组信息对应的修正标识,则将五元组信息以及五元组信息对应的修正标识从连接表复制存储至活跃表中,并从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,修正信息查询子模块,还包括:
第二信息查询单元,用于若从活跃表中查询到五元组信息对应的修正标识,则从修正表中查询修正标识对应的修正信息。
可选地,在本申请实施例中,网络报文修正装置,还包括:
数据记录判断模块,用于判断活跃表中的数据记录是否超过预设时长,数据记录包括:五元组信息以及五元组信息对应的修正标识。
数据记录删除模块,用于若活跃表中的数据记录超过预设时长,则从活跃表中删除数据记录。
应理解的是,该装置与上述的网络报文修正方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
请参见图5示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备300,包括:处理器310和存储器320,存储器320存储有处理器310可执行的机器可读指令,机器可读指令被处理器310执行时执行如上的方法。
本申请实施例还提供了一种计算机可读存储介质330,该计算机可读存储介质330上存储有计算机程序,该计算机程序被处理器310运行时执行如上的方法。
其中,计算机可读存储介质330可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。
另外,在本申请实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。此外,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种网络报文修正方法,其特征在于,包括:
获取网络报文,并解析出所述网络报文中的五元组信息;
若获取到所述五元组信息对应的修正信息,则根据所述修正信息对所述网络报文的序列号进行修正,获得修正后的网络报文;
根据所述五元组信息转发所述修正后的网络报文。
2.根据权利要求1所述的方法,其特征在于,所述修正信息包括:待插入内容;所述根据所述修正信息对所述网络报文的序列号进行修正,包括:
向所述网络报文插入所述待插入内容;
根据所述待插入内容确定所述网络报文的序列号的修正数量,并根据所述修正数量修改所述网络报文的序列号。
3.根据权利要求1所述的方法,其特征在于,所述修正信息包括:修正数量;所述根据所述修正信息对所述网络报文的序列号进行修正,包括:
将所述网络报文的序列号修改为所述序列号与所述修正数量的和值;
或者,将所述网络报文的序列号修改为所述序列号与所述修正数量的差值。
4.根据权利要求1所述的方法,其特征在于,所述获取到所述五元组信息对应的修正信息,包括:
若从连接表中查询到所述五元组信息对应的修正标识,则从修正表中查询所述修正标识对应的修正信息。
5.根据权利要求4所述的方法,其特征在于,所述从修正表中查询所述五元组信息对应的修正信息,包括:
判断是否从活跃表中查询到所述五元组信息对应的修正标识;
若否,则将所述五元组信息以及所述五元组信息对应的修正标识从所述连接表复制存储至所述活跃表中,并从所述修正表中查询所述修正标识对应的修正信息。
6.根据权利要求5所述的方法,其特征在于,在所述判断是否从活跃表中查询到所述五元组信息对应的修正标识之后,还包括:
若从活跃表中查询到所述五元组信息对应的修正标识,则从所述修正表中查询所述修正标识对应的修正信息。
7.根据权利要求5-6任一所述的方法,其特征在于,还包括:
判断所述活跃表中的数据记录是否超过预设时长,所述数据记录包括:所述五元组信息以及所述五元组信息对应的修正标识;
若是,则从所述活跃表中删除所述数据记录。
8.一种网络报文修正装置,其特征在于,包括:
信息获取解析模块,用于获取网络报文,并解析出所述网络报文中的五元组信息;
报文序列修正模块,用于若获取到所述五元组信息对应的修正信息,则根据所述修正信息对所述网络报文的序列号进行修正,获得修正后的网络报文;
网络报文转发模块,用于根据所述五元组信息转发所述修正后的网络报文。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210927196.3A CN115296900B (zh) | 2022-08-03 | 2022-08-03 | 一种网络报文修正方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210927196.3A CN115296900B (zh) | 2022-08-03 | 2022-08-03 | 一种网络报文修正方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115296900A true CN115296900A (zh) | 2022-11-04 |
CN115296900B CN115296900B (zh) | 2024-01-23 |
Family
ID=83826029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210927196.3A Active CN115296900B (zh) | 2022-08-03 | 2022-08-03 | 一种网络报文修正方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115296900B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100128725A1 (en) * | 2008-11-24 | 2010-05-27 | Dacosta Francis | Real time packet transforms to avoid re-transmission |
US7813324B1 (en) * | 2005-09-28 | 2010-10-12 | Rockwell Collins, Inc. | Scalable mobile adaptive reliable ToS based automatic retransmit request |
CN104065465A (zh) * | 2014-06-06 | 2014-09-24 | 华为技术有限公司 | 一种报文重传的方法、请求端、响应端以及系统 |
CN104734964A (zh) * | 2013-12-24 | 2015-06-24 | 华为技术有限公司 | 报文处理方法、节点及系统 |
WO2017219993A1 (zh) * | 2016-06-22 | 2017-12-28 | 新华三技术有限公司 | 报文调度 |
CN110888387A (zh) * | 2019-11-11 | 2020-03-17 | 南京铁道职业技术学院 | 接触网运行状态安全监测装置及方法 |
CN111786748A (zh) * | 2019-08-29 | 2020-10-16 | 北京京东尚科信息技术有限公司 | 数据重传方法和系统、网卡、装置、服务器和存储介质 |
CN112511536A (zh) * | 2020-11-27 | 2021-03-16 | 北京经纬恒润科技股份有限公司 | 一种通信方法及通信系统 |
US20210234945A1 (en) * | 2018-10-19 | 2021-07-29 | Huawei Technologies Co., Ltd. | Packet Processing Method and Apparatus |
-
2022
- 2022-08-03 CN CN202210927196.3A patent/CN115296900B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7813324B1 (en) * | 2005-09-28 | 2010-10-12 | Rockwell Collins, Inc. | Scalable mobile adaptive reliable ToS based automatic retransmit request |
US20100128725A1 (en) * | 2008-11-24 | 2010-05-27 | Dacosta Francis | Real time packet transforms to avoid re-transmission |
CN104734964A (zh) * | 2013-12-24 | 2015-06-24 | 华为技术有限公司 | 报文处理方法、节点及系统 |
CN104065465A (zh) * | 2014-06-06 | 2014-09-24 | 华为技术有限公司 | 一种报文重传的方法、请求端、响应端以及系统 |
WO2017219993A1 (zh) * | 2016-06-22 | 2017-12-28 | 新华三技术有限公司 | 报文调度 |
US20210234945A1 (en) * | 2018-10-19 | 2021-07-29 | Huawei Technologies Co., Ltd. | Packet Processing Method and Apparatus |
CN111786748A (zh) * | 2019-08-29 | 2020-10-16 | 北京京东尚科信息技术有限公司 | 数据重传方法和系统、网卡、装置、服务器和存储介质 |
CN110888387A (zh) * | 2019-11-11 | 2020-03-17 | 南京铁道职业技术学院 | 接触网运行状态安全监测装置及方法 |
CN112511536A (zh) * | 2020-11-27 | 2021-03-16 | 北京经纬恒润科技股份有限公司 | 一种通信方法及通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115296900B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11070571B2 (en) | Cloud-based gateway security scanning | |
CN110582760B (zh) | 用于提供消息编码/解码作为服务的方法、系统和计算机可读介质 | |
US20210092142A1 (en) | Techniques for targeted botnet protection | |
CN108667730B (zh) | 基于负载均衡的报文转发方法、装置、存储介质和设备 | |
US10178060B2 (en) | Mitigating email SPAM attacks | |
EP3035638A1 (en) | Interest acknowledgements for information centric networking | |
CN113055127B (zh) | 数据报文去重与传输方法、电子设备及存储介质 | |
CN110650214B (zh) | 一种代理方法、装置、电子设备及存储介质 | |
WO2018214853A1 (zh) | 一种减小dns报文长度的方法、装置、介质及设备 | |
CN112261172A (zh) | 服务寻址访问方法、装置、系统、设备及介质 | |
CN110266650B (zh) | Conpot工控蜜罐的识别方法 | |
US11916935B1 (en) | Systems and methods for detecting malware domain names | |
CN115225349B (zh) | 一种蜜罐流量处理方法、装置、电子设备及存储介质 | |
US7689648B2 (en) | Dynamic peer network extension bridge | |
CN110995763B (zh) | 一种数据处理方法、装置、电子设备和计算机存储介质 | |
US20110060957A1 (en) | Reliable Messaging Using Publish Subscribe Mechanism | |
CN115296900B (zh) | 一种网络报文修正方法、装置、电子设备及存储介质 | |
CN114281547B (zh) | 一种数据报文处理方法、装置、电子设备及存储介质 | |
CN111669320B (zh) | 一种处理报文的方法及网络设备 | |
US10833981B1 (en) | Method, device, and system for providing hot reservation for in-line deployed network functions with multiple network interfaces | |
RU2469390C1 (ru) | Способ защиты компьютерных сетей от несанкционированного сканирования и блокирования сетевых служб (варианты) | |
WO2016037490A1 (zh) | 一种动态主机配置协议dhcp消息的处理方法及装置 | |
US11683327B2 (en) | Demand management of sender of network traffic flow | |
JP4710889B2 (ja) | 攻撃パケット対策システム、攻撃パケット対策方法、攻撃パケット対策装置、及び攻撃パケット対策プログラム | |
CN108399078B (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 |