• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
xiaoyaovo
博客园    首页    新随笔    联系   管理    订阅  订阅
UDP 报文格式浅析

报文格式

在这里插入图片描述

以下是正常端口号的排版,上面排版是教科书中为了排版而这样规划的。(低序到高序)
在这里插入图片描述

解析

  • 双全工:既能接收数据,也能发送数据。
  • 16 位源端口号:范围在 0 - 15 个 bit 位,即 0 - 65535(0 - 2^16-1)。(平时的应用程序端口号小于65535);
  • 16 位目的端口号:范围在16 - 31 个 bit 位 ,范围也是 0 - 65535。

关于端口号划分
0 - 1023: 知名端口号, HTTP, FTP, SSH等这些广为使用的应用层协议, 他们的端口号都是固定
的.
1024 - 65535: 操作系统动态分配的端口号. 客户端程序的端口号, 就是由操作系统从这个范围
分配的

  • 16位 UDP 长度: 范围在 32 - 47 个 bit 位,范围也是 0 - 65535,这个长度表示整个数据报(UDP 首部 + UDP 数据)的最大长度。

也就是说如果根据 UDP 协议传输数据,含 UDP 首部 一次性最多只能传输 65535 个 Byte,即 64 kb(1 KB = 1024 B)。在当今来看,这个传输量是非常小的。
实际上只能传输 65507 字节,65535 减去 IP 协议伪首部的 20 个 Byte 和 8 个 Byte 首部,
即 65535 - 20 - 8 = 65507,约等于 64 KB。
65507字节 也是理论上的最大传输数据,而在下层数据链路层最大传输单元是1500字节的情况下,要想IP层不分包,那么UDP数据包的最大大小应该是1500字节 – IP头(伪首部)(20字节) – UDP头(首部)(8字节) = 1472字节。不过鉴于Internet上的标准MTU值为576字节,所以建议在进行Internet的UDP编程时,最好将UDP的数据长度控制在 (576-8-20)548字节以内。

  • 16 为 UDP 校验和:如果校验和出错, 就会直接丢弃。

UDP 优点

  1. 传输速度快;
  2. 支持 “广播”(TCP 不支持 “广播”,TCP 和 UDP 都支持 “单播”)。

广播:老师给同学们上课;
单播:悄悄话。

posted on 2021-07-31 21:43  豆本豆红枣豆奶  阅读(66)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3