如何计算L2 VPN中的MTU?

mtu计算如何与L2 VPN一起工作? 示例拓扑结构是:

CE — PE — MPLS PE — — CE

在哪里以及如何实施MTU calculcation? 什么将决定多lessMTU应该是? 我在MPLSnetworking中运行不同的LSP。 LSP是否有自己的MTU?如果是,那么他们从哪里得到这个MTU值?

如果我在物理接口上创build了一个逻辑L2接口,我将在哪里设置mtu? 在物理还是逻辑上?

mtu的计算也根据端口types的不同而不同,例如Sonet / Ethernet / DS3?

请分享你的知识。

普拉卡什

我试图在过去的计算,但诚实这些天我使用ping -f -l并继续增加,直到它返回一个碎片错误。 这通常是非常可靠的,但我怀疑有时干预路由器有时会忽略DF标志。

JR

根据我对站点到站点VPN连接的经验,最重要的是两个隧道对端具有相同的MTU。 根据供应商,这往往会导致一些意想不到的行为,否则。

维基百科的MTU页面对MTU有很好的解释 。

  1. 数据包最初与发送者MTU一起发送
  2. 如果路上的任何一个节点的MTU较低,它将发回一个ICMP包,说这个数据包太大,请求礼貌地分组数据包。
  3. 如果ICMP被阻塞(通过防火墙fe),则包大小不会改变,并且数据可能被丢弃。

Ping是检查MTU大小的一个非常有用的工具。

ping -M do -s 1500 <host/ip> 

这将向主机发送一个特定大小的数据包,并禁止任何碎片。 如果MTU是整个1500,你会得到一个回应。 如果它在某个地方更低,你就不会。 然后简单地降低“-s”variables,直到find可接受的值。

作为VPN环境的解决scheme,您可以将您的MTU降低到这个值,看看是否有帮助。

  1. 如果CE到PE链路是一个dot1Q中继,假设有一个X字节的L3净荷,到达PE的L2帧的大小为

X + 6 + 6 + 2 + 4 + 4 = X + 22

如果CE-PE链路是一个接入端口,它将是

x + 6 + 6 + 2 + 4 = X + 18

这是分手

S-MAC-6 D-MAC-6types-2 FCS -4 Dot1q TAG 4

现在对于MPLS l2 VPN来说,如果PE不是背靠背的,那么需要2个标签,加上4 + 4个字节(背靠背PE只需要一个标签)

VC标签 – 4字节IGP-PE标签4字节

因此,在整个MPLS云上添加到x字节的原始数据包x的总开销是X + 30(dot1Q CE-PE,两个标签参数)

您是否尝试过使用已知的PMTU( http://www.netheaven.com/pmtu.html )设置一台机器并从中找出它?

最坏的情况下,手动工作。

我同意JR …

请注意,如果稍后使用encryption来实现某些内容,则数据包可能会增长并导致碎片化,从而无法使用encryption。 那么你将有数据包消失在永远不会降落。 find突破点,然后给自己一个小房间。