Increasing the flow-eviction threshold

The threshold is a type of limit on the number of flows that are cached in the kernel. OVS will handle as many flows as can be processed through ovs-vswitchd.

If the number of newly created connections reaches this limit, in a 5 second window, OvS attempts to keep the memory consumption under the limit by evicting older flow entries.

It is possible to increase this flow-eviction threshold. This is the recommended first step to resolve issues related to the number and frequency of flow entries being created,

To set the flow-eviction-threshold enter the following:
ovs-vsctl set bridge <bridgename> other-config:flow-eviction-threshold=<new value>

To query whether the flow-eviction-threshold was set explicitly:
ovs-vsctl get bridge <bridgename> other-config:flow-eviction-threshold

Customers can use the active flow-eviction-threshold value to evaluate the current number of active flows by using the following command:
watch -n 1 ovs-dpctl show

This command prints out the bridge statistics every second, until the process is ended.

The flows counter displays the actual number of current flow entries. If the number of flows approaches the flow-eviction-threshold, OvS has to deal with a lot of flow creations and deletions. In this case increasing the flow-eviction-threshold should help address the issue.

Increase idleTimeout & hardTimeout

The idleTimeout is basically a value that determines how long a flow 
in a switch will last if it doesn't match any traffic.   So if I have 
a flow in a switch with an idleTimeout of 5 seconds that matches all 
ICMP traffic on a given switch port, then as long as ICMP traffic is 
entering that switch port, that flow will continue to exist.  If no 
ICMP traffic goes through the switch port for 5 seconds, the flow will 
timeout, and it will be removed from the switch.

The hardTimeout, on the other hand, is a hard limit on how long a 
given flow can exist in the switch.  If I have a flow in a switch with 
a hardTimeout of 5 seconds that matches all ICMP traffic on a given 
switch port, then even if ICMP traffic is continuously entering the 
switch port, that flow will time out after 5 seconds and it will be 
removed from the switch.

"If both idle_timeout and hard_timeout are zero, the entry is 
considered permanent and will never time out"

The idle age is simply how long the flow has not matched any packets. If the idle age is reported at 12, then that means the flow has not matched any packets in 12 seconds. This will be reset automatically back to zero by the switch as soon as the flow matches a packet. The idle age is what triggers an idle timeout if there is an idle timeout set.

Linux openvswitch性能调优的更多相关文章

  1. Linux openvswitch 性能调优-flow-eviction-threshold

    原文:https://www.cnblogs.com/scottieyuyang/p/5683656.html Increasing the flow-eviction threshold The t ...

  2. 20个Linux服务器性能调优技巧

    Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要 ...

  3. [转]20个你不得不知的Linux服务器性能调优技巧

    Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要 ...

  4. linux的性能调优

    单机调优: 分析性能瓶颈的原因,解决它.   cpu子系统 内存子系统 IO子系统 网络系统       @cpu子系统调优 cpu技术指标 xeon E5520 2.27GHz 8192kb # c ...

  5. Linux内存 性能调优

    内存是影响Linux性能的主要因素之一,内存资源的充足与否直接影响应用系统的使用性能. free命令:监控Linux内存使用状况. 由上图可知,空闲内存是free+buffers+cached=155 ...

  6. [转载] 高流量大并发Linux TCP 性能调优

    原文: http://cenwj.com/2015/2/25/19 本文参考文章为: 优化Linux下的内核TCP参数来提高服务器负载能力 Linux Tuning 本文所面对的情况为: 高并发数 高 ...

  7. Linux系统内核性能调优

    做过Linux平台性能测试的童鞋平时可能会遇到如下问题: 1. TCP端口号不够用导致并发上不去(即与服务器端建立新连接失败) 2. TIME_WAIT状态连接过多导致应用服务器(Nginx.Hapr ...

  8. linux 服务器性能调优总结

    1.性能分析的几个方面 https://blog.csdn.net/w174504744/article/details/53894127 2.cpu 性能分析工具 perf https://blog ...

  9. linux上性能调优常用命令及简介

    1.综合命令:nmon.top:topas(aix) d :磁盘相关 c:cpu相关 m:内存相关 2.磁盘 2.1 测试顺序写性能dd if=/dev/zero of=/cdr/test.data ...

随机推荐

  1. 在GNU/Linux下设置与定时更换桌面壁纸

    1 简介 在电脑桌面设置一组可以定时更换的壁纸已经不是什么新奇的功能了.比如,Windows 7.KDE桌面环境都可以实现这样的效果.可是,自己目前使用的Debian系统并未安装KDE.GNOME这样 ...

  2. robotium如何定位控件?

    search类获取当前所有的view,然后根据类型或者文本去筛选,找到view后获取坐标,然后点击坐标.本质都是通过坐标点击.solo.clickonScreen方法,底层调用MotionEvent类 ...

  3. 重读The C programming Lanuage 笔记四:c预处理

    C预处理器执行宏替换.条件编译以及包含指定的文件.以#开头的命令行就是与处理器的对象.这些命令行的语法独立于语言的其他部分,它们可以出现在任何地方,其作用可延续到所在编译单元的末尾(与作用域无关).行 ...

  4. spring No adapter for handler 错误

    为了实现controller对JSON数据的自动解析,在spring-mvc.xml文件中增加了 <bean class="org.springframework.web.servle ...

  5. 运用bootstrap框架的时候 引入文件的问题

    还要下个jquery,因为bootstrap的js是用jquery写的如果在同一个目录下<html><head><link href="css/bootstra ...

  6. 微信小程序入门——Mustache语法学习

    微信小程序中用到了大量Mustache语法,特发此文学习一下 1.简单的变量调换:{{name}} 1 var data = { "name": "Willy" ...

  7. 数据库及SQL优化

    一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的. ...

  8. Linux系统安装rar压缩软件

    将 hebaodans.com 目录打包为 hebaodans.rar # rar a hebaodans.rar ./hebaodans.com/ 解压 hebaodans.rar 到当前目录 # ...

  9. CodeForces 703A Mishka and Game

    简单题. #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> #inclu ...

  10. java web部署问题

    将maven项目转化成web 项目的过程中,出现了许多问题,下面进行总结,首先是tomcat问题,tomcat的配置,如果在eclipse中开启了tomcat,页面无法展示,此时是环境路径配置不对,应 ...