Netstream 流量分析技术

本文参考华为手册
 数据库

NetStream简介

定义

NetStream是一种对网络中的业务流量进行统计和分析的技术。缓存

目的

随着因特网的高速发展,支持的业务和应用日益增多。致使网络和业务的部署和维护变得很是复杂,因此咱们须要一种流量统计技术,以便对网络流量进行统计和分析,实现网络的细致管理和优化。安全

传统的流量统计技术,因为其统计流量的方式不灵活并存在局限性(如表1所示),不能知足当前的业务需求。在这样的背景下,精细化的流量监控和分析技术NetStream应运而生。服务器

受益

  • 计费:

NetStream为基于资源(如线路、带宽、时段等)占用状况的计费提供了精细的数据,这些数据包括IP地址、包数、字节数、时间、ToS和应用类型等。企业客户可使用这些信息计算部门费用或分配成本,以便有效利用资源。markdown

  • 网络监控:

NetStream可以实现近于实时的网络监控功能。经过在链接Internet的接口部署NetStream,能够对网络出口进行实时的流量监控,分析各类业务占用出口带宽的状况。网管人员能够根据这些信息判断网络的运行状况,尽早发现不合理的网络结构或是网络中的性能瓶颈,方便企业客户规划和分配网络资源。 网络

 

NetStream系统组成

一个典型的NetStream系统由网络流数据输出器NDE(NetStream Data Exporter)、网络流数据收集器NSC(NetStream Collector)和网络流数据分析器NDA(NetStream Data Analyzer)三部分组成。
 dom

  • NDE:负责对网络流进行分析处理,提取符合条件的流进行统计,并将统计信息输出给NSC。输出前也可对数据进行一些处理,好比将相同的流量统计信息进行合并。配置了NetStream功能的设备在NetStream系统中担当NDE角色。ide

  • NSC:负责解析来自NDE的报文,把统计数据收集到数据库中,可供NDA进行解析。NSC能够采集多个NDE设备输出的数据,对数据进行进一步的处理。工具

  • NDA:是一个网络流量分析工具,它从NSC中提取统计数据,进行进一步的加工处理后生成报表,为各类业务提供依据(好比流量计费、网络规划、***监测)。一般,NDA具备图形化用户界面,使用户能够方便地获取、显示和分析收集到的数据。
     
    在实际的应用中,NSC和NDA通常集成在一台NetStream服务器上,如图1所示。NDE经过NetStream采样获取10GE1/0/1接口出方向流量信息,并按照必定条件创建NetStream流,当NetStream缓存区已满或者NetStream流达到老化时间,NDE会将统计的信息封装成NetStream报文发送到NetStream服务器。NetStream服务器对NetStream报文进行分析处理,并显示分析结果。

图1 NetStream系统组成图
Netstream 流量分析技术性能

 
NetStream工做过程

如图1所示,NetStream系统的工做过程以下:

1.配置了NetStream功能的设备(即NDE)把采集到的关于流的详细统计信息按期发送给NSC。
2.信息由NSC初步处理后发送给NDA。
3.NDA对数据进行分析,以用于计费、网络规划等应用。

 

设备做为NDE实现以下功能:
1.设备按必定的采样方式对业务流进行采样,并创建NetStream流。请参见NetStream流的创建。
2.存储在设备上的NetStream流达到必定的条件后进行老化。请参见NetStream流老化。
3.NetStream流老化后,设备对NetStream流进行输出。请参见NetStream流输出。

 

NetStream流的创建

设备的NetStream模块按必定的方式对业务流量进行采样,获取采样信息后,按照必定的条件创建NetStream流。

NetStream采样

NetStream与采样器配合,经过在接口设定适当的采样比对通过的业务流量进行采样。

NetStream采样的优势:只须要针对样本报文进行流信息统计分析。这样不但减小了统计的报文数量,收集到的统计信息也能够基本正确地反映整个网络流的情况,同时也能下降使能NetStream功能对设备性能的影响。

设备支持随机报文间隔采样,即报文在配置数目间隔内被随机采样。好比报文间隔数配置为100,则每100个报文随机采样1个报文。

NetStream流

NetStream是一项基于“流”来提供报文统计的技术。获得采样报文后,NetStream模块对报文进行分析处理,依据报文中的关键值造成一条条的流。造成流的关键值以下:

对于报文的二层信息,相同的五元组标识为同一条流。五元组是指报文的目的MAC地址、源MAC地址、VLAN ID、以太类型、输入接口或输出接口。<br/>对于IPv4报文,相同的七元组标识为同一条流。七元组是指报文的目的IP地址、源IP地址、目的端口号、源端口号、协议类型、服务类型ToS(Type of Service)、输入接口或输出接口。<br/>对于IPv6报文,相同的八元组标识为同一条流。八元组是指报文的目的IPv6地址、源IPv6地址、目的端口号、源端口号、协议类型、服务类型ToS、流标签、输入接口或输出接口。<br/>对于MPLS报文,能够统计MPLS标签信息、MPLS报文内的IP信息、MPLS标签信息和内层IP信息。

 

NetStream流老化

NetStream流老化是设备向NSC输出流统计信息的前提。设备启用NetStream功能后,NetStream流首先会被存储在设备的缓存区中,当缓存区中的NetStream流达到老化条件时,设备会把缓存区中的NetStream流发送给NSC。

NetStream流老化分为如下几类:

按自定义条件老化

  • 活跃流的老化

从第一个报文开始,一条流在指定的时间内一直能被采集到。流活跃时间超过设定的时长后,须要输出该流的统计信息,这种老化称为活跃流的老化。该种老化方式主要用于持续时间较长的流量,按期输出统计信息。

  • 非活跃流的老化

从最后一个报文开始,一条流在指定的时间内没有被采集到(即在设定时长内统计到的报文数目没有增长),设备会向NetStream服务器输出该流的统计信息,这种老化称为不活跃的流老化。经过这种老化,能够清除设备上NetStream缓存区中的无用表项,充分利用统计表项资源。该种老化方式主用于短时流量,流量中止则当即输出统计信息,节省内存空间。

  • 由TCP链接的FIN和RST报文触发老化

当有标志为FIN或RST的报文发送时,表示一次会话结束。所以当采样的报文中有FIN或RST的报文时,设备会对统计信息进行老化。

超规格自动老化

  • 超流表规格老化

设备对于NetStream流表规格的大小进行了限制。当NetStream的流表数超过该限制时,为了保证统计信息的正确性,系统会当即自动把该流老化掉。

  • 超字节统计限制老化

缓存区中的NetStream流须要记录流过的报文字节数,当字节数统计超过限制(最大计数值为4294967295,约为3.9G字节)时,若是继续进行累加统计将会发生溢出进而致使统计发生错误。因此系统在检测到某条流的字节数统计超过限制时,系统会当即自动把该流老化掉。

  • 命令行强制老化

用户能够经过执行命令强制将NetStream缓存区中全部NetStream流老化。该功能主要用于老化条件还没有知足,但又须要最新的统计信息,或者NetStream业务发生异常,致使流缓存区中某些流始终不老化。

 

NetStream流输出

NetStream流输出是指储存缓存区里面的流老化后把流统计信息输出到指定的NSC,以便后续进行更为详尽的分析。

NetStream流输出方式

原始流输出方式

在流老化时间超时后,每条流的统计信息都要输出到NSC。原始流输出方式的优势是:NSC能够获得每条流的详细统计信息。

聚合流输出方式

聚合流输出方式是指设备对与聚合关键项彻底相同的原始流统计信息进行汇总,从而获得对应的聚合流统计信息。经过对原始流进行聚合后输出,能够明显减小网络带宽。支持如表1所示的聚合方式。

例如:现有四条TCP原始流,其目的地址相同、源地址不一样,源端口、目的端口均相同,选择表1中的“protocol-port(协议-端口聚合)”方式,该聚合方式依据“协议号、源端口、目的端口”的聚合关键项进行聚合。由于这四条TCP流的源端口、目的端口和协议号相同,因此在聚合流统计表项中只会记录一条聚合流统计信息。设备只将聚合统计信息发送给相应的接收聚合统计信息的NSC。
Netstream 流量分析技术

灵活流输出方式

对于灵活流输出,其流的创建条件是按照自定义的条件设置。根据自身须要,用户能够对报文按照协议类型、ToS优先级、源IP地址、目的IP地址、源端口号、目的端口号或流标签进行分类统计,从而将分类统计信息发送给NSC。灵活流方式相比原始流方式可减小流量的占用。能够为用户提供一种自由的NetStream流量统计方式。

在灵活流统计方式下,当配置出方向灵活流采样时,灵活流统计报文中只有出接口信息,没有入接口信息;当配置入方向灵活流采样时,灵活流统计报文中只有入接口信息,没有出接口信息。

二层流输出方式

二层流输出方式,设备只对流量的二层信息进行统计,并将统计信息发送至NSC进行更加详尽的分析。

 

输出报文的版本格式

NetStream输出的报文主要有V五、V八、V9三个版本。全部版本的报文都是经过UDP协议传递统计信息。
V5:根据七元组产生原始的数据流,但报文格式固定,不易扩展。
V8:支持聚合输出格式,但报文格式固定,不易扩展。
V9:基于模板方式,使统计信息的输出更为灵活,能够用来灵活输出各类组合格式的数据。

 

NetStream Top Talkers

一个典型的NetStream系统由网络流数据输出器NDE、网络流数据收集器NSC和网络流数据分析器NDA三部分组成,其中NSC和NDA部署在NetStream服务器上。配置了NetStream功能的设备即NDE把采集到的流量按期发送给NetStream服务器,NetStream服务器会对数据进行分析,用户根据NetStream服务器分析的结果实时地对网络流量进行监控。可是在没有部署NetStream服务器的网络中,或者因为安全须要禁止设备将流量统计信息输出到NetStream服务器的网络中,用户没法实时地了解网络的运行状况,NetStream Top Talkers能够很好的解决这个问题。

NetStream Top Talkers支持根据用户指定的匹配关键字对流量进行过滤,而后对过滤后的流量进行统计,并按照必定的规则进行排序,最终在设备上只显示前N条(NetStream Top Talkers模板可记录流量的条数)流量,用户根据这些信息实时地了解网络的运行状况。这N条流量称为top talkers。

NetStream Top Talkers对流量过滤的匹配关键字有:源端口号、目的端口号、源IP地址、目的IP地址、下一跳IP地址、源自治域、目的自治域、报文优先级、协议类型、报文数和字节数。

NetStream Top Talkers对流量的排序规则有:

  • 按照每一个top talker的全部字节数以从大到小的顺序进行排序。
  • 按照每一个top talker的全部报文数以从大到小的顺序进行排序。

 

NetStream采样比的计算

设备的NetStream采样比由netstream sampler random-packets packet-interval { inbound | outbound } 命令配置,为packet-interval参数的取值。

除CE6880EI和CE5880EI外的交换机

NetStream采样比与设备对报文的处理能力、须要配置NetStream采样的接口数目、采样的方向、接口速率以及网络中报文的平均长度有关。

推荐配置的最小NetStream采样比计算公式以下:

Netstream 流量分析技术

 

其中:

  • 转发带宽=接口数×接口速率,单位Gbps。若是须要配置接口出方向和入方向的NetStream采样功能,则转发带宽=接口数×接口速率×2。

    接口数:表示配置NetStream功能的接口数目。

    接口速率:表示该接口的速率。

    例如:在4个10GE接口上配置入方向NetStream采样功能,在其它6个10GE接口上配置出方向和入方向NetStream采样功能,且接口满速率工做。此时转发带宽=4×10+6×10×2。

  • 报文平均长度:表示网络中报文的平均长度,单位byte。

  • 20:表示帧间隙和前导码的长度,单位byte。

  • 设备对报文的处理能力:单位pps。设备可使用CPU进行NetStream采样(非加强模式),也能够不使用CPU进行NetStream采样(加强模式)。不一样的采样方式,设备对报文的处理能力也不同。

    • 非加强模式下:设备(除CE8860EI、CE8861EI和CE8868EI外)对报文的最大处理能力为5000pps,建议用户使用3000pps,对CPU影响较小。对于CE8860EI、CE8861EI和CE8868EI设备,其每一个子卡对报文的最大处理能力为5000pps,建议用户使用3000pps,对CPU影响较小。

    • 加强模式下:设备对报文的处理能力约为1500000pps。建议用户使用1500000pps。用户能够经过命令assign forward enp netstream enable开启加强模式功能,该模式下不使用CPU采样,因此不会对CPU产生影响。

     

NetStream采样比与设备对报文的处理能力、须要配置NetStream采样的接口数目、采样的方向、接口速率以及是否运行了其它业务有关。当NetStream和二三层转发业务同时使用时,推荐配置的NetStream采样比为1024。和NetStream同时使用的业务越多,NetStream采样比须要配置的越大。

建议配置NetStream功能的子接口数不要超过16k,不然会影响设备的转发能力。

相关文章
相关标签/搜索