一种基于端口位图的硬件报文采样系统和方法

文档序号:7784759阅读:328来源:国知局
专利名称:一种基于端口位图的硬件报文采样系统和方法
技术领域
本发明属于网络数据处理领域,特别涉及一种基于端口位图的硬件报文采样系统和方法。
背景技术
一些网络数据处理系统中,往往由硬件芯片实现对输入报文的采样,报文到达硬件芯片时,芯片把不需要的报文丢弃,选择一些需要处理的报文继续处理。在很多系统中, 硬件芯片进行报文采样的依据是报文的tcp或UdP端口号。专利号为“CN(^^8622. 7”、发明名称为“用于划分安全保护的输入/输出许可位图”,公开了一种选择性执行输入/输出(I/O)指令的方法和装置设备。该方法包括于内存 (206)中产生I/O许可位图(600)并接收I/O端口数字和安全状态认证(SCID)值。该方法并包括使用该SCID值和该I/O端口数字访问该存储的I/O许可位图(600)以获得对应至该I/O端口的许可位并依照对应至该I/O端口的许可位执行该I/O指令。该I/O许可位图 (600)包括多个许可位。各该许可位对应至一个不同的I/O端口。各该许可位具有数值指示该对应的I/O端口是被允许访问。该I/O端口数字指示该I/O指令所引用的I/O端口。 该SCID值指示具有该I/O指令的内存地址的安全认证级。专利号为“CN200710021621.8”、发明名称为“高速多链路逻辑信道环境下的自适
应抽样流测量方法”,公开了一种高速多链路逻辑信道环境下的自适应抽样流测量方法是一种用于计算机网络设备的自适应抽样流测量方法,该方法基于对NetraMet和NetFlow系统设计的分析,本发明使用了支持高速多链路逻辑信道网络测量的抽样比,能根据网络流量的状况自调节报文抽样比和流抽样比,并且支持时间片方式输出流信息,以通用的方式支持任何信道的流量监测。本发明利用基于阈值检测-趋势触发的报文抽样比自适应调节算法和基于抽样一保持流抽样算法以较小的资源开销监测任何高速多链路逻辑信道,并在流量突发的情况下维持系统开销不变,支持以时间片的方式输出链路上的流量信息,误差小,为流量分析、异常检测等应用提供了精确的信息。但上述技术方案中,系统在进行tcp或Udp端口的采样时,需要把要采样的tcp或 Udp端口号列表配置到硬件芯片中,每个端口号用16位表示,硬件芯片接收到报文后,根据报文的端口号到系统配置的端口号列表中去查找,如果能找到,则采样该报文,如果找不到,则丢弃该报文。在有些情况下,系统采样的端口可能很多,因此系统设计时必须考虑所有可能的情况,配置到硬件中的端口列表长度需要达到64K个表项,每个表项需要16位。大容量的端口列表一方面会占用硬件芯片的存储资源,另一方面会降低查找端口的效率。

发明内容
本发明克服现有技术不足,使用端口位图降低端口列表对硬件芯片存储资源的占用,提升查找的效率,从而解决提升报文采样硬件芯片的效率的问题。
本发明提供了一种基于端口位图的硬件报文采样系统,其包括端口号查找模块和端口位图结构储存模块,该端口位图结构储存模块中每一位的位置表示端口号,把一般系统的端口列表模块中表示一个端口使用的16位压缩为端口位图结构储存模块中的1位。本发明提供的基于端口位图的硬件报文采样系统,其采集的报文的端口号将映射对应到端口位图结构储存模块中的某一位。本发明提供的基于端口位图的硬件报文采样系统,其端口位图结构储存模块为 64Kbit的存储资源。本发明提供的基于端口位图的硬件报文采样系统,其所述报文是Udp或tcp报文。本发明还提供了一种基于端口位图的硬件报文采样方法,在硬件芯片中使用 64Kbit的存储资源,建立tcp或udp端口位图,其中每一位用自己的位置表示一个端口号, 第η位表示端□号η。本发明提供的基于端口位图的硬件报文采样方法,对输入的所述udp或tcp报文, 根据报文的所述端口号,对应到芯片中端口位图的某一位。本发明提供的基于端口位图的硬件报文采样方法,当某一位的值为0时,表示不采样该位对应的所述端口号的报文,直接丢弃报文后处理下一个报文。本发明提供的基于端口位图的硬件报文采样方法,当某一位的值为1时,表示采样该位对应的所述端口号的报文,把报文传输到系统的后继模块处理。本发明使用一个位图结构储存端口列表,用每一位的位置表示端口号,把端口列表中表示一个端口使用的16位压缩为端口位图中的1位,减少了存储空间,查找一个报文的端口号时也不需要扫描端口列表,而是把端口号作为端口位图中对应一位的位置,直接定位,提高了查找速度。与现有技术相比,本发明的有益效果在于提高了报文采样系统中硬件芯片的效率。


图1是本发明的结构示意图。
具体实施例方式图1是本发明的结构示意图,其包括端口号查找模块和64Kbit的存储资源的端口位图结构储存模块,该端口位图结构储存模块中每一位的位置表示端口号,把端口列表模块中表示一个端口使用的16位压缩为端口位图结构储存模块中的1位,并且其采集的udp 或tcp报文的端口号将映射对应到端口位图结构储存模块中的某一位。本发明的实现方法和过程如下(1)在硬件芯片中使用64Kbit的存储资源,建立tcp或udp端口位图,其中每一位用自己的位置表示一个端口号,第η位表示端口号η。(2)对输入的udp或tcp报文,根据报文的端口号,对应到芯片中端口位图的某一位。(3)当某一位的值为0时,表示不采样该位对应的端口号的报文,直接丢弃报文后处理下一个报文。
(4)当某一位的值为1时,表示采样该位对应的端口号的报文,把报文传输到系统的后继模块处理。本发明使用一个位图结构储存端口列表,用每一位的位置表示端口号,把端口列表中表示一个端口使用的16位压缩为端口位图中的1位,减少了存储空间,查找一个报文的端口号时也不需要扫描端口列表,而是把端口号作为端口位图中对应一位的位置,直接定位,提高了查找速度。本发明提高了报文采样系统中硬件芯片的效率。以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解依然可以对本发明的具体实施方式
进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换, 其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种基于端口位图的硬件报文采样系统,其包括端口号查找模块和端口位图结构储存模块,其特征在于端口位图结构储存模块中每一位的位置表示端口号,把端口列表模块中表示一个端口使用的16位压缩为端口位图结构储存模块中的1位。
2.根据权利要求1所述的报文采样系统,其特征在于采集的报文的端口号将映射对应到端口位图结构储存模块中的某一位。
3.根据权利要求1-2所述的报文采样系统,其特征在于端口位图结构储存模块为 64Kbit的存储资源。
4.根据权利要求1-3所述的报文采样系统,其特征在于所述报文是udp或tcp报文。
5.一种基于端口位图的硬件报文采样方法,其特征在于,在硬件芯片中使用64Kbit的存储资源,建立tcp或udp端口位图,其中每一位用自己的位置表示一个端口号,第η位表示端□号η。
6.根据权利要求5所述的报文采样方法,其特征在于,对输入的所述udp或tcp报文, 根据报文的所述端口号,对应到芯片中端口位图的某一位。
7.根据权利要求5-6所述的报文采样方法,其特征在于,当某一位的值为0时,表示不采样该位对应的所述端口号的报文,直接丢弃报文后处理下一个报文。
8.根据权利要求5-7所述的报文采样方法,其特征在于,当某一位的值为1时,表示采样该位对应的所述端口号的报文,把报文传输到系统的后继模块处理。
全文摘要
本发明提供一种基于端口位图的硬件报文采样系统和方法,其特征在于,在硬件芯片中使用64Kbit的存储资源,建立tcp或udp端口位图,其中每一位用自己的位置表示一个端口号,第n位表示端口号n,报文采样时根据输入报文的tcp或upd端口号查找位图,可以实现快速的查找。与现有技术相比,本发明的有益效果在于,本发明提高了报文采样系统中硬件芯片的效率。
文档编号H04L12/56GK102571563SQ20111042658
公开日2012年7月11日 申请日期2011年12月19日 优先权日2011年12月19日
发明者刘朝辉, 李锋伟, 白宗元, 窦晓光, 邵宗有 申请人:曙光信息产业(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1