overlay与underlay通信总结
网络通信Overlay
VxLAN介绍
VxLAN:VxLAN全称是Virtual eXtensible Local Area Network(虚拟扩展本地局域网),主要有Cisco推出,vxlan是一个VLAN 的扩展协议,是由IETF定义的NVO3(Network Virtualization over Layer 3)标准技术之一,VXLAN的特点是将L2的以太帧封装到UDP报文(即L2 over L4)中,并在L3网络中传输,即使用MAC in UDP的方法对报文进行重新封装, VxLAN本质上是一种overlay的隧道封装技术,它将L2的以太网帧封装成L4的UDP数据报,然后在L3的网络中传输,效果就像L2的以太网帧在一个广播域中传输一样,实际上L2的以太网帧跨越了L3网络传输,但是缺不受L3网络的限制,vxlan采用24位标识vlan ID号,因此可以支持2^24=16777216个vlan,其可扩展性比vlan强大的多,可以支持大规模数据中心的网络需求。
VXLAN报文格式(以外层IP头为IPv4格式为例)
VxLAN通信
VXLAN网络模型
通信过程
1、VM A发送L2帧与VM请求与VM B通信。
2、源宿主机VTEP添加或者封装VXLAN、UDP及IP头部报文。
3、网络层设备将封装后的报文通过标准的报文在三层网络进行转发到目标主机。
4、目标宿主机VTEP删除或者解封装VXLAN、UDP及IP头部。
5、将原始L2帧发送给目标VM。
Overlay网络介绍
Overlay网络的出现主要应对数据中心中虚拟机的迁移,打破物理地址的限制,保证在虚拟机进行迁移之后不需要重新配置网络等。Overlay指的是一种传统网络架构上叠加的虚拟化技术模式,在对基础网络不进行大规模修改的条件下,实现应用在网络上的承载,并能与其它网络业务分离,并且以基于IP的基础网络技术为主。
Overlay架构图
如果源pod对目标pod的访问属于同一个宿主机下,则直接通过cni网络插件进行本地的转发。反之则通过VTEP设备端点进行封装报文,并由VxLAN网络通道进行通信。
网络通信Underlay
Underlay介绍
Underlay网络就是传统IT基础设施网络,由交换机和路由器等设备组成,借助以太网协议、路由协议和VLAN协议等驱动,它还是Overlay网络的底层网络,为Overlay网络提供数据通信服务。容器网络中的Underlay网络是指借助驱动程序将宿主机的底层网络接口直接暴露给容器使用的一种网络构建技术,较为常见的解决方案有MAC VLAN、IP VLAN和直接路由等。
Underlay依赖于网络网络进行跨主机通信。
Underlay实现
Mac Vlan模式:
支持在同一个以太网接口上虚拟出多个网络接口(子接口),每个虚拟接口都拥有唯一的MAC地址并可配置网卡子接口IP。
IP VLAN模式:
IP VLAN类似于MAC VLAN,它同样创建新的虚拟网络接口并为每个接口分配唯一的IP地址,不同之处在于,每个虚拟接口将共享使用物理接口的MAC地址。
本文来自博客园,作者:PunchLinux,转载请注明原文链接:https://www.cnblogs.com/punchlinux/p/16676765.html