最近正在研究tcp/ip协议栈中的ICMP,书中介绍说ping程序通过在ICMP报文数据中存放发送请求的时间值来计算往返时间,但是我通过tcpdump工具抓到的ICMP 请求与响应的包中没有找到有关发送时间的数据啊?Request:
Response:
在响应包中有Response Time,但是包数据里根本就没有该值,难道是我抓的包不全吗?请高人指点一下,谢谢!

解决方案 »

  1.   

    对应ICMP协议,分析各个字段的数据
      

  2.   

    ping程序通过在ICMP报文中存放发送请求的时间值来计算往返时间。当应答返回时,用当前时间减去存放在ICMP报文中的时间值,即是往返时间。TTL位于IP首部的生存时间字段。ping程序通过在ICMP报文数据段中存放发送请求的时间值来计算往返时间。当应答返回时,用当前时间减去存放在ICMP报文中的时间值,即是往返时间。
      

  3.   


    TTL是数据报可以经过的最多路由器个数啊
    我在我抓到的ICMP请求和应答包里没有有时间啊