2. 国家气象信息中心, 北京 100081
2. National Meteorological Information Center , Beijing 100081
气象通信网络是气象业务系统的重要组成部分, 近年来随着气象卫星、多普勒天气雷达、风廓线仪、闪电定位仪、自动气象站等探测系统的建设应用, 网络数据传输信息量大大增加, 为适应气象业务发展, 广东省气象局目前已建立了省、市、县三级宽带气象通信网络系统[1-3], 地市气象局到省气象局带宽10 M, 县气象局到市气象局带宽2 M。对于网络管理员来说, 理解网络流量的特性、了解用户的网络行为是网络管理的重要内容, 也是保障整个网络系统正常运行的基础, 这可以通过流量测量来实现。为了全面准确地了解整个网络的运行状况, 尤其是网络流量的分布及流量信息的类型, 需对网络流量进行全面的收集、监测和分析[4-11]。已有工作分析了采用NetFlow技术对网络性能的影响, 分析了如何建立基于NetFlow技术的网络流量监测系统[12-19]。本文详细分析了NetFlow技术方法及在广东省气象网络流量监测中的应用。
1 网络流量监测方法分析在传统的共享式网络环境中, 由于每一个端口可以收集到整个网络的流量, 因此, 网络流量的监测技术通过改变网络接口卡 (NIC:network interface card) 的工作方式即可达到对网络数据进行收集和分析的目的, 在具体实现时只需将安装了相应监测分析软件 (比如:Sniffer等) 的计算机连接上网络即可。
在交换网络环境中, 由于一个端口无法触及到所有的数据流, 此时, 监测工具监测到的只是节点端口流量, 即该网络节点设备端口流入和流出的数据包信息。典型的端口流量监测工具是MRTG (multi router traffic grapher, 多路由流量图形化监视系统), MRTG是一个免费软件, 支持UNIX和Windows NT操作系统。MRTG通常被网络管理人员用来收集网络节点端口流量统计信息, 是典型的监视网络链路流量负荷的工具。MRTG将真实流量数据统计信息通过HTML (hyper text markup language, 超文本标记语言) 页面实时输出, 使得维护人员可以迅速发现网络故障和可能发生故障的节点。MRTG的定制非常方便, 一般可以在网络的重要节点端口和故障发生频繁的网络设备处利用MRTG进行监视。
端口监测无法监测全网流量, 虽然交换机提供了端口镜像 (mirror) 功能, 但由于实施成本的限制而并不实用, 尤其是通过多条物理链路建立冗余结构, 实现负载均衡的核心网络环境中, 传统的网络监测技术难以发挥作用。
2 NetFlow技术NetFlow技术最初是作为一种网络交换技术而开发的, Cisco路由和交换平台中的NetFlow服务还可提供内置在快速、最优和CEF (Cisco express forwarding, Cisco快速交换) 交换路径之中的网络数据流统计功能。它可在最大限度减小对路由器/交换机性能影响的前提下提供详细的数据流统计信息。能够为企业提供网络容量规划、趋势分析以及数据优先级等方面信息, 这些统计信息包括用户、协议、端口和服务类型等。NetFlow交换可以部署在网络中的任何位置, 此外, NetFlow还可对访问列表进行有效的处理, 进而实现数据包过滤和安全性服务。NetFlow数据可被用于多种多样的用途, 如网络管理与规划、企业财务、基于利用率的计费以及针对市场营销目的的数据仓库和数据采集等。可为用户提供全面详细的网络系统运行状况信息。
2.1 NetFlow技术目标NetFlow技术专注于分析网络的细节行为, 对IP网络流量能够提供谁在使用网络系统、网络系统中实际在运行什么应用、什么时候网络的利用最充分、网络中的流量及方向、网络资源占用情况。
2.2 网络数据流NetFlow技术是以数据流 (flow) 的方式来收集网络中的数据流量统计信息的。数据流定义为给定的源设备和目的设备之间网络通信报文的单向数据流 (stream) 。一个数据流由下列7个属性域唯一确定:源IP地址, 目的IP地址, 源端口号, 目的端口号, 第三层协议类型, ToS (type of service, 服务类型) 类型, 输入逻辑接口 (ifindex) 。
数据流中以上7个域中的任意一个域值不同, 意味着一个新的数据流。当然, 数据流中还包含其他统计数据域, 这与数据流中记录数据格式版本有关。NetFlow技术只支持IP单播数据流统计信息收集, 不支持组播和广播数据流统计信息收集。
2.3 NetFlow框架应用结构NetFlow服务采用三层体系结构, 图 1说明NetFlow服务包含3个组成部分: NDE (NetFlow data export, 数据输出) 设备、NFC (NetFlow collector, 数据收集) 设备、NDA (NetFlow data analyser, 数据分析) 。NDE生成本设备网络流量统计信息并向NFC发送, NFC收集各NDE设备发送来的流记录数据并存储, NDA基于NFC收集的数据进行业务分析。NDE支持NetFlow功能的路由器或交换机在配置好启动NetFlow功能后, 该网络设备就开始在本机缓存中生成基于流 (flow-based) 的统计数据, 然后通过UDP (user datagram protocol, 用户数据报协议) 方式将汇总的流记录数据定时或缓存满时向信息收集服务器NFC发送。在广东省气象局的实际应用中, NDE设备主要是Cisco路由器。NFC收集各NDE设备发送来的流记录数据并按层次结构以文件的形式存储, 以方便NDA设备处理分析数据。在广东省气象局的实际应用中, NFC是安装在Red Hat Linux V9.2系统平台上。NDA对NFC收集的数据进行分析处理, 为用户提供图形化的查询显示功能。在广东省气象局的实际应用中, NDA和NFC在同一台服务器上。
|
|
| 图 1. NetFlow体系结构 Fig 1. NetFlow infrastructure | |
2.4 NetFlow能收集的数据流类型
NetFlow技术只能从进入网络设备的数据包流中生成相应的监测统计信息流。NetFlow支持的数据包类型为: IP到IP的数据包; IP到MPLS (multiprotocol label switch, 多协议标签交换) 的数据包; 帧中继用户端数据包; ATM用户端数据包。
2.5 NetFlow数据记录格式NetFlow数据通过UDP数据报协议来传输输出, 其记录数据格式有多个协议版本, 包括版本1, 5, 7, 8, 9。所有版本的数据报都包含1个数据头和1个或多个NetFlow数据流记录。数据报报头中包含数据记录格式版本号域, 版本号5, 7, 8, 9的报头中还包含一个序列号域, 应用程序依赖该域来判断是否有NetFlow数据流记录丢失。条件许可的话建议配置专门的接口, 建立独立的网络来连接路由设备和收集设备以避免NetFlow数据流的丢失。
3 基于NetFlow的网络流量监测基于NetFlow技术进行网络流量监测时要考虑的关键点是网络监测点的选取、网络流量监测内容的取舍、网络监测信息的收集及网络流量监测数据分析处理。
3.1 网络监测点的选取为了能够通过收集的数据较为全面地了解整个网络系统的流量状况, 需要合理地选择网络中的关键点进行流量采集和分析。选择网络监测点时首先需要考虑设备的监测能力, 具有NDE支持能力的设备可以作为监测点, 直接收集通过该设备的网络流量信息, 不支持NDE的设备其相应流量信息可以由连接的核心层设备负责收集。由于运行NDE需要一定的设备资源以及网络带宽, 所以, 并不是所有支持NDE的交换机都需要24 h运行NDE服务, 应根据网络监测的需要和业务性质以及用户行为, 选择关键业务点的设备做采样监测。采样的频度由网络设备和后台信息收集服务器的能力来共同确定。
网络监测点选择根据业务需求及设备资源情况而定, 在设备资源、网络带宽及收集服务器能力都很充足的情况下, 应该尽可能多地收集网络流量数据, 以供网络管理及规划使用。
3.2 网络流量监测内容根据对网络运行情况的统计需求和NDE协议所提供的信息, 网络运行情况的监测内容需包括如下的内容: ①给定时间内 (一般为24 h) 的网络整体信息流量; ②给定时间内 (一般为24 h) 的网络流量上层协议类型及数量; ③给定两点间的详细信息流量及内容 (包括上层协议类型) ; ④指定网络节点的信息流量及内容 (包括上层协议类型); ⑤网络中指定应用的使用状况 (包括使用者和使用数量); ⑥网络中指定区域的应用类型及信息流量。根据网络规划和管理的需要, 监测系统还能够提供其他灵活的统计信息组合。
3.3 网络监测信息的收集网络设备形成的数据流记录数据通过UDP发送到收集服务器, 由收集服务器完成对网络监测信息NetFlow数据流记录的收集。NFC是一个可以在HP-UX, Solaris和Linux操作系统上运行的NDE信息收集软件。广东省气象局网络系统的NFC运行在Linux系统上。
NFC按照时间和网络设备的地址对收集的数据进行分类, 统计信息以文件的形式存储。同时, 它也可以通过网关以socket方式发送信息到其他网管分析软件。NFC可以接收多个网络设备产生的统计信息, 但是要求运行NFC的服务器具有足够的网络带宽、处理能力和硬盘空间。
3.4 网络流量监测数据分析处理NDE统计数据的后台分析与处理可采用Cisco提供的分析软件、Microsoft Excel软件和根据业务需求自行开发相结合来完成。NFC中提供的分析软件NDA (NetFlow data analyzer) 对NFC保存在文件系统中的统计记录可进行提取和简单分析, 提供基于Web的交互使用功能, 虽然可以提供各种时间的统计图表, 但是操作复杂, 无法同时显示多种图表比较, 更无法与正常数据流作对比分析, 即NDA无法满足正常业务分析需求, 需要在此基础上进行满足具体业务图表要求的二次开发。
在广东省气象局的具体流量监控实时业务中, 采用关系型数据库系统, 将NDE统计数据保存到数据库系统中, 在数据库基础上, 根据业务需求, 动态统计分析整理出各项业务需求的基准数据图表, 以便通过对比分析各种实时业务流量与基准流量的差异, 科学掌握业务流量变化, 及时发现网络异常。开发了基于Web的各类网络业务流量查询统计, 实时图表显示, 各类统计报表等功能。
4 NetFlow技术在广东气象网络中的应用广东省气象信息业务网络自20世纪80年代末建立以后规模不断扩大, 核心网络几经改造, 网络规模日益庞大。目前广东气象业务网络系统核心层由两台Cisco 6509千兆核心路由交换机构成, 交换机之间采用两条千兆光纤链路连接, 通过HSRP (hot standby router protocol, 热备份路由器协议) 实现三层交换路由的冗余; 接入层由多台Cisco 3550EMI三层交换机构成, 接入层与核心层之间采用两条千兆光纤链路连接, 通过动态路由协议OSPF (open shortest path first, 开放最短路径优先) 实现冗余及负载均衡, 保证网络高冗余性、高可靠性。广东气象广域网络系统主要由与中国气象局连接的8 M链路、与香港天文台连接的64 K链路、与澳门地球物理暨气象局连接的64 K链路、与地市级气象局连接的10 M及市与县连接的2 M链路构成。整个网络系统中网络交换机和路由器总数超过百台, 并且这些设备分散在不同地域, 网络管理工作非常繁重。在应用NetFlow技术以前, 网络管理人员也无有效的技术手段获得网络整体和局部的精确运行数据。网络出现问题, 尤其是遇到网络性能下降等较为复杂情况时, 只能通过逐个检查防火墙、路由器和交换机等网络设备信息, 根据经验判断大致故障位置, 再逐点排查, 甚至使用切断物理连接等方式定位故障。由于缺乏对网络整体运行情况的了解, 故障定位及排除耗时长, 影响气象业务系统正常运行。
通过广东省气象局网络流量分析系统的建设, 集中收集和存储近实时的网络运行流量数据 (5 min采样间隔), 存储的数据包括网络数据流的源地址、目标地址、起止时间、端口等内容。这些详细的网络运行数据可以用来作为网络运行基准信息, 并在遇到网络故障或安全事件时为故障分析和定位提供依据。通过该系统, 信息中心技术人员能够较为全面地了解各直属单位及全省各市气象局与省局的通信流量状况, 了解网络上各种服务和客户端的使用情况, 了解全省网络运行状况和指定设备的运行流量情况, 快速定位网络故障并予以排除。经过一段时间网络运行数据采集和统计分析, 可以反映出网络运行状况和网络流量的变化规律, 发现潜在的安全漏洞与威胁。同时该系统还能够为网络优化调整和升级改造提供决策依据。
目前网络安全威胁的主要表现为网络安全攻击, 而内部网络计算机病毒攻击又是主要安全攻击形式之一, 在实际业务运行中时有发生。计算机病毒攻击直接造成网络和网络设备拥塞。通过流量分析系统所提供的网络运行信息尤其是各类异常流量 (如网络蠕虫病毒攻击等) 信息, 能够有效辅助技术人员分析故障情况, 确定故障原因并准确定位故障点。
2006年12月5日, 广东省气象局网络系统发生由计算机病毒引起的网络故障, 借助于网络流量分析系统, 信息中心技术人员仅用10 min时间就完成了故障定位并排除了该故障, 充分表明了流量分析系统在故障处理中的作用。图 2至图 4表示此次故障告警和故障定位的基本过程。
|
|
| 图 2. 2006年12月5日网络异常告警信息画面 Fig 2. Image of network abnormal warning message on December 5, 2006 | |
首先, 流量分析系统出现告警信息:骨干交换机 (Cisco 6509) CPU占用率超出警戒阈值70%, 网络可能出现拥塞。图 2为告警信息界面。
随后, 通过对流量分析系统提供的IP地址流量分布信息 (图 3) 分析, 发现内网中某台计算机 (源地址省略) 和目标地址为61.152.237.195的会话产生异常流量。其流量特点为数据包数量极大但是数据量不大 (5 min内发送的数据包达到152828380个, 核心网络设备整体包流量的38.9%), 判断为网络攻击行为。该会话很可能是造成核心交换机CPU利用率高和网络拥塞的原因。
|
|
| 图 3. 出现告警信息的骨干交换机上网络流量统计表画面 Fig 3. Image of the network flowchart statistic table from the main switch | |
最后, 通过进一步检查该会话的具体应用情况 (图 4), 发现内网中该计算机通过443端口向61.152.237.195发送大量的TLS/SSL HTTP UDP数据。由于该会话与气象业务无关, 技术人员对该计算机进行物理隔离, 防止计算机病毒流量在网络中扩散和传播, 并在该骨干交换机上设置访问控制策略阻止443端口服务。通过上述步骤, 骨干交换机CPU占用率恢复到正常水平, 网络恢复正常。经过检查发现, 内网中被隔离的计算机由于受到Slapper. Worm蠕虫病毒感染利用TLS/SSL协议向61.152.237.195发起DDoS (distributed denial of service, 分布式拒绝服务) 攻击从而影响了网络的正常运行。
|
|
| 图 4. 网络流量类型信息画面 Fig 4. Image of network trafic type information | |
总体来说, 网络运行流量数据采集、分析和处理工作需要综合使用现有多种工具, 按照网络管理实际需求进行, 其目标是尽可能全面地反映网络整体和细节运行情况。综合采用数据挖掘等技术后, 网络运行流量数据既能有效实现网络故障分析与定位, 还可以表现网络长期运行趋势, 为网络规划设计提供科学可靠的依据。
5 结束语网络流量的分析研究及应用在网络建设中的作用日趋显著, 通过分析可以了解到网络中的用户都访问了哪些目的网络, 是网络分析、规划、设计和优化的重要依据。但是现在市场上有相当多的流量采集分析工具, 什么样的网络使用哪种工具, 采集哪种流量, 都是非常重要的问题。根据NetFlow的特点可知, 其非常适用于大型网络, 和流量探针、Sniffer等比较, NetFlow成本最低, 实施最方便, 而且不受速率的限制, 是数据流量采集的发展方向。围绕网络流量监测, 可以开展一系列网络行为和网络健壮性的分析研究, 所以网络流量监测是网络管理的基础。设计完整、全面和简便可行的监测方式是网络管理工作的基本内容。
| [1] | 陈礼生, 肖文名, 陈立祥, 等. 广东气象IP-VPN网建设的若干关键技术. 计算机系统应用, 2004, (10): 44–45. |
| [2] | 王春虎. 国家级气象高速骨干网络的系统设计. 应用气象学报, 2002, 13, (5): 637–640. |
| [3] | 李集明, 熊安元. 气象科学数据共享系统研究综述. 应用气象学报, 2004, 15, (增刊): 1–9. |
| [4] | 杨策, 张永智, 庞正社. 网络流量监测技术及性能分析. 空军工程大学学报(自然科学版), 2003, 4, (1): 57–60. |
| [5] | 蒋海, 刘淑芬. 流量监测MRTG的改进及其实现. 计算机应用研究, 2006, 23, (2): 201–202. |
| [6] | 陈正茂, 岳惠祥, 许化. ASP技术在网络实时监控系统中的应用. 计算机应用, 2001, 21, (3): 87–88. |
| [7] | 苟平章, 倪志新. 交换式局域网中SMON监控技术. 计算机与数字工程, 2006, 34, (7): 21–26. |
| [8] | 尹家生, 周健, 辜丽川. 基于Linux的高速网络流量采集与分析模型研究. 计算机工程与应用, 2006, (10): 151–153. |
| [9] | 刘广义, 卢泉, 杨国良. 基于NetFlow流量采样的误差分析. 电信科学, 2005, (5): 68–70. |
| [10] | 周韶泽, 邵力耕. 高速网络环境下基于NetFlow的网络监测 系统设计. 大连铁道学院学报, 2005, (2): 86–89. |
| [11] | 郭玲, 吕扬, 王锋. NetFlow技术在骨干网IDS中的应用研究. 云南民族大学学报(自然科学版), 2004, (2): 125–128. |
| [12] | 周宏. 校园网上NetFlow流量监控分析系统的设计与实现. 西南民族大学学报(自然科学版), 2005, (3): 456–459. |
| [13] | 曾凡锋. 基于SNMP的网络流量统计分析系统. 北方工业大学学报, 2003, (1): 17–20. |
| [14] | 杨嵘, 张国清, 韦卫, 等. 基于NetFlow流量分析的网络攻击行为发现. 计算机工程, 2005, 31, (13): 138–139. |
| [15] | 孟学军, 吴黎兵, 石岗. 基于NetFlow网络流量分析的研究及应用. 华中科技大学学报(自然科学版), 2003, (增刊): 253–254. |
| [16] | 罗华, 胡光岷, 姚兴苗. 基于网络全局流量异常特征的DDoS攻击检测. 计算机应用, 2007, 27, (2): 314–317. |
| [17] | 黄艳, 李家滨. 基于NetFlow的网络入侵检测系统. 计算机应用与软件, 2006, 23, (6): 85–86. |
| [18] | 朱敏. 基于NetFlow网络流量异常的分析. 计算机系统应用, 2006, (4): 28–30. |
| [19] | 肖志新, 杨岳湘, 杨霖. 一个基于NetFlow的异常流量检测与防护系统. 微电子学与计算机, 2006, (5): 209–210. |
2007, 18 (6): 870-876

