VXLAN:接收方如何知道接收到的数据包是 VXLAN 封装的?

网络工程 VLAN 协议理论 UDP 射频卡 虚拟局域网
2021-07-05 21:14:47

我试图了解接收器如何知道接收到的数据包是 VXLAN 封装的。

查看VXLAN RFC,我看不到任何定义数据包包含 VXLAN 标头的特定内容。我看到(从头开始解析数据包):

  • 外部 MAC (L2) 标头
  • 外部 IP (L3) 标头
  • 外部 UDP (L4) 标头
  • VXLAN 头
  • 内部 MAC 头
  • 内...等

但是我在外部 UDP 标头中没有看到任何特定的内容表明下一个标头是 VXLAN。

我错过了什么?

1个回答

外部 UDP 标头中的目标 UDP 端口在VXLAN 规范(端口 4789)中指定。这意味着它是一项众所周知的服务。因此,到达端口 4789 的 UDP 数据包预计是 VXLAN 数据包¹,就像到达端口 80 的 TCP 数据包预计是 HTTP 数据包¹一样。

您链接到的草稿已过时并且缺少此端口号(尽管它提到要从 IANA 获取端口号)。

¹) 当我谈论 VXLAN/HTTP 数据包时,我的意思当然是相应的 UDP/TCP 数据包,其中包含 VXLAN/HTTP 标头/协议。