1、移动IP网管二期培训,NetFlow协议介绍,什么是NetFlow,1996年,Cisco系统公司的Darren Kerr和Barry Bruins开发了一种流量轮廓监控技术,即NetFlow。 作为业界事实标准,NetFlow描述了路由器输出关于被路由套接字对(the routed socket pairs)统计信息的方法。 目前Cisco的绝大多数路由器集成了该特性,Juniper、Extreme以及其他厂商也有集成该特性的路由器和交换机;,理解NetFlow,NetFlow是Cisco发布的一款用于分析网络数据包信息的工具包。 利用Netflow技术可以监测网络上的IP流(IP flow
2、)信息。采集到的netflow流量信息可以帮助进行网络规划,网络管理,流量计费和病毒检测等等。,为什么需要netflow?,路由器,交换机A在某种意义上是黑盒子 管理员不知道黑盒子里面发生了什么 黑盒子里面的数据都在干什么,谁发出的,到哪里去,流量大小等等指标,NetFlow Services能做什么,NetFlow Services 使网络管理员能从他们的数据网络获取 IP 流信息,这些信息解答了谁、什么、何去何从、何时、IP 流量为多少等问题。导出的 NetFlow 数据可被广泛用于各种用途:,Usage-Based Billing,Traffic Analysis and Monitor
3、ing for Network Planning,Router Feature Acceleration,NetFlow 的价值,NetFlow 提供的 IP 通信流量分析功能无需 Probe提供了一套丰富的数据集,可供网络管理、流量工程、流量计费、安全分析,以及增值服务提供等NetFlow 基于使用情况的计费功能,使得所有者能从现在的 Cisco 系统结构中获得更多的利润,而且计费手段更为经济。,流记录(flow record),一段时间内网络的某个观测点所通过的一系列分组(packets)。 通常的流记录分类依据由一个五元组(即源地址、目的地址、源端口、目的端口和协议类型)所组成。,理解
4、NetFlow 的关键,1. 源地址 2. 目标地址 3. 源端口 4. 目标端口 第 3 层协议 .,基于 Flow 的分析 !,一个NetFlow流定义为在一个源IP地址和目的IP地址间传输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号! 唯一标识路由器上的一个网络连接。,NetFlow 数据记录,Source IP Address Destination IP Address,Next Hop Address Source AS Number Dest. AS Number Source Prefix Mask Dest. Prefix Mask,Input Interfac
5、e Port Output Interface Port,Type of Service TCP Flags Protocol,Packet Count Byte Count,Start Timestamp End Timestamp,Source TCP/UDP Port Destination TCP/UDP Port,使用情况,QoS,时间,应 用,Routing 和 Peering,接口利用率,何去何从,一条流记录样本,index: 0xc1a21 router: 192.168.254.2 src IP: 192.168.231.55 dst IP: 202.112.43.18 in
6、put ifIndex: 8 output ifIndex: 55 src port: 12043 dst port: 80 pkts: 6 bytes: 680 IP nexthop: 202.112.43.20,start time:11:29:22 2004-6-9 end time:11:29:25 2004-6-9 protocol: 6 tos: 0x0 src AS: 0 dst AS: 321 src masklen: 20 dst masklen: 0 TCP flags: 0x1b engine type: 1 engine id: 0,Netflow体系架构,使设备输出
7、NetFlow 数据,开启一个接口的 flow switching 功能:interface e1/0ip route-cache flow sampled 设置输出的目的地: ip flow-export destination ip flow-export version origin-as | peer-as设为 5 ,缺省值为 1 设置用于输出数据包的源地址:ip flow-export source 缺省情况下是具有通达目的地(采集设备)的最佳路由的接口ip flow-sampling-mode packet-interval 100ip flow-cache feature-acc
8、elerateshow ip cache flow基于路由器的数据聚集ip flow-aggregation cache cache timeout active 缺省情况下是 15 分钟 sh ip cache flow aggregation export destination enable,NetFlow FlowCollector,接收 Flow 记录减小数据量过滤聚集以平面文件、二进制文件和/或压缩文件形式存储文件清理Solaris 和 HP-UX,FlowCollector 处理流程,Filter,Filter And Thread Example: Filter filterA
9、permit nexthop 172.16.23.65 0.0.0.0 Filter filterBdeny addr 172.16.0.0 0.0.255.255permit addr 0.0.0.0 0.0.0.0,NetFlow的功能,根据不同的需要定制不同的计划集合(Aggregation Scheme),这些计划集合包含了NetFlow发送数据中的一个或多个Key Fields和Value Fields,根据不同的需要进行选择,以满足一定的需求。,NetFlow的功能,比较典型的是对网络数据的源地址、目的地址的分析,对流量中各种应用的分析(基于协议或者端口)或者路由器上各个端口的负载
10、等的分析。,Aggregation,Aggregation 是 cisco 公司定制好的对网络连接监控的内容以DestPort这个Aggregation为例:Key field: dstportValue fields: packet count, byte count, flow count 解释:这一段时刻,该路由器上的数据包都发往了哪些tcp/udp端口?发到这些端口的数据的包数,字节大小,总流数目是多少?FlowCollector Aggregation Schemes 里面可以找到所有的 Aggregation,FlowCollector Aggregation Schemes,Fl
11、owCollector 目录结构,安装好的目录结构:(注意红色标记),FlowCollector 目录结构,Data 目录下存放的是输出的netflow记录文件最有价值的记录内容就在这里!/opt/CSCOnfc/Data/2003_04_21/202.102.224.1/DestPort 78|6367|557723|853 80|9836608|864296991|619219 81|8836|790568|433 82|5319|520273|385 83|2695|161981|130 Bin目录下./nfcollector status | show-tech | clean | s
12、tart|stop all|nfcgw|collection,FlowCollector 目录结构,Config目录下nfconfig.file (core!)配置文件部分内容: Thread routerport Aggregation Destport Period 5 Port 9995 State Active DataSetPath /opt/CSCOnfc/Data Compression No Binary No MaxUsage 500,Network Data Analyzer,图形化显示 NetFlow 数据由 NetFlow FlowCollector(s) 提供数据基于
13、时间的分析和数据排序配置路由器和 FlowCollectors直方图、条形图和饼图输出数据到电子表格,NetFlow FlowCollectors,NetFlow FlowAnalyzer,NetFlow版本,Netflow V1,为Netflow技术的第一个实用版本。在如今的实际网络环境中已经不建议使用 Netflow V5,增加了对数据流BGP AS信息的支持,是当前主要的实际应用版本。 Netflow V7,思科Catalyst交换机设备支持的一个Netflow版本,需要利用交换机的MLS或CEF处理引擎。 Netflow V8,增加了网络设备对Netflow统计数据进行自动汇聚的功能,
14、可以大大降低对数据输出的带宽需求。 Netflow V9,一种全新的灵活和可扩展的Netflow数据输出格式,采用了基于模板(Template)的统计数据输出。方便添加需要输出的数据域和支持多种Netflow新功能,如Multicase Netflow,MPLS Aware Netflow,BGP Next Hop V9,Netflow for IPv6等。,NetFlow 平台支持,*Support for NetFlow Export v1, v5, and v8 on 1600 and 2500 platforms is targeted for Cisco IOS software r
15、elease 12.0(5)T. NetFlow support for these platforms will not be available in the Cisco IOS 12.0 mainline release.,Cisco IOS 软件 版本支持,支持的 NetFlow 输出版本,支持的 Cisco 硬件平台,11.1CA, 11.1CC 11.2, 11.2P 11.2P 11.3, 11.3T 12.0 12.0T 12.0S 12.0(3)T and later 12.0(3)S and later 12.04XE N/A 12.0(6)S,v1, v5 v1 v1 v
16、1 v1, v5 v1, v5 v1, v5, v8 v1, v5, v8 v7 v8,7200, 7500, RSP7000 7200, 7500, RSP7000 Route Switch Module (RSM), 11.2(10)P and later 7200, 7500, RSP7000 1720, 2600, 3600, 4500, 4700, AS5800, 7200, uBR7200, 7500, RSP7000, RSM 1720, 2600, 3600, 4500, 4700, AS5800, 7200, uBR7200, 7500, RSP7000, RSM, MGX
17、8800 RPM, BPX 8600 1400*, 1600*, 1720, 2500*,2600, 3600, 4500, 4700, AS5800, AS5300*, 7200, uBR7200, 7500, RSP7000, RSM, MGX8800 RPM, BPX 8650 7100 Catalyst 5K NetFlow Feature Card (NFFC) Catalyst 6K with MSFC card 12000,*Support for NetFlow Export v1, v5, and v8 on AS5300 platform is targeted for C
18、isco IOS software release 12.0(7)XR.,NetFlow的安装,gzip d NFC-solaris-standard-3.5-2.0.tar.gz | tar xvf ./NFC_setup.sh NFC.solaris.Z 然后按照系统提示进行安装 默认安装在/opt/CSCOnfc目录下 NFC即Cisco NetFlow Collector,NetFlow的可执行文件,NFCD 系统后台运行Daemon, monitors the operational status of both NFCollector and NFCGW. NFCollector
19、collect data aggregates (or summarizes) that data, and filters specified data ,store data in simple files nfc_clean_up_job.sh 清除过时的数据文件,NetFlow的可执行文件,nfcollector 控制程序运行脚本文件 NFCGW NetFlow Gate Way NFUI NetFlow User Interface nfcd_run 启动控制脚本文件,NetFlow系统结构,NetFlow的配置,文件位置: /opt/CSCOnfc/config nf.resour
20、ces 包含了NFCollector和NFCD自启动所需要的变量 nfconfig.file NetFlow的主配置文件 nfknown.dstports NetFlow已知的目的端口号文件,NetFlow的配置,nfknown.protocols NetFlow已知的协议 nfknown.srcports NetFlow已知的源端口 nfcd.config NFCD配置文件 nfknown.dstasns NetFlow已知的目的自治域号 nfknown.srcasns NetFlow已知的源自治域号,常用的命令,启动NetFlow:/opt/CSCOnfc/bin/nfcollector
21、start all 查看系统运行状态:/opt/CSCOnfc/bin/nfcollector status输出包含了NetFlow的进程状态和控制信息,以及存放数据文件的磁盘信息,如果想得到更多的关于NetFlow运行的参数可以使用下面的命令/opt/CSCOnfc/bin/nfcollector show-tech,常用的命令,Username Current time Relevant environment variables System information System tunable parameters nfc_install.log, nfcd.log, nfc.log,
22、 nfcgw.log, and nfcxml.log files (with running configuration dump) nf.resources and nfconfig.file files udp_max_buf (only on Solaris installations) netstat results Disk space pkginfo (only on Solaris installations) swlist (only on HP-UX installations) Process listing Control files.,路由器的配置,在全局配置模式下:i
23、p flow-export source Loopback0ip flow-export version 5ip flow-export destination 202.102.224.132 9995ip flow-sampling-mode packet-interval 100,路由器的配置,端口配置模式下:interface ATM1/1ip route-cache flow sampled需要注意的是在有子端口的情况下只能够在主端口进行配置,并且当端口流量比较大的时候注意使用抽样。,人机交互接口NFUI,NFUI为用户和NetFlow提供了一个简单的交互界面。通过它,用户可以方便的对
24、NetFlow进行配置及查看内部的一些运行情况,比如:计划集信息、过滤器信息、源地址和目的地址、发送数据的IP地址以及正在接受数据的情况。,人机交互接口NFUI,启动:/opt/CSCOnfc/bin/NFUINFUI启动后会出现一个简单的菜单式操作界面,用户的所有操作都可以通过这个菜单来完成。,一些常用的相关工具:,fdcount 计算平均流量 Example:nms2root:/=./fdcount -p 9996 -c 5started: Tue Mar 11 09:32:14 2003ended: Tue Mar 11 09:32:16 2003Average NetFlow data
25、 arrival rates on port 9996 are 2.50 datagrams/sec, 30.00 flows/datagram, 2.17 packets/flow,一些常用的相关工具:,fdget 接收数据并直接显示出来Example: Flowstat 70 2100 from 61.163.255.1 VIP 2, Tue Mar 11 17:38:26 2003,一些常用的相关工具:,fdrecorder 接收数据并存入文件 nfc_gunzip 解压缩 fdgenerate 向NetFlow Server服务器发送Flow数据 fdplayback 读取特定的数据文件内容向目的服务器发送Flow数据 nfc_bin_to_ascii 将二进制变成文本格式 rawdecode,问答,QA,谢谢!,