为何vxlan需要封装在UDP里而不是直接使用IP包封装?

主要用于无障碍穿越NAT/PAT!更详细的分析,请阅读3。

VxLAN 的封装格式:(图片来源于网络)

1 IP in IP

这种tunnel就是题主所说的用IP封装VxLAN,这种tunnel仅仅依靠外层的IP头很难穿越NAT/PAT设备。

如果使用IP封装,VxLAN 协议头需要提供字段支持NAT,即使这样,还需要VxLAN端点之间路径上的NAT设备升级软件,这是吃力不讨好的方案。

2 GRE

在UDP tunnel 流行之前,GRE是最通用的封装方式,比如PPTP就是采用GRE来封装用户数据,GRE有两种格式:

2.1 标准格式 (Standard)

GRE头一共4个字节,4个字节里也没有哪个字段适合做NAT,所以不便于做NAT穿越。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UDP(用户数据报协议)是一种无连接的传输层协议,它提供了一种快速、简单和高效的数据传输方式。 UDP封装是指在使用UDP协议进行数据传输时,将应用层数据封装UDP报文的过程。UDP报文的结构括源端口号、目的端口号、长度、校验和和数据部分。 首先,源端口号和目的端口号是UDP报文中的重要字段。源端口号表示发送端的应用程序使用的端口号,目的端口号表示接收端的应用程序监听的端口号。通过端口号,UDP协议可以将接收到的报文正确地传递给相应的应用程序。 其次,长度字段指示了UDP报文的总长度,UDP头部和数据部分的长度。通过长度字段,接收端可以正确地解析完整的UDP报文。 再次,校验和字段用于确认UDP报文的完整性。发送端将UDP报文的头部和数据部分计算出一个检验和,并将其放在校验和字段中。接收端在接收到UDP报文后,也会计算一个检验和。如果两个检验和相等,则可以确认UDP报文在传输过程中没有错误或损坏。 最后,数据部分是将应用层的数据打UDP报文中的部分。UDP报文中可以携带各种不同类型的数据,括文本、音频、视频等。 总结起来,UDP封装是将应用层数据打UDP报文的过程。通过源端口号、目的端口号、长度、校验和和数据部分,UDP协议可以实现无连接、快速和高效的数据传输。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值