12-NetStream配置
本章节下载: 12-NetStream配置 (331.62 KB)
S5820X系列以太网交换机不支持NetStream功能。
Internet的高速发展为用户提供了更高的带宽,支持的业务和应用日渐增多,传统流量统计如SNMP、端口镜像等,由于统计流量方式不灵活或是需要投资专用服务器成本高等原因,无法满足对网络进行更细致的管理,需要一种新技术来更好的支持网络流量统计。
NetStream技术是一种基于网络流信息的统计技术,可以对网络中的业务流量情况进行统计和分析。在网络的接入层、汇聚层、核心层上,都可以部署NetStream。
NetStream技术的应用有以下几种。
l 计费:NetStream为基于资源(如线路、带宽、时段等)占用情况的计费提供了精细的数据。Internet服务提供商可以利用这些信息来实行灵活的计费策略,如基于时间、带宽、应用、服务质量等。企业客户可以使用这些信息计算部门费用或分配成本,以便有效利用资源。
l 网络规划:NetStream可以为网络管理工具提供关键信息,比如各个AS域之间的网络流量情况,以便优化网络设计和规划,实现以最小的网络运营成本达到最佳的网络性能和可靠性。
l 网络监控:通过在出口部署NetStream,对连接Internet网络的接口进行实时的流量监控,可以分析各种业务占用出口带宽的情况。网管人员可以根据这些信息判断网络的运行情况,尽早发现不合理的网络结构或是网络中的性能瓶颈,方便网管人员规划和分配网络资源。
l 用户监控和分析:通过NetStream技术可以使网络管理者轻松获取用户使用网络和应用资源的详细情况,进而高效地规划以及分配网络资源,并保障网络的安全运行。
NetStream是一项基于“流”来提供报文统计的技术。它根据IPv4报文的目的IP地址、源IP地址、目的端口号、源端口号、协议号、ToS(Type of Service,服务类型)、输入接口或输出接口来定义流,相同的七元组标识为同一条流。
一个典型的NetStream系统由NDE(NetStream Data Exporter,网络流数据输出)、NSC(NetStream Collector,网络流数据收集)和NDA(NetStream Data Analyzer,网络流数据分析)三部分组成。
l NDE
NDE负责对网络流进行分析处理,提取符合条件的流进行统计,并将统计信息输出给NSC设备。输出前也可对数据进行一些处理,比如聚合。配置了NetStream功能的设备在NetStream系统中担当NDE角色。
l NSC
NSC通常为运行于Unix或者Windows上的一个应用程序,负责解析来自NDE的报文,把统计数据收集到数据库中,可供NDA进行解析。NSC可以采集多个NDE设备输出的数据,对数据进行进一步的过滤和聚合。
l NDA
NDA是一个网络流量分析工具,它从NSC中提取统计数据,进行进一步的加工处理,生成报表,为各种业务提供依据(比如流量计费、网络规划,攻击监测)。通常,NDA具有图形化用户界面,可以使用户方便地获取、显示和分析收集到的数据。
图1-1 NetStream系统中的设备角色
如图1-1所示,NetStream进行数据采集和分析的过程如下:
(1) 配置了NetStream功能的设备(即NDE)把采集到的关于流的详细信息定期发送给NSC;
(2) 信息由NSC初步处理后发送给NDA;
(3) NDA对数据进行分析,以用于计费、网络规划等应用。
l 由于设备在NetStream系统中担任NDE角色,所以本文档重点介绍NDE的实现以及配置。
l NSC和NDA一般集成在一台NetStream服务器上。
NetStream流老化是设备向NetStream服务器输出流统计信息的一种手段。当设备启用NetStream功能后,流统计信息首先会被存储在设备的NetStream缓冲区中。当存储在设备上的NetStream流信息老化后,设备会把缓冲区中的流统计信息通过指定版本的NetStream输出报文发送给NetStream服务器。流老化的三种方式及其配置请参见“1.10 配置NetStream的流老化”。
普通流输出是指所有流的统计信息都要被统计。在流老化时间超时后,每条流的统计信息都要输出到NetStream服务器。
普通流的优点是:NetStream服务器可以得到每条流的详细统计信息。但是缺点也是很明显的,这种方式增加了网络带宽和设备的CPU占有率,而且为了存储这些信息,需要大量的存储介质空间,而很多情况下,用户并不需要获取所有流的统计信息。
聚合流输出是指采用聚合流输出功能后,设备对与聚合关键项完全相同的流统计信息进行汇总,从而得到对应的聚合流统计信息,并且将该聚合统计信息发送到相应的接收聚合统计信息的NetStream服务器。
例如,发送四条TCP流,其目的地址相同、源地址不同,源端口、目的端口均为10,选择表1-1中的“协议-端口聚合”方式,该聚合方式的依据为“协议号、源端口、目的端口”。因为这四条TCP流的源端口、目的端口和协议号相同,所以在聚合流统计表项中只会记录一条聚合流统计信息。设备只将聚合统计信息发送给相应的接收聚合统计信息的NetStream服务器。由此可见,聚合的最大好处是可以减少对网络带宽的占用。
在目前的实现中,聚合流输出支持的9种方式如表1-1所示。系统根据选择聚合方式的聚合关键项,将符合对应聚合方式的多条流合并为一条聚合流,对应一条聚合记录。9种聚合方式相互独立,可以同时配置。
表1-1 聚合流输出支持的9种方式
聚合方式 |
聚合关键项 |
协议-端口聚合 |
协议号、源端口、目的端口 |
源前缀聚合 |
源AS号、源掩码长度、源前缀、输入接口索引 |
目的前缀聚合 |
目的AS号、目的掩码长度、目的前缀、输出接口索引 |
源和目的前缀聚合 |
源AS号、目的AS号、源掩码长度、目的掩码长度、源前缀、目的前缀、输入接口索引、输出接口索引 |
前缀-端口聚合 |
源前缀、目的前缀、源掩码长度、目的掩码长度、ToS、协议号、源端口、目的端口、输入接口索引、输出接口索引 |
服务类型-源前缀聚合 |
ToS、源AS号、源前缀、源掩码长度、输入接口索引 |
服务类型-目的前缀聚合 |
ToS、目的AS号、目的掩码长度、目的前缀、输出接口索引 |
服务类型-前缀聚合 |
ToS、源AS号、源前缀、源掩码长度、目的AS号、目的掩码长度、目的前缀、输入接口索引和输出接口索引 |
服务类型-协议-端口聚合 |
ToS、协议类型、源端口、目的端口、输入接口索引、输出接口索引 |
目前Netstream输出的报文主要有5、8、9三个版本。其中版本9为用户提供了可定义统计元素的模板,用户可根据实际需求设计该模板,使统计信息的输出更为灵活。
l 版本5:根据七元组产生原始的数据流,但报文格式固定,不易扩展。
l 版本8:支持聚合输出格式,但报文格式固定,不易扩展。
l 版本9:基于模板方式,使统计信息的输出更为灵活,可以用来灵活输出各种组合格式的数据。版本9支持对BGP下一跳、MPLS等统计输出。
NetStream可以与Sampler(采样器)配合使用。通过设定适当的采样间隔,不但减少了统计的报文数量,收集到的统计信息也可以保证基本正确地反映整个网络流的状况。另外,采样还可以减小对设备转发性能造成的影响。与采样有关的内容请参见“网络管理和监控配置指导”中的“Sampler”。
NetStream可以与ACL(Access Control List,访问控制列表)和QoS(Quality of Service)配合使用,NetStream只统计符合ACL和QoS筛选出的特定报文。通过这种方式可以使NetStream对用户关注的数据进行统计,更能满足用户多样的统计要求。
NetStream无论是和ACL或是和QoS配合使用,都是为了先对数据流进行过滤,这样NetStream就可以“只对某些符合条件的流”进行统计。两者方式的区别是:QoS可以更加灵活的指定流,且应用方式多样。
在配置NetStream之前,可根据以下需求选择相应的配置环节:
l 部署NetStream的具体位置,也就是明确需要在网络环境中的哪台设备上开启NetStream功能。
l 如果网络上有各种业务流,可以考虑使用ACL或QoS筛选出需要统计的特定数据。
l 如果网络上的流量很大,可以考虑对数据流进行采样。
l 确定采用哪种输出报文的版本,对NetStream统计输出报文的版本进行设置。
l 根据实际网络情况和需求,对NetStream的流老化时间进行设置。
l 如果统计输出的报文过多,可以配置聚合输出统计信息,避免重复的流输出信息占用网络带宽。
具体的配置步骤可以参考图1-2。
图1-2 NetStream配置步骤流程图
表1-2 NetStream配置任务简介
配置任务 |
说明 |
详细配置 |
|
开启NetStream功能 |
必选 |
||
配置NetStream过滤功能 |
可选 |
||
配置NetStream采样功能 |
可选 |
||
配置NetStream统计信息的输出 |
配置NetStream普通流的统计信息输出 |
请根据实际需要进行选择 |
|
配置NetStream聚合流的统计信息输出 |
|||
配置NetStream输出报文的格式 |
可选 |
||
配置NetStream的流老化 |
可选 |
表1-3 开启接口的NetStream功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入二层以太网端口视图或者三层以太网端口视图 |
interface interface-type interface-number |
- |
开启NetStream功能 |
ip netstream { inbound | outbound } |
必选 缺省情况下,NetStream功能处于关闭状态 |
目前仅支持在二层以太网端口或者三层以太网端口上启用NetStream统计功能。
配置NetStream过滤采样功能前,请先使用ip netstream命令开启NetStream功能。
表1-4 配置根据指定条件对NetStream过滤功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入二层以太网端口视图或者三层以太网端口视图 |
interface interface-type interface-number |
- |
配置根据指定条件对NetStream过滤功能 |
ip netstream filter acl acl-number { inbound | outbound } |
可选 缺省情况下, NetStream统计所有IPv4报文,不启用过滤功能 |
l 如果在设备上同时配置过滤和采样,设备会先过滤后采样报文。需要注意的是,过滤功能对MPLS报文无效。
l 配置过滤时,要求ACL必须存在。ACL被引用后,不允许删除或修改ACL规则。关于ACL的相关内容请参见“ACL和QoS配置指导”中的“ACL” 。
使用netstream filter命令可以对匹配到的具体报文进行NetStream统计。
l deny:不对报文进行NetStream统计,直接转发。
l permit:对报文进行NetStream统计。
表1-5 使用QoS方式进行过滤
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
定义类并进入类视图 |
traffic classifier tcl-name [ operator { and | or } ] |
- |
|
定义匹配数据包的规则 |
if-match match-criteria |
- |
|
退出类视图 |
quit |
- |
|
定义一个流行为并进入流行为视图 |
traffic behavior behavior-name |
- |
|
配置NetStream过滤动作 |
netstream filter { deny | permit } |
必选 |
|
退出流行为视图 |
quit |
- |
|
定义策略并进入策略视图 |
qos policy policy-name |
- |
|
在策略中为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
- |
|
退出策略视图 |
quit |
- |
|
应用QoS策略 |
基于端口 |
进入二层以太网端口视图、三层以太网端口视图或者端口组视图 qos apply policy policy-name { inbound | outbound } |
- |
基于VLAN |
进入系统视图 qos vlan-policy policy-name vlan vlan-id-list { inbound | outbound } |
- |
|
基于全局 |
进入系统视图 qos apply policy policy-name global { inbound | outbound } |
- |
关于类、流行为、策略的详细介绍和相关配置,请参见“ACL和QoS配置指导”中的“QoS”。
表1-6 配置NetStream的采样功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入二层以太网端口视图或者三层以太网端口视图 |
interface interface-type interface-number |
- |
配置NetStream采样功能 |
ip netstream sampler sampler-name { inbound | outbound } |
必选 缺省情况下,NetStream统计所有IPv4报文,不启用采样功能 |
l 如果在设备上同时配置过滤和采样,设备会先过滤后采样报文。
l 配置采样时,要求采样器必须存在(即需要sampler命令先创建采样器),然后使用ip netstream sampler引用采样器。采样器引用后不允许删除。关于Sampler的内容请参见“网络管理和监控配置指导”中的“Sampler”。
在配置NetStream统计信息的输出时,需要对NetStream统计信息输出的源接口和目的地址进行设置,后者为必选配置。
表1-7 配置NetStream普通流的统计信息输出
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入二层以太网端口视图或者三层以太网端口视图 |
interface interface-type interface-number |
- |
使能NetStream功能 |
ip netstream { inbound | outbound } |
必选 缺省情况下,NetStream统计功能处于关闭状态 |
退回系统视图 |
quit |
- |
配置NetStream普通流统计信息输出的目的地址 |
ip netstream export host ip-address udp-port [ vpn-instance vpn-instance-name ] |
必选 缺省情况下,系统视图下没有配置目的地址 |
配置NetStream统计信息输出的源接口 |
ip netstream export source interface interface-type interface-number |
可选 缺省情况下,采用统计输出报文的出接口(即与服务器相连的接口)作为源接口 建议使用网管口作为源接口,与服务器相连,并向服务器输出统计信息 |
配置输出速率限制 |
ip netstream export rate rate |
可选 缺省情况下,NetStream统计输出报文的输出速率不受限制 |
设备支持两种聚合方式:软件聚合和硬件聚合。若未配置硬件流聚合功能,则设备会通过软件对与聚合关键项完全相同的流统计信息进行汇总;配置采用硬件流聚合功能后,设备会通过硬件直接对与聚合关键项完全相同的流统计信息进行汇总,从而得到对应的聚合流统计信息。因此通过配置硬件流聚合功能,能够有效降低流聚合对设备资源的消耗。
表1-8 配置NetStream聚合流的统计信息输出
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入二层以太网端口视图或者三层以太网端口视图 |
interface interface-type interface-number |
- |
使能NetStream功能 |
ip netstream { inbound | outbound } |
必选 缺省情况下,NetStream统计功能处于关闭状态 |
退回系统视图 |
quit |
- |
配置NetStream硬件流聚合功能 |
ip netstream aggregation advanced |
可选 缺省情况下,NetStream硬件流聚合功能处于关闭状态 |
进入NetStream聚合视图 |
ip netstream aggregation { destination-prefix | prefix | prefix-port | protocol-port | source-prefix | tos-destination-prefix | tos-prefix | tos-protocol-port | tos-source-prefix } |
必选 |
配置NetStream聚合统计信息输出的目的地址 |
ip netstream export host ip-addrress udp-port [ vpn-instance vpn-instance-name ] |
必选 缺省情况下,聚合视图下没有配置目的地址。聚合视图下目的IP地址和目的UDP端口号为系统视图下所配置的值 需要注意的是,为了减少对网络带宽的占用,可以只在聚合视图下配置ip netstream export host命令,此时设备只会输出聚合流信息 |
配置NetStream聚合统计信息输出的源接口 |
ip netstream export source interface interface-type interface-number |
可选 缺省情况下,采用统计输出报文的出接口(即与服务器相连的接口)作为源接口 l 不同聚合视图下可以配置不同的源接口 l 聚合视图下若没有配置源接口,则使用系统视图下的配置 l 建议使用网管口作为源接口,与服务器相连,并向服务器输出统计信息 |
使能该类的NetStream聚合功能 |
enable |
必选 缺省情况下,NetStream聚合功能处于关闭状态 |
l 硬件流聚合不能和系统视图下的ip netstream export host同时配置。在系统视图下配置的ip netstream export host命令后硬件聚合功能失效。
l 硬件聚合流表项的老化与普通流表项的老化相同。
l 在聚合视图下,用户配置的NetStream统计输出报文的输出属性,仅对聚合报文生效;而系统视图下的配置对普通报文生效,并且当聚合视图下没有配置以上属性时,也会对聚合报文生效。
用户可以通过配置NetStream输出报文的格式,进一步明确需要统计的选项。
NetStream流信息中会记录流的源IP地址及其对应的自治系统号;目的IP地址及其对应的自治系统号。设备会根据用户实际配置的自治系统参数来确定记录的自治系统号。如图1-3所示,有一条数据流从AS 20开始,依次经过AS 21至AS 24。如果配置参数peer-as,那么流信息中记录该流的源AS为21,目的AS为23。如果配置参数origin-as,那么流信息中记录该流的源AS为20,目的AS为24。
NetStream统计输出报文还支持BGP下一跳选项。当用户配置版本9的NetStream统计输出报文属性时,用户可以选择是否在流信息中记录BGP下一跳地址。
表1-9 配置NetStream输出报文的格式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置NetStream统计输出报文版本以及其自治系统选项、BGP下一跳选项 |
ip netstream export version 5 [ origin-as | peer-as ] |
可选 缺省情况下,IPv4普通流信息通过版本5的NetStream统计输出报文发送,MPLS流信息不输出。自治系统选项使用邻接自治系统号(peer-as),流信息中不记录BGP下一跳地址 |
ip netstream export version 9 [ origin-as | peer-as ] [ bgp-nexthop ] |
自治系统相关知识,请参考“三层技术-IP路由配置指导”中的“BGP”。
由于V9版本是基于模板方式的、可支持自定义格式,所以设备上需要定期刷新模板,并通知NetStream服务器最新的V9模版格式。用户可以根据实际情况,配置版本9模板的刷新率,及时更新模板。
表1-10 配置NetStream输出报文版本9模板的刷新率
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置NetStream统计输出报文版本9模板的包刷新率 |
可选 缺省情况下,每隔20个包发送一次版本9模板 |
|
配置NetStream统计输出报文版本9模板的时间刷新率 |
可选 缺省情况下,每隔30分钟发送一次版本9模板 |
可以同时配置包刷新率和时间刷新率,只要满足任意一个刷新条件,设备就会将符合条件的模板发送给NetStream服务器。
NetStream流老化有以下三种机制:
l 按时老化
l 强制老化
l TCP的FIN和RST报文触发老化(该形式的老化在TCP连接拆除时自动进行)。
按时老化分为以下两种方式:
l 不活跃的流老化:从最后一个报文开始,该流在ip netstream timeout inactive指定的时间内没有被采集到(即在设定的inactive时长内统计到的流数目没有增加),那么设备会向NetStream服务器输出该流的统计信息,这种老化称为不活跃的流老化。通过这种老化,可以清除设备上NetStream缓冲区中的无用表项(此时使用display ip netstream cache命令无法看到这条老化的流),充分利用统计表项资源。
l 活跃的流老化:从第一个报文开始,该流在ip netstream timeout active指定的时间内一直能被采集到。活跃时间超过设定的active时长后,需要输出该流的统计信息,这种老化称为活跃的流老化。因为该流实际上还存在,所以在设备上NetStream缓冲区关于该流的统计表项本身仍然存在(此时使用display ip netstream cache可以看到这条流)。这种老化方式是设备为了向NetStream服务器输出活跃流统计信息的一种机制。
用户可以执行reset ip netstream statistics命令强制将NetStream缓冲区中所有流老化,并清除NetStream缓冲区信息。
对于TCP连接,当有标志为FIN或RST的报文发送时,表示一次会话结束。因此当一条已经存在的TCP协议NetStream流中流过一条标志为FIN或RST的报文时,可以立即老化相应的NetStream流。这种方式在设备上缺省开启,不能通过执行命令开启或关闭该老化方式。
表1-11 配置NetStream的流老化
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
配置按时老化 |
配置活跃流的老化时间 |
ip netstream timeout active minutes |
可选 缺省情况下,活跃流的老化时间为5分钟 |
配置不活跃流的老化时间 |
ip netstream timeout inactive seconds |
可选 缺省情况下,不活跃流的老化时间为30秒 |
|
配置强制老化 |
强制老化 |
reset ip netstream statistics |
可选 执行该命令会强制老化流缓存区中所有流,并清除NetStream缓冲区的状态信息和输出报文信息 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后IPv4 NetStream的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除NetStream的统计信息。
表1-12 NetStream显示和维护
操作 |
命令 |
查看NetStream流缓存区的配置和状态信息 |
display ip netstream cache [ verbose ] [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
查看NetStream统计输出报文信息 |
display ip netstream export [ | { begin | exclude | include } regular-expression ] |
查看NetStream模板的配置和状态信息 |
display ip netstream template [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
将流缓存区中所有流强制老化,并清除NetStream缓冲区的状态信息和输出报文信息 |
reset ip netstream statistics |
如图1-4所示,在Switch A上配置NetStream,对接收的报文进行统计,并将NetStream普通流的统计信息输出到NetStream服务器。NetStream服务器的IP地址为12.110.2.2/16,UDP端口号为5000。
图1-4 NetStream普通流的统计信息输出配置组网图
# 在端口GigabitEthernet1/0/1上启动NetStream入统计。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] ip netstream inbound
[SwitchA-GigabitEthernet1/0/1] quit
# 在VLAN接口2000上配置IP地址。
[SwitchA] vlan 2000
[SwitchA] interface vlan-interface 2000
[SwitchA-Vlan-interface2000] ip address 12.110.2.1 255.255.0.0
[SwitchA-Vlan-interface2000] quit
[SwitchA] ip netstream export source interface Vlan-interface 2000
# 配置NetStream普通流统计信息输出的目的地址。
[SwitchA] ip netstream export host 12.110.2.2 5000
在Switch A上配置NetStream,具体要求为:
l 普通流的统计信息使用版本5格式输出到NetStream服务器。NetStream服务器的IP地址为4.1.1.1/16,UDP端口号为5000;
l 4种聚合流(protocol-port、source-prefix、destination-prefix和prefix)的统计信息使用版本8格式分别输出到该NetStream服务器的3000、4000、6000和7000端口。
网络之间均运行EBGP路由协议。BGP的配置请参见“三层技术-IP路由配置指导”中的“BGP”。
图1-5 NetStream聚合流的统计信息输出配置组网图
# 在出、入方向启用NetStream统计功能。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] ip netstream inbound
[SwitchA-GigabitEthernet1/0/1] ip netstream outbound
[SwitchA-GigabitEthernet1/0/1] quit
# 配置普通流统计信息输出的目的地址。
[SwitchA] ip netstream export host 4.1.1.1 5000
# 配置协议-端口聚合模式,以及该聚合模式聚合流统计信息输出的目的地址。
[SwitchA] ip netstream aggregation protocol-port
[SwitchA-ns-aggregation-protport] enable
[SwitchA-ns-aggregation-protport] ip netstream export host 4.1.1.1 3000
[SwitchA-ns-aggregation-protport] quit
# 配置源前缀聚合模式,以及该聚合模式聚合流统计信息输出的目的地址。
[SwitchA] ip netstream aggregation source-prefix
[SwitchA-ns-aggregation-srcpre] enable
[SwitchA-ns-aggregation-srcpre] ip netstream export host 4.1.1.1 4000
[SwitchA-ns-aggregation-srcpre] quit
# 配置目的前缀聚合模式,以及该聚合模式聚合流统计信息输出的目的地址。
[SwitchA] ip netstream aggregation destination-prefix
[SwitchA-ns-aggregation-dstpre] enable
[SwitchA-ns-aggregation-dstpre] ip netstream export host 4.1.1.1 6000
[SwitchA-ns-aggregation-dstpre] quit
# 配置前缀聚合模式,以及该聚合模式聚合流统计信息输出的目的地址。
[SwitchA] ip netstream aggregation prefix
[SwitchA-ns-aggregation-prefix] enable
[SwitchA-ns-aggregation-prefix] ip netstream export host 4.1.1.1 7000
[SwitchA-ns-aggregation-prefix] quit
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!