我们知道,Overlay网络和Underlay网络是一组相对概念,Overlay网络是建立在Underlay网络上的逻辑网络。而为什么需要建立Overlay网络,就要从底层的Underlay网络的概念以及局限讲起。
Underlay网络正如其名,是Overlay网络的底层物理基础。如下图所示,Underlay网络可以是由多个类型设备互联而成的物理网络,负责网络之间的数据包传输。
在Underlay网络中,互联的设备可以是各类型交换机、路由器、负载均衡设备、防火墙等,但网络的各个设备之间必须通过路由协议来确保之间IP的连通性。
Underlay网络可以是二层也可以是三层网络,参考:Underlay和Overlay网络有什么区别。其中:
二层网络通常应用于以太网,通过VLAN进行划分。
三层网络的典型应用就是互联网,其在同一个自治域使用OSPF、IS-IS等协议进行路由控制,在各个自治域之间则采用BGP等协议进行路由传递与互联。
随着技术的进步,也出现了使用MPLS这种介于二三层的WAN技术搭建的Underlay网络。然而传统的网络设备对数据包的转发都基于硬件,其构建而成的Underlay网络也产生了如下的问题:
为了摆脱Underlay网络的种种限制,现在多采用网络虚拟化技术在Underlay网络之上创建虚拟的Overlay网络。
在Overlay网络中,设备之间可以通过逻辑链路,按照需求完成互联形成Overlay拓扑。
相互连接的Overlay设备之间建立隧道,数据包准备传输出去时,设备为数据包添加新的IP头部和隧道头部,并且被屏蔽掉内层的IP头部,数据包根据新的IP头部进行转发。
当数据包传递到另一个设备后,外部的IP报头和隧道头将被丢弃,得到原始的数据包,在这个过程中Overlay网络并不感知Underlay网络。Overlay网络有着各种网络协议和标准,包括VXLAN、NVGRE、SST、GRE、NVO3、EVPN等。
随着SDN技术的引入,加入了控制器的Overlay网络,有着如下的优点:
丨Overlay网络是如何形成的?
Overlay是基于软件的,不依赖于传输,它就像物理网络之上的虚拟网络。一个典型例子是Internet VPN ,它在Internet上构建了一个虚拟的封闭网络。通过使用IPsec等协议构建虚拟网络,使私有 IP 地址的通信成为可能。
此外,SDN和SD-WAN也采用了Overlay网络的概念。但是,要在 SD-WAN 中构建Overlay,需要一个特殊 CPE,称为 SD-WAN 边缘设备。
用一个SD-WAN边缘设备建立GRE隧道的例子给你说明下:
相互连接的SD-WAN边缘设备之间建立隧道,数据包准备传输出去时,设备为数据包添加新的IP头部和隧道头部,并将内部IP头与MPLS域隔离,MPLS转发基于外部IP头进行。
一旦数据包到达其目的地,SD-WAN 边缘设备将删除外部 IP 标头和隧道标头,得到的是原始 IP 数据包。在整个过程中,Overlay网络感知不到Underlay网络。