数据链路层的MTU

数据链路层的MTU

  • [1. 什么是MTU](#1. 什么是MTU)
    • [1.2 MTU 的组成](#1.2 MTU 的组成)
  • [2. 为什么需要 MTU](#2. 为什么需要 MTU)
    • [2.1 常见的 MTU 的值为1500,为什么是1500](#2.1 常见的 MTU 的值为1500,为什么是1500)
  • [3. MTU 分片](#3. MTU 分片)
  • [4. 遇到的问题](#4. 遇到的问题)

1. 什么是MTU

MTU,Maximum Transmission Unit,最大传输单元 ,是指网络能够在数据链路层传输的最大数据包的大小,数据包的单位为字节(Byte)。MTU 的大小决定了数据包在传输过程中的最大字节数:

  • 如果数据包的大小超过了MTU,将会被分片,甚至被丢弃;
  • 如果数据包的大小太小,将会影响数据的传输效率。

1.2 MTU 的组成

MTU = MSS + IP +TCP/UDP

MTU 属于数据链路层的概念;

MSS:Maximum Segment Size ,最大报文段长度;是纯业务数据;属于传输层的概念(不包含TCP/DUP、IP 头)。

IP:IPv4 的大小一般为 20 Byte,IPv6 的大小一般为 40 Byte;

TCP/UDP:TCP 的大小为 20 Byte,UDP 的大小为 8 Byte。

OSI 模型 功能 协议
应用层 面向用户/业务程序提供网络服务 SIP、SDP、RTP/RTCP、HTTP、DNS、XCAP
表示层 数据格式转换,加/解密,编码 NA
会话层 建立、管理、断开通信会话 NA
传输层 端到端,区分应用端口,可靠性/流量控制 TCP、UDP、SCTP( IMS 核心网 SIP 信令使用)
网络层 跨网段路由寻址,IP 分片,IP 数据包(分片、重组) IP、ICMP、IGMP
数据链路层 相邻节点之间传输数据帧,检错,MAC 寻址,把比特封装成数据帧 NA
物理层 传输比特流,0/1 电信号,射频信号 NA

Tips:应用层、表示层、会话层、传输层都是以报文形式传输数据;网络层以数据包的形式传输数据;数据链路层以数据帧的形式传输数据;物理层则传输 0/1 比特流。

2. 为什么需要 MTU

以太网最初对报文的长度没有限制,网络层最大可接收65535字节,但以太网对于长报文不能可靠传输,且报文太大,出错概率也就越高,丢失的报文太大,将丢失大量数据,重传也将会占用大量网络资源;若报文太小,则一次能传输的数据量很小,也将奖励网络资源的利用率。限制 MTU 的大小后,可以高效利用网络资源。

2.1 常见的 MTU 的值为1500,为什么是1500

早期的以太网使用共享链路的工作方式,为了保证CSMA/CO(载波多路复用/冲突检测)机制,所以规定了以太帧长度最小为64 Byte,最大为1518 Byte,是为了防止过长的帧传输时间太长而占用共享链路太长时间导致其他业务阻塞。以太网最大数据帧的大小为1518 Byte,去掉帧头14 Byte和帧尾4 Byte CRC 校验部分,剩下最大值为1500 Byte,即默认 MTU 值为1500。

3. MTU 分片

前文中提到,如果传输的数据包超过了 MTU 的值,将会分片甚至丢弃处理。丢弃很容易理解,分片就如下图所示:

4. 遇到的问题

某运营商需求,要将每一个支持的 APN 的 MTU 的值都设置为指定值(非1500)。

Tips: IPv4 的头和 IPv6 的头的大小是不一样的,所以可以针对 IPv4 和 IPv6 单独配置对应的MTU。

因为每一个 APN 都会建立一条数据连接,所以 UE 针对每一个 APN 都有对应的一个 MTU 值;

  • UE 侧如果没有针对某一个 APN 有特定配置,一般默认 MTU 的值为1500;
  • 网络侧如果在响应 UE 的 PDN 请求时,返回的Active Default EPS Bearer Contex Request 中 PCO IE 中,指定了IPv4 Link MTU,或在ICMPv6 RA(Router Advertisement,路由器通告)中规定了 IPv6 的 MTU,UE 一般会优先使用网络指定的 MTU 值。
  • 如果网络侧没有配置 MTU,则使用 UE 配置对应 APN 的 MTU。

参考:什么是MTU(Maximum Transmission Unit)?MTU设置为多少合适?。

相关推荐
其实防守也摸鱼4 小时前
网络安全法竞赛知识总结与题库
前端·网络·人工智能·安全·web安全·重构·nc
艾芯微科技4 小时前
DMG2305UX-13|Diodes 20V/5A P 沟道 SOT-23 MOS 管参数、电路应用、替代与丝印避坑
网络·单片机·嵌入式硬件·集成测试·51单片机
国科安芯5 小时前
3 Ω 还是 5.5 Ω:ASL3157S 的供电电压、导通电阻与双路一致性怎么算
网络·嵌入式硬件·安全·模拟开关·抗辐射
持敬chijing5 小时前
系统入侵与攻击工具-namp扫描方式与内置脚本
网络·安全·网络安全·网络攻击模型·安全威胁分析
Escalating_xu5 小时前
【Linux 网络编程】传输层协议 UDP:从 8 字节首部到消息边界、缓冲区与 MTU
linux·网络·udp
byte轻骑兵5 小时前
【HIDS】规范精讲[3]:把连接间隔压到极限——SCI 四档调速的底层机制
网络·网络协议·人机交互·hids·蓝牙协议
骑着蜗牛撵大象3276 小时前
从三次握手到 epoll:C++ 写出可落地的 TCP Socket 服务端
网络·c++·tcp/ip·高并发·tcp·epoll
比兔代理7 小时前
静态 IP 的粘性会话原理,以及连接稳定性解析
网络·网络协议
j7~7 小时前
【Linux网络加餐】《HTTP 会话保持:Cookie 与 Session 原理及实验验证》---详解
linux·网络·网络协议·http·cookie·session
箓维7 小时前
网络基础(2)IP和MAC的区别与报文封装
linux·网络