我们在测试网络ping是icmp报文的一种应用。用来测试网络中各设备的连通性。在这几天的实验课上,网际電脑又用到了这个非常常用的命令,但是这次我发现了一些以前没有太注意的地方,那就是我在Ping不同的地址时所返回的TTL值是不同的。如下:



C:\Documents and Settings\Administrator>ping 118.123.116.163

Pinging 118.123.116.163 with 32 bytes of data:

001.jpg

Ping statistics for 118.123.116.163:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 79ms, Maximum = 81ms, Average = 80ms



.C:\Documents and Settings\Administrator>ping 171.92.208.179

Pinging 171.92.208.179 with 32 bytes of data:

002.jpg

Ping statistics for 171.92.208.179:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 74ms, Maximum = 77ms, Average = 75ms



在这里我要说明的是不同的Rpely消息中的不同的TTL值的由来。TTL 是数据包为了防止数据包在网络中无限制的循环,而设定的网络数据包在网络传输中最大的转发次数。因为每转发一次在路由器,就会转向下一跳,所以,又通常称为最大跳数。具体的含义是这样的。我们本地机器会发出一个数据包,数据包经过一定数量的路由器传送到目的主机,但是由于很多的原因,一些数据包不能正常传送到目的主机,那如果不给这些数据包一个生存时间的话,这些数据包会一直在网络上传送,导致网络开销的增大。当数据包传送到一个路由器之后,TTL就自动减1,如果减到0了还是没有传送到目的主机,那么就自动丢失。例如:你定义了数据包的TTL为64.那么在你的数据包被转发了64次,也就是经过了63个中间路由器后,还没有到达目的网络,那么,你的電脑就会显示Requet time out (请求超时)了。例如:你定义了数据包的TTL为64.那么在你的数据包被转发了64次,也就是经过了63个中间路由器后,还没有到达目的网络,那么,你的電脑就会显示Requet time out (请求超时)了。这就是TTL的意思了



      在此补充一点,由于不同的操作系统所定义的TTL是不同的,一般有如下规则:默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。

上一篇: 百度云加速有什么好处?百度云加速有多大的用?
下一篇: 维修华硕笔记本K46CB开不了机一列

评论

精彩评论

评论 (0)