ME第章习题参考解答.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ME第章习题参考解答

ME2010 高级计算机网络 第3章部分习题参考解答 2010-10起 UDP 3.1,请说明UDP用户数据报报文段的基本格式。并指出用户数据报是如何实现传输层协议的基本功能的? [解答] 32位 UDP从发送主机的应用进程得到报文,附加上为复用/分解 源端口号 目的地端口号 服务所需要的源和目的地端口号字段,以及另外两个字段 长度 检验和 (长度和校验和); 然后把形成的报文段交给网络层。 网络层把该报文段封装到一个IP数据报中(即把该报文 应用程序数据 段作为负荷数据),再以尽力而为的方式把IP数据报送交 (报文) 到接收主机(依IP地址)。该报文段到达接收主机后, UDP使用”目的端口号”把数据递交到相应的应用进程。 3.2,为什么需要UDP?为什么用户不能直接访问IP?UDP协议主要用在哪些场合? [解答][1]与TCP相比,需要使用UDP的原因是:UDP简单(小的段首部,在发送方和接收方无状态变量等);快捷(无需连接建立的延迟时间,不考虑拥塞控制和发送速率管理等)。 应用层还能更好地控制要发送的数据和发送的时间。 [2]仅仅使用IP分组对于应用进程来说是不够的。一个数据段要从源应用进程传送到目的地进程,必须规定目的地地址和应用进程的相应端口PORT(见“套接字”Socket)。IP分组仅包括目的地的地址,分组送到目的地机器后,网络控制程序不能确定把分组递交给哪一个进程。在UDP用户数据报中包含了一个目的地的端口,此信息是必须的,有了它,才能在目的地机器中把数据段递交到正确的应用进程。 [3]目前UDP在因特网中的主要应用有:远程文件服务(NFS);( IP电话()(SNMP(RIP(DNS 3.3, [UDP和TCP的校验和问题] UDP和TCP采用和的反码来计算16位字的校验和。 本题为了计算简单起见,只采用8位来计算。假定有以下的三个8位字节01110000请你写出计算其校验和的全过程。 (2)UDP为什么要采用和的反码,而不直接采用和本身? (3)采用这类反码方案,接收方如何检测出差错?能够查出1位错?能否查出2位错? [解答] {1} 左算式表明校验和为 + (2) 采用反码的主要原因是:在数据即使是全零的情况下, 校验和不再是全零,容易检测差错的发生。 (3)接收方可以把收到的数据再次作检验和,与送来的校验和比较判 + 别差错。加进位1回绕后] ,总能查出1位错; [反码] 还能查出大部分的2位错(存在不能查出的一些场合)。 RDT可靠数据传输协议 3.4,请简要小结:在可靠数据传输协议rdt2.0、 rdt2.1、rdt2.2和rdt3.0中,分别采用了什么措施来解决相应的传输差错的。 [解答] 这几个版本都在《停止等待》前提下工作: rdt2.0对付位差错----采用《检查和》, 使用反馈ACK/NAK,出错时发送方重传分组。rdt2.1和2.2对付ACK/NAK的位差错 --- 采用序号(0/1号)机制。 rdt3.0对付分组丢失 --- 采用《超时重传》机制。3.5 画出并简要说明rdt3.0接收方的FSM有限状态机。 [解答]不妨认为有两个状态:状态0和状态1。用动作0—1表示从状态0转向状态1;用动作0—0表示从状态0仍回到状态0;类似地可有动作1—0和动作1—1。 状态0:等待来自下层的0号分组 事件0—1:调用rdt3.0接收分组,且收到的数据分组正确未受损并且是SEQ#0分组 rdt_rcv(rcvpkt) notcorrupt(rcvpkt) has_seg0(rcvpkt) 动作0—1:从分组中提取出数据 extract(rcvpkt, data) 把数据递交到上层 deliver_data (data) 组成ACK0分组 sndpkt= make_pkt(ACK,0,checksum) 调用下层发送ACK反馈 udt_sent( sndpkt); 转向状态1 [等待1号分组] 事件0—0:调用rdt3.0接收分组,且收到的数据分组受损或者是SEQ#1分组

文档评论(0)

docman126 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档