【NetFlow】NetFlow V9协议详细分析

article/2025/9/30 19:53:06

无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。

摘自百度百科

 

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 Aware Netflow,BGP Next Hop V9,Netflow for IPv6等。支持IOS12.0(24)S和12.3T及其后续IOS版本。在2003年思科公司的Netflow V9还被IETF组织从5个候选方案中确定为IPFIX(IP Flow Information Export)标准。

这是Cisco网络设备上支持的一种传输数据协议,下面就一些样本数据,以图文并茂的方式给大家详细解释下NetFlow V9的协议格式:

 

1、协议格式


以上说明了netflow数据完整的数据格式,包括包头定义,模板定义,信息数据流定义

后面还有可选项数据的定义:

2、示例,模板数据流包

 

FlowSet ID=0

数据流汇总ID的值为0,该值是专门保留给模板数据流汇总ID使用的。

以上截图的数据包为信息数据流的模板

 

模板ID的唯一性在一个本地的观察域中有效,0-255的模板ID被预留出来给模板数据流汇总、可选数据流汇总和其它尚待开发的数据流汇总使用。信息数据流汇总则使用256-65535之间的模板ID值。

 

这是13个字段的定义

 

如图,21表示这是本条数据流最后一个数据包被传送的时间戳(单位兆秒)

模板数据流之后就是具体的信息数据流了

可以看到信息数据流里的templateID是259,就是上面的模板数据流里的templateID

FlowSet Length 48是整个信息数据流的长度,48个字节,跟前面13个Field Type定义是对应的

接下来的13个字段的值对应的就是前面Field Type定义的字段含义

协议头里标明一共是28个信息数据流

3、示例,16进制串,按照格式拆分

给定一串16进制串,按照协议格式,按字段拆分,再次了解协议的具体组成

 

0009001cd21326885910ab9900048b35000000020000003c0103000d0015000400160004000100080002000800080004000c000400070002000b0002000a00040004000100050001003d000100d2000101030030d212f12cd212e3330000000000005c9f0000000000000013ddb043e2c0a8732d03e1ed7d000000180600000001030030d212f12cd212e69800000000000003010000000000000002739f8194c0a8726e01bbce13000000180600000001030030d212f12cd212e34c000000000000181f000000000000000ecbd027f9c0a8726001bbe82c000000180600000001030030d212f12cd212e6c300000000000001170000000000000001739f8194c0a8726e01bbce14000000180600000001030030d212f12cd212deda000000000000004000000000000000015bcd45d9c0a8aa1d01bbcc67000000180600000001030030d212f12cd212578a0000000000000d53000000000000001178cc0a2ec0a85a1a01bbdc32000000180600000001030030d212f12cd212e6a1000000000000043400000000000000046a0b3e47c0a8726f01bbe3c2000000180600000001030030d212f12cd212df57000000000000062a0000000000000009dacd73f0c0a869de01bbec9d000000180610000001030030d212f12cd212df7000000000000000460000000000000001dacd73f0c0a869de01bbec9e000000180610000001030030d212f12cd212df7d000000000000011c0000000000000002b7e867dec0a86a390050c78b000000180600000001030030d212f12cd212ea4a00000000000017b8000000000000000478dd41e9c0a85b5801bbe96d000000180600000001030030d212f12cd212e71f00000000000000400000000000000001671a0299c0a8772f0050d09a000000180600000001030030d212f12cd212eb19000000000000004000000000000000013a355eadc0a8786b0050fd27000000180600000001030030d212f12cd212dec500000000000002780000000000000002ddb0424cc0a86a3b03e1e144000000180600000001030030d212f12cd212df4700000000000041590000000000000010b7e8e7acc0a8594b01bb097b000000180600000001030030d212f12cd212e6f000000000000042680000000000000012b7e8e7acc0a8594b01bb097d000000180600000001030030d212f12cd212e6e800000000000000400000000000000001dfca131fc0a8b4100050d0a1000000180600000001030030d212f12cd212e75d00000000000000460000000000000001b7e818dbc0a85a010050c970000000180600000001030030d212f12cd212b3c800000000000002480000000000000002757ad906c0a872600050e7d9000000180600000001030030d212f12cd212e41500000000000000400000000000000001dacd5211c0a876540050e4db000000180600000001030030d212f12cd212de9600000000000001aa0000000000000003785c20fdc0a8be3b0050ffcc000000180600000001030030d212f12cd212debc00000000000000800000000000000002c33e3450c0a86a40cc0b2a0b000000180600000001030030d212f12cd212ea9400000000000000400000000000000001785c20fdc0a8be3b0050ffd6000000180600000001030030d212f12cd212eabb0000000000000aeb00000000000000043a355e9ec0a8786b0050fd5c000000180620000001030030d212f12cd212df8a000000000000091b000000000000000270111be7c0a8581b0050c2db000000180600000001030030d212f12cd212ea7400000000000001c700000000000000042a9c8cdec0a85acf0050dd14000000180600000001030030d212f12cd212e73800000000000003b50000000000000006cbd0335ac0a8726e01bbce190000001806000000


以上字节流,经过协议分解后如下:

 

 

0009		版本
001c		数据流包总数量(模板、信息、可选模板),一共28个数据流
d2132688	设备启用后的运行时间,毫秒
5910ab99	输出数据包从输出器发出后经历的时间,秒
00048b35	序列号,自增
00000002	sourceId
0000		0表示为模板数据流
003c		数据流的长度 60,包括自身,即当前这个模板数据流的总长度
0103		模板数据流的编号,0-255预留给模板、可选数据流使用,256-65535为信息数据流使用
000d		该模板的字段数量13个
===================字段定义开始=====================
0015		字段类型,参照具体字段含义解释
0004		该字段的长度
0016
0004
0001
0008
0002
0008
0008
0004
000c
0004
0007
0002
000b
0002
000a
0004
0004
0001
0005
0001
003d
0001
00d2
0001
===================字段定义结束=====================
===================信息数据流开始===================
0103		信息数据流使用的模板编号
0030		当前这个信息数据流的总长度 48,减去前面以及自身4个字节,后续还有44个字节,这44个字节的定义参照上述模板数据流里的字段定义
d212f12c    该字段的type为21,4个字节
d212e333
0000000000005c9f
0000000000000013
ddb043e2
c0a8732d
03e1
ed7d
00000018
06
00
00
00
===================信息数据流结束===================
===================信息数据流开始===================
0103
0030
d212f12c
d212e698
0000000000000301
0000000000000002
739f8194
c0a8726e
01bb
ce13
00000018
06
00
00
00
===================信息数据流结束===================
下面依次类推,攻击28个信息数据流
………………
0103
0030
d212f12c
d212ea74
00000000000001c7
0000000000000004
2a9c8cde
c0a85acf
0050
dd14
00000018
06
00
00
00

 

 

 

 

 

以上内容即完整的netflow V9数据流的协议分解,帮助更好的理解数据协议的组成。

 

 


http://chatgpt.dhexx.cn/article/6hwuxXyu.shtml

相关文章

NETFLOW 与 SNMP两种不同的网络监控方法

SNMP(简单网络管理协议)和Netflow都是管理员常用的协议,因其能够提供网络可见性以及在某些情况下识别网络性能问题、网络瓶颈、系统资源分配问题等的原因而备受赞誉。在Netflow方面,像ManageEngine这样的第三方软件供应商可以极大…

NetFlow Analyzer无线网络管理

无线网络在机构中变得更加重要,因为它们越来越多地采用自带设备 (BYOD) 文化。机构环境中设备数量的增加使得保持最佳互联网性能变得困难。虽然有线网络监控很重要,但也有必要监控无线网络,因为它们更重要。 无论是处理安全问题还是网络性能…

网络协议之Netflow与sFlow协议

《NetFlow 与sFlow理解及比较》 (注:本文是个人对两种协议的理解,没有太多概念性的东西,适合对两种协议有一些基本了解的同学阅读。当然,本人知识有限,文章中的内容不保证没有知识错误,如若发现…

linux下netflow软件,NetFlow Analyzer下载

NetFlow Analyzer官方版是一款高效实用的网站流量监控软件,NetFlow Analyzer最新版功能强悍,为用户带来了强大的流量构成、协议分布和用户活动分析功能,NetFlow Analyzer软件支持多种Flow格式,可解析多达100K Flow/秒的大流量数据…

Netflow相关技术

数据包和数据流 数据包是网络中传输的数据单位,每个数据段经过网络层层封装成为-个可以在网络中流动的包, 从源头到达目的地之后,被目标设备层层解析出来,获得里面的数据。 数据流是一个有序的数据包系列,它需要用一定的顺序进行读取。可以认为,数据流是…

Netflow及其及配置案例

NetFlow 是Cisco发布的一款用于分析网络数据包信息的工具包; 根据不同的需要定制不同的方案; 典型的是对网络数据的源地址、目的地址的分析,对流量各种应用的分析或者路由器上各个端口的负载等; addr、dstaddr、port、dstport、pr…

路由器安全-NetFlow

1、NetFlow介绍 提供高层次的诊断,分类和识别网络异常。使用NetFlow来检查哪些行为改变明显的攻击是非常有效的。就像Wiretap一样捕获数据包。NetFlow像电话账单。(谁和谁在通话,通过什么协议和端口,多长时间,速度如何…

NetFlow学习笔记

NetFlow是一种数据交换方式。Netflow提供网络流量的会话级视图,记录下每个TCP/IP事务的信息。也许它不能象tcpdump那样提供网络流量的完整记录,但是当汇集起来时,它更加易于管理和易读。Netflow由Cisco创造。 工作原理:NetFlow利用…

Tableau基础操作——连接数据源

Tableau基础操作——连接数据源 Tableau基础操作——连接数据源 前言 随着大数据时代的到来,借助于数据分析工具深入分析并可视化呈现变得越来越重要。而Tableau以其低功能强大且学习成本低被越来越多的企业所使用 一、Tableau是什么 Tableau可以方便用户实现快速…

BW系列之数据源

SAP BI 的数据源不局限于SAP 系统,所有向SAP BI 传输数据的系统都称为源系统。几乎任何来源的数据可被用来在SAP BI 中进行数据抽取。如下图所示, 1. 源系统的类型 源系统的主要类型包括以下几种: 1) SAP 系统,如SAP R/3, SAP ERP, SAP CRM, …

SpringBoot动态切换数据源

1、配置文件中配置多个数据库连接 # mysql配置 spring.datasource.local.jdbc-urljdbc:mysql://192.168.1.115:3308/cq_njdd?useUnicodetrue&characterEncodingutf-8&useSSLfalse&serverTimezoneAsia/Shanghai spring.datasource.local.usernameroot spring.data…

springboot jpa 多数据源配置

1.yml多数据源配置 amdb,josdb,josdbqy,分别为自定义数据源名称,type指定数据源使用的连接池。 2.新建类DataSourceProperties用于读取yml文件中的自定义数据源属性 Component public class DataSourceProperties {Value("${spring.datasource.am…

Spring Boot使用动态数据源

文章目录 前言一、什么是动态数据源二、动态数据源实现1.实现原理2.实现过程 前言 有这样一个场景,现在要开发一个数据API功能,用户自己编写数据源脚本,在界面任意选择一个数据源,可选择的数据源列表中数据源类型是多样的&#x…

SpringBoot整合MybatisPlus多数据源

相信在很多使用MybatisPlus框架的小伙伴都会遇到多数据源的配置问题,并且官网也给出了推荐使用多数据源 (dynamic-datasource-spring-boot-starter) 组件来实现。由于最近项目也在使用这个组件来实现多数据源切换,因此想了解一下该组件是如何运行的&…

Springboot/MybatisPlus动态切换数据源

1.1 简述 最近项目中有动态切换数据源需求,主要是要动态切换数据源进行数据的获取,现将项目中实现思路及代码提供出来,供大家参考。当然切换数据源还有其他的方式比如使用切面的方式,其实大体思路是一样的。 1.2 设计思路与代码…

Spring数据源配置

目录 Spring相关的API ApplicationContext的继承体系 ApplicationContext的实现类 getBean()方法使用 Spring配置数据源(连接池) 数据源的开发步骤 加载配置文件方式创建 将DateSource的创建权交给Spring容器去完成 抽取jdbc配置文件 Spring相关的API ApplicationContex…

Java 动态数据源配置

目录 一、动态数据源介绍 1. AbstractRoutingDataSource 2. 实现逻辑 二、源代码 1. 修改配置文件类 2. 创建数据源枚举 3. 数据源切换处理 4. 继承AbstractRoutingDataSource 5. 注入数据源 6. 自定义多数据源切换注解 7. AOP拦截类的实现 8. 使用切换数据源注解 …

SpringBoot实现多数据源配置

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: SpringBoot实现多数据源配置 ⏱️ 创作时间: 2022年06月13…

SAP 数据源

SAP BW或者BI作为数据仓库会抽取SAP系统数据和非SAP系统数据,源系统的主要类型有以下几种: 1、SAP系统:R/3、S/4、CRM、等, 2、文本文件:将数据库转化为XML或者CSV文件放在FTP上,然后去读取数据&#xf…

Python使用tsne进行高维数据可视化实战:二维可视化、三维可视化

Python使用tsne进行高维数据可视化实战:二维可视化、三维可视化 # 绘制二维可视化图像并添加标签字符函数 def plot_embedding(data, label, title):x_min, x_max = np.min(data, 0), np.max(data, 0)data = (data - x_min) / (x_max - x_min)fig = plt.figure()ax = plt.s…