ARQ简介
ARQ称为Automatic Repeat Request,叫做自动重传。
ARQ是TCP实现可靠传输的重要协议。
自动重传的两个触发条件
1、定时器倒计时结束还未收到ack包。
2、连续收到三个相同的ack包。
ARQ分类
ARQ有以下三种实现,分别对于滑动窗口的三种状态:
1、停止-等待协议
发送窗口大小 = 1 ,接收窗口大小 = 1
发送方每发送一个数据包,就要等待接收方返回ack包。如果在定时器内没有收到ack包,就重新发送数据包。
缺点: 发送效率慢,串行发送
2、回退N步协议
发送窗口大小 n > 1,接收窗口 = 1
发送方最多可以连续发送n个数据包,不必等待接收方的ack包。
接收窗口必须按照顺序来接收数据包,如果接收到无序数据包的时候,会发送当前最小的有序数据包的序列号+1作为ack回应包。
接收窗口采用累计确认的方式来发送ack包。
进一步加快了发送效率