实现网络分片报文流量实时监测的方法和装置的制造方法_2

文档序号:9754388阅读:来源:国知局
报文是否为末分片,如果IP首部中MF标志位置O,片位移不为O(中间分片报文,则IP首部中MF标志位置I,片位移不为O),则认定该报文是末分片,则执行S209,否则执行S205;
[0037]S209,删除相应的KEY表项和AD表项,将相应表项的Val id置为O,从而为其他的分片报文让出存储空间;
[0038]S205,进入IPFIX模块进行流量监测。
[0039]其中,KEY表项和AD的表项如图3所示,每条条目的Valid标识为I,说明此条目有效,源、目的IP地址,分片标识和源、目的端口一一对应。
[0040]此外,对于KEY和AD,还提供老化机制,当某条有效条目(末分片还未到达)对应的中间分片长时间没有接收到,则不必等到末分片到达,直接将该条目置为无效(Valid置为O),从而将资源给其他分片报文用。这个机制保证了不会因为网络发生丢包,导致没有接收到末分片时,无效分组一直占着资源。
[0041]如图4所示,是本发明IPFIX模块的流程示意图,包括以下步骤:
[0042]S401:获取芯片端口上IPFIX配置信息。
[0043]配置信息包括选择七元组还是五元组或者其他方式对流量进行分类。其中,七元组是指:源IP地址、目的IP地址、TCP/UDP源端口、TCP/UDP目的端口、三层协议类型、服务类型和输入逻辑接口,五元组是指:源IP地址,目的1?地址,11^/1]0?源端口,1^?/1]0?目的端口和传输层协议号。当然,本发明可以灵活地选择组合,即也可以是一元组、二元组、三元组等等。
[0044]S402:根据配置信息选择哈希关键字Hash Key类型。
[0045]S403:结合当前报文的信息组合哈希关键字Hash Key。
[0046]S404:根据组合后的哈希关键字Hash Key在芯片的IPFIX存储空间中进行流表记录哈希Hash查找。
[0047]流表记录哈希查找的流程如图5所示,图5的哈希查找过程显示了本发明中芯片是如何实现每个报文能找到相应的流表记录。芯片为了减小Hash冲突率,将IPFIX的存储空间分成η级,每一级选择一个不同的Hash算法多项式,组合后的哈希关键字Hash Key经过不同的Hash多项式,可以得到不同的Hash值,这些Hash值其实就是各级存储空间的索引,根据各级索引读出各级存储空间中记录的Hash Key,如果当前报文组合的Key和某级存储空间中读出的Key—致,则表明该级存储对应的索引记录着当前报文的流表信息。
[0048]S405:哈希查找后,根据哈希Hash查找的结果可以知道当前报文所在的流表记录是否存在,如果不存在,则表明当前报文是所在流的第一个报文,则执行S406;如果存在,则执行S407。
[0049]S406:芯片需要在相应的存储空间中插入新的会话记录,然后执行S408。
[°°50] S407:只需更新已经存在的流表记录。
[0051 ] S408:插入或者更新流表记录后,需要判断是否要将该流表记录上报CPU进行软件上的处理,如果满足上报条件,则执行S409;如果不满足上报条件,则执行S410。
[0052]上报CPU的条件包括当前会话已经结束、会话持续的时间过长、数据统计(如报文总个数、报文总长度等)超过设定的阈值等。
[0053]S409:将相关流表记录通过芯片中的DMA高速通道上报CPU。
[0054]S410:此次IPFIX流程结束。
[0055]如图6所示,一种实现网络分片报文流量实时监测的装置,包括:报文接收模块、首分片判断模块、末分片判断模块、提取模块、查找模块、删除模块、IPFIX模块,所述报文接收模块用于接收到IP分片报文;所述首分片判断模块用于判断所述IP分片报文是否为首分片;所述提取模块用于提取IP地址和分片标识存储在关联KEY表项中,提取源、目的端口存储在关联AD表项中;所述查找模块用于提取IP首部中的源、目的IP地址和分片标识,在所述KEY表项中进行逐行查找,在AD表项中提取相应的源端口、目的端口信息;所述末分片判断模块用于判断IP分片报文是否为末分片;所述删除模块用于删除相应的KEY表项和AD表项,其中所述IPFIX模块的处理参照图4。
[0056]本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。
【主权项】
1.一种实现网络分片报文流量实时监测的方法,其特征在于:交换机接收到一个IP分片报文,判断所述IP分片报文是否为首分片,若是首分片报文,则提取IP地址和分片标识存储在关联KEY表项中,提取源、目的端口存储在关联AD表项中,进入IPFIX模块进行流量监测。2.根据权利要求1所述的实现网络分片报文流量实时监测的方法,其特征在于,判断所述IP分片报文是否为首分片之后还包括:若不是首分片报文,提取IP首部中的源、目的IP地址和分片标识,在所述KEY表项中进行逐行查找,在AD表项中提取相应的源端口、目的端口信息,进入IPFIX模块进行流量监测。3.根据权利要求2所述的实现网络分片报文流量实时监测的方法,其特征在于,所述在AD表项中提取相应的源端口、目的端口信息之后,判断IP分片报文是否为末分片,若是末分片,删除相应的KEY表项和AD表项,进入IPFIX模块进行流量监测。4.根据权利要求3所述的实现网络分片报文流量实时监测的方法,其特征在于,所述在AD表项中提取相应的源端口、目的端口信息之后,判断IP分片报文是否为末分片,若不是末分片,进入IPFIX模块进行流量监测。5.根据权利要求1或2所述的实现网络分片报文流量实时监测的方法,其特征在于,所述判断所述IP分片报文是否为首分片的方法为:IP首部中的MF标志位置I,片位移为O,则认定该报文是分片报文,而且是首分片报文。6.根据权利要求3或4所述的实现网络分片报文流量实时监测的方法,其特征在于,所述判断IP分片报文是否为末分片的方法为:1P首部中MF标志位置O,片位移不为O。7.根据权利要求2所述的实现网络分片报文流量实时监测的方法,其特征在于,对于所述KEY表项和所述AD表项,提供老化机制,当某条有效条目对应的中间分片长时间没有接收至IJ,则不必等到末分片到达,直接将该条目置为无效。8.根据权利要求7所述的实现网络分片报文流量实时监测的方法,其特征在于,所述KEY表项和所述AD表项中,所述有效条目的判定方法为:该条目的Valid标识为I,所述将该条目置为无效的方法为:该条目的Valid标识设置为O。9.一种实现网络分片报文流量实时监测的装置,其特征在于包括:报文接收模块、首分片判断模块、末分片判断模块、提取模块、查找模块、删除模块、IPFIX模块,所述报文接收模块用于接收到IP分片报文;所述首分片判断模块用于判断所述IP分片报文是否为首分片;所述提取模块用于提取IP地址和分片标识存储在关联KEY表项中,提取源、目的端口存储在关联AD表项中;所述查找模块用于提取IP首部中的源、目的IP地址和分片标识,在所述KEY表项中进行逐行查找,在AD表项中提取相应的源端口、目的端口信息;所述末分片判断模块用于判断IP分片报文是否为末分片;所述删除模块用于删除相应的KEY表项和AD表项。
【专利摘要】本发明揭示了一种实现网络分片报文流量实时监测的方法和装置,将IP报文中首分片的四层端口信息和三层IP地址、分片标识记录下来,后续分片到来后,查找源、目的IP地址和分片标识,就能得到所属原始报文的四层源、目的端口,基于IPFIX进行流量监测,能够灵活地针对从哪个IP地址发往哪个IP地址的某种具体的应用业务流量进行统计,不漏掉非首分片的分片报文的统计结果,提高统计的精度。
【IPC分类】H04L12/26
【公开号】CN105515921
【申请号】CN201610049136
【发明人】马千里, 单哲
【申请人】盛科网络(苏州)有限公司
【公开日】2016年4月20日
【申请日】2016年1月25日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1