关于多播传输速率与可靠性之间的矛盾

 
原本打算在消息中间件中使用多播提高传输速率,现在发现好像有几个问题:
1. 多播底层实现协议是UDP,UDP是基于数据报的,无连接的,不可靠的,因此多播也是不可靠的。如何实现可靠多播,应该类似于如何实现可靠UDP,所以就可以针对UDP讨论问题,这种想法对否。
2. 多播不可靠,一种表现在,接收端不能够收到发送端发送的所有数据包,即丢包,暂时不用考虑乱序。如何防止不丢包呢?
第一种解决方案,降低发送数据包的速率,这样就可以认为丢包的概率降低了,此方案叫做不完全可靠;
第二种解决方案,接收端反馈一些信息,告诉发送端它的接收情况,以此来保证可靠传输,理论上可以实现完全可靠。但是发送端和接收端需要信息交互,一定会占用一定的带宽,这样在网络带宽不足而导致丢包,再加上可靠机制,增加接收端和发送端的信息交互,网络带宽更会少,恶性循环,将不堪重负。所以此时只能流量控制,降低发送端的发送速率,然后差错恢复,但是这不就是TCP擅长做的吗,我们应该相信TCP做的更好。所以我们应该使用TCP来追求高速高可靠数据传输。
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值