Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 用Dummynet进行突发数据传输_Linux_Networking_Network Programming_Freebsd - Fatal编程技术网

Linux 用Dummynet进行突发数据传输

Linux 用Dummynet进行突发数据传输,linux,networking,network-programming,freebsd,Linux,Networking,Network Programming,Freebsd,我正在尝试使用Dummynet测试我的网络应用程序在各种网络条件下的行为。emulator编译并安装在Ubuntu 12.04上。当我减少链接/路径的带宽时,我遇到了一种奇怪的行为 出于某种原因,而不是下载速度慢。似乎下载正在爆发!一部分数据以高速下载,然后数据传输停止一段时间,然后再次恢复(依此类推)。有人知道原因是什么吗?或者这是意料之中的事?我想你已经这么做了,但为了确保你必须做到以下几点: 编译一个支持IPFW和Dummynet的新内核,在内核配置文件中添加以下行: options IP

我正在尝试使用Dummynet测试我的网络应用程序在各种网络条件下的行为。emulator编译并安装在Ubuntu 12.04上。当我减少链接/路径的带宽时,我遇到了一种奇怪的行为


出于某种原因,而不是下载速度慢。似乎下载正在爆发!一部分数据以高速下载,然后数据传输停止一段时间,然后再次恢复(依此类推)。有人知道原因是什么吗?或者这是意料之中的事?

我想你已经这么做了,但为了确保你必须做到以下几点:

编译一个支持IPFW和Dummynet的新内核,在内核配置文件中添加以下行:

options IPDIVERT
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options DUMMYNET
options HZ=1000
然后编译并安装新内核。要执行此操作,请遵循上的步骤

为此,请使用以下行配置rc.conf文件:

firewall_enable="YES"
firewall_type="OPEN"
如果您没有使用默认的防火墙配置文件
/etc/rc.firewall
,请将配置文件如下所示,而不是“打开”:

出于测试目的,您可以直接在控制台上编写规则,看看会发生什么,然后在配置文件上编写规则以保留规则

对于具有限制的基本带宽,此规则必须足够:

ipfw pipe 1 config bw 1Mbit
ipfw pipe 2 config bw 1Mbit
现在有两个管道,每个管道有1Mbit的带宽,让我们把流量放在这个管道上

ipfw add pipe 1 tcp from any to me
ipfw add pipe 2 tcp from me to any
这样做将限制您自己使用以前创建的管道

这是Dummynet带宽控制的基础

ipfw add pipe 1 tcp from any to me
ipfw add pipe 2 tcp from me to any