1. udp报文封装
一个典型的使用udp协议封装的数据包,包括以太网mac头+网络层ip数据头+传输层udp头+要传输的数据。详见下图所示:
2. udp报文结构
udp(user data protocol,用户数据报协议)是一个简单的面向数据报的运传输层协议。它不提供可靠性,只是把应用程序传给ip层的数据报发送出去,但是不能保证它们能到达目的地。由于udp在传输数据报前不用再客户和服务器之间建立一个连接,且没有超时重发等机制,所以传输速度很快
udp报文结构如下图示:
udp报文结构各字段功能如下示:
源端口号 :表示发送端端口号,字段长16位;在需要对方回信时选用,不需要时可设为0
目标端口号 :表示接收端端口号,字段长16位;在终点交付报文时要使用到
总长度 :udp用户数据报的长度,其最小值是8(仅有首部),发送一个带0字节数据的udp数据报是允许的。值得注意的是,udp长度字段是冗余的;ipv4头部包含了数据报的总长度,同时ipv6头部包含了负载长度。因此,一个udp/ipv4数据报的长度等于ipv4数据报的总长度减去ipv4头部的长度;一个udp/ipv6数据报的长度等于包含在ipv6头部中的负载长度(payload length)字段的值减去所有扩展头部(除非使用了超长数据报)的长度。这两种情况下,udp长度字段应该与从ip层提供的信息计算得到的长度是一致的
校验和 :检测udp用户数据报在传输中是否有错。有错就丢弃
3. wireshark抓包分析
将socket api编程模型一文中的udp server工程源码下载到开发板中,用网线将pc和开发板相连接,开启一个udp客户端;打开wireshark软件,监听ip地址192.168.1.10后,在udp客户端发送数据
wireshark抓取到相应的udp数据包,可以看到源端口号、目标端口号、总长度、校验和以及数据
NDT推出创新PSG压感触控方案,开拓笔记本Touchpad交互新形态
CKS32F4xx系列MCU的OTG_FS功能详解
路由器处理器
变频电机与直流电机的区别
青岛医疗人工智能科技创新中心揭牌成立
UDP协议原理详解
防疫推动智慧校园发展新契机 AI测温、口罩检测等技术投入应用
决定FPC柔性线路性能的因素及弹片微针模组的作用
风力发电机组偏航系统知识点
新加坡众创空间公司JustCo上周完成了B轮融资估值达到2亿美元
中国创业团队成功研制出可以在空气中成像并交互的显示面板
爱心流水灯实验电路图设计
功率模组是什么东西
传新iPad将于本月27日在大陆正式上市
照明出口也有“失算”的时候
找不到服务器或DNS错误时该怎么办
指针万用表使用注意事项
传感器融合,困难重重
带你更加详细的了解区块链
COBled显示屏是什么,它的发展前景可期