sFlow监控技术及Collector工具概述

7 篇文章 0 订阅
2 篇文章 0 订阅

sFlow技术及Collector工具概述

1.1 sFlow概述

sFlow是Sampled Flow的简称,是一种用于监控数据网络上交换机或者路由器流量转发状况的技术。sFlow系统包含一个嵌入在设备中的sFlow Agent和远端的sFlow Collector。分工如下:
在这里插入图片描述
sFlow可参考资料清单:
在这里插入图片描述

1.2 sFlow agent基本原理

sFlow Agent是sFlow的客户端设备,在一个典型的部署sFlow的网络中,一般是内嵌于网络转发设备中(比如交换机和路由器),负责获取本设备上的接口统计信息和数据信息,将信息封装成sFlow报文并实时发送给sFlow Collector以供分析使用。
sFlow agent 对象类如下:
在这里插入图片描述
需要注意的是:Receiver对象将流和计数器样本编码为UDP数据报,以发送到目标主机/端口,并且一个Receiver对应一个目的ip+port(因为收集的监控数据可能发给不同的collector)。——也就是说Receiver是sflow agent的一部分,不是collector的一部分。

1.2.1 sFlow采样报文格式

采用UDP封装,缺省目的端口号为知名端口6343。sFlow报文共有4种报文头格式,分别为Flow sample、Expanded Flow sample、Counter sample、Expanded Counter sample。
在这里插入图片描述
sFlow提供了两种采样方式,供用户从不同的角度分析网络流量状况,即Flow采样和Counter采样。
① Flow采样:——涉及到流,比较细的内容,Sampler+Receiver
Flow采样是sFlow Agent设备在指定端口上按照特定的采样方向和采样比对报文进行采样分析,并将流的源接口和目标接口,采样的数据包头,原始数据包长度,数据包总数,与采样的数据包相关联的转发决策以及来自该数据包的其他关键信息组合到了sFlow数据报中,并将分析的结果通过sFlow报文发送到Collector设备的过程。
其采样报文中主要包括:Raw packet(原始报文的全部或一部分)、Ethernet Frame Data(解析报文的Ethernet头信息,将解析数据封装到sFlow报文中发送给Collector)、IPV4 Data(解析头信息、封装)、IPV6 Data(解析头信息、封装)、NAT、URL、Router(路由转发)、MPLS等。具体再搜索细化。此外,Flow采样又分为固定采样和随机采样。差别在于采样间隔。
采样过程:因此,典型的序列(对于接口仅输入采样)为:
1.从硬件接收一个样本。
2.查看输入接口,并使用该编号使用sfl_agent_getSamplerByIfIndex()查找采样器。
3.用包头和转发信息填充SFLFlowSample实例。
4.用sfl_sampler_writeFlowSample()将它提交给采样器。
在这里插入图片描述
② Counter采样:——涉及到接口,与流无关,Poller+Receiver
Counter采样是sFlow Agent设备周期性的获取接口上的流量统计(即收集时间采样计数器,ps:对于入/出口流量字节等都是只增不减的数据类型,应当是Counter采样的结果),并将这些统计信息通过sFlow报文发送给Collector设备的过程。主要包括:Generic Interface Counters(通用接口指标,从名称上来看就是SNMP的一些指标)、Ethernet Interface Counters(以太网相关的流量信息)、Processor Information(统计设备CPU占用率、内存等情况)。
在这里插入图片描述
③ 总结:
Flow采样和Counter采样是两种相互独立的采样,两者互相没有影响。但是由于采样的方式不一样,获取的信息维度也不一样,Flow方式更聚焦于具体的流的分析,可以搜集具体业务的相关数据。而Counter方式更聚焦于接口的统计信息,对于整体的网络状态监控比较有意义。

1.2.2 sFlow数据报编码

流样本和计数器样本被编码到下一个数据包的缓冲区中。
sFlow数据报由一个报头和一个或多个FLOW或COUNTER样本组成。 Receiver对象了解如何进行XDR编码,并将数据打包到连续的缓冲区中,以便可以在下一个数据报中将其发送出去。
当没有空间容纳下一个样本或延迟1秒后,接收器使用回调发送数据包,然后开始构建下一个样本。
在这里插入图片描述

1.2.3 源代码文件

在这里插入图片描述

1.3 inMon产品

1.3.1概述

sFlow是一种流行的行业标准技术,用于监视网络流量。
Traffic Sentinel提供实时网络可见性,以管理大型复杂网络。(需要购买)
sFlowTrend是一个免费的图形化 sFlow收集器。许多网络设备都能够生成sFlow,并且可以使用sFlowTrend进行监视。
sFlowTrend-Pro扩展了sFlowTrend的免费版本,增加了历史数据的存储,并能够一次监视多个网络交换机。(需要购买)
sFlow-RT是用于软件定义网络(SDN)堆栈的实时sFlow分析引擎。
Hyper-V Agent是用于Microsoft Hyper-V的功能齐全的sFlow代理,包括对Hyper-V虚拟交换机(在Windows Server 2012上运行)的sFlow监视以及物理和虚拟主机监视。

1.3.2 sFlow Trend

优点:sFlow Trend是一个免费的图形网络和服务器监视工具,它利用网络带宽实时显示顶级用户和应用程序。sFlowTrend还使用sFlow标准的扩展来监视物理和虚拟服务器性能,链接网络,服务器和应用程序性能,并提供网络系统性能的终端视图。
缺点:最多五个交换机或主机的sFlow数据,并将一小时的数据存储在内存中。

1.3.3 sFlow Trend-Pro

优点:sFlow Trend-Pro建立在sFlow Trend之上,对其进行了扩展以允许保留历史流量信息,并同时监视数十个网络交换机。它不会限制可以监视的交换机或主机的数量,并将历史数据存储到磁盘。
缺点:需要购买。

1.3.4 sFlow-rt

在这里插入图片描述
sFlow-RT™融合了InMon的异步分析技术(美国专利8838774、9509583、9712443、9722926),为软件定义网络(SDN)、DevOps(包括Grafana)和编排堆栈提供实时可见性,并支持新的性能感知应用程序,如负载平衡、DDoS保护和工作负载分配。

sFlow- rt分析引擎接收来自嵌入在网络设备、主机和应用程序中的sFlow代理的连续遥测数据流,并将其转换为可操作的指标,可通过RESTflow®API访问。RESTflow API使配置定制的度量、检索度量、设置阈值和接收通知变得很容易。
应用程序可以是外部的,用任何支持HTTP/REST调用的语言编写的,也可以是内部的,使用sFlow-RT的嵌入式JavaScript/ECMAScript。
通过将网络、主机和应用程序监视结合在一个集成的分析管道中,sFlow-RT提供了对应用程序、服务器和维持性能所需的网络资源的可见性。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值