首页 > 其他分享 >离谱,居然还有网络工程师不懂什么是Overlay网络?

离谱,居然还有网络工程师不懂什么是Overlay网络?

时间:2023-08-18 14:32:05浏览次数:33  
标签:WAN 离谱 Overlay 网络 站点 Underlay SD

下午好,我是老杨。

伴随着网络技术的发展,数据中心的二层组网结构早已出现了阶段性的架构变化。

数据中心网络分为了Underlay和Overlay两个部分,网络进入了Overlay虚拟化阶段。

离谱,居然还有网络工程师不懂什么是Overlay网络?_华为认证

很多小友希望能多输出一些新技术,这不,今天就给你展开说说。

Overlay网络是怎么形成的?与Underlay的区别又在哪?试图解决了什么问题?


今日文章阅读福利:《 Overlay技术白皮书 》

离谱,居然还有网络工程师不懂什么是Overlay网络?_数据中心_02

关于Overlay技术,你需要了解的还有很多,想学习Overlay技术是怎样实现的,研究典型应用,这份实打实的技术白皮书,收藏必看。

私信我,发送暗号“Overlay”,限量获取资源。


01 为什么需要Overlay网络?

Overlay网络和Underlay网络是一组相对概念,Overlay网络是建立在Underlay网络上的逻辑网络。

而为什么需要建立Overlay网络,就要从底层的Underlay网络的概念以及局限讲起。


01 这得先说回到Underlay网络

Underlay网络正如其名,是Overlay网络的底层物理基础。

如下图所示,Underlay网络可以是由多个类型设备互联而成的物理网络,负责网络之间的数据包传输。

离谱,居然还有网络工程师不懂什么是Overlay网络?_IP_03

在Underlay网络中,互联的设备可以是各类型交换机、路由器、负载均衡设备、防火墙等,但网络的各个设备之间必须通过路由协议来确保之间IP的连通性。

Underlay网络可以是二层也可以是三层网络。

其中二层网络通常应用于以太网,通过VLAN进行划分。

三层网络的典型应用就是互联网,其在同一个自治域使用OSPF、IS-IS等协议进行路由控制,在各个自治域之间则采用BGP等协议进行路由传递与互联。

随着技术的进步,也出现了使用MPLS这种介于二三层的WAN技术搭建的Un derlay网络。

然而传统的网络设备对数据包的转发都基于硬件,其构建而成的Underlay网络也产生了如下的问题:

  • 由于硬件根据目的IP地址进行数据包的转发,所以传输的路径依赖十分严重。
  • 新增或变更业务需要对现有底层网络连接进行修改,重新配置耗时严重。
  • 互联网不能保证私密通信的安全要求。
  • 网络切片和网络分段实现复杂,无法做到网络资源的按需分配。
  • 多路径转发繁琐,无法融合多个底层网络来实现负载均衡。

Underlay网络存在着以上诸多限制,而Overlay带来了Underlay无法提供的灵活性。


02 为啥需要Overlay网络

为了摆脱Underlay网络的种种限制,现在多采用网络虚拟化技术在Underlay网络之上创建虚拟的Overlay网络。

离谱,居然还有网络工程师不懂什么是Overlay网络?_网络工程师_04

在Overlay网络中,设备之间可以通过逻辑链路,按照需求完成互联形成Overlay拓扑。

相互连接的Overlay设备之间建立隧道,数据包准备传输出去时,设备为数据包添加新的IP头部和隧道头部,并且被屏蔽掉内层的IP头部,数据包根据新的IP头部进行转发。

当数据包传递到另一个设备后,外部的IP报头和隧道头将被丢弃,得到原始的数据包,在这个过程中Overlay网络并不感知Underlay网络。

Overlay网络有着各种网络协议和标准,包括VXLAN、NVGRE、SST、GRE、NVO3、EVPN等。


03 Overlay网络如何解决问题?

随着SDN技术的引入,加入了控制器的Overlay网络,有着如下的优点:

  • 流量传输不依赖特定线路。Overlay网络使用隧道技术,可以灵活选择不同的底层链路,使用多种方式保证流量的稳定传输。
  • Overlay网络可以按照需求建立不同的虚拟拓扑组网,无需对底层网络作出修改。
  • 通过加密手段可以解决保护私密流量在互联网上的通信。
  • 支持网络切片与网络分段。将不同的业务分割开来,可以实现网络资源的最优分配。
  • 支持多路径转发。在Overlay网络中,流量从源传输到目的可通过多条路径,从而实现负载分担,最大化利用线路的带宽。


02 Overlay网络是如何形成的?

Overlay是基于软件的,不依赖于传输,它就像物理网络之上的虚拟网络。

Overlay网络的一个典型例子是Internet VPN ,它在Internet上构建了一个虚拟的封闭网络。

通过使用IPsec等协议构建虚拟网络,使私有 IP 地址的通信成为可能。

此外,SDN和SD-WAN也采用了Overlay网络的概念。

但是,要在 SD-WAN 中构建Overlay,需要一个特殊 CPE,称为 SD-WAN 边缘设备。

离谱,居然还有网络工程师不懂什么是Overlay网络?_数据中心_05

用一个SD-WAN边缘设备建立GRE隧道的例子给你说明下。

相互连接的SD-WAN边缘设备之间建立隧道,数据包准备传输出去时,设备为数据包添加新的IP头部和隧道头部,

并将内部IP头与MPLS域隔离,MPLS转发基于外部IP头进行。

一旦数据包到达其目的地,SD-WAN 边缘设备将删除外部 IP 标头和隧道标头,得到的是原始 IP 数据包。

在整个过程中,Overlay网络感知不到Underlay网络。

离谱,居然还有网络工程师不懂什么是Overlay网络?_华为认证_06

同样的过程也可以用于Internet Underlay,但需要使用IPSec进行加密。


03 关于Overlay网络的应用说2个具体案例

Overlay网络在SD-WAN、数据中心两大解决方案中被广泛应用。

但由于其底层Underlay网络的架构也不尽相同,使得Overlay网络的拓扑存在不同的形式。


01 数据中心的Overlay网络

随着数据中心架构演进,现在数据中心多采用Spine-Leaf架构构建Underlay网络。

通过VXLAN技术构建互联的Overlay网络,业务报文运行在VXLAN Overlay网络上,与物理承载网络解耦。

离谱,居然还有网络工程师不懂什么是Overlay网络?_华为认证_07

Leaf与Spine全连接,等价多路径提高了网络的可用性。

Leaf节点作为网络功能接入节点,提供Underlay网络中各种网络设备接入VXLAN网络功能。

同时也作为Overlay网络的边缘设备承担VTEP(VXLAN Tunnel EndPoint)的角色。

Spine节点即骨干节点,是数据中心网络的核心节点,提供高速IP转发功能,通过高速接口连接各个功能Leaf节点。


02 SD-WAN中的Overlay网络

SD-WAN的Underlay网络基于广域网,通过混合链路的方式达成总部站点、分支站点、云网站点之间的互联。

通过搭建Overlay网络的逻辑拓扑,完成不同场景下的互联需求。

离谱,居然还有网络工程师不懂什么是Overlay网络?_华为认证_08

SD-WAN的Overlay网络(以Hub-Spoke为例)

SD-WAN的网络主要由CPE设备构成,其中CPE又分为Edge和GW两种类型。

  • Edge:是SD-WAN站点的出口设备。
  • GW:是联接SD-WAN站点和其他网络(如传统VPN)的网关设备。

根据企业网络规模、中心站点数量、站点间互访需求可以搭建出多个不同类型的Overlay网络。


Hub-spoke:

适用于企业拥有1~2个数据中心,业务主要在总部和数据中心,分支通过WAN集中访问部署在总部或者数据中心的业务。

分支之间无或者有少量的互访需求,分支之间通过总部或者数据中心绕行。


Full-mesh:

适用于站点规模不多的小企业,或者在分支之间需要进行协同工作的大企业中部署。

大企业的协同业务,如VoIP和视频会议等高价值的应用,对于网络丢包、时延和抖动等网络性能具有很高的要求,因此这类业务更适用于分支站点之间直接进行互访。


分层组网:

适应于网络站点规模庞大或者站点分散分布在多个国家或地区的大型跨国企业和大企业,网络结构清晰,网络可扩展性好。


多Hub组网:

适用于有多个数据中心,每个数据中心均部署业务服务器为分支提供业务服务的企业。


POP组网:

当运营商/MSP面向企业提供SD-WAN网络接入服务时,企业一时间不能将全部站点改造为SD-WAN站点;

网络中同时存在传统分支站点和SD-WAN站点这两类站点,且这些站点间有流量互通的诉求。

一套IWG(Interworking Gateway,互通网关)组网能同时为多个企业租户提供SD-WAN站点和已有的传统MPLS VPN网络的站点连通服务。


04 Overlay网络 VS Underlay网络

Overlay网络和Underlay网络的区别如下所示:

离谱,居然还有网络工程师不懂什么是Overlay网络?_IP_09


整理:老杨丨10年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

标签:WAN,离谱,Overlay,网络,站点,Underlay,SD
From: https://blog.51cto.com/u_15281548/7136050

相关文章

  • TedNet:一个用于张量分解网络的Pytorch工具包
    摘要张量分解网络(TensorDecompositionNetworks,TDNs)因其固有的紧凑架构而流行。为了给更多的研究人员提供一种灵活的方式来利用TDNs,我们提出了一个名为TedNet的Pytorch工具包。TedNet实现了5种张量分解(即,CANDECOMP/PARAFAC(CP)、Block-TermTucker(BTT)、Tucker-2、TensorTrain(TT)和......
  • X710网卡LACP模式下ifdown网卡后交换机侧依然处于UP状态,导致网络通信异常
    以下配置属于临时配置,重启后失效,具体建议在bios或者固件中解决。主要包含两个配置:1、使用ifdown命令关闭网卡无法使linkdown,交换机侧依然认为端口UP进行流量转发,无法正常通信2、在某些环境中,LACP可能无法正常工作,这些环境要求将包含LCAP信息的LLDP帧转发到网络堆栈。#查看网卡......
  • 如何认识数据安全与网络安全的关系?数据安全与个人信息保护的关系如何?
    什么是数据安全?数据安全,是指通过采取必要措施,确保数据处于有效保护和合法利用的状态,以及具备保障持续安全状态的能力。数据安全的内涵可从两个方面来认识:一是保护数据的完整性、保密性、可用性;二是保护数据承载的国家安全、公共利益或者个人、组织合法权益,比如个人信息保护、涉及国......
  • xamarin.Android:获取局域网络
    通过Java.Net层,调用Java接口///<summary>///获取网络列表///</summary>privateDictionary<string,NetworkInfoBean>GetNetworkInfoList(){Dictionary<string,NetworkInfoBean>result=newDictiona......
  • 【已解决】docker overlay2占用大量磁盘空间处理方法
    在使用docker容器的时候遇到了容量上的问题,做一个记录处理方式1:在使用docker时,往往会出现磁盘空间不足,导致该问题的通常原因是因为docker中部署的系统输出了大量的日志内容。此时,可通过手动或定时任务进行清除。针对/var/lib/docker/overlay2空间占用很大网上提供了很多解决方......
  • iptables:Linux网络安全的神器 iptables的使用方法 使用案例
    iptables是Linux系统中的防火墙管理工具,它的功能强大并且使用灵活,可用于网络防护、路由转发等功能应用。由于防火墙功能是基于Linux内核实现的,具有稳定和高效率的特点,因此常被广泛地使用到多个场景中。解锁iptables的技能,将会成为我们Linux网络安全的神器。本文将介绍iptables的......
  • 直播系统源码协议探索篇(二):网络套接字协议WebSocket
     上一篇我们分析了直播平台的会话初始化协议SIP,他关乎着直播平台的实时通信和多方互动技术的实现,今天我们来讲另一个协议,叫网络套接字协议WebSocket,WebSocket基于TCP在客户端与服务器建立双向通信的网络协议,并且可以通过单个长连接实现。在直播系统源码平台已经成为人们获取知识......
  • 直播系统源码协议探索篇(二):网络套接字协议WebSocket
    上一篇我们分析了直播平台的会话初始化协议SIP,他关乎着直播平台的实时通信和多方互动技术的实现,今天我们来讲另一个协议,叫网络套接字协议WebSocket,WebSocket基于TCP在客户端与服务器建立双向通信的网络协议,并且可以通过单个长连接实现。在直播系统源码平台已经成为人们获取知识、放......
  • OpenCV3.3深度神经网络DNN模块 实例2:GoogleNet-Caffe模型实现图像分类
    1#include<opencv2/opencv.hpp>2#include<opencv2/dnn.hpp>3#include<iostream>4//使用GooglenetCaffe模型实现图像分类5usingnamespacecv;6usingnamespacecv::dnn;7usingnamespacestd;89Stringmodel_bin_file="D:/open......
  • OpenCV3.3深度神经网络DNN模块 实例3:SSD模型实现对象检测
    1#include<opencv2/opencv.hpp>2#include<opencv2/dnn.hpp>3#include<iostream>45usingnamespacecv;6usingnamespacecv::dnn;7usingnamespacestd;89constsize_twidth=300;//模型尺寸为300*30010constsize......