【精品】TCPIP协议详解卷07.doc

【精品】TCPIP协议详解卷07.doc

ID:49196363

大小:742.00 KB

页数:11页

时间:2020-03-01

【精品】TCPIP协议详解卷07.doc_第1页
【精品】TCPIP协议详解卷07.doc_第2页
【精品】TCPIP协议详解卷07.doc_第3页
【精品】TCPIP协议详解卷07.doc_第4页
【精品】TCPIP协议详解卷07.doc_第5页
资源描述:

《【精品】TCPIP协议详解卷07.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、I卞载1第7章Ping程序7.1引言“ping”这个名字源于声纳泄位操作。Ping程序由MikeMuuss编写,目的是为了测试另一台主机是否可达。该程序发送一份ICMP冋显请求报文给主机,并等待返回ICMPld显应答(图6・3列击了所有的ICMP报文类型)。—般來说,如果不能Ping到某台主机,那么就不能Telnet^者FTP到那台丄机。反过來,如果不能Telnet到某台主机,那么通常可以用Ping程序来确疋问题出在哪里。Ping程序还能测出到这台主机的往返时间,以表明该主机离我们有“多远”。在本章屮,我们将使用Ping程序作为诊断工具來深入剖析IC

2、MP。Ping还给我们提供了检测IP记录路由和时间戳选项的机会。文献[Stevens1990]的第11章提供了Ping程序的源代码。几年前我们还可以作出这样没有限沱的断言,如果不能Ping到某台主机,那么就不能Telnet或FTP到那台上机。随着Internet^:全意识的增强,出现了提供访问控制淸单的路由器和防火墙,那么像这样没有限左的断言就不再成立了°—台主机的可达性可能不只取决于IP层是否可达,还取决于使用何种协议以及端口号。Ping程序的运行结果可能显示某台主机不可达,但我们可攻用TelnetS程登录到该台主机的25号瑞口(邮件服务器)。7.

3、2Ping程序我们称发送冋显请求的ping程序为客户,而称被ping的主机为服务器。人多数的TCP/IP实现都在内核屮丑接支持Ping服务器一这种服务器不是一个用八进程(在第6章屮描述的两种ICMP查询服务,地址掩码和时间戳请求,也都是直接在内核屮进行处理的)。ICMPAI显请缈糊糊答报蜩阴7-1所示。检验和&字节的选项数据必须冋显,假设客八对这些信息都会感兴趣。客户发送Unix系统在实现ping稈序时是把ICMP报文屮的标识符字段置成发送进程的ID号。这样即使在同一台主机上同时运行了多个ping稗序实例,ping程序也可以识别出返回的信息。序列号从

4、0开始,每发送一次新的回显请求就加loping程序打印出返回的每个分组的序列号,允许我们査看是否有分组丢失、失序或重复。IP是一种最好的数据报传递服务,因此这三个条件都有可能发生。旧版本的ping程序曾经以这种模式运行,即每秒发送一个冋显请求,并打印出返回的每个冋显应答。但是,新版本的实现需耍加上-s选项才能以这种模式运行。默认情况下,新版本的ping程序只发送一个冋显请求。如果收到回显应答,则输Ill“hostisalive”;否则,在20秒内没有收到应答就输出"noanswer(没有冋答)”。7.2.1LAN输出在局域网上运行ping程序的结果输

5、:Li—般有如下格式:bsdi%pingsvr4PINGsvr4(140.252.13.34):56databytes6464646464646464•?bytesbytesbytesbytesbytesbytesbytesbytesfromfromfromfromfromfromfromfrom140.252.13.34:140.252.13.34;140.252.13.34:140.252.13.34:140.252.13.34:140.252.13.34:140.252.13.34:140.252.13.34:icmp_seq»0icmp_se

6、q-licmp_seq-2icmp_seq-3icmp_seq»4icmp^seq^Sicmp_seq-6icmp_seq-7ttl-255ttl-255ttl-255ttl-255ttl-255ttl«255ttl-255ttl-255pingmsmsmsmsmsmsmsmstime-0time-0time-0time-0time-0time・0time-0time-0键入申断键来荐止显示svr48packetstransmitted^8packetsreceived,0%packetlossround-tripmin/avg/max■0/0/0m

7、sstatistics当返回ICMP回显应答时,要打印出序列号和TTL,并计算往返时间(TTL位于IP首部中的生存时间字段。当前的BSD系统屮的ping程序每次收至侗显应答时都打印出收到的TTL——有些系统并不这样做。我们将在第8章屮通过tgcerou*程序来介绍TTL的用法)。从上面的输出屮可以看出,冋显应答是以发送的次序返冋的(0,1,2等)。ping程序通过在ICMP报文数据屮存放发送请求的时间值来计算往返时间。当应答返冋时,用当前时间减去存放在ICMP报文屮的时间值,即是往返时间。注意,在发送端bsdi上,往返时间的计算结果都为0ms。这是因

8、为程序使用的计时器分辨率低的原因。BSD/386版本0.9.4系统只能提供10ms级的计时器(在附录由

9、

10、有

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。