更新时间:2024-01-10
1 SFLOW配置
1.1 SFLOW概述
sFlow(Sampled Flow,采样流)是一种利用采样技术在数据网络设备上进行流量监控的技术,用于对网络流量进行统计分析。
sFlow监控系统包括一个嵌入到设备中的sFlow Agent和一个远端的sFlow Collector组成。sFlow Agent用于在设备上监控端口上的数据流信息和端口统计信息,并将它们组装成sFlow报文发送到sFlow Collector。sFlow Collector负责对这些sFlow报文进行分析,并显示结果。
sFlow使用两种采样机制:
1)基于交换数据包的流采样:对通过设备端口的报文进行数据包采样,获取数据流的相关信息;
2)基于时间的端口统计数据采样:定期查询使能 sFlow 特性的端口,获取各端口的统计信息;
sFlow具有以下的优点:
1)在千兆和更高的网络速度下,精确的监控网络流量。
2)一个 sFlow Collector 能够监控多个sFlow Agent。
3)极低的sFlow Agent执行成本;
sFlow系统还定义了sFlow MIB,支持通过SNMP对sFlow代理进行监控和配置。
交换机上的sFlow系统主要由四部分组成:agent,sampler,poller和receiver。
Agent代表整个交换机,需要为它指定一个本地的ip地址;
Sampler和端口报文流相关,用来采集报文抽样。每个端口根据流的方向不同可以配置两个sampler(即ingress/egress sampler)。每个sampler都代表了一个Instance。其中,ingress sampler的Instance值为1;egress sampler的Instance值为2;
Poller和端口统计信息相关,用来采集端口统计信息。每个端口都可以配置一个poller,每个poller代表一个Instance,该Instance值为1。
Receiver是和远端collector相关的{ip address + port}的组合,用来编码采样报文到UDP报文,并发送该UDP报文到collector。每个sampler和poller都必须指定一个receiver。目前的设备最多只支持配置三个receiver。
1.2 SFLOW配置任务列表
• 配置sflow agent的ip地址
• 配置sflow collector的ip地址和端口号
• 配置采样报文发送的最大报文头部长度
• 配置端口统计信息最大发送间隔
• 指定sflow版本信息
• 使能sflow,配置sflow对端口进入/出去方向流的采样
• 显示sflow配置信息
• 显示sampler的相关信息
• 显示poller的相关信息
1.3 SFLOW配置任务
1.3.1配置sflow agent的ip地址
要发送sflow报文必须先配置agent的ip地址。使用下面的命令为sflow agent配置ip地址:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
sflow agent ip A.B.C.D
|
缺省情况下未配置sflow agent的ip地址
|
可以输入no sflow agent ip来删除sflow agent的ip地址。
1.3.2配置sflow collector 的ip地址和端口号
从特权模式开始,配置sflow collector的ip地址和端口号:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
sflow collector ip A.B.C.D port
|
指定“system”的sflow collector的ip地址。缺省的情况下未配置。
|
可以输入no sflow collector ip恢复缺省的配置。Sflow系统中总是存在一个叫“system”的collector,通过命令输入指定的就是该collector的ip和端口号。通过SNMP不能对该collector做任何修改。注意:collector和agent不能配置相同的ip地址。
1.3.3配置采样报文发送的最大报文头部长度
在下面的命令模式下可对采样报文发送的最大报文头部长度进行配置:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
sflow headersize size
|
配置从采样报文中截取的报文的最大长度。取值范围16-256,默认值128字节。
|
可以输入no sflow headersize恢复缺省的配置。该命令指定的值只对通过命令行配置的sflow采样点有效,对通过SNMP方式配置的sflow采样点无效。
1.3.4配置端口统计信息最大发送间隔
通过下面的命令配置端口统计信息发送的最大间隔时间:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
sflow interval time
|
取值范围0-65535。默认情况下,端口统计信息发送的最大间隔为20秒
|
可以输入no sflow interval恢复缺省的配置。该命令指定的值只对通过命令行配置的sflow采样点有效,对通过SNMP方式配置的sflow采样点无效。
1.3.5指定sflow版本信息
在下面的模式下配置sflow的版本信息:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
sflow version version
|
指定sflow的版本信息V4或V5。默认是V5
|
可以输入no sflow version恢复缺省的配置。指定sflow的报文格式版本,同时通过SNMP配置时也需要相应版本的MIB支持。
1.3.6使能sflow,配置sflow对端口进入/出去方向流的采样
通过下面的配置可以清除netflow的报文和流统计信息:
步骤
|
命令
|
目的
|
Step1
|
config
|
进入到全局配置模式
|
Step2
|
interface interface-name
|
进入接口配置模式
|
Step3
|
sflow enable {ingress | egress} [ sampling-rate rate ]
|
开启端口进入/出去流的sflow采样功能,并指定采样率。采样率取值范围0- 16777216。默认的采样率为500。
|
可以输入no sflow enable {ingress | egress}关闭端口进入/出去流的sflow采样功能。当设置的采样率为0时,表示关闭该采样;当设置的采样率在1-256之间时,实际的采样率值为256;芯片会对用户设置的采样率做适当的调整,但不会与用户设置的值相差太远。在端口进行采样配置时,应保证一条流只被采样到一次。如果一条流在进入的端口被采样了,那么在出去的端口就不应该再次被采样;如果在出端口再次被采样,那么sflow collector收到的该条流的流量将不准确。
1.3.7显示sflow的配置信息
在管理/全局配置模式下输入下面的命令查看sflow的配置信息:
步骤
|
命令
|
目的
|
Step1
|
show sflow configure
|
查看sflow的配置信息
|
1.3.8显示sampler的相关信息
在管理/全局配置模式下输入下面的命令查看sampler的相关信息:
步骤
|
命令
|
目的
|
Step1
|
show sflow sampler
|
查看sampler的相关信息
|
1.3.9显示poller的相关信息
在管理/全局配置模式下输入下面的命令查看poller的相关信息:
步骤
|
命令
|
目的
|
Step1
|
show sflow poller
|
查看poller的相关信息
|
1.4 配置示例
1.4.1网络环境需求
设备需求:
1. 一台交换机;
2. 两台PC,一台服务器;
3. 若干根以太网直通及交叉线缆;
网络环境描述如下:
1.PC1,PC2与远端服务器Server 分别通过端口G1/1,G1/2和G1/3接入Switch;
2.PC1上运行sFlow Collector,IP 地址为90.0.0.56/16,sFlow Collector 的端口为6343;
3.端口 G1/1 属于VLAN1,VLAN1 的IP 地址为90.0.0.99/16。
要求在 Switch 上运行sFlow Agent,并在端口G1/2上开启sFlow 功能,使Agent能够对该端口的网络流量进行监控。Switch 将sFlow 报文通过G1/1 发送给PC1,PC1再对sFlow 报文进行分析并显示。
1.4.2网络拓扑图
图1 网络拓扑图
1.4.3配置步骤
1)按上图连接好网络;
2)PC1上运行sflow collector;
3)配置交换机:
#配置VLAN1的ip地址
Switch#
Switch#config
Switch_config#interface VLAN 1
Switch_config_v1#ip address 90.0.0.99 255.255.0.0
Switch_config_v1#qui
Switch_config#
#配置sflow agent的ip地址
Switch_config#sflow agent ip 90.0.0.99
#配置sflow collector的ip地址和端口号
Switch_config#sflow collector ip 90.0.0.56 6343
#配置采样报文发送的最大头部长度
Switch_config#sflow headersize 256
#配置端口统计信息最大发送间隔
Switch_config#sflow interval 50
#使能sflow出入端口方向的数据包采样
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#sflow enable ingress sampling-rate 1000
Switch_config_g1/2#sflow enable egress sampling-rate 1000
Switch_config_g1/2#qui
Switch_config#
#显示sflow 配置信息
Switch_config#show sflow configure
sFlow Version: 5
sFlow Headersize: 256
sFlow Interval(s): 50
sFlow Global Information:
Agent IP: 90.0.0.99
Collector: 1 owner: system
Collector IP: 90.0.0.56 Port: 6343
Export 0 packets to collector 1
sFlow Port Information:
Interface Direction Status Rate
g1/2 In/Out Active 1000/1000
#显示sampler信息
Switch_config#show sflow sampler
sFlow Samplers Info:
Source Direc Rece ReRate Poll Samples
g1/2 In 1 1000 49638 51
g1/2 Out 1 1000 32791 31
sFlow Samplers number: 2
#显示poller信息
Switch_config#show sflow poller
sFlow Pollers Info:
Source Rece Inte ReTi Status
g1/2 1 50 6 enabled
sFlow pollers number: 1