性能测试四十六:Linux 从网卡模拟延时和丢包的实现
Linux 中模拟延时和丢包的实现
使用ifconfig命令查看网卡
Linux 中使用 tc 进行流量管理。具体命令的使用参考 tc 的 man 手册,这里简单记录一下使用 tc 模拟延时和丢包的命令。
ping出来的最小单位为1毫秒,在执行压测之前,最好用压力机ping一下服务器,如果延迟很高,就没必要测了,因为请求还没发出去都已经有一段时间的消耗了
1. 延时
(1)设置延时:给 eth0 设备发包时添加 30ms 的延时(从网卡)。tc qdisc add dev eth0 root netem delay 30ms
(2)显示延时的设置:tc qdisc show
ping一下,看结果
(3) 修改延时:tc qdisc change dev eth0 root netem delay 40ms
(4) 删除延时的配置:tc qdisc del dev eth0 root netem delay 40ms
2. 丢包
设置丢包命令如下:tc qdisc add dev eth0 root netem loss 10%(丢10%的包,这里可以按实际情况设置)
ping一下,每过一段时间就会有一次请求超时,出现概率就是上面设置的概率
如果是通过 SSH 登录设备进行配置丢包的话,配置完这条命令就会感觉到机器访问时有点一卡一卡的。这说明,设备已经开始丢包了,可以通过具体抓包查看。
其他诸如修改、查看、删除的命令,都可以参考上面延时的设置。
不用了一定要删除设置,要不然会一直存在
性能测试四十六:Linux 从网卡模拟延时和丢包的实现的更多相关文章
- linux 模拟延时和丢包
这是 RHCA 中的一个 BDP 的测试,这也是公司很常用的一种延时和丢包的模拟,现在分享给大家. 我们做的应用软件,还有测试 TCP/UDP 对比,测试 BDP 对 TCP/IP 的影响时,我们都 ...
- NeHe OpenGL教程 第四十六课:全屏反走样
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- NeHe OpenGL教程 第四十课:绳子的模拟
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 四十六、android中的Bitmap
四十六.android中的Bitmap: http://www.cnblogs.com/linjiqin/archive/2011/12/28/2304940.html 四十七.实现调用Android ...
- Android简易实战教程--第四十六话《RecyclerView竖向和横向滚动》
Android5.X后,引入了RecyclerView,这个控件使用起来非常的方便,不但可以完成listView的效果,而且还可以实现ListView无法实现的效果.当然,在新能方便也做了大大的提高. ...
- “全栈2019”Java第四十六章:继承与字段
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么
第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么 Sigma协议 Sigma协议是Alice想要向Bob证明一些东西的协议(Alice知道一些秘密).他们有下面的一般范式:Al ...
- Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用
在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理, ...
- abp(net core)+easyui+efcore实现仓储管理系统——入库管理之十(四十六)
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...
随机推荐
- ANSI C、ISO C、Standard C联系与区别
做C语言开发的人,经常会遇到“ANSI C”.“ISO C”与“Standard C”三种术语,经常会让人傻傻分不清楚.博主之前按也是搞不清三者的关系,于是某天下定决心,一定要搞清楚三者的关系,先百度 ...
- eureka ... is an unknown property 在 application.properties 中
问题如图 在application.properties中无法识别eureka 解决方式 (想了想这个好像是在某个依赖里面来的)发现 eureka 是在 某个依赖里面 所以添加了以下之后就解决了 ...
- ubuntu16.04配置anaconda环境
0 - 下载安装包 推荐到清华镜像下载.我选择的是Anaconda3-5.1.0-Linux-x86_64.sh. 1 - 安装Anaconda 然后切换到安装包目录,执行下面命令,期间一直按回车或者 ...
- 关于vue监听dom与传值问题
1. 代码初始化一次执行部分属性为空的情况 原因: 异步加载 + 立马 传值时 直接渲染 dom里面 能实时更新 (无影响) 不能直接dom中渲染(有影响) 解决方法:需要通过监听的方式来处 ...
- vue WepApp 音乐App前的准备
一.安装环境部分 ①.谷歌环境 访问数据自动格式化 Google jsonview插件 ②安装 vue环境 node必须是6.95以上npm必须是3.10以上 node -v 和npm -v 检查版本 ...
- 【转载】TensorFlow学习笔记:共享变量
原文链接:http://jermmy.xyz/2017/08/25/2017-8-25-learn-tensorflow-shared-variables/ 本文是根据 TensorFlow 官方教程 ...
- 论文笔记系列-Neural Network Search :A Survey
论文笔记系列-Neural Network Search :A Survey 论文 笔记 NAS automl survey review reinforcement learning Bayesia ...
- Python 面向对象【2】
组合 [适合没干系的横向类,比如池塘,乌龟,鱼] 把类的实例化放到新类里面 属性名和方法名相同,属性会覆盖掉方法 绑定 方法需要实例才能被调用!! 这种限制即绑定 用self接受绑定 ...
- boost::function 介绍
本片文章主要介绍boost::function的用法. boost::function 就是一个函数的包装器(function wrapper),用来定义函数对象. 1. 介绍 Boost.Func ...
- ifconfig相关参数及用法说明
一.ifconfig ifconfig 主要是可以手动启动.观察与修改网络接口的相关参数,可以修改的参数很多,包括 IP 参数以及 MTU 等都可以修改,它的语法如下: [root@linux ~]# ...