天天看點

Openvswitch手冊(3): sFlow, netFlow

Openvswitch手冊(3): sFlow, netFlow
Openvswitch手冊(3): sFlow, netFlow
Openvswitch手冊(3): sFlow, netFlow

這一節,我們重點看sFlow

采樣流sFlow(Sampled Flow)是一種基于封包采樣的網絡流量監控技術,主要用于對網絡流量進行統計分析。

sFlow系統包含一個嵌入在裝置中的sFlow Agent和遠端的sFlow Collector。其中,sFlow Agent通過sFlow采樣擷取本裝置上的接口統計資訊和資料資訊,将資訊封裝成sFlow封包,當sFlow封包緩沖區滿或是在sFlow封包緩存時間(緩存時間為1秒)逾時後,sFlow Agent會将sFlow封包發送到指定的sFlow Collector。sFlow Collector對sFlow封包進行分析,并顯示分析結果。

Openvswitch手冊(3): sFlow, netFlow
Openvswitch手冊(3): sFlow, netFlow

sFlow agent :

  • An sFlow agent is a switch or router through which the traffic to be monitored is flowing.
  • This is the device that performs the sampling, and sends the sampled data to one or more sFlow collectors.

sFlow collector

The sFlow collector is a software application, running on a workstation or server, that collects the traffic data from a number of sFlow agents, stores the data, analyses it, and presents the analysis to the network administrator.

sFlow Agent 提供了兩種采樣方式供使用者從不同的角度分析網絡流量狀況:

Flow 采樣:

Flow 采樣是sFlow Agent 裝置在指定端口上按照特定的采樣方向和采樣比對封包進行采樣分析,用于擷取封包資料内容的相關資訊,Flow 采樣支援擷取的采樣資訊如表所示。該采樣方式主要是關注流量的細節,這樣就可以監控和分析網絡上的流行為。

Openvswitch手冊(3): sFlow, netFlow

Counter采樣:

Counter采樣是sFlow Agent裝置周期性的擷取接口上的流量統計資訊,Counter采樣支援擷取的采樣資訊如表所示。與Flow采樣相比,Counter采樣隻關注接口上流量的量,而不關注流量的詳細資訊。

Openvswitch手冊(3): sFlow, netFlow

Flow采樣和Counter采樣是兩種互相獨立的采樣,兩者互相沒有影響。但是由于采樣的方式不一樣,擷取的資訊次元也不一樣,Flow方式更聚焦于具體的流的分析,可以搜集具體業務的相關資料。而Counter方式更聚焦于接口的統計資訊,對于整體的網絡狀态監控比較有意義。

企業兩個網絡Network1 與Network2 之間通過SwitchA 互發流量。網絡維護人員需要監控接口的流量資訊、轉發情況以及裝置的整體運作狀況,及時發現異常流量,進而保證網絡的正常穩定運作.

在SwitchA 上運作sFlow Agent,通過在GE1/0/2 上開啟sFlow 采樣功能(包括Flow 采樣和Counter 采樣),sFlow Agent 能夠将采集到的流量統計資訊通過sFlow 封包從GE1/0/1 發向sFlow Collector,然後sFlow Collector 根據收到的sFlow 封包中攜帶的流量資訊,将網絡流量狀況顯示出來。進而實作對GE1/0/2 接口流量資訊的監控。

我們使用http://www.inmon.com/products/sFlowTrend.php

sFlowTrend

sFlowTrend™ is a free, graphical network and server monitoring tool.

配置如下:

$ sudo ovs-vsctl -- --id=@sflow create sflow agent=vnet8  target=\"16.99.68.93:6343\" header=128 sampling=512 polling=10 -- set bridge helloworld sflow=@sflow

56f701a2-1445-4cbf-964d-37ab8bc5da87

$ sudo ovs-vsctl list sflow

_uuid               : 56f701a2-1445-4cbf-964d-37ab8bc5da87

agent               : "vnet8"

external_ids        : {}

header              : 128

polling             : 10

sampling            : 512

targets             : ["16.99.68.93:6343"]

sudo ovs-vsctl remove bridge helloworld sflow 56f701a2-1445-4cbf-964d-37ab8bc5da87

sudo ovs-vsctl -- clear Bridge helloworld sflow

Openvswitch手冊(3): sFlow, netFlow

同理我們可以配置NetFlow和IPFIX

Openvswitch手冊(3): sFlow, netFlow