版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、7.2ping 程序我们称发送回显请求的ping程序为客户,而称被ping的主机为服务器。人多数的tcp/ip实现都在内核屮 直接支持ping服务器一这种服务器不是-个用八进程(在笫6章中描述的两种1cmp查询服务,地址掩码和 时间戳请求,也都是肓接在内核屮进行处理的)。icmp回显请求和回显应答报文如图7-1所示。3115 16图7-1 icmp回显请求和回显应答报文格式zhjudlrmiini亠 0对于其他类型的icmp查询报文,服务器必须响应标识符和序列号字段。另外,客户发送的选项数据必须回 显,假设客户对这些信息都会感兴趣。unix系统在实现ping程序时是把icmp报文中的标识符字段
2、置成发送进程的1d号。这样即使在同一台主机 上同时运行了多个ping程序实例,ping程序也可以识别出返回的信息。序列号从0开始,每发送一次新的回显请求就加1。ping程序打印岀返回的每个分组的序列号,允许我们 查看是否有分组丢失、失序或重复。ip是一种最好的数据报传递服务,因此这三个条件都有可能发主。旧版本的ping程序曾经以这种模式运行,即每秒发送一个回显请求,并打印出返回的每个冋显应答。但是, 新版本的实现需要加上s选项才能以这种模式运行。默认情况下,新版木的ping程序只发送一个回显请求。 如果收到回显应答,则输出"hostisalive";否则,在20秒内没冇收到
3、应答就输ih'noanswcr (没冇回答)”。7.2.1 lan 输出在局域网上运行ping程序的结果输出一般冇如下格式:bad! % piag »vx4ping(140.252.13«34): 56 data bytes64 brtea64 bytm6464644464byteabytes byte* bytesfrom 140.252.13.94: frcn frtn fronfron fran fraa140.252.13.34:140.252.13.34:140.252.13.34:140.252.13.34:140.252.13.34:140.252&l
4、t;13.34:bytea frca 140.252.13.34:l? ttl"255 tinsh) ns l3 ttl55 timm) na l* ttl-255 tiim 0 mol tt 1*255* tdisd m l6 ttl-255 timn 0 ns r? ttl55 tim-0 ns ®vr4 ping statlstlcb 8 packote tranamittd, 8 packets rocalz, 0* packet loss ronmd-trlp nln/avr/aax 0/0/0 ma当返回icmp回显应答吋,要打印出序列号和ttl,并计算往返吋间
5、(ttl位于ip首部中的牛存吋间字段。 当前的bsd系统中的ping程序每次收到回显应答时都打印出收到的ttl 一有些系统并不这样做。我们将在第8章屮通过traceroute程序来介绍ttl的用法)。从上而的输出中可以看出,回显应答是以发送的次序返回的(0, 1, 2等)。ping程序通过在icmp报文数据中存放发送请求的时间值來计算往返时间。当应答返回时,用当前时间减去 存放在icmp报文屮的时间值,即是往返时间。注意,在发送端bsdi上,往返时间的计算结果都为()ms。 这是因为程序使用的计时器分辨率低的原因。bsd/386版本094系统只能提供10ms级的计吋器(在附录b 中冇更详细的介
6、绍)。在后面的章节中,当我们在具有较高分辨率计时器的系统上(sun)查看tcpdump输 岀吋会发现,icmp回显请求和回显应答的吋间差在4ms以下。输出的第一行包括目的主机的ip地址,尽管指定的是它的名字(svr4)o这说明名字已经经过解析器被转 换成ip地址了。我们将在第14章介绍解析器和dns。现在,我们发现,如來敲入ping命令,儿秒钟过后会在第1行打印岀ip地址,dns就是利川这段时间來确定主机名所对应的ip地址。 本例中的tcpdump输出如图7-2所示。从发送回显请求到收到回显应答,吋间间隔始终为3.7ms。还可以看到,回显请求人约何隔1秒钟发送一次。 通常,第1个往返时间值要比
7、其他的大。这是由于冃的端的硬件地址不在arp高速缓存中10.0bfidl10.dd373j(0-d037!8vt43us36v«59.3943)bad!41.001?«?to.oos?)«mr<51537818b«ii62.001542<qxqq31)ve472.937510b9dls3.001311fn.g©37>vri?3x327335b«d±w4.001115(c-0037)1zw.337201bsdiz25-0009(14(.0037)235.33ss77bsdi14.000706rn.nni?)话
8、6.9967642461)badi167.d0c47s> svr4:oclw> bsdi; leap: echo- zvplr> «vt4:人f 3a zoqamt> badi! iaap: 00 zwlv> ®vr4: 1<3k>: echo recnimt> b»di: lav>: .oho sobply> arr4; 1cid): echo xmoabt> bedik loops «dao> btt4: leap: echo> bad±: i(3p: echo
9、xwply> arr4:ocoinkrnst> kibdxt 込叵:echo zoply > svr4: icas .echo, zeqaest> badl: lc«: ecdio reply> svr4: lav:> h«di? lam: eaho zvplr图7-2在lan上运行ping程序的结果的缘故。止如我们在第4章中看到的那样,在发送第一个回显请求之前要发送一个arp请求并接收arp应 答,这需要花费儿毫秒的吋间。下而的例子说明了这一点:oun % axp -a tm % plug svr4pik svr4: 56 data b
10、ytes64 bytes64 bytes64 byta*64 bytea *?fcon sv£< fron svr4 froa «vz4 fron svr4(140.252.13.34): ianp_se<0< (140.252.13.34): lcnpq-l (140>252.13.34): laibp_seq-i2 (ko.232.1334) t leap二q-3.p1bc 8tatl«tlc4time-7. as time-4. na time«4. ns tine-4. as4 p&cketa tranamitta
11、d, 4 packets received 0% p&qket loss round-trip (na) 4/4/7第1个rtt小多出的3ms很可能就是因为发送arp请求和接收arp应答所花费的吋间。这个例子运行在sun主机上,它提供的是具有微秒级分辨率的计时器,但是ping程序只能打印岀毫秒级 的往返吋间。在前面运行于bsd/3860.9.4版上的例子中,打卬出来的往返吋间值为0ms,这是因为计吋器只 能提供10ms的谋羌。下面的例子是bsd/3861.0版的输出,它提供的计时器也具有微秒级的分辨率,因此, ping程序的输出结果也具有较高的分辨率。bfldl % piaff
12、71;rr4ring "4 (140.252.13.30: 56 data byteabyteo fron 140252.13.34: lcap_8g0 tt1-255 tinm-9.304 sb bftoo froi 140»252«13»34: l<ap_ael ttl"255 tias.089 sa g4 bytes frat 14q.252.13.34: i<3/jse2 ttl-255aa64 bytm fron 140<252«13«34: 土ttlr255 tlm-6.09$ nfl bvt4
13、 ping flrtatifttlcs *cr«nwiitteri> 4 p»gketd jrecvlwd, ot padeec xo88round-trip nin/avg/nax 6«079/6*080/9.304 ns722wan输出在一个广域网上,结果会冇很大的不同。下血的例子是在某个工作日的卞午即internet具冇止常通信量时的运 行结果:64 bytes froa 64 bytes treat $4 fron m bytea fron 64 bytes fron 64 btm fren 64 bytes froa 64 byttt freu56
14、 dat*(i2b>32.130.2): (12b.32.130.2)i (128.32«130.2m (128.32.130.2): (128.32.130.2):tlim*660< ns tial780. na tibv-380. aa time-«420. » tlse-390. as(120.32.1302) s i<ni>_srl4.七ijdiio. na(12b.32.130.2> : icogpb«rl5 tiis-170. ns (128.32.130.2) : icfl|pasqrl6. tlae>1
15、00. nsvangobh>cs«bezidblcy.£mr pwra btatiotxcb17 packets transnittedr 8 pasloeta rsceivedl 52t packet lo»# round-trip (na) nin/*vg/»ax 二 10q/501/1780这里,序列号为1、2、3、4、6、1()、11、12和13的回显请求或回显应答在某个地方丢失了。另外,我们注 意到往返时间发生了很人的变化(像52%这样高的分组丢失率是不正常的。即便是在工作tl的下午,对于internet来说也是不正常的)。通过广域网还有
16、可能看到重复的分组(即相同序列号的分组被打印两次或更多次),失序的分组(序列号为 n+1的分组在序列号为n的分组z前被打印)。7.2.3线路slip链接让我们再来看看slip链路上的往返吋间,因为它们经常运行于低速的界步方式,如9600b/s或更低。回想我 们在2.10节计算的串行线路吞吐量。针对这个例了,我们把主机bsdi和slip z间的slip链路传输速率 设置为1200b/so下面我们可以来估计往返时间。首先,从前面的ping程序输出例了中可以注意到,默认情况下发送的icmp 报文有56个字节。再加上20个字节的ip首部和8个字节的icmp首部,ip数据报的总长度为84字节(我们 可以
17、运行tcpdumpe命令查看以太网数据帧来验证这一点)。另外,从2.4节可以知道,至少要增加两个额 外的字节:在数据报的开始和结尾加上end字符。此外,slip帧还有可能再增加一些字节,但这取决于数 据报中每个字节的值。对于1200b/s这个速率来说,由于每个字节含冇8bit数据、ibit起始位和lbit结束位, 因此传输速率是每秒120个字节,或者说每个字节&33ms。所以我们可以估计需要1433 (86x8.33x2) ms (乘 2是因为我们计算的是往返时间)o下面的输出证实了我们的计算:ping56 data bytes64 bytes frou slip <140.25
18、2.13.65) i icnmumct=:o? tuvlisg. n64 bytea iron slip 140.252.iss5) ? ia?d_beg=lm64 ivtes frott blip (1«u.252.13,65) r"64 bytes frai blip (140252.13.65):丄 ti«=1480. »9llp ping statlaticb5 packet* transaittad 4 packete rwewivadj 20% p*cmt !<» renmdtrip (ms) mln/avff/vax 148
19、0/14b0/14b0(対于svr4來说,如果每秒钟发送一次请求则必须带s选项)。往返时间人约是1.5秒,但是程序仍然 每间隔1秒钟发送一次1cmp回显请求。这说明在笫1个回显应答返回之前(1.480秒时刻)就已经发送了两次冋显请求(分别在()秒和1秒时刻)。这就是为什么总结行指出丢失了一个 分组。实际上分组并未丢失,很可能仍然在返回的途中。我们在第8章讨论traceroute程序时将冋头再讨论这种低速的slip链路。724拨号slip链路对于拔号slip链路来说,情况有些变化,因为在链路的两端增加了调制解调器。用在sun和netb系统之间的调制解调器提供的是v.32调制方式(9600b/s)
20、、v.42错误控制方式(也称作lap-m)以及v.42bis数据压缩方式。这表明我们针对线路链路参数进行的简单计算不再准确了。 很多因素都有可能影响。调制解调器带來了时延。随着数据的压缩,分组长度可能会减小,但是山于使用了 错误控制协议,分组长度又可能会增加。另外,接收端的调制解调器只能在验证了循环检验字符(检验和) 示才能釋放收到的数据。最后,我们还要处理每一端的计算机界步串行接口,许多操作系统只能在周定的时 间间隔内,或者收到若干字符后才去读这些接口。作为一个例子,我们在sun主机± ping主机gemini,输出结果如下: mm pim geodni: 56 data bytea64646464646464646464(l«u.25s«lail) s (140w252al<ll)s(140.25a<l.uh(140.252.1.11) ; (14u.25
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年智能背部按摩仪项目项目建议书
- 2025年广州市花都区花东镇人民政府公开招聘执法辅助工作人员备考题库及答案详解一套
- 2026年常德市鼎城区面向全市选调8名公务员备考题库及答案详解一套
- 2026年电子电气贸易战的趋势与影响
- 2026年云南勐海县公安局警务辅助人员招聘35人备考题库附答案详解
- 2026年北京外企人力资源服务有限公司海淀分公司招聘备考题库完整答案详解
- 2026年25人成都农商银行招聘备考题库及1套完整答案详解
- 2026年度化州市卫生健康系统赴高校现场招聘事业单位工作人员备考题库带答案详解
- 2026年中山大学孙逸仙纪念医院皮肤科医教研岗位招聘备考题库及答案详解一套
- 2026年中新集团工程咨询有限责任公司招聘备考题库及完整答案详解一套
- 2026思南农业发展集团有限责任公司招聘参考考试题库及答案解析
- 技术开发合同(芯片2025年设计)
- 【初中 数学】整数指数幂课件 2025-2026学年人教版八年级数学上册
- 2026年精神科护理工作计划
- 2024-2025学年广东省广州市荔湾区七年级(上)期末英语试卷(含答案)
- 化疗药物安全操作规程
- 岩土勘探合同范本
- 机场跑道除雪设备安装施工方案
- 广州12345政务服务便民热线平台运营项目采购需求
- JCT640-2010 顶进施工法用钢筋混凝土排水管
- fy17起搏器销售-t10t20说明书ifu pacetchinese livetec
评论
0/150
提交评论