网络同步技术
Posted 青蛙~~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络同步技术相关的知识,希望对你有一定的参考价值。
基于ARQ(自动重传请求)原理
超时自动重传时候有三种实现方式
-
等待式
在A重传M1的时候需要B确认之后A在发送M2的包,如果这种情况会造成信道的浪费(通道过于空旷),所以我们会有进一步的优化,于是就有了后退N步方式 -
后退N步式
M3丢包了,这个时候就会启动对M3的超时重传,A在重传M3的时候又会把M4M5重传一次,这样会造成一个问题,造成对网络信道的一种浪费(通道过于拥挤),为了对这中浪费我们需要进一步的优化,于是就有了选择重传 -
选择重发
这个时候我们可以把M4,M5缓存起来,这个时候我们就不需要在次去发送M4,M5了也就可以直接发送M6,M7了
基于FEC(前向冗余绞错)原理
在发送F1的时候,如果F1丢包延迟,在发送F2的时候不会在去等待F1的确认而是间隔FT的事件发送F1F2的包过去,同样的如果在发送F3的时候如果没有接到F1F2的确认,那么会直接发送F1F2F3过去,如果F1确认包来了那么下次就不会在冗余里面不会在发送F1的包,如果是F1确认包没有来,但是F2来了那么就会隐含的确认F1已经确认而在下次发包的时候就不会在携带F1F2的数据包
对比
UDP分组优化
为什么会udp分组,是因为ip分片-重组,大于1500字节就会分组
丢包优化
-
相关性丢包
这种情况下程序员无能为力 -
随机性丢包
-
连续K次丢包概率
那么根据这个规律怎么优化呢
以上是关于网络同步技术的主要内容,如果未能解决你的问题,请参考以下文章