TCP相关
可靠传输:校验和,停止等待ARQ,和连续ARQ协议
流量控制:滑动窗口协议,流量控制是为了平衡发送方的发送速率和接收方的接收速率。
拥塞控制:慢启动,拥塞避免,快重传,快回复。拥塞控制是从整个网络的负载能力出发,让当前的发送报文不至于超出整个网络的承载上限。
滑动窗口协议:发送方和接收方设置一个发送窗口和接收窗口。发送方的数据分为已经ACK的数据,已经发送但没有ack的数据和还未发送的数据。而接收方维护一个接收窗口,并且每次向发送方发送的报文都会携带接收窗口,以便让发送方知道接收方当前能接受多少报文。
发送窗口:在接收方的接收窗口和发送方的拥塞窗口中取最小值
慢启动:一开始将拥塞窗口初始化为1个最大报文段(MSS是最大段长度,是能通过网络的最大段的长度),然后每次经过一个RTT(TCP段开始发送到ACK返回的时间)就把拥塞窗口翻倍。当拥塞窗口达到最开始设置的ssthresh(慢启动门限值),则启动拥塞避免算法。
拥塞避免:当拥塞窗口达到ssthresh时,拥塞窗口每次RTT后值增加1,而不是翻倍增长。
快重传:当某个报文在达到一定时间没有得到接收方的确认ack报文后,立即重传该报文,并且把慢启动门限值设置为一半,而拥塞窗口设置为1,然后启动慢开始算法。
快恢复:当某个报文连续收到三个ACK确认报文后,立即重传丢失的报文,然后将ssthresh设置为一半,直接启动拥塞避免算法。这里与快重传有区别是因为既然能收到三个ack,说明此时的网络是可以正常发送和接收报文的,所以不需要从1开始,可以直接从当前拥塞窗口的一半开始。
查看5道真题和解析