之前以为可以使用Linux自带的工具模拟控制网络时延,所以上网找了一些资料。后来发现,找到的资料目前只支持在一个网卡上模拟发送报文的时延,而不能设置有差别的网络时延,或者说当要模拟的向A发送的时延与要模拟的向B发送的时延不一致时,Linux的tc功能就无能为力了。记录一下在网上查到的有用的资料:
- TC带宽管理规则排版最好的链接:http://www.tuicool.com/articles/7zYzey
- TC命令的man手册:http://wenku.baidu.com/link?url=o0CPVzuBDLJMt0_7Qph1T7TtdFOzu7O-apIpvaWbIYMz8ZWqBneGqI8LGtLdqpuKHbUoZ-eXcguONVJ9ruTQN1JuV6xC0b-okqu7b7Ro-oW
- TC详细说明及应用实例:http://wenku.baidu.com/view/f02078db50e2524de5187e45.html
- TC控制网络时延:http://blog.csdn.net/blade2001/article/details/7163316
------------------------------------------------------------
后来仔细回顾资料,发现TC控制网络时延的netem关键字不在man手册中,然后发现控制网络时延的不是原生的tc功能,而是tc调用了netem模块。在netem官网
http://www.linuxfoundation.org/collaborate/workgroups/networking/netem#Delaying_only_some_traffic
发现了控制某个ip的网络时延的shell命令,亲测可用。