CN108667566A - Tcp流数据匹配装置 - Google Patents
Tcp流数据匹配装置 Download PDFInfo
- Publication number
- CN108667566A CN108667566A CN201810377346.1A CN201810377346A CN108667566A CN 108667566 A CN108667566 A CN 108667566A CN 201810377346 A CN201810377346 A CN 201810377346A CN 108667566 A CN108667566 A CN 108667566A
- Authority
- CN
- China
- Prior art keywords
- data
- cyclic redundancy
- time stamp
- redundancy check
- tcp flow
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
Abstract
本发明提供了一种TCP流数据匹配装置,包括:主逻辑模块和多个副逻辑模块;主逻辑模块用于提取第一TCP流数据中的第一CRC校验码,并获取提取第一CRC校验码时刻的提取时间戳,将第一CRC校验码和提取时间戳合并,得到基准数据;每个副逻辑模块用于提取多个第二TCP流数据中的第二CRC校验码,并获取存储第二CRC校验码时刻的存储时间戳,将第二CRC校验码和存储时间戳合并,得到多个副基准数据,若在多个副基准数据中查找到第二CRC校验码和基准数据的第一CRC校验码匹配且存储时间戳和提取时间戳之间的差值小于时间窗口的副基准数据,输出基准数据和副基准数据,缓解现有技术中的流匹配输出结果准确性低的问题,达到了提高流匹配输出结果准确性的技术效果。
Description
技术领域
本发明涉及TCP流数据匹配技术领域,尤其是涉及一种TCP流数据匹配装置。
背景技术
TCP流数据匹配过程,是对顺序、大量、快速和连续到达的TCP数据包序列进行匹配的过程。在实际应用中,TCP流数据匹配过程通常用于处理来自多个异构处理器的数据,输出的匹配结果用来对处理器的性能做分析。
现有技术中,一旦出现流数据中的任一个数据包匹配过程耗费时间过长的情况,将会拖慢整个流匹配进程的速度,同时,基于TCP流数据匹配所遵循的覆盖机制(在下个数据包到来时覆盖用于存储该数据包的储存单元中已存储的数据包),这时上一个数据包如果未匹配完成,将会使得上一次匹配的输出结果发生变化,导致流匹配输出结果准确性低的问题。
发明内容
有鉴于此,本发明的目的在于提供一种TCP流数据匹配装置,以缓解现有技术中存在的流匹配输出结果准确性低的技术问题。
第一方面,本发明实施例提供了一种TCP流数据匹配装置,包括:主逻辑模块和多个副逻辑模块;
所述主逻辑模块,用于提取接收到的第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;
每个所述副逻辑模块,用于提取接收到的多个第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值小于所述时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述存储时间戳减去所述提取时间戳的差值小于所述时间窗口且所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配的所述副基准数据,输出所述基准数据和所述副基准数据。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,还包括:时间戳计数器,所述时间戳计数器分别与所述主逻辑模块和多个所述副逻辑模块连接。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述主逻辑模块包括一个所述时间戳计数器,每个所述副逻辑模块分别包括一个所述时间戳计数器。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,还包括:FIFO模块,所述FIFO模块分别与所述主逻辑模块和多个所述副逻辑模块连接。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值均大于或等于所述时间窗口的所述副基准数据,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
结合第一方面,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述副逻辑模块,还用于若多个所述副基准数据中的所述存储时间戳减去所述提取时间戳的差值均大于或等于所述时间窗口,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
结合第一方面,本发明实施例提供了第一方面的第八种可能的实施方式,其中,所述主逻辑模块,还用于在提取所述第一CRC校验码时,提取所述第一TCP流数据中的第一流ID,所述基准数据还包括所述第一流ID;
所述副逻辑模块,还用于在提取所述第二CRC校验码时,提取所述第二TCP流数据中的第二流ID,所述副基准数据还包括所述第二流ID。
结合第一方面,本发明实施例提供了第一方面的第九种可能的实施方式,其中,所述副基准数据存储在以所述第二流ID作为存储地址的二维数组中。
本发明实施例带来了以下有益效果:本发明实施例提供的TCP流数据匹配装置包括:主逻辑模块和多个副逻辑模块;所述主逻辑模块,用于提取接收到的第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;每个所述副逻辑模块,用于提取接收到的多个第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
所以,当TCP流数据匹配装置进行TCP流数据匹配过程的时候,主逻辑模块接收第一TCP流数据,提取第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;副逻辑模块接收第二TCP流数据,提取第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据,所以,所述TCP流数据匹配装置不仅对所述副基准数据中的所述第二CRC校验码和所述基准数据中的所述第一CRC校验码进行匹配,同时,还利用所述副基准数据中的存储时间戳、所述基准数据中的提取时间戳和预设的时间窗口对匹配过程进行时间控制,避免出现由于流数据中的任一个数据包匹配过程耗费时间过长而导致的拖慢整个流匹配进程速度的问题,同时,也避免由于覆盖机制和拖慢整个流匹配进程速度而导致的流匹配输出结果准确性低的问题,因此,缓解了现有技术中存在的流匹配输出结果准确性低的技术问题,达到了提高流匹配输出结果准确性的技术效果。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的TCP流数据匹配装置的第一种结构示意图;
图2为本发明实施例提供的TCP流数据匹配装置的第二种结构示意图;
图3为本发明实施例提供的TCP流数据匹配装置的第三种结构示意图;
图4为本发明实施例提供的TCP流数据匹配装置的第四种结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,TCP流数据匹配过程,是对顺序、大量、快速和连续到达的TCP数据包序列进行匹配的过程。在实际应用中,TCP流数据匹配过程通常用于处理来自多个异构处理器的数据,输出的匹配结果用来对处理器的性能做分析。
现有技术中,一旦出现流数据中的任一个数据包匹配过程耗费时间过长的情况,将会拖慢整个流匹配进程的速度,同时,基于TCP流数据匹配所遵循的覆盖机制(在下个数据包到来时覆盖用于存储该数据包的储存单元中已存储的数据包),这时上一个数据包如果未匹配完成,将会使得上一次匹配的输出结果发生变化,导致流匹配输出结果准确性低的问题,基于此,本发明实施例提供的一种TCP流数据匹配装置,可以缓解现有技术中存在的流匹配输出结果准确性低的技术问题,达到了提高流匹配输出结果准确性的技术效果。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种TCP流数据匹配装置进行详细介绍,所述TCP流数据匹配装置包括:主逻辑模块和多个副逻辑模块。
所述主逻辑模块,用于提取接收到的第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据。
示例性的,所述提取时间戳可以是由所述主逻辑模块和多个所述副逻辑模块共用的时间戳计数器提供,也可以是由所述主逻辑模块内部包含的时间戳计数器提供。
示例性的,所述主逻辑模块还用于在提取所述第一CRC校验码时,提取所述第一TCP流数据中的第一流ID,所述基准数据还包括所述第一流ID。所以,所述基准数据包括:所述第一流ID、所述第一CRC校验码和所述提取时间戳。
每个所述副逻辑模块,用于提取接收到的多个第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
示例性的,所述存储时间戳可以是由所述主逻辑模块和多个所述副逻辑模块共用的时间戳计数器提供,也可以是由所述主逻辑模块内部包含的时间戳计数器提供。
示例性的,所述副逻辑模块还用于在提取所述第二CRC校验码时,提取所述第二TCP流数据中的第二流ID,所述副基准数据还包括所述第二流ID。所以,所述副基准数据包括:所述第二流ID、所述第二CRC校验码和所述存储时间戳。所述副基准数据存储在以所述第二流ID作为存储地址的二维数组中。由于所述副基准数据以所述第二流ID作为存储地址,所以所述副基准数据不会被覆盖,有效减少错误匹配结果的出现。所述二维数组位于所述副逻辑模块内。因此,所述TCP流数据匹配装置无需使用复杂的RAM,利用简单的二维数组就可以存储具备关键信息的所述副基准数据。所述二维数组可以使用RAM IP核的形式替代。
本发明实施例中,所述TCP流数据匹配装置包括:主逻辑模块和多个副逻辑模块;所述主逻辑模块,用于提取接收到的第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;每个所述副逻辑模块,用于提取接收到的多个第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
所以,当TCP流数据匹配装置进行TCP流数据匹配过程的时候,主逻辑模块接收第一TCP流数据,提取第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;副逻辑模块接收第二TCP流数据,提取第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据,所以,所述TCP流数据匹配装置不仅对所述副基准数据中的所述第二CRC校验码和所述基准数据中的所述第一CRC校验码进行匹配,同时,还利用所述副基准数据中的存储时间戳、所述基准数据中的提取时间戳和预设的时间窗口对匹配过程进行时间控制,避免出现由于流数据中的任一个数据包匹配过程耗费时间过长而导致的拖慢整个流匹配进程速度的问题,同时,也避免由于覆盖机制和拖慢整个流匹配进程速度而导致的流匹配输出结果准确性低的问题,因此,缓解了现有技术中存在的流匹配输出结果准确性低的技术问题,达到了提高流匹配输出结果准确性的技术效果。
在本发明的又一实施例中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值小于所述时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
示例性的,所述副逻辑模块若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配的所述副基准数据,得到多个匹配副基准数据,然后,判断所述提取时间戳减去所述匹配副基准数据中的所述存储时间戳的差值是否小于所述时间窗口,若所述提取时间戳减去所述存储时间戳的差值小于所述时间窗口,输出所述基准数据和所述副基准数据。
举例说明,所述基准数据可以为(12345,12),其中所述第一CRC校验码为12345,所述提取时间戳为12。当进行匹配时,所述副基准数据的数量是3个,分别为(12345,6)、(12345,2)和(14678,4)。12345和14678均为第二CRC校验码,2、4和6均为存储时间戳。在3个副基准数据中查找到与第一CRC校验码12345相匹配的第二CRC校验码所在的副基准数据,为副基准数据(12345,6)和副基准数据(12345,2)。然后,利用所述时间窗口(此时的时间窗口可以设置为8),对匹配过程进行时间控制,对于副基准数据(12345,6),使用提取时间戳12减去存储时间戳6,得到差值6,判断差值6是否小于时间窗口8,由于差值6小于时间窗口8,所以满足匹配条件,输出基准数据(12345,12)和副基准数据(12345,6)。对于副基准数据(12345,2),使用提取时间戳12减去存储时间戳2,得到差值10,判断差值10是否小于时间窗口8,由于差值10大于时间窗口8,所以不满足匹配条件。当所述提取时间戳减去所述存储时间戳的差值大于或等于所述时间窗口时,意味着,在匹配过程进行之前,副基准数据在所述副逻辑模块中等待的时间太长。
在本发明的又一实施例中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述存储时间戳减去所述提取时间戳的差值小于所述时间窗口且所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配的所述副基准数据,输出所述基准数据和所述副基准数据。
示例性的,所述副逻辑模块的匹配过程和存储副基准数据的过程是同时进行的。所述副逻辑模块还用于若在已存储的多个所述副基准数据中没有找到与所述第一CRC校验码匹配的所述副基准数据,则在时间窗口允许的时间内等待新的副基准数据的到来。新的副基准数据的存储时间戳大于基准数据的提取时间戳,因为新的副基准数据是后来的。若在时间窗口允许的时间内等待的新的副基准数据的第二CRC校验码和所述基准数据的所述第一CRC校验码匹配,则输出新的副基准数据和基准数据。
举例说明,时间窗口可以设置为8,基准数据(12345,12)进行匹配时,所述副逻辑模块内已存储的副基准数据包括:(12435,3)、(23142,5)和(22312,4),3个副基准数据中的第二CRC校验码和第一CRC校验码均不匹配,等待新的副基准数据,以新来的副基准数据(12345,17)为例进行说明,使用存储时间戳17减去提取时间戳12,得到差值5,判断差值5是否小于时间窗口8,差值5小于时间窗口8,然后判断副基准数据(12345,17)中的第二CRC校验码和基准数据(12345,12)中的第一CRC校验码是否匹配,第二CRC校验码12345和第一CRC校验码12345匹配,所以,输出副基准数据(12345,17)和基准数据(12345,12)。当所述存储时间戳减去所述提取时间戳的差值大于或等于所述时间窗口时,意味着新的副基准数据到来的太晚。
在本发明的又一实施例中,所述TCP流数据匹配装置还包括:时间戳计数器,所述时间戳计数器分别与所述主逻辑模块和多个所述副逻辑模块连接。
示例性的,以所述TCP流数据匹配装置包括一个所述时间戳计数器、一个所述主逻辑模块和两个所述副逻辑模块为例进行说明。如图1所示,所述TCP流数据匹配装置包括:一个所述时间戳计数器14、一个所述主逻辑模块11和两个所述副逻辑模块。两个所述副逻辑模块分别为第一副逻辑模块12和第二副逻辑模块13。
在本发明的又一实施例中,所述主逻辑模块包括一个所述时间戳计数器,每个所述副逻辑模块分别包括一个所述时间戳计数器。
示例性的,以所述TCP流数据匹配装置包括三个所述时间戳计数器、一个所述主逻辑模块和两个所述副逻辑模块为例进行说明。所述主逻辑模块包括一个所述时间戳计数器,两个所述副逻辑模块分别包括一个所述时间戳计数器。如图2所示,所述TCP流数据匹配装置包括:主逻辑模块22、副逻辑模块21和副逻辑模块23,主逻辑模块22内包括时间戳计数器25,副逻辑模块21内包括时间戳计数器24,副逻辑模块23内包括时间戳计数器26。
在本发明的又一实施例中,所述TCP流数据匹配装置还包括:FIFO模块,所述FIFO模块分别与所述主逻辑模块和多个所述副逻辑模块连接。
示例性的,所述主逻辑模块可以将基准数据发送给所述FIFO模块,所述副逻辑模块可以从所述FIFO模块读取所述基准数据。使用所述FIFO模块避免所述基准数据被遗漏。
示例性的,如图3所示,所述TCP流数据匹配装置可以包括:主逻辑模块31、副逻辑模块32、副逻辑模块33、时间戳计数器34和FIFO模块35。
示例性的,如图4所示,所述TCP流数据匹配装置可以包括:主逻辑模块31、副逻辑模块32、副逻辑模块33、时间戳计数器34、时间戳计数器41、时间戳计数器42和FIFO模块35。主逻辑模块31内包括时间戳计数器34,副逻辑模块32内包括时间戳计数器41,副逻辑模块33内包括时间戳计数器42。
在本发明的又一实施例中,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值均大于或等于所述时间窗口的所述副基准数据,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
示例性的,所述副逻辑模块若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配的所述副基准数据,得到多个匹配副基准数据,然后,判断所述提取时间戳减去所述匹配副基准数据中的所述存储时间戳的差值是否小于所述时间窗口,若所述提取时间戳减去所述存储时间戳的差值均大于或等于所述时间窗口,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
在本发明的又一实施例中,所述副逻辑模块,还用于若多个所述副基准数据中的所述存储时间戳减去所述提取时间戳的差值均大于或等于所述时间窗口,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
示例性的,若多个所述副基准数据中的所述存储时间戳减去所述提取时间戳的差值均大于或等于所述时间窗口,意味着新的副基准数据到来的太晚。所以,丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种TCP流数据匹配装置,其特征在于,包括:主逻辑模块和多个副逻辑模块;
所述主逻辑模块,用于提取接收到的第一TCP流数据中的第一CRC校验码,并获取提取所述第一CRC校验码时刻的提取时间戳,将所述第一CRC校验码和所述提取时间戳合并,得到基准数据;
每个所述副逻辑模块,用于提取接收到的多个第二TCP流数据中的第二CRC校验码,并获取存储所述第二CRC校验码时刻的存储时间戳,将所述第二CRC校验码和所述存储时间戳合并,得到多个副基准数据,若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述存储时间戳和所述提取时间戳之间的差值小于预设的时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
2.根据权利要求1所述的TCP流数据匹配装置,其特征在于,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值小于所述时间窗口的所述副基准数据,输出所述基准数据和所述副基准数据。
3.根据权利要求2所述的TCP流数据匹配装置,其特征在于,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述存储时间戳减去所述提取时间戳的差值小于所述时间窗口且所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配的所述副基准数据,输出所述基准数据和所述副基准数据。
4.根据权利要求1-3任一所述的TCP流数据匹配装置,其特征在于,还包括:时间戳计数器,所述时间戳计数器分别与所述主逻辑模块和多个所述副逻辑模块连接。
5.根据权利要求1-3任一所述的TCP流数据匹配装置,其特征在于,所述主逻辑模块包括一个所述时间戳计数器,每个所述副逻辑模块分别包括一个所述时间戳计数器。
6.根据权利要求5所述的TCP流数据匹配装置,其特征在于,还包括:FIFO模块,所述FIFO模块分别与所述主逻辑模块和多个所述副逻辑模块连接。
7.根据权利要求6所述的TCP流数据匹配装置,其特征在于,所述副逻辑模块,还用于若在多个所述副基准数据中查找到所述第二CRC校验码和所述基准数据的所述第一CRC校验码匹配且所述提取时间戳减去所述存储时间戳的差值均大于或等于所述时间窗口的所述副基准数据,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
8.根据权利要求7所述的TCP流数据匹配装置,其特征在于,所述副逻辑模块,还用于若多个所述副基准数据中的所述存储时间戳减去所述提取时间戳的差值均大于或等于所述时间窗口,则丢弃所述基准数据,从所述FIFO模块中读取下一个所述基准数据。
9.根据权利要求8所述的TCP流数据匹配装置,其特征在于,
所述主逻辑模块,还用于在提取所述第一CRC校验码时,提取所述第一TCP流数据中的第一流ID,所述基准数据还包括所述第一流ID;
所述副逻辑模块,还用于在提取所述第二CRC校验码时,提取所述第二TCP流数据中的第二流ID,所述副基准数据还包括所述第二流ID。
10.根据权利要求9所述的TCP流数据匹配装置,其特征在于,所述副基准数据存储在以所述第二流ID作为存储地址的二维数组中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810377346.1A CN108667566B (zh) | 2018-04-24 | 2018-04-24 | Tcp流数据匹配装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810377346.1A CN108667566B (zh) | 2018-04-24 | 2018-04-24 | Tcp流数据匹配装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108667566A true CN108667566A (zh) | 2018-10-16 |
CN108667566B CN108667566B (zh) | 2020-12-01 |
Family
ID=63780949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810377346.1A Active CN108667566B (zh) | 2018-04-24 | 2018-04-24 | Tcp流数据匹配装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108667566B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100106946A1 (en) * | 2008-10-29 | 2010-04-29 | Hitachi, Ltd. | Method for processing stream data and system thereof |
CN102045457A (zh) * | 2010-12-01 | 2011-05-04 | 北京迅捷英翔网络科技有限公司 | 互动数据的模板匹配装置及方法 |
US20110292797A1 (en) * | 2010-05-28 | 2011-12-01 | Alcatel-Lucent Usa Inc. | Dynamic delay budget allocation using single-point estimation of end-to-end delay |
CN103200112A (zh) * | 2012-01-06 | 2013-07-10 | 北京奇策科技有限公司 | 一种计算机网络tcp流量控制方法 |
CN103797482A (zh) * | 2011-06-08 | 2014-05-14 | 沙扎姆娱乐有限公司 | 进行接收到的数据的比较并基于比较提供后续服务的方法和系统 |
CN105516204A (zh) * | 2016-01-27 | 2016-04-20 | 北京理工大学 | 一种高安全性网络数据存储方法 |
-
2018
- 2018-04-24 CN CN201810377346.1A patent/CN108667566B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100106946A1 (en) * | 2008-10-29 | 2010-04-29 | Hitachi, Ltd. | Method for processing stream data and system thereof |
US20110292797A1 (en) * | 2010-05-28 | 2011-12-01 | Alcatel-Lucent Usa Inc. | Dynamic delay budget allocation using single-point estimation of end-to-end delay |
CN102045457A (zh) * | 2010-12-01 | 2011-05-04 | 北京迅捷英翔网络科技有限公司 | 互动数据的模板匹配装置及方法 |
CN103797482A (zh) * | 2011-06-08 | 2014-05-14 | 沙扎姆娱乐有限公司 | 进行接收到的数据的比较并基于比较提供后续服务的方法和系统 |
CN103200112A (zh) * | 2012-01-06 | 2013-07-10 | 北京奇策科技有限公司 | 一种计算机网络tcp流量控制方法 |
CN105516204A (zh) * | 2016-01-27 | 2016-04-20 | 北京理工大学 | 一种高安全性网络数据存储方法 |
Non-Patent Citations (1)
Title |
---|
高自娟: "《基于变尺度滑动窗口的流数据聚类算法》", 《计算机应用研究》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108667566B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107566206B (zh) | 一种流量测量方法、设备及系统 | |
CN109962832A (zh) | 报文处理的方法和装置 | |
CN102915347B (zh) | 一种分布式数据流聚类方法及系统 | |
CN108900327A (zh) | 一种基于dpdk的天文数据采集和实时处理方法 | |
CN108132838A (zh) | 一种图数据处理的方法、装置及系统 | |
CN106250444A (zh) | 一种异构数据源的实时入库系统及方法 | |
US8358842B2 (en) | Electronic device with function of separating panels of digital comic strip and method thereof | |
CN103516802A (zh) | 一种实现跨异构虚拟交换机无缝迁移的方法和装置 | |
CN104699757B (zh) | 云环境下分布式网络信息采集方法 | |
CN105099916B (zh) | 开放流路由交换设备及其对数据报文的处理方法 | |
CN103218176A (zh) | 数据处理方法及装置 | |
CN115917520A (zh) | 用于通过分布式算法为可编程数据平面提供lpm实现的系统 | |
CN106997394B (zh) | 一种数据乱序到达处理方法和系统 | |
CN109983459A (zh) | 用于标识语料库中出现的n-gram的计数的方法和设备 | |
CN109889682A (zh) | 任务需求云端处理评估系统及方法 | |
CN103731364B (zh) | 基于x86平台实现万兆大流量快速收包的方法 | |
CN108363611A (zh) | 虚拟机的安全管理方法、装置及全方位虚拟化系统 | |
CN103281291A (zh) | 一种基于Hadoop的应用层协议识别方法 | |
CN104866370B (zh) | 一种云计算环境下面向并行应用的动态时间片调度方法及系统 | |
CN109800074A (zh) | 任务数据并发执行方法、装置以及电子设备 | |
CN106815128A (zh) | 日志输出方法及装置、电子设备 | |
CN103888227B (zh) | 一种基于vl的数据帧接收分析设备和方法 | |
US11496418B1 (en) | Packet-based and time-multiplexed network-on-chip | |
CN107729860B (zh) | 人脸识别计算方法及相关产品 | |
CN108667566A (zh) | Tcp流数据匹配装置 |
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 |