Open theydy opened 5 years ago
停止等待协议的原理是每发完一组数据就停止发送,等待对方确认,在收到确认后再发下一组数据。如果对方接收到重复的数据,会丢弃该分组,但还要发送确认。
在停止等待协议中,如果出现数据错误而没有收到确认,会执行超时重传。超时重传有两种,自动超时重传 ARQ 协议 连续 ARQ 协议
自动超时重传 ARQ 协议
连续 ARQ 协议
自动超时重传 ARQ 协议:每组数据都等待确认,如果没有收到确认就重传当前分组。
连续 ARQ 协议:发送方维持一个发送窗口,位于窗口内的分组可以连续发送,不需等待确认,接收方采用累计确认,对按需到达的最后一个分组发送确认。
滑动窗口是一种流量控制技术,TCP 利用滑动窗口实现流量控制的机制,滑动窗口的大小意味着接收方还有多大的缓冲区可以用于接收数据。接收方会把当前接收窗口的大小写入应答报文,发送方可以通过滑动窗口的大小来确定应该发送多少字节的数据,发送方让自己的发送窗口取为拥塞窗口和接收方的接收窗口中较小的一个
当出现 接收窗口剩余空间 0 的情况,发送端会停止发送数据,但会定时发送 1 字节的请求给接收方,让接收方告知窗口大小。
拥塞处理和流量控制不同,后者是作用于接收方,保证接收方来得及接受数据。而前者是作用于网络,防止过多的数据拥塞网络,避免出现网络负载过大的情况。
TCP 协议的特点
TCP 如何保证可靠传输
停止等待协议
停止等待协议的原理是每发完一组数据就停止发送,等待对方确认,在收到确认后再发下一组数据。如果对方接收到重复的数据,会丢弃该分组,但还要发送确认。
在停止等待协议中,如果出现数据错误而没有收到确认,会执行超时重传。超时重传有两种,
自动超时重传 ARQ 协议
连续 ARQ 协议
自动超时重传 ARQ 协议:每组数据都等待确认,如果没有收到确认就重传当前分组。
连续 ARQ 协议:发送方维持一个发送窗口,位于窗口内的分组可以连续发送,不需等待确认,接收方采用累计确认,对按需到达的最后一个分组发送确认。
滑动窗口
滑动窗口是一种流量控制技术,TCP 利用滑动窗口实现流量控制的机制,滑动窗口的大小意味着接收方还有多大的缓冲区可以用于接收数据。接收方会把当前接收窗口的大小写入应答报文,发送方可以通过滑动窗口的大小来确定应该发送多少字节的数据,发送方让自己的发送窗口取为拥塞窗口和接收方的接收窗口中较小的一个
当出现 接收窗口剩余空间 0 的情况,发送端会停止发送数据,但会定时发送 1 字节的请求给接收方,让接收方告知窗口大小。
拥塞控制
拥塞处理和流量控制不同,后者是作用于接收方,保证接收方来得及接受数据。而前者是作用于网络,防止过多的数据拥塞网络,避免出现网络负载过大的情况。