计算机网络习题:传输层
一、TCP【1】TCP交互中的序号、ack号动态变化情况解析:由第一个数据段的开始序号为200往后推,因为第一个数据段长度是300,所以第二个数据段开头序号是500…同理,故第二个数据段结尾序号是999, 那么主机乙给主机甲的确认帧应为ack = 1000,指的是期待接收的下一个数据段的序号。【2】TCP拥塞控制我们先稍微回顾下慢开始、快重传算法:由慢开始算法,逐步增加cwnd,当到达门限值时,进
一、TCP
【1】
TCP交互中的序号、ack号动态变化情况
解析:
由第一个数据段的开始序号为200往后推,因为第一个数据段长度是300,所以第二个数据段开头序号是500…同理,故第二个数据段结尾序号是999, 那么主机乙给主机甲的确认帧应为ack = 1000,指的是期待接收的下一个数据段的序号。
【2】
TCP拥塞控制
我们先稍微回顾下慢开始、快重传算法:
由慢开始算法,逐步增加cwnd,当到达门限值时,进入线性的增长。
如果遇到了超时重传,视为网络发生了拥塞,立刻将cwnd降为1,然后开始慢开始算法…
如果收到了3个冗余ACK,那么就直接执行快重传算法,即将当前cwnd值除以2作为新的门限值,然后开始线性增长。这样就可以在超时计时器到时之前重传,提高效率。
【例题2】
【3】
TCP流量控制
发送窗口 = min{接收窗口、拥塞窗口}
我们分析一下,刚开始发送窗口 = 4000字节。发送完前两个数据段之后,现在发送窗口的情况是这样的:
当收到确认段之后, 确认方通告收到了第一个段的数据,并且接收窗口为2000字节,故发送方就要将自己的发送窗口变小,变成2000字节,然后将收到的第一个段移出发送窗口,向前进一格:
因为1000-1999还未收到确认,所以不能删除,那么此时发送方只能发送2000-2999的数据,所以综上所述,本题选A。
【4】
TCP三次握手流程细节
这一部分比较简单,无非就是搞清楚ack, seq几个序列号的变化情况即可。
本题选C,前两次握手的SYN = 1.后两次握手的ACK = 1.因为后两次握手需要确认。
【5】
TCP可靠传输中的确认号
此题同第【1】题的分析思路很像,本题是已知第三个段的首部序号,要求算第二个段的首部序号。因为第二个段丢失了,由于有TCP的可靠机制,故TCP发出的是对第一个段完整收到的确认。
【6】
TCP可靠传输的确认号与序号
解析:
本题容易错选D。
确认序号的定义要弄清楚。比如本题:确认序号 = 2046,代表2045及其之前的所有内容已被接收,接下来希望收到的是2046序号段。
因此正确答案选B
【7】
注意:本题问拥塞窗口从8到20的最长时间。且没有发生拥塞情况
既然是最长,那么肯定从8到20保持线性增长是最长的,故12个RTT
12 * 2 = 24ms
选择C
【8】
TCP的拥塞控制、流量控制综合
本题是个好题。
【解析如下】:
还是抓住:swnd = min{cwnd, rwnd}这个公式
接收方通过每一次的ack来更新接收窗口,进而控制发送窗口,达到流量控制的目的。
所以我们要同时动态更新接收窗口、拥塞窗口的大小,因为他们对发送窗口的大小具有影响。此处由于题中没有提到慢开始门限值的信息,所以我们默认,拥塞窗口一直按照指数规律增长。
具体解析看上图。
【9】
TCP拥塞控制
注意坑点:题中问的是发送窗口 = min{拥塞窗口、接收窗口}
所以最后拥塞窗口为12KB时,但接收窗口恒为10KB,所以发送窗口取小者,选A
更多推荐
所有评论(0)