目录
mm-link --meter-uplink:绘制上行链路吞吐量-时间
mm-link --meter-downlink:绘制下行链路吞吐量-时间图
mm-link --meter-downlink-delay:绘制下行链路排队时延-时间图
mm-meter --meter-uplink: 显示上行链路的实况
mm-meter --meter-downlink:显示下行链路的实况
4.录制和回访网站的请求和响应--record and replay multi-origin websites
注1:运行Mahaimahi请在“~”目录下,/home目录都是不行的!
注2:本文的内容是个人学习记录,有很多地方都是根据自己的猜测+实践写的,如果有错误的地方欢迎大家在评论区里或私信指出错误
Maihimahi原理:相当于一个位于客户端的“信号监听器”
主要功能模块及使用演示:(注:图中的一些错误示范只供参考)
1.链路模拟--link emulation
1.1 mm-delay
单位是毫秒(milliseconds)
格式:mm-delay time
1.2 mm-loss
表示丢失的百分比,0~1的数字 (Packets are lost at the given rate.)
格式:mm-loss uplink/downlink rate
1.3 mm-intermittent
intermittent意为不稳定的,表示会在连接(connected)和未连接(disconnected)两个状态来回切换.
格式:mm-intermittent uplink/downlink on-time off-time(单位:second)
1.4 mm-onoff
与mm-intermittent类似,都是在连接和未连接两个状态间切换,但是mm-onoff后面跟的是上行链路或下行链路的平均不稳定时间,而mm-intermittent后面跟的是不稳定状态的开始和结束时间。
格式:mm-onoff uplink/downlink mean-on-time mean-off-time
1.5 mm-link
此模块后跟的参数较多,
格式:mm-link uplink downlink [options] [command]
注 : --uplink-log、--downlink-log等都属于options
mm-link uplink-log:具体功能未知。
实践可得(见下图):uplink和downlink的文件要配套(示例三),--uplink-log和--downlink-log的文件可以不用配套(示例四),uplink、downlink和--uplink-log、--downlink-log这两组文件可以不用配套(示例二)
mm-link --meter-uplink:绘制上行链路吞吐量-时间
mm-link --meter-downlink:绘制下行链路吞吐量-时间图
mm-link --meter-uplink-delay:绘制上行链路排队时延-时间图
mm-link --meter-downlink-delay:绘制下行链路排队时延-时间图
mm-link --once:未知
(猜测是只模拟一次,假定一般情况下Verizon-LTE-short.up和Verizon-LTE-short.down文件是循环播放的)
2.脚本分析--analysis scripts
2.1mm-throughput-graph:
没有看懂,猜测是说在mm-link模块中可以看到(如上)线路吞吐量-时间图
2.2 mm-webreplay:
github上没有看到什么信息,大家可以自行查看
3.链路观察--observation
3.1mm-meter
显示进入或离开容器的传输速率的动画实况图。
mm-meter --meter-uplink: 显示上行链路的实况
mm-meter --meter-downlink:显示下行链路的实况
4.录制和回访网站的请求和响应--record and replay multi-origin websites
4.1 mm-webrecord
记录本机上的web请求和响应,具体保存到了哪里,我没有找到。
猜测只是可以在webrecord和webreplay模块下设置delay、package loss等参数,要实现绘图还需要进一步操作将记录的信息转化为数字信息(不是很确定)。
使用格式:mm-record directory
directory 是使用时创建的之前并不存在
web-record 有两个选项:--no-check-certificate和--ignore-certificate-errors。
这两个都是用于解决浏览器证书(CA)的问题。鉴于mahimahi发行论文中说的mahimahi在大部分浏览器中都可以直接被默认,确实事件中也是如此,这两个选项就不深入了解了。
4.2 mm-webreplay
重播上次记录的会话。特点:只在客户端内部作用,没有与外部网络相连接。