回复:UDP的可靠传输与应用

已锁定

又见

  • 帖子

    5
  • 精华

    0
  • 被关注

    0

论坛等级:游侠

注册时间:2017-03-22

普通 普通 如何晋级?

发布于 2021-10-02 11:18:01

22楼

展开查看
以下是引用宝冬在2021-09-01 12:40:41的发言 >9楼

物理环境造成的丢包对谁都一样,只不过通过代价和开销封装起来,直接看不到罢了。

如果手机在wifi和4G之间切换,基于TCP会掉线,而基于UDP可以做到不掉线。TCP的一些东西有点太老沉重,很多问题。建议了解一下通信的趋势,那些大公司拿UDP在做什么,早已不是陈年的印象了。HTTP/3 是基于UDP,谷歌的Quic,腾讯抖音快手做的一些事情。

UDP是一张白纸,非常单纯的传输层协议。IP是从计算机到计算机,UDP是从端口到端口,非常简洁。很多手段可以在应用层做,可玩性好。

自己做的UDP通信结构已经主体完成,在调试迭代。原本没这个打算,前些日子用UDP跑modbus效果不错,想起来的。

现在采用的Master发命令的UDP报文头是21个字节,后面携带用户数据。Slave应答的报文头是28字节。读、写、心跳都是。

提一嘴,封装UDP报文的时候需要把本地网口IP地址写进去,更多信息如下

其中,MAC地址是排在PN 名称之后,而PN name 的长度是不定的。计算MAC地址起始索引的示意如下。它总是在从1开始的4的倍数+2的位置


以下是引用Zaxife在2021-09-01 10:48:57的发言 >:网络节点少又不在乎...

引用详细内容:

网络节点少又不在乎丢包,用UDP没啥问题。

网络节点多又不允许丢包,用UDP比TCP更不适合。

最终,工业上我是不会去折腾这种选择问题,我直接用TCP她多美她多香。

如果是民用,那就随便了,丢包就再发一次别,再发一次不行就发到行呗,反正不在乎丢包不在乎时间。

或者,把程序全部改造成丢包都无所谓?那这更不想去折腾,我有闲暇时间打一局游戏不爽么。


赞同,TCP开销大的缺点很明显。

modbus就很适合在udp上跑,在应用层来做处理确认。

来如风雨,去似微尘
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15106条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。