Muduo 网络编程示例之五: 测量两台机器的网络延迟
陈硕 (giantchen_AT_gmail)
Blog.youkuaiyun.com/Solstice t.sina.com.cn/giantchen
这是《Muduo 网络编程示例》系列的第五篇文章。
Muduo 全系列文章列表: http://blog.youkuaiyun.com/Solstice/category/779646.aspx
本文介绍一个简单的网络程序 roundtrip,用于测量两台机器之间的网络延迟,即“往返时间 / round trip time / RTT”。这篇文章主要考察定长 TCP 消息的分包,TCP_NODELAY 的作用。
本文的代码见 http://code.google.com/p/muduo/source/browse/trunk/examples/roundtrip/roundtrip.cc
测量 RTT 的办法很简单:
- host A 发一条消息给 host B,其中包含 host A 发送消息的本地时间
- host B 收到之后立刻把消息 echo 回 host A
- host A 收到消息之后,用当前时间减去消息中的时间就得到了 RTT。
NTP 协议的工作原理与之类似,不过,除了测量 RTT,NTP 还需要知道

本文介绍了使用Muduo库创建的roundtrip程序,该程序用于测量两台机器间的网络延迟(RTT)。通过发送包含本地时间戳的消息并回传,计算RTT。文中详细描述了简化后的协议、消息格式和处理过程,并讨论了TCP_NODELAY选项在广域网中的影响。
最低0.47元/天 解锁文章
4万+

被折叠的 条评论
为什么被折叠?



