下载 FreeRTOS
 

出色的 RTOS & 嵌入式软件

最新资讯
简化任何设备的身份验证云连接。
利用 CoAP 设计节能型云连接 IoT 解决方案。
11.0.0 版 FreeRTOS 内核简介:
FreeRTOS 路线图和代码贡献流程。
使用 FreeRTOS 实现 OPC-UA over TSN。

MSS

MSS 是 Maximum Segment Size(最大报文段长度)的缩写。 MSS 定义了可以在 TCPUDP 数据包中发送或接收的最大数据量。 它不同于 MTU 值, 其值仅适用于数据大小,而不适用于帧大小,因此 MSS 并不包括以太网、IP、TCP 或 UDP 协议标头。 MSS 取决于 MTU 和选项最大字节数。

以下是从 MTU 为 1526 字节开始的 IPv4 MSS 计算示例 。 减去帧中包含的各种标头所消耗的字节数, 即可得到 MSS 大小:

1526  MTU size
 -14  Ethernet header size
 -20  IPv4 protocol header size
 -20  TCP protocol header size
 -12  TCP options bytes
----
1460  MSS size
					

以下是从 MTU 为 1526 字节开始的 IPv6 MSS 计算示例。减去帧中包含的各种标头所消耗的字节数, 即可得到 MSS 大小:

1526        MTU size
 -14        Ethernet header size
 -40        IPv6 protocol header size
 -${var}    IPv6 extension header size(optional)
 -20        TCP protocol header size
 -12        TCP options bytes
----
1440-${var} MSS size
在 FreeRTOS-Plus-TCP 中,MSS 值由 ipconfigTCP_MSS (FreeRTOSIPConfig.h 中的设置)设置。 如果未定义 ipconfigTCP_MSS,则将其设置为 默认值 1460。

在上述实例中,计算出的 1460 字节的 MSS 值适用于 局域网 (LAN),但此值可能太大,无法在 Internet 上使用。 在 Internet 上,MSS 应限制为 1400 字节,以实现最大可靠性。 因此, 如果远程节点的 IP 地址位于本地网络之外 (详见网络掩码), 则 FreeRTOS-Plus-TCP 会自动将 MSS 设置为 1400 与 配置的 ipconfigTCP_MSS 值中的较小值。

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.