跨以太网链路的组网封装
使用组网封装的问题之一是使用任何受支持的以太网封装在拓扑结构内部署以太网链路(以太网,快速以太网或千兆以太网):以太网II,802.3(带有或不带有802.2标头)或SNAP。每种媒体类型的最大帧大小为1518个八位位组(不包括前导码或起始帧定界符[SFD]),有效载荷大小为46个八位位组到1500个八位位组(在SNAP封装的情况下为1492个)。
在网络中使用组网会致使数据包的大小增加,这是由于在标签堆栈上添加了标签而至。每一个标签标题条目的长度为4个八位位组。这意味着,如果接收到1500个八位字节的有效载荷的数据包,并且将标头发送到堆栈上,则需要使用1504个八位字节的有效载荷转发该帧。由于跨各种以太网媒体类型的最大帧大小遭到限制,这可能会引发问题,由于这些链路上的MTU小于显示的数据包大小。
千兆以太网标准当前将帧大小限制为1518个八位位组,虽然一些提供商现在支持巨型帧,其中数据字段可以扩大到4470或9000个八位位组。扩大以太网帧数据字段的长度致使没法唯一肯定特定大小的数据包是802.3或以太网TypeII封装的数据包。这是由于如果类型/长度字段小于1535个八位位组(因此,它是802.3、802.3加802.2或SNAP帧),则将其解释为长度,并将其解释为类型如果大于1535个八位位组(因此,封装为以太网II)。这样的结果是,具有以太网II封装的以太网类型的介质上的大帧可以很好地工作,但不能跨任何其他封装。正在进行进一步的研究,以肯定如何处理跨千兆以太网的以太网II之外的封装。
IPMTU路径发现
如今,大多数IP主机都支持使用路径MTU发现机制,如RFC1191“路径MTU发现”中所述。RFC中描写的机制允许IP主机动态地发现从源到目标的路径上允许的最大MTU大小。
路径MTU发现背后的基本思想是,源主机最初假定特定连接的路径MTU是其第一跳的MTU,并使用DF(不分段)位设置在该路径上发送所有数据报。没有发送大于第一跳的MTU的数据报。不使用这些进程的主机不应发送大于576个八位字节的数据报。
对传输控制协议(TCP),当与远程装备建立会话时,将协商“最大段大小”选项。会话建立中触及的两个装备交换它们的TCP最大段大小(MSS)值,通常将它们肯定为本地MTU值减去40个八位位组(IP头和TCP头)。在发现进程中,两个MSS值中较小的一个用于路径MTU。
当路由器收到的数据包大于进入的数据包中包括的指向目的地的传出接口的MTU,并且在该数据包上设置了DF位时,它会发送一个ICMP目的不可达消息,其代码为4(需要分段)和DF设置)返回到数据包的来源。路径MTU发现进程依赖于这些消息的接收来肯定可以通过路径发送到特定目标的最大数据包大小。图52说明了此进程。
部署这些进程时,可以在组网骨干网上成功发送数据包而不会产生碎片。但是,只要未设置DF位,每一个LSR都可以对带标签的或未带标签的数据包进行分段(如果它们大于传出的MTU)。如果DF位置1,则LSR通过发送带有“需要分段和DF设置”代码的ICMP目标不可达消息来符合路径MTU发现机制。
如果每一个人都遵守前面描写的机制,那末所有这些都很好。但是,现实情况是,某些主机不使用路径MTU发现,而是发送大于576个八位位组的数据报。另外,某些防火墙会抛弃ICMP没法访问的消息,从而有效地破坏了MTU发现机制。由于这些问题,在组网环境中需要一种允许有效载荷大于1500个八位位组的帧的进一步机制,以确保可以在网络上成功发送数据包。
TikTok千粉号购买平台:https://tiktokusername.com/
TOP