Ttraceroute Today
名词解释:TTL,Time to Live,生存时间,指ICMP包的转发次数(跳数)
现在的 traceroute 的运行机制为:
- 设定 TTL = 1 ,进行第一次 hop 后,返回一个 ICMP 错误,因为 TTL expired.
- 设定 TTL = 2 ,进行第一次 hop ,再进行第二次 hop 后,返回 ICMP 错误。
- 增加 TTL 的值,直到 hop 到达目的地为止。
这样做是为了,记录下每次 ICMP 错误( TTL exceeded )信息,用来进行 trace。
好处:利用了每一个路由器都可以返回 TTL exceeded messages 的特点;简单。
坏处:
- 只记录 outbound path,不记录 return path;
- N - 1 个路由器,TTL = N,总的 hop 次数为
,每次发送 N 个分组,则总共发送了
个分组,约为 hop 数的 2 倍,所以耗时增加,发送分组数增加;
- 在传输过程中,分配出链路时,每次可能不相同。
Traceroute Tomorrow
设计新的算法:trace the path to a host.
并设计新的 ICMP message。