计算机网络,自顶向下方法与Internet特色课后习题答案第三章中文版要点

上传人:小** 文档编号:66135649 上传时间:2022-03-26 格式:DOC 页数:24 大小:541KB
返回 下载 相关 举报
计算机网络,自顶向下方法与Internet特色课后习题答案第三章中文版要点_第1页
第1页 / 共24页
计算机网络,自顶向下方法与Internet特色课后习题答案第三章中文版要点_第2页
第2页 / 共24页
计算机网络,自顶向下方法与Internet特色课后习题答案第三章中文版要点_第3页
第3页 / 共24页
点击查看更多>>
资源描述
WRI研究生0601TCP的拥塞控制,因为这IP电话和IP视频会议UDP上,因为他们想要3复习题1. P127源端口号为y,目的端口号为x。P 131应用程序开发者可能不想其应用程序使用 会在出现拥塞时降低应用程序的传输速率。通常, 应用程序的设计者选择让他们的应用程序运行在WRI研究生0601WRI研究生0601避免TCP的拥塞控制。还有,一些应用不需要TCP提供的可靠数据传输。WRI研究生06012. P131是的,应用程序开发者可以将可靠数据传输放到应用层协议中完成 但是这需要相当大的工作量和进行调试。3. a) false b) false c) true d) false e) true f) false g) false4. a) 20 bytes (110-90=20bytes) b) ack number = 90P155 第一个包丢失,发送第一个包之前的一个包的ACK5. P155 3个报文段,第一个报文段,客户机到服务器,seq= 43, ack= 80;第二个报文段,服务器到客户机,seq= 80, ack= 44;第三个报文段,客户机到服务器,seq= 44, ack= 81。6. R/2P180 R/27. P176错误,其阈值将被设置为拥塞窗口目前值的一半(乘性减)习题1. A S源端口号:467目的端口号:23b) B S源端口号:513目的端口号:23c) S A源端口号:23目的端口号:467d) S B源端口号:23目的端口号:513e) Yes.f) No.2. P128假设主机A,B,C的IP地址为a,b,c. (a,b,c各不相同)到主机A:源端口= 80,源IP地址=b,目的端口= 26145,目的IP地址=a;到主机C:左边进程:源端口=80,源IP地址=b,目的端口= 7532,目的IP地址=c;到主机C:右边进程:源端口=80,源IP地址=b,目的端口= 26145, 目的IP地址=c;3. P132 UDP检查和01010101+011100001100010111000101+01001100000100011 的补码=11101110为了检测错误,接收方将四个字相加(三个原始字和一个检测字)。如果结果包含0,那么接收方就知道分组中存在错误。所有的1bit错误都将被检测出来,但是年个个比特的错误有可能被忽略(例如,如果第一个字的最后一个数变为0,并且第二个字的最后最后一个数变为1)。4. P138假设发送方处于“等待来自上层的调用1”状态,接收方处于“等待来自下层的1”。发送方发送一个带有序列号1的分组,然后转到“等待ACK或NAK1 ”的状态等待 ACK或NAK。假设现在接收方正确接收 到带有序列号1的分组,发送一个 ACK,然后转入“等待来自下层的0“状态,等待带有序列号0的分组。然而,ACK出错了。当rdt2.1发送方接收到出错的ACK,它就重发带有序列号1的分组。然而,接收方在等待带有序列号0的分组并在它没有收到带有序列号0的分组时一直发送NAK。因此发送方会一直发送带有序列号1的分组,这时接收方会一直发送这个分组的NAK信息。两边都不会从这个状态中跳出,进入了死循 环。5. P140为了回答这个问题,首先考虑为什么我们需要序列号。我们看到发 送方需要序列号以便于接收方能够区分出一个分组是不是已经接收到的分组的重复。考虑 ACK信息,发送方不需要这个信息(也就是一个ACK的序列号)来告诉发送方检测到一个重复的ACK.因为当他接收到原始ACK信息后它就转入下一个状态,所以一个重复的 ACK信息对rdt3.0的发送方是很明显的。重复的ACK信息不是发送方需要的ACK信息,因此被red3.0发送方忽略了。6. P139 rdt3.0协议的发送方与rdt2.2协议的发送方的不同之处在于引入了超 时机制我们已经看到超时机制地引入增加了从发送方到接收方数据流中出现重复分组地可能性.然而,rdt2.2协议地接收方已经能够处理重复分 组.(在rdt2.2中当接收方发送地 ACK丢失时,发送方就会重传旧的数据这 时接收方就会接收到重复的分组.)因此rdt3.0中的接收方同rdt2.2中的接收方相同.7. Suppose the protocol has been in operation for some time. The sender is instate“ Waritcall from above” (top left hand corner) and the receiver is instate“ Wait for 0 frdDmlow ” . The scenarios for corrupted data and corruptedACK are shown in Figure 1.WRI研究生0601WRI研究生0601S tender scnda MOSuierA1gendBl re ACKTimecut: senderre&exids K1Figure 1: rdt 3.0 scenarios: corrupted data, corrupted ACKACKPaclLeifeCfttveilesraids Last ACK fAl)Cnmrtcddata8. P138这里,我们加入一个定时器,它的值比我们已知的往返传播时延大我们在”等待ACK或NAK0 ”和”等待ACK或NAK1 ”状态各加入一个超时事 件.如果超时事件出现,那么最后传输的分组将被重传让我们看看为什么这个协议仍然能和rdt2.1的接收方协同工作假设超时是由数据分组的丢失引起的,比如,一个从发送方到接收方的信道上的分组丢失在这种情况下,接收方从没有接收过之前传送的分组,从接收方的角度看,如果超时重传的分组被接收到,它看起来就和最初传输的分组被接收是一样的.现在假设一个ACK丢失.接收方最终将由于超时重传分组.但是这个重传动作是和当一个错误 ACK出现时的重传动作是完全相同的.因此当出现ACK丢失或出现错误 ACK时,发送方的重传动作是一样的.rdt2.1的接收方已经能 够处理出现错误 ACK的状况.9. 协议仍将工作,因为如果接收到的带有错误的分组实际上被丢掉的话,重传就会发生(从接收方的观点看,这两种情况哪一个会发生,或者同时发生是 不可知的).要对这个问题进行更进一步的讨论,就必须考虑到定时器超时过早发生的情况.在这种情况下,如果每个超大分组被确认,并且每个接收 的超大分组确认信息导致另一个超大分组被发送,当n趋近于无穷时,分组n被发送的次数将无限增加.10.oldversdion of M0 accepted!11.在仅使用NAK的协议中,只有当接收到分组 x+1时才能检测到分组 x的 丢失.也就是说接收方接收到 x-1然后接收到x+1,只有当接收方接收到 x+1 时才发现x的丢失.如果在传输x和传输x+1之间有很长时间的延时,那么 在只有NAK的协议中,x的修复要花费很长的时间另一方面,如果要发送 大量的数据,那么在只有NAK的协议中修复的速度将很快并且,如果错误 很少,那么NAK只是偶尔发送,并且从不发送 ACK.与只有ACK的情况相 比,只有NAK的情况将明显减少反馈时间.12.lt takes 8 microseconds (or 0.008 milliseconds) to send a packet. in order for the senderto be busy 90 percent of the time, we must have util = 0.9 = (0.008 n) / 30.016 or n approximately 3377 packets.13. 在GBN可靠数据传输协议中,发送方持续发送分组直到它接收到一个NAK.如果到n-1之前的分组已经被正确的接收,这个NAK只是为分组n 产生.也就是说,n总是未被接收的分组的最小序号 .当发送方接收到分组 n 的NAK,它从分组n开始重传.这和书上讲的GBN协议相类似,除了在流水 线上没有未被确认分组的最大数.注意发送方不能确切的直到有多少分组未被确认.如果当前的序号是 k,最后一个NAK是分组n的,那么在流水线 上或许就有k-(n-1)的分组未被确认.还要注意接收方只有在接收到更高序 列号的分组时才能确认分组n的丢失.(接收分组的序列号的空缺告诉接收方位于孔雀位置的分组丢失).因此,对于接收方,当数据速率低时,(比如,两 个分组之间的时间比较长),将会比数据速率高时花费更长的时间来确认分 组的丢失.14. 在我们的解决方案中,发送方在接收到一对报文的ACK(seqnum和seqnum+1)后才开始发送下一对报文.数据分组携带有两 bit的序列码.也就 是说,游泳的序列号是0,1,2,3.ACK信息携带已经确认的数据分组的序列号 接收方和发送方的 FSM由下图所示.注意发送状态记录:(1)当前对没有收 到ACKs;(2)只收到seqnum的ACK或只收到seqnum+1的ACK.在本图中, 我们假设seqnum由0起始,发送方已经发送第一对数据.ndt scvCmcvpikt) & notcorra pt(nrvpirt) 晶& has ceqnumwqnum EKnijmn2 udtndpkt, seq nuini)Ldt sendfsnclpkl!. 5eqnum 1) TBari tirwr- -rdf rcvTncvpkt) noicrrapK rrv pkt) &A. has acfc(seq nuni)nctcorrupKncvpid) has achfseqnum 1)(rdt rcvfrEvpkt) &. ncrtccirirupb( kv pkt) & ha 兮-ack(9K|nu m11 (reft rcrcvpkt) coiruiptrcvpkt)rdt rEYfntvpkp nct-orrdptfrcvpkt) &JL hE achjfwqnuini)创冲turn teqffium*2 udt -ivnef-End pht. -srq nurn) udt sendfsnd pkt, seq num i start timerudt sendftndplrt,eqnurri) slart timerWRI研究生0601WRI研究生0601receivernil We沖k 3 ncrbcoriTip*叩罚&.ha! 5qhurn C)(rxi临惧涯朋袖)魁udl 4end(ACK, uqriurrt sendfACK, leqruma 1Jdt sefd(ACK, x)udl ndA.C K.9rq n um eqnumrdt rcv(ftvpkt) Ul CtU册尼叩毗Ji &L h-H icqeq rwm)(rdt rcw(PEpki)& noicor叩 1(皑师炯 也&佃呻盘j &.X 卜 s eq num 4 昌! sieqnijnrM sit nw(rcplii)芯应 fkorrujrtrcpkt) has eqeqnum)rdt reXcrpM)&辰 noiccirnjpitiicirpM;) 如 励q(seq nu e由:ait for X. Stsait foridddataMt rcnrvpktl M corrupit(ir pi1t)indl rrv(rEvpk1J tdL nDkcrruipliTvphI) h scqt seqn urn)udt wndtfi.CK. teqinu m)pair Ofydt crndfACK, -Grqnyrri * ;ja it for叫Tdata:)notcorrupif rrypkt) !5cqnum ;)rdf rM; ftv pkt ) 3 亡Dhrupi匱 Rd)udl H-nd(ACK.-GC2w.19. a)正确假设发送方窗口大小为3,在 t0时刻发送分组1,2,3.在 t1(t1t0)时刻接收方确认1,2,3.在 t2(t2t1)时刻发送方计时器超时,重发1,2,3.在 t3时刻 接收到重复的分组并重新确认1,2,3.在t4时刻发送方接收到接收方在t1时刻发送的ACK,并将其窗口前移到 4,5,6.在t5时刻发送方接收到接收方在t2发送的ACK1,2,3.这些ACK是在当前窗口之外的报文的ACK.b) 是的,本质上同a中是一样的.c) True.d) 正确.当窗口尺寸为1时,SR,GBN,的比特交替协议在功能上相同 窗口尺 寸1排除了失序分组的可能性.在这种情况下,一个累积的ACK就是一个普 通的ACK.因为在窗口内它只能与一个分组有关 .20. 有232 = 4,294,967,296个可能的序列号.a) 序列号不会因报文数增加而有增量,而是随发送数据比特数量的增加而有增量.所以MSS(最大报文长度)的大小与问题无关.能够从A发送到B的 文件的最大尺寸能被 2324.19 Gbytes所描述.b) 报文数是:232/1460=2,941,758.每个报文增加66bytes的首部,所以总共 增加了 2,941,758 X 66= 194,156,028 bytes的首部.要传输的总比特数为 232 +194,156,028 = 3,591 10Xbits因此使用10Mbps链路需要10X106=3,591秒=59分钟来传输文件.21. Denote EstimatedRTT (n) for the estimate after the nth sample.EstimatedRTT (1) = SampleRTT 1EstimatedRTT =xSampleRTT 1 + (1 - x)SampleRTT 2EstimatedRTT =xSampleRTT (1 )+(1-x)xSampleRTT 2 + (1 - x)SampleRTT 32=xSampleRTT 1 + (1 - x)xSampleRTT 2+ (1 - x) SampleRTT 3 EstimatedRTT (4) = xSampleRTT 1 + (1 - x)EstimatedRTT =xSampleRTT 1 + (1 - x)xSampleRTT 2+ (1 - x)2 xSampleRTT 3 + (1 - x) 3SampleRTT 4b)tt-1EstifnatedRTT 二工送(1 丹刑p怎RJTJ-i-1 ms: 感觉应该是j-1c)Es 斤科 m君浪T =刀(1 一 xY SantpleRTTi1 一工M1 g=二N审弘額p&RIT9冋22. 让我们看看如果TCP测量重传报文的SampleRTT会出现什么情况.假设源发送分组P1,P1的定时器超时,源接着发送P2-同一个分组的一个新的 拷贝.进一步假设源测量P2的SampleRTT(重传的分组).最后假设在传输P2后很快P1的ACK到达.源将错误的把这个 ACK当作P2的ACK,并计 算出错误SampleRTT值.23. SendBase:是最近未被确认的字节的序号.SendBase-1是接收方已正确按序接收到数据的最后一个字节的序号.LastByteRcvd:从网络中到达的并且已经放入主机B接收缓存中的数据流最后一个字节的编号.在任一给定时刻t,SendBase-1是发送方知道的已经被接收方正确的按序接收的最后一个比特的序列号.在t时刻被接收方(正确的和按序的)接收到 的真正的最后一个 byte要比在链路上传输的 ACK要大所以SendBase-1 WLastByteRcvd24. y:发送方接收到的最新 ACK的值在t时刻,发送方接收到的 ACK的值为y,据此发送方可以确认接收方已经 接收了序号到y-1的数据.如果y 5endBase或在线路上有其他的 ACK,在 t时刻接收方(正确的和按序的)接收到的真正的最后一个byte要比y-1大.所以 y-1 WLastByteRvcd25. 假设发送了分组n,n+1,n+2,并且分组n被接收并被确认.如果分组n+1和n+2在端到端的路径上被重新排序)也就是说,被以n+2,n+1的顺序接收),那么在收到第一个冗余 ACK就重传的策略下,在接收到分组n+2时将产生 一个分组n的冗余ACK,这将引起重传发生.在接收到3个冗余ACK才执 行重传的策略下,只有在分组n后面的两个分组被正确接收,然而分组n+1 没有被接收的情况下,重传才会发生设计三个冗余 ACK策略的设计者可 能感觉等待两个分组(而不是一个)是在当需要时触发快速重传和当分组 重新排序时不进行过早的重传之间权衡的结果26. P171如果在图3.45b中到达速率的增加超过了R/2,那么到达队列的总到达速率将超过队列的容量,这将导致随着到达速率的增加包的丢失也随之 增加.当到达速率=R/2时,每3个离开队列的分组中就有1个是重传分组.随着丢失的增加,甚至是离开队列的分组的较大分片都将是重传数据.即使是将离开队列的最大离去速率给定为R/2,并给定随到达速率的增加1/3或更多的数据将被传输.成功递交数据的吞吐量也不会超过心t .同样的原因,如果离开队列的分组中有一般的分组为重传分组,并且输出分组的最大速率是 R/2,那么 入山的最大值是(R/2)/2 or R/4.27. P178收到3个冗余ACK后,TCP将拥塞窗口减小一般,然后线性地增长。但是超时事件发生时,TCP发送方进入一个慢启动阶段,即它将拥塞窗口设置为1MSS ,然后窗口长度以指数速度增长。拥塞窗口持续以指数速度增长,知道 CongWin达到超时事件前窗口值地一半为止。此后, CongWin以线型速率增长,就像收到3个冗余ACK 一样。a)运行TCP慢启动的时间间隔是1,6和23,26b)运行TCP避免拥塞时的时间间隔是1,6和17,22c)在第16个传输周期后,通过3个冗余ACK能够检测到一个报文段丢失。如果有一个超时,拥塞窗口尺寸将减小为1。d)在第22个传输周期后,因为超时能够检测到一个报文段丢失,因此拥塞窗口的尺寸被设置为1。e)Threshold的初始值设置为32,因为在这个窗口尺寸是慢启动停止, 避免拥塞开始。f)当检测到报文段丢失时,threshold被设置为拥塞窗口值的一半。当在第16个周期检测到丢失时,拥塞窗口的大小是42,因此在第18个传输周期时threshold值为21。g)当检测到报文段丢失时,threshold被设置为拥塞窗口值的一半。当在第22个周期检测到丢失时,拥塞窗口的大小是26,因此在第24个传输周期时threshold值为13。h)在第一个传输周期内,报文段1被传送;在第二个传输周期发送报文段2-3;在第3个传输周期发送报文段 4-7,在第四个传输周期发送 8 15;在第五个传输周期发送 16 31;在第六个传输周期发送 32 63;在第7个传输周期发送64 96。因此,报文段70在第7个传输周期内发 送。i)当丢失出现时拥塞窗口和 threshold的值被设置为目前拥塞窗口长度8的般。因此新的拥塞窗口和threshold的值为428.WRI研究生0601FullbandwidthMJtilizationXlineequal bandwidth shareFullbandwidth utilizationK line /equal bandwidth 2 shareConnection J throughput RConnectlion 1 througlnpurt R(3)linear incra, with equallinear decrease(b) linear incrfiascr connection 1eercae 怎 twke that of ccrtnecfloit 2Figure 4: Lack of TCP convergence with linear increase, linear decrease在图4 (a)中,连接1和连接2因为丢包导致的线性减小的速率和他们线性增加的速率相同并相等。在这种情况下,吞吐量不会从AB间相连的 线段上移开。在图4( b)中,因丢包导致的连接1和连接2线性减小的速率之比为2:1。也就是说,不论何时出现丢包时,连接1窗口减小量是连接2的两倍。我们看到最终,在经过足够多的丢包和随后的增加后, 连接1的吞吐量将趋向0,全部链路带宽将被分配给连接2。29. 如果TCP是停等协议,那么将超时间隔加倍作为拥塞控制机制已经足够。然而,TCP使用流水线(因此不是停等协议),这允许发送方有数倍的 未被确认的报文段。当端到端路径高度拥塞时,将超时间隔加倍不会阻 止TCP发送方在第一次发送时发送大量报文段。因此就需要一种拥塞控 制机制,当出现网络拥塞的迹象时,阻止“接收来自上层应用的数据”30. 在这个问题中,因为接收方的接收缓存能够容纳整个文件,因此不会出现接收方溢出的危险。并且,因为不会出现分组丢失和定时器超时,TCP的拥塞控制不会抑制发送方,所以不需要拥塞控制。然而,主机A的进程不会持续的向套接字发送数据,因为发送方的缓存将很快被填满。一 旦发送方缓存被填充满,进程就会以平均速率R 3/4W。所以 L8/3 W2 or W(8/3L) 1/2。因平均吞吐量=3/4(8/3L) 1/2 MSS/RTT=1.22MSS/RTT(L) 1/232. P180考虑一条具有 1500字节报文段和 100ms RTT。从P180的TCP吞吐量等式,我们得到:10 Gbps = 1.22 x (1500x 8 bits)/ (0.1 sec x srqt(L)Or sqrt(L) = 14640 bits / (10 9 bits) = 0.00001464Or L = 2.14 * 10 -1033. 将在t1时刻的CongWin和Threshold值用在t2时刻的优点是 TCP不需要经过慢启动的避免拥塞阶段即可直接跳到在t1时刻得到的吞吐量值。使用这些值的缺点是它们可能已经不正确了。比如,如果路径在t1到t2的时间内变得更拥塞了,发送方会将大量的窗口内的有用报文段发送到已 经更加拥塞的路径上去。34. P183最小传输时延是 2RTT+O/R。取得该时延的最小窗口长度W为:Rnun latencyW28 Kbps28_77 sec2100 KbpsS,2 sec41 Mbps1 sec2510 Mhps0.28 see23535. a)K为涵盖对象的窗口的数量。(P186)K = number of windows that cover the object=mink : 3 0 + 31 + A +3k -1 O / S=mink:(1-3 k)/(1 -3) O / S=mink : 3 k 1 + 2O / S=log3(1+2O/S)b) Q is the number of times the server would idle for an object of infinite size.Q为当对象包含无数个报文段时服务器可能停滞的次数。Q=maxk: RTT+S/R-S/R3 k-1 =1+log 3(1+RTT/(S/R) c)latency = + 2H7T + VRk-l=2JE7T + PR7T + S/R)-36.RO/RPMinLatencyLatency with slow start2SKbpP 29 25 s3 131.25 sec33.18 sec100 KbpsAl9s51049 sec13.86 sec1 Mbps819 msec72.81 sec9.26 sec10 Mbps82 msec72 sec9 sec设S=536字节P=minQ,K-1Q=1+log 2(1+RTT/(S/R)K=log 2(1+2O/S)P-1)S/R答案计算有误Min latency=O/R+2RTTLatency with slow start=2RTT+O/R+PRTT+S/R-(2RO/RPMin latencylatency with slow start28Kbps28.6s330.632.99100 Kbps1Mbps10Mbps37.a) Tb) Tc) Fd) F38.a)Q = nmxi:/?Tr + -2*1 0J? R= inaxsklogj Ub)latency 二 _ 十 2RTT + 另RL-1Or f 冒=4-2/tTT + y RTT+一一 3*1 = + 2J?77+ 77 4-5/7?)- 左式中3改为2 P为实际停滞次数。X +=max(x,0)时延=2RTT+O/R +E k=iK-1S/R+RTT-2 k-1 S/R+由P185页的时延等式,我们注意到只有在 kWQ时,方括号中的值才不 等于0。因此我们可以用 P代替K-1,并移除的限制。将恒等式应 用到等式中得到希望的结果。39.P186当服务器发送一个报文段,它接收到ACK需要等TS / R + RTT 第k个窗口的传输时间为(S / R)2k -1.第k个窗口的停滞时间为: RTT-2 .RRWRI研究生0601可能的停滞次数Q为:Q max*=: 2*-1 T 4-RTTs7r*WRI研究生0601-: k log2+ 1曾IS/R)服务器停滞的实际次数P = min(Q, K -1),时延为:latency = 2RTT +-+j J?2T + -21 Jn 1n n胆 2 I2C/简化为:htencv =2-Srr -F+Z3! J;ZT+|-(2 -1)-4-(Z-l)-R I R RR40.The fraction of the response time that is due to slow start is ( P188) y/(x+y) where x = 2 RTT +O/R and y = P (RTT + S/R)-(2P T) S/R
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!