做搬家网站的素材,汕头网站建设过程,凡科互动游戏可以作弊码,蜘蛛云建站网站1.什么是TCP重传机制 在 TCP 中#xff0c;当发送端的数据到达接收主机时#xff0c;接收端主机会返回⼀个确认应答消息#xff0c;表示已收到消息。 但是如果传输的过程中#xff0c;数据包丢失了#xff0c;就会使⽤重传机制来解决。TCP的重传机制是为了保证数据传输的…1.什么是TCP重传机制 在 TCP 中当发送端的数据到达接收主机时接收端主机会返回⼀个确认应答消息表示已收到消息。 但是如果传输的过程中数据包丢失了就会使⽤重传机制来解决。TCP的重传机制是为了保证数据传输的可靠性而设计的一系列机制它主要通过重新发送丢失或确认失败的数据段来确保数据能够正确地到达接收方。 2.重传的方式
2.1超时重传
它主要解决的问题是当发送方发送数据后长时间未收到接收端的确认ACK时发送方认为数据可能丢失或损坏因此会通过重新发送数据来确保数据的可靠性。 重传机制的其中一个方式就是在发送数据时设定一个定时器当超过指定的时间后没有收到对方的 ACK 确认应答报文就会重发该数据也就是我们常说的超时重传。 TCP 会在以下两种情况发生超时重传 数据包丢失确认应答丢失 如果超时重发的数据再次超时⼜要重传的时候 TCP 的策略是将超时间隔加倍也就是 每当遇到⼀次超时重传的 时候都会将下⼀次超时时间间隔设为先前值的两倍。 2.2快速重传 快速重传 Fast Retransmit 机制 它 不以时间为驱动⽽是以数据驱动重传 。 ⼯作原理 当收到三个相同的 ACK 报⽂时会在定时器过期之前重传丢失的报⽂段。快速重传解决了超时时间的问题但还⾯临另外⼀个问题重传的时候是重传之前的⼀个还是重传所有的问题。 2.3 SACKSelective Acknowledgment,选择性确认 为了解决 重传哪些报⽂的问题⽽提出。 这种⽅式需要在 TCP 头部「选项」字段⾥加⼀个 SACK 的东⻄ 可以将已收到的数据的信息发送给「发送⽅」 这样发送⽅就可以知道哪些数据收到了哪些数据没收到知道了这些信息就可以只重传丢失的数据 。 2.4 D-SACKDuplicate SACK 主要使⽤了 SACK 来告诉【发送⽅】有哪些数据被重复接收了。下⾯举例来说明 D-SACK 的作⽤ ACK 丢包 ⽹络延时 使⽤ D-SACK 的好处 1 可以让【发送⽅】知道是发出去的包丢了还是接收⽅回应的 ACK 包丢了 2 可以知道是不是【发送⽅】的数据包被⽹络演示了 3 可以知道⽹络中是不是把【发送⽅】的数据包给复制了。