PHP短视频源码,重传机制下什么协议好用

发布来源:云豹科技
发布人:云豹科技
2023-08-28 10:47:12

PHP短视频源码使用的TCP协议,可以保证所有的数据包都传递到位,就需要用到重传机制,根据不同的环境,使用的重传机制也不一样,比如常见的超时重传机制、快速重传机制、sack三种都是出场率较高的,我们来详细看一下。

 

2.png


一、超时重传机制

举个例子,在某个环境下,PHP短视频源码发送端发送了3个数据包,接收端接受到了第一个和第三个,这时,丢失的第二个数据包该怎么处理呢?

一种是不回ack,等着第二个数据包到达,这种是寄希望于发送端,当发现接收方收不到第二个数据包时ack超时后会重传。但这种方式有比较严重的问题,因为要等2,但是1和3都已经收到了,接收方并不知道收到了哪个丢了哪个,可能会把三个数据包都重传一遍,这无疑会浪费时间和资源。

对此PHP短视频源码有两种选择:

1、仅重传丢了的包

2、重传所有的包

 

7.png


二、快速重传机制

该重传机制下,PHP短视频源码不以时间驱动,而是以数据驱动重传,也就是说,在包没有连续到达之前,ack最后那个可能被丢了的包,如果发送方连续收到3个相同的ack,就重传,快速重传机制的好处在于,不同等时间过了就可以重传。

它的缺点在于,PHP短视频源码重传之前的一个还是重传所有的数据包,这和超时重传有点相似,优点在于,快速重传的速度很快。

 

10.png


三、SACK

好处在于,PHP短视频源码在发送端就可以根据回传的sack知道哪些数据丢失了,不过这个协议需要传输放和接收方两边都支持。

另外sack会消费发送方的资源,如果一个攻击者给数据发送方发一堆sack的选项,这会导致发送方开始要重传的数据很多,会消耗很多发送端的资源。

声明:以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任www.yunbaokj.com

声明:
以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任