NetFlow学习总结

标签: netflow


由于工作需要,对NetFlow做了一些学习和调研,并总结成文档以供学习分享。


背景:随着系统的升级与漏洞的修补,入侵主机进而进行破坏的病毒攻击方式在攻击中所占比例逐渐减少,这些攻击转而改为恶意的消耗网络有限的资源或占用系统,进而破坏系统对外提供服务的能力;但传统的系统升级无法检测并预防此类攻击。

针对此类攻击,业界提出了以检测网络数据流的方法来判断网络异常和攻击:借助实时的检测网络数据流信息,通过与历史记录模式匹配(判断是否正常)、或者与异常模式匹配(判断是否被攻击),让网络管理人员可以实时查看全网的状态,检测网络性能可能出现的瓶颈,并进行自动处理或告警显示,以保证网络高效、可靠地运转。

1、什么是NetFlow

NetFlow是由Cisco创造的一种流量轮廓监控技术,简单来说就是一种数据交换方式。Netflow提供网络流量的会话级视图,记录下每个TCP/IP事务的信息,易于管理和易读。

2、NetFlow版本

  1. Netflow V1:为Netflow技术的第一个实用版本。在如今的实际网络环境中已经不建议使用。
  2. Netflow V5:增加了对数据流BGP AS信息的支持。
  3. Netflow V7:思科Catalyst交换机设备支持的一个Netflow版本,需要利用交换机的MLS或CEF处理引擎。
  4. Netflow V8:增加了网络设备对Netflow统计数据进行自动汇聚的功能,可以大大降低对数据输出的带宽需求。
  5. Netflow V9:一种全新的灵活和可扩展的Netflow数据输出格式,采用了基于模板(Template)的统计数据输出。方便添加需要输出的数据域和支持多种Netflow新功能,如Multicast Netflow,MPLS Aware Netflow,BGP Next Hop V9,Netflow for IPv6等。

3、NetFlow用途

利用Netflow技术可以监测网络上的IP Flow信息

IP Flow信息,可以回答用户的下面问题(5W1H):

  • who:源IP地址
  • when:开始时间、结束时间
  • where:从哪:From(源IP,源端口)、到哪:To(目的IP,目的端口)
  • what:协议类型,目标IP,目标端口
  • how:流量大小,流量包数
  • why:基线,阈值,特征

采集到的netflow流量信息可以帮助进行:

  • 网络行为分析
  • 业务访问情况分析
  • 网络规划
  • 流量计费
  • 病毒检测
  • 等等

4、NetFlow工作原理

首先先创建一个缓冲流NetFlow cache

NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存

随后进行两大职能

  1. 同样的流,直接从缓存读,不走路由表
  2. 缓存同时也进行了统计

5、NetFlow七元组

NetFlow使用七元组来区分每一个Flow,包括以下字段:

  • 源IP地址
  • 源端口号
  • 目的IP地址
  • 目的端口号
  • 协议类
  • 服务种类
  • 输入接口

七元组的实际含义:

  • 如果两段流量,其七元组都相同,就认为是一个流。
  • 如果两段流量,其七元组至少有一个不同,就是不同的流

6、NetFlow数据格式

一个NetFlow流定义为在一个源IP地址和目的IP地址间传输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。

基于NFC采集的网络流量数据如下:

61...68|61...195|64917|Others|9|13|4528|

数据中各字段的含义如下:

源地址|目的地址|源自治域|目的自治域|流入接口号|流出接口号|源端口|目的端口|协议类型|包数量|字节数|流数量

7、NetFlow优点

  1. NetFlow采集实施成本较低、安装方便。
  2. NetFlow的非常适用于大型网络。
  3. NetFlow记录的流包含了丰富的信息,非常适合于网络性能分析。

NetFlow学习总结相关推荐

  1. NetFlow学习笔记

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

  2. Netflow相关技术

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

  3. Yann LeCun:深度学习硬件前瞻

    Yann LeCun被大家誉为"卷积神经网络之父",该技术助推了人工智能在Google.Facebook等公司的发展,在此之外,LeCun也已经不再局限于扎根算法领域.正如那些开发 ...

  4. 《异常检测——从经典算法到深度学习》5 Opprentice——异常检测经典算法最终篇

    <异常检测--从经典算法到深度学习> 0 概论 1 基于隔离森林的异常检测算法 2 基于LOF的异常检测算法 3 基于One-Class SVM的异常检测算法 4 基于高斯概率密度异常检测 ...

  5. SDN软件定义网络 学习笔记(4)--数据平面

    SDN软件定义网络 学习笔记(4)--数据平面 1. 简介 2. SDN数据平面架构 2.1 传统网络交换设备架构 2.2 SDN交换设备架构 2.3 数据平面架构图 3. SDN芯片与交换机 3.1 ...

  6. netflow generator: 开源工具nfgen的源码研读和修改(上)

    nfgen的修改 工欲善其事,必先利其器. 最近在做nfdump-nfcapd的测试,需要以网卡线速度(10Gbit/s)发netflow的UDP数据包,需要支持netflow v5.v9,最好能自己 ...

  7. 网络虚拟化NSX学习笔记

    网络虚拟化NSX学习 第一章VMware NSX 6.2简介 1.1 数据中心演化趋势 软件定义数据中心SDDC(私有云) 1.演化趋势 1)Apple Store式的IT服务 2)期望自服务:web ...

  8. Logstash学习

    写在前面:本文是学习总结内容,侵犯到别的文章,在这里说声抱歉~~ 一.基础知识 1.Hello World 运行 在终端中,像下面这样运行命令来启动 Logstash 进程: bin/logstash ...

  9. 网络安全设备概念的熟悉和学习

    什么是网络安全? 网络安全技术有哪些? Web应用防火墙(WAF) 为什么需要WAF? 什么是WAF? 与传统防火墙的区别 WAF不是全能的 入侵检测系统(IDS) 什么是IDS? 跟防火墙的比较 部 ...

最新文章

  1. Yahoo javascript 开源界面库YUI 和EXT
  2. JVM基础(6)-常用参数总结
  3. 前端学习(130):HTML和CSS发展历史
  4. android 禁用剪切板_如何阻止应用程序阅读Android剪贴板以保护您的隐私
  5. fzu 2037 Maximum Value Problem
  6. 企业级PHP后台开发框架
  7. 视频教程-Python实现自己的分布式区块链视频教程-区块链
  8. 前装车载导航搭载率突破50%,谁在领跑背后的导航引擎
  9. scala安装与配置
  10. Burpsuite的CA证书安装
  11. 中央电大 c语言程序设计a 试题,中央电大开放本科计算机科学与技术专业C语言程序设计(A)试题_1007...
  12. 如何快速制作App应用软件?国内有哪些比较好用的App制作平台?
  13. 1000句英语经典口语(4)
  14. DSP CCS3.3安装问题与解决方案
  15. ClickHouse中文官方文档
  16. 提交给移动三个wap游戏,终于通过了一个
  17. Chapter 2、不使用代理
  18. Unity Animation动画时间设置
  19. 微信小程序、小游戏,组件化开发框架wepy开发资源汇总分享
  20. 绝对定位和相对定位的区别(详解)

热门文章

  1. 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补
  2. 山东大学计算机科学与技术专业全国排名,全国计算机专业大学排名
  3. ArcGIS空间校正和地理配准
  4. Java设计模式之(十二)——观察者模式
  5. 机器学习——神经网络、深度学习 知识点总结 及 面试题汇总
  6. 如何安装虚拟机linux
  7. 在Vivado下如何判断芯片是多die芯片-关于SSI的多方面解答
  8. Redis集群搭建失败 connected_slaves:0
  9. pytorch Tensor及其基本操作
  10. 笔记 | 产品经理必懂的技术(五)