NETFLOW技术介绍
- 格式:doc
- 大小:1.36 MB
- 文档页数:50
netflow analyzer原理NetFlow Analyzer是一种用于网络流量分析的工具,可以帮助网络管理员监控和管理网络流量。
它的原理是通过收集和分析网络设备上的NetFlow数据,提供实时的流量统计和分析报告。
NetFlow是一种由思科开发的网络流量记录和分析技术,它可以在网络设备上捕获流经设备的数据包,并将相关信息记录下来。
这些信息包括源IP地址、目的IP地址、源端口、目的端口、协议类型、数据包数量、数据包大小等。
NetFlow Analyzer通过解析这些信息,可以得到关于网络流量的详细信息,包括流量的来源、目的地、协议、端口等。
NetFlow Analyzer的工作原理可以分为三个主要步骤:数据收集、数据分析和报告生成。
首先,它通过与网络设备进行通信,收集和获取NetFlow数据。
这些数据可以通过网络设备上的NetFlow功能或者通过配置路由器、交换机等设备来获取。
一旦数据被获取到,NetFlow Analyzer会对这些数据进行解析和分析。
在数据分析阶段,NetFlow Analyzer会对收集到的NetFlow数据进行处理和分析。
它会根据设定的规则和算法,对流量数据进行分类和统计。
例如,可以根据源IP地址或目的IP地址对流量进行分类,统计每个IP地址的流量量;也可以根据端口号或协议类型对流量进行分类,统计每个端口或协议的流量量。
通过对这些数据的分析,可以得到网络流量的整体情况和特征。
在报告生成阶段,NetFlow Analyzer会根据分析得到的结果生成报告。
报告可以以图表、表格等形式展示,并提供详细的统计数据和分析结果。
这些报告可以帮助网络管理员了解网络的使用情况,发现异常流量和网络瓶颈,并采取相应的措施进行优化和改进。
NetFlow Analyzer的原理和功能使其成为网络管理和安全监控的重要工具。
通过实时监控网络流量,可以及时发现和解决网络问题,提高网络的性能和可靠性。
网络流量分析NetFlow协议解析网络流量分析在网络安全和性能监控中起着重要的作用。
而NetFlow协议作为其中一种流量分析的关键工具,在网络管理领域中被广泛应用。
本文将对NetFlow协议进行详细解析,介绍其原理、功能和应用。
一、NetFlow协议简介NetFlow协议是由思科公司于1996年推出的一种网络流量分析技术。
它能够提供流量统计、流量分析和流量监控等功能。
NetFlow协议通过在路由器和交换机上收集、处理和导出流量数据,为网络管理员提供实时的流量信息和网络性能的评估。
二、NetFlow协议的工作原理NetFlow协议的工作原理可以分为三个阶段:数据收集、数据处理和数据导出。
1. 数据收集在网络中的路由器和交换机上,通过配置使其能够将经过设备的流量数据进行收集。
NetFlow支持两种收集方式:Full Flow和Sampled Flow。
Full Flow是指完整地收集每一个流量数据进行处理;Sampled Flow是指以一定的频率采样流量数据进行处理,减少处理开销。
2. 数据处理收集到的流量数据会经过设备内部的处理引擎进行处理。
处理引擎会提取关键信息,如源IP地址、目的IP地址、源端口、目的端口、协议类型等,并基于这些信息生成流记录。
3. 数据导出处理后的流记录会根据配置的规则进行导出。
导出方式有两种:NetFlow v5和NetFlow v9。
NetFlow v5是早期版本,具有广泛的兼容性;NetFlow v9则是最新版本,支持更多的字段,并且具有灵活的配置能力。
三、NetFlow协议的功能NetFlow协议具有以下几个主要功能:1. 流量统计NetFlow可以对流量进行实时统计,包括流量量、带宽利用率、流量峰值等。
这些统计数据可以帮助网络管理员了解网络的负载情况,有助于进行容量规划和性能优化。
2. 流量分析通过对收集到的流量数据进行分析,NetFlow可以帮助管理员发现网络中的异常情况和潜在安全威胁。
网络工程师技术知识点总结作为一名网络工程师,有一定的技术知识是必不可少的。
在当前信息化时代,网络技术已经成为各个行业发展的重要基础。
因此,网络工程师需要具备一定的技术知识,以应对各种网络问题和挑战。
下面将从网络基础知识、网络安全、网络管理、网络协议以及新兴技术等方面,进行详细的技术知识总结。
网络基础知识1. OSI七层网络模型OSI七层网络模型是网络工程师必须掌握的知识。
这一模型将计算机网络通信的过程划分为七个层次,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
每个层次都有其特定的功能和协议。
了解这一模型有助于工程师更好地理解网络通信的整个过程。
2. TCP/IP协议TCP/IP协议是互联网的基础协议,也是现代计算机网络的基础协议。
它将网络通信过程划分为四层,包括网络接口层、网络层、传输层和应用层。
工程师需要深入了解每一层的功能和协议,并掌握TCP/IP协议的配置和管理技巧。
3. IP地址和子网划分IP地址是互联网中的网络设备在网络中的唯一标识,网络工程师需要了解IP地址的分类及其使用、子网划分的方法和技巧,以便为网络设备配置正确的IP地址和子网掩码。
4. VLAN和Trunk技术VLAN(Virtual Local Area Network)是一种虚拟局域网技术,可以将不同物理位置的设备通过逻辑上的方式划分到同一个局域网中,有利于网络管理和安全。
Trunk技术则是一种交换机端口上的技术,可以在一条物理链路上传输多个VLAN的数据。
了解VLAN和Trunk技术对网络工程师来说很重要。
网络安全1. 防火墙和安全策略防火墙是网络安全的第一道防线,网络工程师需要掌握不同类型的防火墙技术和安全策略,在网络中配置和管理防火墙,以保护网络免受各种网络威胁和攻击。
2. VPN和加密技术VPN(Virtual Private Network)是一种通过公共网络建立安全通信通道的技术,可以用于远程访问和网络连接,网络工程师需要了解各种VPN技术和加密技术,实现网络通信的安全和保密。
Netflow技术最早是于1996年由思科公司的Darren Kerr和Barry Bruins发明的,并于同年5月注册为美国专利,专利号为6,243,667。
Netflow技术首先被用于网络设备对数据交换进行加速,并可同步实现对高速转发的IP数据流(Flow)进行测量和统计。
经过多年的技术演进,Netflow原来用于数据交换加速的功能已经逐步由网络设备中的专用ASIC芯片实现,而对流经网络设备的IP数据流进行测量和统计的功能也已更加成熟,并成为了当今互联网领域公认的最主要的IP/MPLS流量分析,统计和计费行业标准。
Netflow技术能对IP/MPLS网络的通信流量进行详细的行为模式分析和计量,并提供网络运行的详细统计数据。
在Netflow技术的演进过程中,思科公司一共开发出了5个主要的实用版本,即:Netflow V1,为Netflow技术的第一个实用版本。
支持IOS 11.1,11.2,11.3和12.0,但在如今的实际网络环境中已经不建议使用。
Netflow V5,增加了对数据流BGP AS信息的支持,是当前主要的实际应用版本。
支持IOS 11.1CA和12.0及其后续IOS版本。
Netflow V7,思科Catalyst交换机设备支持的一个Netflow版本,需要利用交换机的MLS 或CEF处理引擎。
Netflow V8,增加了网络设备对Netflow统计数据进行自动汇聚的功能(共支持11种数据汇聚模式),可以大大降低对数据输出的带宽需求。
支持IOS12.0(3)T,12.0(3)S,12.1及其后续IOS版本。
Netflow V9,一种全新的灵活和可扩展的Netflow数据输出格式,采用了基于模板(Template)的统计数据输出。
方便添加需要输出的数据域和支持多种Netflow新功能,如Multicase Netflow,MPLS A ware Netflow,BGP Next Hop V9,Netflow for IPv6等。
NetFlow是一种数据交换方式。
Netflow提供网络流量的会话级视图,记录下每个TCP/IP事务的信息。
也许它不能象tcpdump那样提供网络流量的完整记录,但是当汇集起来时,它更加易于管理和易读。
Netflow由Cisco创造。
工作原理:NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,NetFlow缓存同时包含了随后数据流的统计信息。
NetFlow有两个核心的组件:NetFlow缓存,存储IP流信息;NetFlow的数据导出或传输机制,NetFlow利用此机制将数据发送到网络管理采集器。
概念:一个NetFlow流定义为在一个源IP地址和目的IP地址间传输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。
确定Flow的标识:SIP+DIP+SPORT+DPORT +Layer 3 protocol type + TOS byte() + Router or switch interface数据采集格式NFC(Cisco NetFlow Collector) 可以定制多种NetFlow数据采集格式,下例为NFC2.0采集的一种流量数据实例,本文的分析都基于这种格式。
61.*.*.68|61.*.*.195|64917|Others|9|13|4528|135|6|4|192|1数据中各字段的含义如下:源地址|目的地址|源自治域|目的自治域|流入接口号|流出接口号|源端口|目的端口|协议类型|包数量|字节数|流数量cache缓存空间可配置的Cache维护机制一般情况下Cache空间的占用是与所监控的Flow数量呈正比的,但是当链路中充斥着大量的短连接Session时,Flow表项数量可能会因为没有得到及时释放而过多占用有限的Cache空间。
为此,NetFlow 提供了一种非常复杂、高效的算法以快速定位一个数据包在该Cache中的位置或判断是否应新建表项,并且通过管理员给定的阀值进行各类表项的超时导出,从而及时释放老的表项以容纳新建Flow信息。
NetFlow数据处理与异常检测研究的开题报告一、研究背景和意义近年来,随着互联网的快速发展和普及,网络安全问题日益引起人们的关注。
其中,网络流量分析技术是网络安全领域中不可或缺的一部分。
而NetFlow技术以其高效、快速、准确等特点成为了一种重要的网络流量分析技术。
NetFlow是思科公司提出的一种网络流量分析技术,它可以捕获网络中的数据流,并将其转化为流量数据。
利用NetFlow技术,可以对网络流量进行分析、统计、监控等,从而帮助网络管理员及时发现潜在的网络安全问题。
随着互联网的不断发展和应用范围的扩大,网络流量日益复杂多样,网络攻击手段也越来越多样化和隐蔽化。
因此,为了进一步提高网络安全防护能力,需要对NetFlow数据进行深入研究和分析,以实现对异常流量的检测和预防。
本研究旨在对NetFlow数据进行处理和分析,开发一种NetFlow异常检测算法,提高网络安全防护能力。
二、研究内容和方法(一)研究内容本研究的主要内容包括:1. NetFlow数据处理:对原始NetFlow数据进行预处理,包括数据清洗、去重、格式化等操作,以方便后续的分析和处理。
2. 特征提取:利用机器学习等技术,对处理后的NetFlow数据进行特征提取,提取出能够反映流量特征的多种指标信息。
3. 异常检测:根据NetFlow数据的特征信息,设计一种能够有效检测网络异常流量的算法。
4. 系统实现:将上述处理过程和算法实现为一个完整的系统,方便用户对网络流量分析和异常检测。
(二)研究方法本研究采用以下研究方法:1. NetFlow数据处理:利用Python等编程语言,对原始NetFlow数据进行清洗、去重、格式化等处理,提高数据处理效率和准确性。
2. 特征提取:运用机器学习等技术,对NetFlow数据进行特征工程,提取出多种具有代表性的指标。
3. 异常检测:基于机器学习、数据挖掘等相关技术设计出一种有效的异常检测算法,对NetFlow数据进行分析和处理。
Netflow实时监控需求分析一、概述Netflow是CISCO公司提出的网络数据包交换技术,该技术首先应用于网络设备对数据交换进行加速,并可同步实现对高速转发的IP数据流进行测量和统计。
经过多年的技术演进,NetFlow原来用于数据交换加速的功能已经逐步改由网络设备中的专用集成电路(ASIC)芯片实现,而对流经网络设备的IP Flow进行测量和统计的功能却更加成熟,并成为当今互联网领域公认的最主要的IP流量分析、统计和计费行业标准。
目前,天清汉马USG设备支持NETFLOW V9版本,并通过数据中心实现对NETFLOW数据的采集与分析。
二、3.0版本Netflow实时监控需求:天清汉马数据中心虽然支持NETFLOW的查询,但并不支持图形化显示,所有NETFLOW数据都必须通过查询显示在表格中,缺乏直观的分类和显示方式,这样的操作方式也失去了实时的效果,从实际使用效果来看,并不理想。
结合市场一些Netflow分析工具的操作方式,并根据数据中心的操作流程,建议3.0版本的实时监控部分应增加如下改进:1、增加图形显示在预定义设备组或IP组后,在点击实时流量查询时能直观的以饼图、柱状图显示相关内容,并在图形下方显示数字明细。
其中饼图可以显示各设备所占总流量的百分比(以设备组为例)柱状图则以时间为轴显示流量变化。
该页面应支持自定义设置,依照设备组、IP、安全策略及协议显示。
图形下方显示相关详细内容:总流量及平均流量默认根据颜色显示一小时内所有设备组的流量变化情况。
2、支持协议分类在Netflow实时显示中,应支持对协议的分类显示。
其中除了传统的固定端口的内容显示外,还支持对于P2P/VOIP等业务的流量显示。
3、显示CPU、内存及接口流量显示指定设备的相关接口流量,CPU、内存显示4、支持TOP N显示支持统计单位时间内的TOP N流量:如协议、源地址、目的地址、5、支持Netflow流采样模式可设置Netflow的流采样模式,根据设定的比例采集数据包。
IP网络承载能力与所提供的应用业务规模向来都是相辅相成的,一方面IP网络的建设将给新应用技术的推广提供有效的实施平台,另一方面应用业务也会随着自身系统发展需要而对现有IP网络提出更高的资源需求,从而推动IP网络基础建设进入新的建设周期。
在这种类似于“鸡生蛋、蛋生鸡”的逻辑悖论中,另外一个问题却是毋庸置疑的凸现了出来,那就是如何把应用业务与其所占用的IP资源(如带宽)清晰、准确的对应起来,如何保证有限的IP资源能够被合理应用的到主要利润业务中。
以NetFlow为代表的Flow技术正是为响应这种挑战而出现的新型解决途径。
什么是Flow在最开始,Flow是网络设备厂商为了在网元设备内部提高路由转发速度而引入的一个技术概念,其本意是将高CPU消耗的路由表软件查询匹配作业部分转移到硬件实现的快速转发模块上(如Cisco的CEF模式)。
在这种功能模式中,数据包将通过几个给定的特征定义归并到特定的集合中,这个集合就是Flow。
每个Flow的第一个数据包除了促使该Flow记录的产生以外,还要驱动网元三层模块完成路由查询并将查询结果同期放入Flow记录中,而该Flow集合的后续数据包将直接在Flow的已有记录中获得路由转发信息,从而提高了网元设备的路由转发效率。
作为网元设备内部路由机制优化的副产物,Flow记录能够提供传统SNMP MIB 无法比拟的丰富信息,因此Flow数据被广泛用于高端网络流量测量技术的支撑,以提供网络监控、流量图式分析、应用业务定位、网络规划、快速排错、安全分析(如DDOS)、域间记帐等数据挖掘功能。
相对于会话(“Session”)而言,“Flow”具备更细致的标识特征,在传统的TCP/IP五元组的基础上增加了一些新的域值,至少包括以下几个字段:源IP地址目的IP地址源端口目的端口IP层协议类型ToS服务类型输入物理端口以上七个字段可以唯一地确定任意一个数据包属于哪个特定的Flow,换而言之任何一个字段出现了差异都意味着一个新Flow的发生。
1、流量流向监测技术1.1 概述传统得网络流量监测技术得局限性SNMP采集端口得数据主要就是在网元层用来监控网络流量与设备得性能,而且SNMP 采集得数据就是基于端口得,无法提供端到端得准确得流量信息,因此对流向得统计手段不明确。
利用RMON探针对运营商网络进行流量与流向管理可以部分弥补SNMP得技术局限性,其业务分析与协议分析功能较强。
但就是,采用RMON探针建设得流量监测系统也有处理性能不足与难以在大型网络普遍部署得局限性。
提出新得流量监测技术为克服现有网管系统对网络流量与流向分析功能得技术局限性,运营商迫切需要寻找一种功能丰富、成熟稳定得新技术,对现有管理系统中流量信息得采集与分析方式进行改造与升级。
新得流量信息采集与分析技术应具备对运营商得运行网络影响小、无需对网络拓扑进行改变就能平滑升级得技术特征,既可以对网络中各个链路得带宽使用率进行统计,又可以对每条链路上不同类型业务得流量与流向进行分析与统计。
本文主要介绍应用广泛得Cisco NetFlow技术、华为Netstream技术、Sflow 、Cflowd 与IPFIX 以及支持上述流监测技术得厂家与设备情况。
1.2 相关厂家及设备2Netflow2.1 流原理netflow 得信息单元就是flow。
flow就是一个单向得带有唯一标识字节组得传输流。
基本得标识为:source-IP-address, source-port, destination-IP-address, destination-port, IP-protocol, TOS, input interface ID。
当路由器接收到一个没有flow入口得数据包时,一个flow得结构将被初始化以保存其状态信息如:交换得字节数、IP地址、端口、自治区域等。
随后所有满足这个flow结构得数据包都将增加flow结构得字节计数与包计数,直至这个flow中止并输出。
Netflow功能就是在一个路由器内独立完成,它不涉及路由器之间得任何连接设置协议,也不要求对数据包本身或其它任何网络设备进行任何外部修改。
Netflow交换中要创建一个信息高速缓存,第一个数据包到来时,路由器利用标准得快速交换处理信息包,同时生成一个Netflow高速缓存,随后到来得数据包即可以依据高速缓存信息被交换,对于所有活动信息流,在Netflow高速缓存中保留相应得信息流信息。
当一定时间内没有相应得数据包通过,则结束这个数据流得交换与统计,并释放高速缓存,数据输出得条件在后续部分描述。
在netflow中到期得flow被绑在UDP数据报中发出。
在V5得版本中最多30个flow记录,V1中25个记录,V8中28个记录。
至少每秒钟发一次flow。
虽然netflow只提供单向得流量统计。
如果希望得到表现双向得统计数据,netflow提供了“canned”得SQL程序来获得一个IP地址对得流量统计数据。
典型得路由器netflow得资源占用率为8%~30%。
一般情况下一个netflow收集器接收3-5个路由器得netflow输出。
2.2 输出缓存条件NetFlow就是通过建立高速缓存来实现得,该缓存存放所有活动得流信息。
当有一个报文符合流定义时,NetFlow缓存将被建立。
缓存终止并输出数据得条件如下:**传输完成(当瞧到TCP FIN或RST标志)**缓存满**非活动时间超时。
空闲流超过n秒,默认15秒,可通过Router(config)# ip flow-cache timeout inactive 130改变默认值**活动时间超时。
流超过n分钟,默认30分钟,可通过Router(config)# ip flow-cache timeout active 20改变默认值NetFlow缓存如图1所示。
图1 NetFlow Cache示例2.3 Netflow 报文格式说明2.3.1V1头格式字段值Version 0x0001Count 该报文含有得流记录数System Uptime 该设备启动得时间(毫秒)UNIX Seconds 自0000 UTC 1970计得时间(秒)UNIX NanoSenconds 自0000 UTC 1970计剩余时间(十亿分之一秒)输出报文格式0 1 2 3 byte srcaddrdstaddrnexthopinput outputdPktsdOctetsfirstLastsrcport dstportPad1 prot tos Tcp_flagsPad2 Pad3 reservedBytes 字段值0-3 srcaddr 源ip地址4-7 dstaddr 目得ip地址8-11 nexthop 下一跳路由器地址12-13 input SNMP入口接口ifIndex14-15 output SNMP出口接口ifIndex16-19 dPkts 该流得Packets数20-23 dOctets 该流得Bytes数24-27 first 流开始系统时间28-31 Last 流结束系统时间32-33 srcport 四层源端口34-35 dstport 四层目得端口36 Pad1 未用(0)37 prot 四层协议(如TCP=6,UDP=17)38 tos 服务类型39 Tcp_flags Cumulative OR of TCP flags40 Pad2 未用(0)41-42 Pad3 未用(0)43 reserved 保留2.3.2V5头格式备注:红色部分就是Version 5较Version 1新添字段。
字段值Version 0x0005Count 该报文含有得流记录数System Uptime 该设备启动得时间(毫秒)UNIX Seconds 自0000 UTC 1970计得时间(秒)UNIX NanoSenconds 自0000 UTC 1970计剩余时间(十亿分之一秒)Sequence Number 流序号Engine Type 流转发引擎,0代表RP,1代表VIP/LCEngine ID VIP或LC插槽号码输出报文格式备注:红色部分就是Version 5不同于Version 1得字段。
Version 5新增了4个字段用以标示自治域与掩码位。
0 1 2 3 byte srcaddrdstaddrnexthopinput outputdPktsdOctetsfirstLastsrcport dstportPad1 Tcp_flags prot tossrc_as dst_assrc_mask dst_mask pad2Bytes 字段值0-3 srcaddr 源ip地址4-7 dstaddr 目得ip地址8-11 nexthop 下一跳路由器地址12-13 input SNMP入口接口ifIndex14-15 output SNMP出口接口ifIndex16-19 dPkts 该流得Packets数20-23 dOctets 该流得Bytes数24-27 first 流开始系统时间28-31 Last 流结束系统时间32-33 srcport 四层源端口34-35 dstport 四层目得端口36 Pad1 未用(0)37 Tcp_flags Cumulative OR of TCP flags38 prot 四层协议(如TCP=6,UDP=17)39 tos 服务类型40-41 src_as 源AS号42-43 dst_as 目得AS号44 Src_mask 源地址掩码位数45 Dst_mask 目得地址掩码位数46-47 Pad2 未用(0)2.3.3V7头格式备注:红色部分就是Version 7较Version 1新添字段。
字段值Version 0x0007Count 该报文含有得流记录数System Uptime 该设备启动得时间(毫秒)UNIX Seconds 自0000 UTC 1970计得时间(秒)UNIX NanoSenconds 自0000 UTC 1970计剩余时间(十亿分之一秒)Sequence Number 流序号输出报文格式备注:红色部分就是Version 7不同于Version 5得字段0 1 2 3 byte SrcaddrDstaddrNexthopinput OutputdPktsdOctetsFirstLastsrcport Dstportflags Tcp_flags prot Tossrc_as dst_assrc_mask dst_maskpad2 MLS RPBytes 字段值0-3 srcaddr 源ip地址4-7 dstaddr 目得ip地址8-11 nexthop 下一跳路由器地址12-13 input SNMP入口接口ifIndex14-15 output SNMP出口接口ifIndex16-19 dPkts 该流得Packets数20-23 dOctets 该流得Bytes数24-27 first 流开始系统时间28-31 Last 流结束系统时间32-33 srcport 四层源端口34-35 dstport 四层目得端口36 flags flow mask in use37 Tcp_flags Cumulative OR of TCP flags38 prot 四层协议(如TCP=6,UDP=17)39 tos 服务类型40-41 src_as 源AS号42-43 dst_as 目得AS号44-45 Src_mask 源地址掩码位数46-47 Dst_mask 目得地址掩码位数48 Pad2 未用(0)49-50 MLS RP IP address of MLS router2.3.4V8注意:支持IOS12、0(3)T,12、0(3)S12、1及其后续IOS版本头格式备注:红色部分就是Version 8较Version 5新增字段,该字段体现汇聚功能。
字段值Version 0x0008Count 该报文含有得流记录数System Uptime 该设备启动得时间(毫秒)UNIX Seconds 自0000 UTC 1970计得时间(秒)UNIX NanoSenconds 自0000 UTC 1970计剩余时间(十亿分之一秒)Sequence Number 流序号Engine Type 0代表RP,1代表VIP/LCEngine ID VIP或LC插槽号码Aggregation 标识汇聚模式需添加具体值Agg_version 汇聚版本= 2汇聚模式Version 8支持汇聚功能,不同得汇聚模式有其相应得报文格式,下文分别叙述11种汇聚模式得、报文格式。
汇聚功能就是Version 8提出得新功能,在Version 9中也支持,它将输出得原始流信息报文按照不同得汇聚模式再一次分类,减少报文量,减轻对网络得负担,同时也能从某种角度来总结网络状况。