可靠的UDP连接MTUMSS
这个⽹页⾥⾯写了:
其可靠性必须由上层应⽤实现。⼀般都会采⽤消息重传来实现其可靠性,采⽤消息重传的时候有两种⽅式,⼀种是发送者发起,另⼀种是接收者发起。 安徽中医学院图书馆前⼀种接收者发的是ACK。发送者收到ACK,就不重传。但是可能ACK内爆。mss
第⼆种接收者发的是NACK。发送者收到NACK,就重传。但是可能NACK内爆。另外需要保留发出去的数据,但是⼀般可以⽤超时机制,把以前的数据丢弃。
优酷盛典
票贩子为什么叫黄牛另外,看到云风的这篇⽂章。
如果⽤ UDP 再实现⼀个可靠传输协议,⽽表现的⽐ TCP 效果更好,那么多半只是在部分情况下的优势;或是霸道的占⽤了过量的资源,⽽TCP 在设计时则是很友好的,以整个⽹络的通畅为更⾼准则的。
如果基于 UDP 可以做的⽐ TCP 更好,那么⼀定是放弃了点 TCP 需要做到的东西。
那么,不允许信息丢失,但允许包乱序会不会改善?雪鹀
在⽹络状况不好的时候,我们可以看到有时采⽤短连接反⽽能获得⽐长连接更好的⽤户体验。
我的思考结论就是:在 UDP 协议之上,实现⼀个带超时的请求回应机制,让业务层负责超时重发,有可能取得⽐ TCP 通讯更好的效果。但其前提是:单个请求或回应的包不应该过⼤,最好不要超过⼀个MTU ,在互联⽹上⼤约是 500 多字节。MSS加报头就等于MTU。 MSL是2MSL = TIME_WAIT时间。 >十八大党章修改