OVS sflow(二十六)
采样流sFlow(Sampled Flow)是一种基于报文采样的网络流量监控技术,主要用于对网络流量进行统计分析。sFlow 系统包含一个嵌入在设备中的sFlow Agent 和远端的sFlow Collector。其中,sFlow Agent 通过sFlow 采样获取本设备上的接口统计信息和数据信息,将信息封装成sFlow 报文,当sFlow 报文缓冲区满或是在sFlow 报文缓存时间超时后,sFlow Agent 会将sFlow 报文发送到指定的sFlow Collector。sFlow Collector 对sFlow 报文进行分析,并显示分析结果,组网图如下:
一、sflow 初始化
SFlow 的配置入口函数是bridge_configure_sflow(),该函数创建SFlow 相关的数据区并初始化相应配置,形成的主要数据结构如下:
二、sflow 流表生成
sflow 的实现是在用户态生成sflow 的流表并配置到内核datapath,内核完成数据采样,发送到用户态,然后有上层sflow agent 发送到collector。sflow 在用户态生成sflow 的流表。流表生成的代码调用流程add_sflow_action()->compose_sflow_cookie()->compose_sample_action(),生成OVS_ACTION_ATTR_SAMPLE 类型的action,主要代码如下:
三、sflow内核处理
sflow在内核执行action的时候处理,入口函数do_execute_actions()->sample(),代码如下,如果是最后一个action,调用output_userspace()发送数据到用户空间;否则把该action加入到队列中等待执行,代码如下:
四、sflow 消息处理
内核datapath 采样的数据通过netlink 发送到用户空间的vswithd 进程,接收函数为recv_upcalls(),调用process_upcall()函数进入核心处理流程,其中对SFLOW_UPCALL 分支的处理就是sflow 的入口,处理函数dpif_sflow_received(),核心流程如下:
原文链接:https://www.sdnlab.com/my_sdnlab/wp-content/uploads/2017/02/cntctfrm_1a5b490b5708a374ad0d207df48ec29e_Openvswitch%E6%BA%90%E7%A0%81%E9%98%85%E8%AF%BB%E7%AC%94%E8%AE%B0.pdf
OVS sflow(二十六)相关推荐
- 2021年大数据Hadoop(二十六):YARN三大组件介绍
全网最详细的Hadoop文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 本系列历史文章 前言 Yarn三大组件介绍 ResourceManager No ...
- 模板方法模式 Template method 行为型 设计模式(二十六)
模板方法模式 Template method 上图为网上百度的一份简历模板截图 相信大家都有求职的经历,那么必然需要简历,写简历的时候,很可能你会网上检索一份简历模板,使用此模板的格式,然后替换为你的 ...
- 窗口消息——Windows核心编程学习手札之二十六
窗口消息 --Windows核心编程学习手札之二十六 Windows允许一个进程至多建立10000个不同类型的用户对象(user object):图符.光标.窗口类.菜单.加速键表等,当一个线程调用一 ...
- OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope
OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...
- 2008R2Win7管理二十六ADRMS客户端使用及侦错
2008R2Win7管理二十六ADRMS客户端使用及侦错 预计我以后都没太多时间专研新技术和写文啦,尽量挤时间吧,有一篇放一篇吧,呵呵 本篇介绍在win7客户端使用adrms来进行权限管理和侦错,在使 ...
- SAP UI5 初学者教程之二十六 - OData 服务配合 Mock 服务器的使用步骤详解试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 ...
- 微信小程序把玩(二十六)navigator组件
微信小程序把玩(二十六)navigator组件 原文:微信小程序把玩(二十六)navigator组件 navigator跳转分为两个状态一种是关闭当前页面一种是不关闭当前页面.用redirect属性指 ...
- 第一百二十六节,JavaScript,XPath操作xml节点
第一百二十六节,JavaScript,XPath操作xml节点 学习要点: 1.IE中的XPath 2.W3C中的XPath 3.XPath跨浏览器兼容 XPath是一种节点查找手段,对比之前使用标准 ...
- FreeSql (二十六)贪婪加载 Include、IncludeMany、Dto、ToList
贪婪加载顾名思议就是把所有要加载的东西一次性读取. 本节内容为了配合[延时加载]而诞生,贪婪加载和他本该在一起介绍,开发项目的过程中应该双管齐下,才能写出高质量的程序. Dto 映射查询 Select ...
- 第三百二十六节,web爬虫,scrapy模块,解决重复ur——自动递归url
第三百二十六节,web爬虫,scrapy模块,解决重复url--自动递归url 一般抓取过的url不重复抓取,那么就需要记录url,判断当前URL如果在记录里说明已经抓取过了,如果不存在说明没抓取过 ...
最新文章
- 管理类业务系统菜单部分美化经验分享,把所有好的东西拿过来拼凑并不容易能形成整体的效果...
- Jeff Dean晒Google Brain团队2017成绩单!
- python空字典对象相当于false吗_python怎么判断某一对象是否为字典
- Solr的函数查询(FunctionQuery)
- 聚集索引和非聚集索引实例
- 压缩备份日志 java_自动压缩备份日志文件到指定备份目录脚本
- python中dataframe合并列名日期到季度_python – 如何在特定日期范围内的pandas列DataFrame中对某些值求和...
- python 图例颜色_python – 来自颜色字典的matplotlib.pyplot scatterplot图例
- 素数个数(信息学奥赛一本通-T1151)
- 试述hadoop生态系统以及每个部分的具体功能_Hadoop在大数据分析中的意义和作用...
- pixel1代android11,Pixel用户吐槽Android 11:升级后性能被劣化
- axios的http拦截
- 窗体分为左右两部分,要求在左边栏点击按钮时,右边动态加载窗体
- WinCam v2.0.0 Windows极简屏幕录像工具单文件版
- 中国微型电动汽车市场趋势报告、技术动态创新及市场预测
- 通过VNC远程连接ubuntu桌面(多种客户端连接方式)
- 更改浏览器语言(firefox, chrome)详细步骤
- 40岁计算机研究生能干什么工作,快四十岁了,还能干点什么?
- 你不可不用的十种Mac装机必备软件
- From Shadow Generation to Shadow Removal (CVPR2021)阅读笔记
热门文章
- python培训费用-python培训费需要多少钱?
- python中怎么输出中文-python中使用print输出中文的方法
- python3语法错误-python-使用Python 3打印时出现语法错误
- python基础30个常用代码大全-Python基础小题汇总
- python类装饰器详解-Python装饰器详解
- python基础题-python基础练习题(一)
- zerodivisionerror什么意思python-python代码里出现是啥意思
- python基础教程第三版豆瓣-Python爬虫入门教程:豆瓣读书练手爬虫
- Intel深度摄像头RealSense D345(实感双目摄像头)和目标检测结合使用
- mysql读写分离和组复制_数据库主从复制,读写分离,负载均衡,分库分表分别表达的什么概念?...