(一)UDP的特点:
报文结构:
source port 为源端口,Destination port 为目的端口
Length为数据包长度,Checksum为奇偶校验值
- 面向非连接
- 数据报头文只有八个字节,额外开销比较小
- 不维护连接状态,支持向多个客户端发送相同的消息
- 吞吐量只受限于生成速率,传输速率,机器性能
- 尽最大努力交付,不保证可靠性,不需要维持复杂的链接表
- 面向报文,不对应用程序提交的信息进行分析
(二)TCP和UDP的区别:
- 面向连接和无连接:TCP为面向连接,UDP为一个点向多个点发送信息
- 重量级:TCP头为20字节,UDP为8字节
- 可靠性:TCP利用握手和重传确定可靠性
- 速度:TCP创建连接保证消息的可靠性和有序性
- 有序性:TCP利用序列号保证有效性
(三)具体代码实现:
参考另一篇socket文章TCP和UDP具体实现代码:https://blog.youkuaiyun.com/roothahh/article/details/124081049: