欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux下简单限制网卡带宽的设置方法

程序员文章站 2022-06-13 13:18:17
Linux下限制网卡的带宽,可用来模拟服务器带宽耗尽,从而测试服务器在此时的访问效果... 13-02-13...

1、安装iproute
 

复制代码
代码如下:
yum -y install iproute

2、限制eth0网卡的带宽为50kbit:
 

复制代码
代码如下:
/sbin/tc qdisc add dev eth0 root tbf rate 50kbit latency 50ms burst 1000

3、限制带宽为50kbit后,在百兆局域网中wget下载一个大文件:
 

复制代码
代码如下:
[root@localhost ~]# wget http://192.168.1.7/test.zip
--19:40:27-- http://192.168.1.7/test.zip
connecting to 192.168.1.7:80... connected.
http request sent, awaiting response... 200 ok
length: 23862312 (23m) [application/zip]
saving to: `test.zip'
37% [=======> ] 8,994,816 457k/s eta 27s

下载速度为457k/s,限制效果达到。

4、解除eth0网卡的带宽限制:
 

复制代码
代码如下:
/sbin/tc qdisc del dev eth0 root tbf

5、对比:未作带宽限制情况下,在百兆局域网中wget下载一个大文件:


复制代码
代码如下:

[root@localhost ~]# wget http://192.168.1.7/test.zip
--19:44:33-- http://192.168.1.7/test.zip
connecting to 192.168.1.7:80... connected.
http request sent, awaiting response... 200 ok
length: 23862312 (23m) [application/zip]
saving to: `test.zip'
100%[==========>] 23,862,312 6.14m/s in 3.7s
19:44:36 (6.16 mb/s) - `test.zip' saved [23862312/23862312]

下载速度为6.16mb/s。

网友提问:限制带宽为50kbit后, 为什么下载速度达到457k/s?
回复:linux内核依靠粗糙的计时信息进行带宽固定。在一个较长的时间段内,可以维持很好的精度,但是在以秒为单位进行计量的时间段内,其结果非常不准确。
所以,实际使用的带宽需要以wget下载时速度为准,去调整tc的带宽限制。

本文转自:http://blog.s135.com/post/380/