计算机网络马宏伟第五章课后答案,马宏伟《计算机网络a》chapter3-作业解答

a7f4a3f590493a1e451dd952a488fd7c.gif 马宏伟《计算机网络a》chapter3-作业解答

(10页)

62a01bd97500eabb305672689fb8b72a.png

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

9.9 积分

第三章作业及解答1. 两个应用进程使用UDP交换数据。设发送端传输三个字节数据给接收端进程, 三个字节数据为:(01010101 10101010 00110011)20假设发送端进程的端口号为 1024,接收端进程的端I」号为80。为简化问题,我们假设只有UDP Segment的 头部和数据两部分参与校验和的计算(实际上,UDP校验和计算中还包括一个伪 头部)。1)以十六进制形式描述计算校验和之前的UDP Segment<>注意,UDP Segment总长度必须是偶数。不足的,补一个全零字节。答:根据 RFC768-User Datagram Protocol 规定,如果 UDP Segment 的总 长度为奇数字节,需要补一个全零的填充字节,以使参与Checksum运算 的字节数为偶数。但UDP Segment头部的Length字段的值为Segment的 实际长度,并不包含这个填充字节(填充字节只用做Checksum计算)。源端 口号为 1024,即(00000100 00000000)2, (0400)hex;目的端口号为 80,即(00000000 01010000)2, (0050)hex:长度为11字节(8字节头部,3字节数据),即(00000000 00001011)2,(000B)hex;Checksum 全为 0,即(00000000 00000000)2, (0000)hex;三字节数据加上一个填充字节,Segment的数据部分为(01010101 10101010 00110011 00000000)2,(55AA3300)hcx因此,在计算Checksum前,Segment的十六进制形式为:04000050000B000055AA3300源端口号目的端口号Segment 长度2)UDP Segment校验和的计算过程及结果。 答:第一步,求和:00000100 0000000000000000 01010000 00000100 0101000000000000 00001011 oooooioo oiononoooooooo oooooooo00000100 01011011 +01010101 1010101001011010 00000101 +00110011 oooooooo10001101 00000101校验和字段(其实加不加对结果没影响)前两个字节的数据第三字节数据和填充字节第二步:对和按位取反,得到校验和:0111001011111010注意:UDP计算checksum的方法如下:1)决定是否需要在数据最后添加一个全0字节,以便使UDPSegment的总长度为偶数字节。但添加的这个字节并不计入总长 度;2) Checksum字段的值初始化为(0000) hex;3)将整个Segment(包含头部和数据)分成2字节(16位)的单元;4) 求所有2字节单元的和,产生的进位要加在和上;5) 将最终求得的和按位取反,得到checksumo2. 假设,主机C中Web服务器进程的端口号为80,该Web服务器使用持续 (persistent)连接,正在接收来自不同主机A和B的请求。这些请求是被发向主机C的同一个Socket吗?女口果是发向不同的Socket,这些Socket均使用端口 80吗?讨论并解释。答:对于每个持续连接,Web服务器将创建单独的^connection socket”。每个 connection socket由四元组(源地址,源端口号,目的地址,目的端口)标识。 当主机C收到一个IP数据报(datagram),将检查数据报中这四个字段的值来确 定将Segment交给哪个Socket。因此,A和B的请求将被交给不同的Socketo两个Socket的标识有一个共 同点:即两个socket的目的端口号相同,均为80,但两个Socket的源IP地址 不同,两个Socket的源端口号通常情况也不同(由于这两个Socket分别位于主机 A 和 B)。 3. 一个简单的同步消息交换办议。考虑两个网络实体(A和B)Z间使用完美的双 向信道连接(发送的任意消息将被正确地接收,分组不会损坏、丢失、乱序)。A 和B交替地向对方发送数据消息:最初,A向B发送消息;然后B必须向A发 送消息;然后A必须向B发送消息,以此类推。画出该协议的FSM(A和B分别 描述)。不用考虑可靠传输机制,主要描述反映两个实休同步行为的FSMo可以 使用下述的事件和动作,它们与课本第138页的rdtl.O的含义相同。rdt_send(data), packet=make_pkt(data), udt_send(packet); rdt_rcv(packet), extract(packet, data), delver_data(data) o协议必须保证A和B发送消息的严格交替关系,以及指明A和B的FSM的 初始状态。答:Asndpkt=mAke_pkt(data) udt_send(sndpkt)Walt for call from aboveWalt for msg from Brdt send(data)rdt_3©nd(data)sndpkt (data)udt _send (sndpkt)jrWalt forWalt forcall frommsg fromaboveArdt_rcv(packet) extract(packet z data) deliver_data(data)rdt_rcv(packet)extract(packet# data) de1ive工_da ta(data)4.课本第192页,习题14o答:设信道的利用率为Usender,信道的折返时间为RTT秒,分组长度为L(bitS), 信道的传输速率为R(bps),窗口长度为N。则信道利用率Usender为:N^L/RU皿_ RTT^LIR如果要求 Uscnder>=0.9,则 N*L/R/(RTT+L/R)>=0?9即: N > =0?9(RTT*R/L + 1)根据题意,RTT=30ms=0.03s,分组长度L为8000 bits,链路速率为l"bps。 将这些数值代入上式,得到: N > =0.9(0.03*109/8000+l)N> =3375.9因此,如果要使信道利用率超过0?9,窗口长度至少为3376个分组。 注意:窗口长度的单位是分组的数量。5.课本第192页,习题18o答:假设窗口长度为N,本题中N=3。a) 考虑两种极端情况:(1) 根据题意,Receiver正在等待第k号分组,意味着k?l及以前的分组 已经被Receiver成功收到,并且对第k-1, k-2, k?3号的确认已经发 送。极端情况下,在时刻t. 关 键 词: 计算机网络a 宏伟 计算机网络 chapter3 作业 解答

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

关于本文

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值