跳意义(TTL测量)

Modified on: Fri, 09 Nov 2018 03:00:02 +0800

当我使用ping命令时,我得到下一个结果(Windows):

C:\>ping example.microsoft.com
Pinging example.microsoft.com [192.168.239.132] with 32 bytes of data:
Reply from 192.168.239.132: bytes=32 time=101ms TTL=124
...

在此类实用程序的文档中,TTL以hops进行测量。根据ICMP规范RFC 792

  

生存时间。
        是时候生活在;因为这个字段在每个字段递减
        处理数据报的机器,其中的值
        字段应该至少与网关的数量一样大
        这个数据报将遍历。

因此,每个宿主都会通过至少1 来减少TTL。没有关于啤酒花的说法。那么为什么要使用啤酒花呢?如果主机处理数据报太快,为什么不使用ms?为什么规范没有说明hops

作者:Kyrylo M

最佳答案

如果存在路由循环,TTL旨在永久停止生存(和消耗资源)数据包。

最初,路由器可能需要一秒多的时间来处理数据包。

当路由器变得更快,并且开始在一秒钟内处理数据包时,将TTL减少零是愚蠢的,因为这样就不会停止循环。

相反,它将TTL递减一秒。

此更改记录在RFC 1716第5.3.1节中

  

IP标头的生存时间(TTL)字段定义为a
       定时器限制数据报的生命周期。它是一个8位字段
       单位是秒。每个路由器(或其他模块)
       处理数据包必须将TTL减少至少一个,即使
       经过的时间远不到一秒钟。因为这是非常的
       通常情况下,TTL实际上是一个跳数限制的方式
       数据报可以通过互联网传播。

  
  

当路由器转发数据包时,它必须将TTL减少at
       至少有一个。如果它持有一个包超过一秒,它可以
       每秒递减一次TTL。

另见:

维基百科 - 生存时间

  

TTL字段由数据报的发送方设置,并由到达目的地的路由上的每个主机减少。

Maxi-pedia - 生存时间(TTL)

  

数据包经过的每个路由器都需要从TTL字段中减去至少一个计数。

作者:,Mikel

相关问答

添加新评论