在同一台机器上配置netem

时间:2013-04-16 10:12:13

标签: linux networking

我想在从系统访问某些文件时介绍延迟,这样我就可以在从网络访问数据时测量应用程序延迟的影响(使用netem模块进行模拟)。

我做了以下工作来实现这一目标: -

我使用了两台计算机Host1Host2,我将应用程序访问的文件放在Host1硬盘上,可以使用/net/<login>/Host1/data和我访问在Host2上提交了我的申请,并使用上述路径从Host1访问了数据。

我还使用Host1tc qdisc del dev eth0 root netem delay 20ms上引入了延迟,这样无论何时从Host2应用程序访问文件,对Host1的数据访问都应该有20ms的延迟。

我有几个疑问:

  1. 有没有办法在可以设置延迟的同一台机器上运行应用程序。我不想要我将运行的应用程序的延迟(有时可以从另一台服务器访问应用程序,因此如果我在具有延迟的机器上启动应用程序,那么应用程序也将受到影响)。那么,有没有办法只能为文件的访问引入延迟。

  2. 我是否正确使用tc命令来测试我的方案。所以我只需要确认我是否正确使用tc命令。

1 个答案:

答案 0 :(得分:1)

为了清楚起见,netem旨在测试网络流量整形,而不是硬盘流量......

  1. 您可以通过building a tree将您的网络规则限制为本地主机上的特定测试端口。它相当深奥,但可能。

  2. 一般情况对我来说是正确的。为资源提供服务的主机应该运行tc。第二个主机应该是监视器/测量器。