我想在从系统访问某些文件时介绍延迟,这样我就可以在从网络访问数据时测量应用程序延迟的影响(使用netem
模块进行模拟)。
我做了以下工作来实现这一目标: -
我使用了两台计算机Host1
和Host2
,我将应用程序访问的文件放在Host1
硬盘上,可以使用/net/<login>/Host1/data
和我访问在Host2
上提交了我的申请,并使用上述路径从Host1
访问了数据。
我还使用Host1
在tc qdisc del dev eth0 root netem delay 20ms
上引入了延迟,这样无论何时从Host2
应用程序访问文件,对Host1的数据访问都应该有20ms的延迟。
我有几个疑问:
有没有办法在可以设置延迟的同一台机器上运行应用程序。我不想要我将运行的应用程序的延迟(有时可以从另一台服务器访问应用程序,因此如果我在具有延迟的机器上启动应用程序,那么应用程序也将受到影响)。那么,有没有办法只能为文件的访问引入延迟。
我是否正确使用tc
命令来测试我的方案。所以我只需要确认我是否正确使用tc
命令。
答案 0 :(得分:1)
为了清楚起见,netem旨在测试网络流量整形,而不是硬盘流量......
您可以通过building a tree将您的网络规则限制为本地主机上的特定测试端口。它相当深奥,但可能。
一般情况对我来说是正确的。为资源提供服务的主机应该运行tc
。第二个主机应该是监视器/测量器。