计网-ch03-题目与解释

更新时间:2023-07-13 03:47:06 阅读: 评论:0

计⽹-ch03-题⽬与解释
版权声明:本⽂为博主原创⽂章,未经博主允许不得转载。 blog.csdn/Zyj061/article/details/50513198
复习题
6.请描述应⽤程序开发者为什么更倾向于选择在UDP上运⾏应⽤程序⽽不是TCP。
ANS:
应⽤程序开发者可能不想其应⽤程序使⽤TCP的拥塞控制,因为这会在出现拥塞时降低应⽤程序的传输速率。通常,IP电话和IP视频会议应⽤程序的设计者选择让他们的应⽤程序运⾏在UDP上,因为他们想要避免TCP的拥塞控制。还有,⼀些应⽤不需要TCP提供的可靠数据传输。
选路和转发的区别
ANS:超越梦想一起飞
路由是根据路由表查找到达⽬标⽹络的最佳路由表项,转发是根据最佳路由中的出⼝及下⼀跳IP转发数据包的过程。因此,路由选择是转发的基础,数据转发是路由的结果。
7.假定主机C上的⼀个进程有⼀个端⼝号6789的UDP套接字。假定主机A和主机B都⽤⽬的端⼝号6789向主机C发送⼀个UDP报⽂段。这两台主机的这些报⽂段在主机C上都被描述为相同的套接字吗?如果是这样的话,主机C上的进程是怎样区分源于两台不同主机的两个报⽂段的?
ANS:
是为相同的套接字,For each received gment, at the socket interface, the operating system will provide the process with the IP address to determine the origins of the individual gments.
8. 假定在主机C的端⼝80上运⾏⼀个Web服务器。假定这个Web服务器使⽤持久连接,并且正在接受来⾃两台不同主机A和B的请求。被发送的所有请求都通过位于主机C的相同套接字吗?如果它们通过不同的套接字来传递,这两个套接字都具有端⼝80吗?讨论和解释之。 ANS:
Web服务器是使⽤TCP连接,Web服务器对于不同的连接采⽤的是不同的套接字,因此A和B发出的请求通过的是在主机C不同的套接字上的,TCP连接的套接字是个四元组,由(源IP,源端⼝号,⽬标IP,⽬标端⼝号)组成,主机A和主机B都是向主机C 80端⼝上的Web服务器发出TCP连接请求,这两个套接字的⽬标端⼝号都是80,⽬标IP都是主机C的IP地址,因此这两个套接字中都具有端⼝号80。
放烟花英语
9.在rdt协议中,为什么要引⼊序号
ANS:
序号是为了解决冗余分组问题。在rdt2.0协议中,由于假设信道中可能发⽣⽐特差错,发送⽅根据接收⽅反馈信息的肯定确认(ACK)或否定确认(NAK)来确定分组是否被正确的接收,若分组没有被正确的接收,即收到NAK反馈则重传该分组,但是ACK与NAK本⾝会发⽣差错,⽽通常情况下处理受损ACK或NAK的⽅法是,当发送⽅收到含糊不清的ACK或NAK时,只需重发当前数据分组即可。这就是冗余分组,发送⽅⽆法事先知道接收到的分组是新的还是⼜⼀次重传。因此,在数据分组中添加⼀新字段,即序号,让发送⽅对其数据分组编号,于是,接收⽅只需检查序号即可确定收到的分组是否是⼀次重传。
10.在rdt协议中,为什么需要引⼊定时器
ANS:
在数据传送的过程中可能会发⽣丢包的情况,解决丢包的⽅法有很多种,⽽rdt3.0中采⽤的是让发送⽅负责检测和恢复丢包。假定发送⽅传输⼀个数据分组,或则该分组或接收⽅对该分组的ACK发⽣了丢失。这两种情况下,发送⽅都收不到应当到来的接收⽅的响应。如果发送⽅愿意等待⾜够长的时间以确定分组已丢失,则只需重传该数据分组即可。因此在rdt3.0中引⼊了定时器来确定发送⽅应该等待的时间,⼀旦超过了该定时器的时间,则发送⽅认为产⽣了丢包现象,再重发该分组。
14. 是⾮判断题
a. 主机A通过⼀条TCP连接向主机B发送⼀个⼤⽂件。假设主机B没有数据发往主机A。因为主机B不能随数据捎带确认信息,所以主机B将不向主机A发送确认。
b. 在连接的整个过程中,TCP的RcvWindow的长度不会变化
c. 假设主机A通过⼀条TCP连接向主机B发送⼀个⼤⽂件。主机A发送的未被确认的字节数不会超过接收缓存的⼤⼩
d. 假设主机A通过⼀条TCP连接向主机B发送⼀个⼤⽂件。如果对于这次连接的⼀个报⽂段序列号为m,则对于后继报⽂段的序列号必然为m+1
e. TCP报⽂段在它的⾸部中有⼀个RcvWindow字段
f. 假定在⼀条TCP连接中最后的SampleRTT等于1s,那么对于这⼀连接的TimeoutInterVal的当前值必定
g. 假定主机A通过⼀条TCP连接向主机B发送⼀个序号为38的4字节报⽂段。这个报⽂段的确认号必定是42
ANS:
a.错误;TCP连接中,如果主机B没有数据要发往主机,它就不能随数据捎带确认信息,但是,TCP要求B必须发送确认,因此B将向A发送
⾮捎带的确认信息。
b.错误;TCP在全双⼯连接中,连接双⽅的发送⽅各⾃保留⼀个接收窗⼝以提供流量控制。接收窗⼝是动态的,在连接的整个⽣命周期中是不断变化的。
c. 正确。亚洲页码
d.错误;顺序号的设定是以传送的字节流为单位,⽽不是以报⽂段为单位。⼀个报⽂段的顺序号
是该报⽂段中数据段的第⼀个字节在字节流中的编号
e.正确
f.错误;超时时间是EstimatedRTT 和SampleRTT的函数,不能由⼀个SampleRTT值决定。
床道授业g.错误;某些情况下(⽐如该报⽂段发送超时)接收⽅会发送⼀个重复的ACK,即确认号仍然是 38。
15. 假设主机A通过⼀条TCP连接向主机B连续发送两个TCP报⽂段。第⼀个报⽂段的序号为90,第⼆个报⽂段的序号为110.
a. 第⼀个报⽂段中有多少数据
b. 假设第⼀个报⽂段丢失⽽第⼆个报⽂段到达主机B,那么在主机B发往主机A的捎带确认报⽂中,确认号应该是多少?
ANS:
a.因为TCP把数据看成⼀个⽆结构的但是有序的字节流。因此TCP的序号是建⽴在传送的字节流上的。因此在第⼀个报⽂段序号为90,第⼆个报⽂段序号为110的情况下,我们可推出第⼀个报⽂段中的数据⼤⼩为110-90=20 Bytes,即第⼀个报⽂段中有20个字节数据
b. 若第⼀个报⽂段丢失,则发送⽅会在⼀定时间后没有收到接收⽅的反馈确认包,因此接收⽅会发送⼀个重复的ACK,确认号为90。
16. 考虑3.5节中讨论的Telnet的例⼦。在键⼊字符C数秒之后,⽤户⼜键⼊字符R。那么在⽤户键⼊字符R之后,总共发送了多少个报⽂段?这些报⽂段中的序号和确认号字段应该填⼊什么?
ANS:
3 个报⽂段.
到达网第⼀个报⽂段: q = 43, ack =80;
第⼆个报⽂段: q = 80, ack = 44;
第三个报⽂段: q = 44, ack = 81
习题
3.UDP和TCP使⽤反码来计算检验和。假设有下⾯3个8⽐特字节:0101 0101,0111 0000,0100 1100.这些8⽐特字节和的反码是多少(注意到尽管UDP和TCP使⽤16⽐特的字来计算检验和,但对于这个问题,应考虑8⽐特和。)写出所有⼯作过程。UDP为什么要⽤该和的反码。即为什么不直接使⽤该和呢?使⽤该和反码⽅案,接收⽅如何检验出差错?1⽐特的差错将可能检测不出来吗?2⽐特的差错呢?
ANS:
0101 0101 + 0111 0000 = 1100 0101
1100 0101 + 0100 1100 = 0001 0001
⼆进制反码为:1110 1110
检测错误,接收⽅添加四个字(原来的三个单词和校验和)。如果和包含⼀个0,接收⽅知道存在⼀个错误。1⽐特的差错可以被检测出来,但2⽐特的差错⽆法检测(例如,如果第⼀个单词最后的数字转换为0,第⼆个词的最后数字转换为1)。
18.考虑⼀个GBN协议,其发送⽅窗⼝长度为3,序号范围为1024.假设在时刻t,接收⽅期待的下⼀个有序分组的序号是k.假设其中的介质不会对报⽂重新排序。请回答以下问题:
a. 在t时刻,发送窗⼝内的报⽂序号可能是多少?论证你的回答
b. 在t时刻,在当前发送⽅收到的所有报⽂中,ACK字段的可能值是多少?论证你的回答
ANS:
a. Here we have a window size of N=3. Suppo the receiver has received packet k-1, and has ACKed that and all other preceeding packets. If all of the ACK’s have been received by nder, then nder’s window is [k, k+N-1]. Suppo next that none of the ACKs have been received at the nder. In this cond ca, the nder’s window contains k-1 and the N packets up to and including k-1. The nder’s window is thus [k-N,k-1]. By the arguments, the nders window is of size
3 and begins somewhere in the range [k-N,k].
b. If the receiver is waiting for packet k, then it has received (and ACKed) packet k-1 and the N-1 packets before that. If none of tho N ACKs have been yet received by the nder, then ACK messages with values of [k-N,k-1] may still be propagating back.
Becau the nder has nt packets [k-N, k-1], it must be the ca that the nder has already received an ACK for k-N-1. Once the receiver has nt an ACK for k-N-1 it will never nd an ACK that is less that k-N-1. Thus the range of in-flight ACK values can range from k-N-1 ~ k-1.
19.假定有两个⽹络实体A和B。B有⼀些数据报⽂要通过下列规则传给A:当A从其上⼀层得到⼀个请求时,就从B接收下⼀个数据(D)报
⽂。A必须通过A到B信道向B发送⼀个请求(R)报⽂。仅当B收到⼀个R报⽂后,它才会通过B到A信道向A发送数据(D)报⽂。A应当将每份D 报⽂的拷贝交付给上层。R报⽂可能会在A到B的信道中丢失(但不会损坏);D报⽂⼀旦发出总是能够正确交付。两个信道的时延未知且是变化的。
请设计⼀个协议(画出FSM),它能够综合适当的机制,以补偿A到B信道中可能出现的丢包,实现在A实体中向上层传递的报⽂。只采⽤绝对必要的机制。
ANS:
Becau the A-to-B channel can lo request messages, A will need to timeout and retransmit its request messages (to be able to recover from loss). Becau the channel delays are variable and unknown, it is possible that A will nd duplicate requests (i.e., rend a request message that has already been received by B). To be able to detect duplicate request messages, the protocol will u quence numbers. A 1-bit quence number will suffice for a stop-and-wait type of
request/respon protocol.
A (the requestor) has 4 states:
“Wait for Request 0 from above.” Here the requestor is waiting for a call from above to request a unit of data. When it receives a request from above, it nds a request message, R0, to B, starts a timer and makes a transition to the “Wait for D0” state. When in the “Wait for Request 0 from above” state, A ignores anything it receives from B.
“Wait for D0”. Here the requestor is waiting for a D0 data message from B. A timer is always running in this state. If the timer expires, A nds another R0 message, restarts the timer and remains in this
state. If a D0 message is received from B, A stops the time and transits to the“Wait for Request 1 from above” state. If A receives a D1 data message while in this state, it is ignored.
“Wait for Request 1 from above.” Here the requestor is again waiting for a call from above to request a unit of data.
When it receives a request from above, it nds a request message, R1, to B, starts a timer and makes a transition to the “Wait for D1” state. When in the “Wait for Request 1 from above” state, A ignores anything it receives from B.
“Wait for D1”. Here the requestor is waiting for a D1 data message from B. A timer is always running in this state. If the timer expires, A nds another R1 message, restarts the timer and remains in this state. If a D1 message is received from B, A stops the timer and transits to the “Wait for Request 0 from above” state. If A receives a D0 data message while in this state, it is ignored.
养乌龟放多少水
The data supplier (B) has only two states:
“Send D0.” In this state, B continues to respond to received R0 messages by nding D0, and then remaining in this state. If B receives a R1 message, then it knows its D0 message has been received
correctly. It thus discards this D0 data (since it has been received at the other side) and then transits to the “Send D1” state, where it will u D1 to nd the next requested piece of data.
“Send D1.” In this state, B continues to respond to received R1 messages by nding D1, and then remaining in this state. If B receives a R1 message, then it knows its D1 message has been received correctly and thus transits to the “Send D1” state.
21. 判断下⾯的问题,并简要地证实你的回答:
a.在SR协议中,发送⽅可能会收到落在其当前窗⼝之外的分组ACK.
b.在GBN协议中,发送⽅可能会受到落在其当前窗⼝之外的分组的ACK
c. 当发送⽅和接收⽅窗⼝长度都为1时,⽐特交替协议与SR协议相同
d. 当发送⽅和接收⽅窗⼝长度都为1时,⽐特交替协议与GBN协议相同
ANS:
a. 正确 ;Suppo the nder has a window size of 3 and nds packets 1, 2, 3 at . At the receiver
ACKS 1, 2, 3. At the nder times out and rends 1, 2, 3. At the receiver receives the duplicates and re-acknowledges 1, 2, 3. At the nder receives the ACKs that the receiver nt at and advances its window to 4, 5, 6. At the nder receives the ACKs 1, 2, 3 the receiver nt at . The ACKs are outside its window.
b.正确;和a⼀样的场景康熙字典繁体
c. 正确;
d.正确;Note that with a window size of 1, SR, GBN, and the alternating bit protocol are functionally equivalent. The window size of 1 precludes the possibility of out-of-order packets (within the window). A cumulative ACK is just an ordinary ACK in this situation, since it can only refer to the single packet within the window.
23. 考虑从主机A向主机B传输L字节的⼤⽂件,假设MMS为1460字节。
a. 在TCP序号允许范围内,L的值最⼤是多少?TCP的序号字段为4字节
b.对于你在(a)中得到的L,求出传输此⽂件要⽤多长时间。假定运输层、⽹络层和数据链路层总共加在每个报⽂段⾸部上的长度为66字节,传输分组的链路速率为10Mbps。不采⽤流量控制和拥塞控制,
因此主机A能够⼀个接⼀个、连续不断地发送报⽂段
ANS:
a. TCP 的序号为32bit,因此TCP序号表⽰范围为0~ bit,故能表⽰的L的最⼤值为
b. 结合a可知,主机A向主机B传输的⽂件的报⽂段gment数⽬为,则所有分组的总的头部信息⼤⼩为66*2941758=194156055 Bytes
故链路总所要传递的总信息数为
因此需要
24.主机A和B通过⼀个TCP连接通信,并且主机B已经收到了来⾃A的直到字节248的所有字节。假定主机A随后向主机B发送两个报⽂段。第⼀个和第⼆个报⽂段分别包含了40和60字节的数据。在第⼀个报⽂段中,序号是249,源端⼝号是503,⽬的端⼝号是80. ⽆论何时主机B接收到来⾃主机A的报⽂段,它都会发送确认。
a. 在从主机A发往B的第⼆个报⽂段中,序号、源端⼝号和⽬的端⼝号各是什么?
b. 如果第⼀个报⽂段在第⼆个报⽂段之前到达,在第⼀个到达报⽂段的确认中,确认号、源端⼝号和⽬的端⼝号各是什么?
c. 如果第⼆个报⽂段在第⼀个报⽂段之前到达,在第⼀个到达报⽂段的确认中,确认号是什么?
d. 假定由A发送的两个报⽂段按序到达B。第⼀个确认丢失了,⽽第⼆个确认在第⼀个超时间隔之后到达。画出时序图,显⽰这些报⽂段、发送的所有其他报⽂段和确认。(假设没有其他分组丢失。)对于每个报⽂段,标出序号和数据的字节编号;对于增加的每个确认,标出确认号。
ANS:
a. 序号为288,源端⼝号为503,⽬标端⼝号为80
b.确认号为288,源端⼝号为80,⽬标端⼝号为503
c.确认号为249
d.
31. 考虑下图中TCP 窗⼝长度作为时间的函数。
假设TCP Reno是⼀个经历如上图所⽰⾏为的协议,请回答下列问题。在各种情况下,简要地论证你的回答。
a. 指出当运⾏TCP 慢启动时的时间间隔
b. 指出当运⾏TCP拥塞避免时的时间间隔
英语国家线
c. 在第16个传输周期之后,报⽂段的丢失是根据3个重复确认还是根据超时检测出来的?
d. 在第22个传输周期之后,报⽂段的丢失是根据3个重复确认还是根据超时检测出来的?
e. 在第⼀个传输周期⾥,Threshold的初始值设置为多少?
f. 在第18个传输周期⾥,Threshold的值设置为多少?
g. 在第24个传输周期⾥,Threshold的值设置为多少?
h. 第70个报⽂段在哪⼀个传输周期内发送?
i. 假定在第26个发送周期后,通过收到3个冗余ACK 检测出有分组丢失,那么拥塞的窗⼝长度和Threshold的值应当是多少?
ANS:
a. 慢启动的时间间隔为[1,6]和[23,26]
b. 拥塞避免的时间间隔为[6,16]和[17,22]
c. 由于ConWin的⼤⼩是变为当前的⼀半,因此报⽂段的丢失是根据3个重复确认检测出来的
d. 由于ConWin的⼤⼩是变为⼀个MSS,因此报⽂段的丢失是根据超时检测出来的
e. 因为拥塞窗⼝在达到32*MSS之后就开始拥塞避免阶段,因此Threshold的初始值为32* MSS
f. 在第16个周期发⽣第⼀次丢包之后ConWin的值将为原来的⼀半,变成21*MSS,接着从[17,22]为拥塞避免时的时间间隔,因此在第18个传输周期⾥,Threshold的值为21*MSS
g. 在第22个传输周期时ConWin⼤⼩为26,此时⼜发⽣丢包事件,因此Threshold变为ConWin的⼀半为13* MSS,因此在第24个传输周期⾥,Threshold值为13*MSS
h. 在第6个传输周期时,已经发送了1+2+4+…+32=63个报⽂段,⽽在第7个传输周期ConWin⼤⼩为33,63+33=96>70,因此第70个报⽂段是在第7个传输周期内传送的
i. 在第26个传输周期时,拥塞串⼝长度ConWin⼤⼩为8*MSS,因此当收到3个冗余ACK检测出有分组丢失时,将启动拥塞避免周
期,Threshold为当前ConWin⼤⼩的⼀半,即4*MSS
34. 参考图3-55,该图描述了TCP的AIMD算法的收敛特性。现在假设TCP不采⽤乘性减,⽽是采⽤某⼀常量递减。所得的AIAD算法将收敛于⼀种平均共享算法吗?使⽤类似于图3-55中的图来证实你的结论

本文发布于:2023-07-13 03:47:06,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1093676.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:发送   接收   分组   确认
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图