Netexpert FAQ 网络分析专家学习建议入口 @netexpert成员申请指南
netexpert积分规则的说明 Netis招贤纳士(2008年11月22日更新)
发新话题
打印

请教个问题,关于tcp和icmp的.

请教个问题,关于tcp和icmp的.

首先在tcp header-tcp option里面的mms字段是干什么用的,看书不是很理解他的功能?
其次ping和tracert是怎么计算延时的?

谢谢!

TOP

摘自<TCPIP详解卷1>,里面已经讲的非常详细了....
  
最大报文段长度( M S S)表示T C P传往另一端的最大块数据的长度。当一个连接建立时,连接的双方都要通告各自的M S S。我们已经见过M S S都是1 0 2 4。这导致I P数据报通常是4 0字节长:2 0字节的T C P首部和2 0字节的I P首部。
  在有些书中,将它看作可“协商”选项。它并不是任何条件下都可协商。当建立一个连接时,每一方都有用于通告它期望接收的M S S选项(M S S选项只能出现在S Y N报文段中)。如果一方不接收来自另一方的M S S值,则M S S就定为默认值5 3 6字节(这个默认值允许2 0字节的I P首部和2 0字节的T C P首部以适合5 7 6字节I P数据报)。
  一般说来,如果没有分段发生, M S S还是越大越好(这也并不总是正确,)。报文段越大允许每个报文段传送的数据就越多,相对I P和T C P首部有更高的网络利用率。当T C P发送一个S Y N时,或者是因为一个本地应用进程想发起一个连接,或者是因为另一端的主机收到了一个连接请求,它能将M S S值设置为外出接口上的M T U长度减去固定的I P首部和T C P首部长度。对于一个以太网, M S S值可达1 4 6 0字节。使用IEEE 802.3的
封装它的M S S可达1 4 5 2字节。

第二个问题自己抓个TRACERT的包不久明白了....

[ Last edited by 1259 on 2005-6-23 at 09:00 ]
喜神过境,活人勿近,天高地宽,各走一半......

TOP

Ping程序通过在ICMP报文数据中存放发送请求的时间值来计算往返时间的!
因为ICMP报文里面含有发送是的时间,然后通过当前时间减去这个值就可以算出往返时间!

Tracert是同样的道理!
信心源自实力,努力成就未来!
欢迎访问龙七客栈睿博工作室

TOP

谢谢,我试试。

TOP

我抓包看了一下 icmp request里面 没有时间 啊,icmp data里面是abcdef.....
imcp echo里面也是一样。

时间在什么地方?

TOP

抱歉!我的理解有误:
正确的是:计算机在发送的时候会纪录发送的时间,然后对比受到回应的时间!
这样就可以计算出来会花销的时间!

因为根本没有必要再数据包里面记录时间信息!
信心源自实力,努力成就未来!
欢迎访问龙七客栈睿博工作室

TOP

发新话题
版块跳转