快盘下载:好资源、好软件、快快下载吧!

快盘排行|快盘最新

当前位置:首页软件教程电脑软件教程 → 为何vxlan需要封装在UDP里而不是直接使用IP包封装?

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

时间:2022-11-08 18:49:30人气:作者:快盘下载我要评论

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

VxLAN 的封装格式;;图片来源于网络;

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

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穿越。

2.2 高级格式 ; Enhanced;

GRE头一共8个字节;8个字节里有一个字段;Key/VRF;适合做NAT;所以使用的更多;更通用;

但有的NAT设备只支持UDP/TCP/ICMP;并不一定支持Enhanced GRE;所以有时也会造成通信障碍。

3 UDP

细心的读者会发现;UDP tunnel 越来越流行了;基于几点特质;

3.1 无障碍穿越任何NAT设备

无论高端的商用路由器、还是家用路由器;都支持;所以无需额外的配置就可以工作;省时省心。

3.2 UDP是无状态的

大家很少见到TCP tunnel吧?也是有的;比如Cisco Anyconnect Full Tunnel mode;使用TCP ; TLS安全封装;可以将用户的所有IP包封装在外层的安全传输层;由于建立tunnel 之前需要建立连接;然后再建立tunnel;发送数据的初始延迟就会稍大。外层的TCP是有状态的;内层负载如果也是有状态的;双状态机不利于排错、debug。

L2TP、VxLAN、IKEv2 IP Security都是采用UDP封装。

3.3 IP Protocol 数量有限

一个字节;理论上可以提供255种协议复用;空间受限。

而采用UDP封装;端口号2个字节;理论上可以提供65535种协议复用;空间更游刃有余。

3.4 UDP天然支持组播的特性

终端用户的广播;如ARP广播;;以及用户的组播;需要VxLAN传输;有两种方式;

3.4.1 组播传输

需要运营商提供组播支持;需要将用户的广播、组播;全部映射为VxLAN组播;而支持组播最天然的协议就是UDP。

3.4.2 单播复制多份传输

如果运营商不支持用户组播;则需要头端设备将用户的广播、组播;复制为多份进行单播传输;无状态的UDP协议也是一个合适候选者。

学习地址;Dpdk/网络协议栈/vpp/OvS/DDos/NFV/虚拟化/高性能专家

--------更新------

看到另外两位同学的答案;UDP端口提供了更灵活的负载均衡的潜能;观点正确;算是使用UDP封装的一个原因;在这里我给大家分析一下。

大家看上文的图片里的Outer UDP Header;VxLAN协议规范指出;Destination Port使用固定端口号;协议端口;;Source Port可以使用固定端口号;也可以使用随机端口号;

固定源端口号的负载均衡

Hash ( Source IP, Destination IP, Source Port;Destimation Port )

由于源、目的端口号都为固定;其Hash值与单纯使用IP进行HASH没有本质区别;即在负载均衡眼里;这是同一个session;会选择同一条物理路径。

Hash ( Source IP, Destination IP)

所以如果使用固定源端口号;起不到负载均衡的效果;和采用IP封装没有任何区别。

随机源端口号的负载均衡

由于源端口号基于内层以太网头的HASH;不同的Source MAC/ Destination MAC对应不同的业务;会将不同的业务映射到不同的ECMP;Equal Cost Multiple Path )的物理路径上。

所以使用同一个VTEP;不同的业务使用不同的源端口号;可以起到负载均衡的效果;而这是使用IP封装所不能实现的目标。

 原文链接;https://www.zhihu.com/question/54841860/answer/141356897

网友评论

快盘下载暂未开通留言功能。

关于我们| 广告联络| 联系我们| 网站帮助| 免责声明| 软件发布

Copyright 2019-2029 【快快下载吧】 版权所有 快快下载吧 | 豫ICP备10006759号公安备案:41010502004165

声明: 快快下载吧上的所有软件和资料来源于互联网,仅供学习和研究使用,请测试后自行销毁,如有侵犯你版权的,请来信指出,本站将立即改正。