考点介绍:
在学习计算机网络时,在TCP协议中,为了进行拥塞控制,提出使用滑动窗口进行优化。滑动窗口,顾名思义是使用一个大小可变的窗口,通过控制窗口左右两端移动的方向和移动步调,来达到找出要查找子序列的目的。左右两端点一般是向前滑动,可以是右端固定时,左端向前滑动;或者左端固定时,右端向前滑动。滑动窗口法,可以用来解决一些查找满足一定条件的连续区间的性质的问题。
答案详情解析和文章内容可扫下方二维码或点击链接即可查看!
一、考点试题
1、假设你受雇设计一个使用滑动窗口的可靠的字节流协议(TCP)。这个协议将运行在100Mbps的网络上。网络的RTT是100ms,而且数据段的最大生存周期是60秒。
(1)应该在协议首部的接受窗口字段包含多少比特?
(2)协议首部的序号字段大约占多少比特?
解答:(1)发送数据的大小:100Mbps*100ms=10Mbit=1.25MB
因此,2 21 =2097152,需要21位......
2、假设需要设计一个类似于TCP的滑动窗口协议,该协议将运行于一个100Mbps网络上,网络中线路的往返时间RTT为100ms,报文段最大生存时间为60s。那么,所设计的协议头部中的窗口字段和序号字段最少应该有多少位?为什么?
解答:窗口大小=延迟*带宽
序号空间大小=生存期*带宽......
3、现在假定使用类似 TCP 的协议(即使用滑动窗口可靠传送字节流),数据传输速率是 1 Gbit/s,而网络的往返时间 RTT = 140 ms。假定报文段的最大生存时间是 60 秒。如果要尽可能快的传送数据,在我们的通信协议的首部中,发送窗口和序号字段至少各应当设为多大?
解答:发送窗口至少即为 【每过一个RTT都要马上发】,所以发送窗口=RTT*1G bit/s=1.4*10^8 bit /s当然序号也需要大于这个值......
二、考点文章
1、【校招VIP】计算机网络—滑动窗口
当网络通信中每个数据包都需要确认应答,那么包的往返时间越长,网络的吞吐量就会越低,所以TCP引入了窗口这个概念......
2、【校招VIP】计算机网络之TCP滑动窗口
在进行数据传输时,如果传输的数据比较大,就需要拆分为多个数据包进行发送。TCP 协议需要对数据进行确认后,才可以发送下一个数据包。这样一来,就会在等待确认应答包环节浪费时间......
3、【校招VIP】面试常见题型之【滑动窗口】解题模板与示例
算法面试过程中,经常会遇到求解满足某种条件的子串问题,对于这种类型的题,一般可以使用双指针或滑动窗口解答,滑动窗口问题可以认为是一种特殊的双指针......
三、考点视频
TCP协议的滑动窗口
本题是开发类一线校招专业课必考题之一,需要在理解TCP协议的基础上,清楚发送窗口的固定到可变的原因......