- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用 Dummynet 来测试我的网络应用程序在各种网络条件下的行为。该模拟器是在 Ubuntu 12.04 机器上编译并安装的。当我减少链接/路径的带宽时,我遇到了奇怪的行为。
由于某种原因,而不是下载速度很慢。看起来好像下载是突然发生的!高速下载一部分数据,然后数据传输停止一段时间,然后再次恢复(依此类推)。有谁知道可能是什么原因?或者这是预期的?
最佳答案
我想您已经这样做了,但为了确保您必须执行以下操作:
编译支持 IPFW 和 Dummynet 的新内核,并将以下行放入内核配置文件中:
options IPDIVERT
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options DUMMYNET
options HZ=1000
之后编译并安装新内核。为此,请按照 Building and Installing a Custom Kernel 上的步骤操作。
为此,请使用以下几行配置 rc.conf 文件:
firewall_enable="YES"
firewall_type="OPEN"
如果您没有使用默认的防火墙配置文件/etc/rc.firewall
,则将您的配置文件如下所示,而不是“OPEN”:
firewall_type="/your/firewall/config.file"
出于测试目的,您可以直接在控制台上编写规则,看看会发生什么,然后将其写入配置文件以保留规则。
对于基本带宽限制,此规则必须足够:
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 带宽控制的基础。
关于linux - 使用 Dummynet 进行突发数据传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19944105/
有一些算法可以检测数组中的最大子数组(连续的和非连续的)。不过,它们中的大多数都基于同时具有负数和正数。仅使用正数如何完成? 我有一个股票在相应时间范围内的值数组(比方说,该数组包含所有连续月份的值)
我不知道为什么,但我很确定以下内容确实产生了一段时间的情节。你能告诉我这里有什么问题吗? library(ggplot2) qplot(c(0, 2), stat="function", fun=ex
我正在尝试使用 StackExchange Redis 库追踪间歇性的“突发”超时。以下是关于我们的设置的一些信息:我们的 API 是用 C# 编写的,在 Windows 2008 和 IIS 上运行
我有一个 Java 应用程序,直到最近一直运行良好。它开始引发异常:javax.net.ssl.SSLHandshakeException:PKIX 路径构建失败:sun.security.provi
在一个运行了很长一段时间而没有任何变化的应用程序中我得到了异常 failed to lazily initialize a collection of role: ... , no session o
我是一名优秀的程序员,十分优秀!