使用ESNP完成SDN技术静态方式VXLAN实现同子网(不同VLAN)的通信

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ESNP完成SDN技术静态方式VXLAN实现同子网(不同VLAN)的通信相关的知识,希望对你有一定的参考价值。

1.SDN线路

2006年斯坦福大学发布 OpenFlow,网络设备转发和控制面分离,通过集中的控制面实现网络流量的灵活控制
华为数据中心SDN的核心特征是适度的转控分离结合之外, 通过管理与控制分离, 实现网络业务自动化发放, 助力数据中心业务实现敏捷发放.
当下的SDN商业产品
技术图片

您可以看到思科、华为等传统网络产品大佬依旧走着“一条道走到黑”的路子,即自有控制器+自由硬件转发设备+VXLAN的路子。但请注意,“大佬决定历史”
技术图片

2.华为SDN的控制器和Vxlan

华为Agile Controller(DCN)即其数据中心下的SDN控制器,即界面如下图所示
技术图片
技术图片

Overlay 在网络技术领域,指的是一种网络架构上叠加的虚拟化技术模式,其大体框架是对基础网络不进行大规模修改的条件下,实现应用在网络上的承载,并能与其它网络业务分离,并且以基于IP的基础网络技术为主。Overlay 技术是在现有的物理网络之上构建一个虚拟网络,上层应用只与虚拟网络相关(比如GRE隧道等技术)。
Overlay网络主要由三部分组成:1.边缘设备:是指与虚拟机直接相连的设备 2.控制平面,主要负责虚拟隧道的建立维护以及主机可达性信息的通告3. 转发平面,承载 Overlay 报文的物理网络
由于这个定义才引出了VxLAN,它也是一种overlay技术
VXLAN在支持SDN,多租户等方面能力更强,因此成为业界的技术热点。
技术图片

VXLAN的优势:
基于IP的overlay,仅需要边界设备间IP可达。
隧道间水平分割、IP overlay TTL避免环路。
数据流量基于IP路由 SPF及ECMP快速转发。
网络变化实时侦听全网拓扑毫秒收敛。
Overlay+VNI构建虚拟网络,支持多达16M的虚拟网络。
物理设备、vSwitch均能够部署。

3.使用ESNP完成SDN技术静态方式VXLAN实现同子网(不同VLAN)的通信

VXLAN(Virtual Extensible LAN,虚拟可扩展局域网)是目前NVO3中影响力最为广泛的一种。它通过LMAC in UDP的报文封装方式,实现基于IP overlay的虚拟局域网。
VXLAN网络中的NVE以VTEP进行标识,VTEP(VXLAN Tunnel EndPoint,VXLAN隧道端点;
每一个NVE至少有一个VTEP,VTEP使用NVE的IP地址表示;
两个VTEP可以确定一条VXLAN隧道(点到点方式)。
VXLAN网络中的NVE以VTEP进行标识,VTEP(VXLAN Tunnel EndPoint,VXLAN隧道端点);
每一个NVE至少有一个VTEP,VTEP使用NVE的IP地址表示;
两个VTEP可以确定一条VXLAN隧道,VTEP间的这条VXLAN隧道将被两个NVE间的所有VNI所公用。
VTEP可以对VXLAN报文进行封装和解封装。
VXLAN报文中源IP地址为源端VTEP的IP地址,目的IP地址为目的端VTEP的IP地址。一对VTEP地址就对应着一条VXLAN隧道。在源端封装报文后通过隧道向目的端VTEP发送封装报文,目的端VTEP对接收到的封装报文进行解封装。
技术图片
网络标识VNI(VXLAN Network Identifier)
类似于传统网络中的VLAN ID,用于区分VXLAN段,不同VXLAN段的租户不能直接进行二层通信。一个租户可以有一个或多个VNI,VNI由24比特组成,支持多达16M的租户
VNI-24比特,用于标识虚拟网络,最大支持16M。相同的VNI,读者可以理解为相同的VLAN
在用户看来依旧是在同一个网络中,如图×××VLAN可以直接访问×××VLAN,其他拒绝
技术图片

我们通过如下实验来完成对VXLAN的进一步理解
拓扑:
技术图片

步骤1.完成底层的IGP,为后续BGP以及其他协议做前置准备

技术图片
即underlay网络(借助OSPF实施完毕的传统IP网络)实施完毕。验证如下:
协议验证

[~SPINE-GE1/0/1]dis ospf peer brief 
OSPF Process 1 with Router ID 3.3.3.3
Area Id         Interface                  Neighbor id      

State       
 0.0.0.0         GE1/0/0                    1.1.1.1          

Full        
 0.0.0.0         GE1/0/1                    2.2.2.2          

Full  

数据测试:ping -a 3.3.3.3 1.1.1.1
  PING 1.1.1.1: 56  data bytes, press CTRL_C to break
    Reply from 1.1.1.1: bytes=56 Sequence=1 ttl=255 time=18 ms
    Reply from 1.1.1.1: bytes=56 Sequence=2 ttl=255 time=5 ms
ping -a 3.3.3.3 2.2.2.2
  PING 2.2.2.2: 56  data bytes, press CTRL_C to break
    Reply from 2.2.2.2: bytes=56 Sequence=1 ttl=255 time=10 ms
    Reply from 2.2.2.2: bytes=56 Sequence=2 ttl=255 time=6 ms

步骤2.业务接入点实施

Leaf1
interface GE1/0/2
 description Conn2ACCESS
 undo shutdown //保证连接接入网络的接口开启
bridge-domain 10 //创建桥接域10
vxlan vni ?
  INTEGER<1-16777215>  Value of VXLAN network identifier //可以看到VXLAN的网络标识范围是16M
vxlan vni 10 //配置VLXAN的VNI 标记
interface g1/0/2.1 mode l2 //创建2层子接口,用于和BD绑定
 encapsulation dot1q vid 10 //dot1q在封装vxlan之前要先拿掉帧中的VLAN TAG(解耦,即VLAN不在有意义)。此处VID为发出帧的TAG
 bridge-domain 10 //BD域和子接口绑定,以方便携带TAG10的帧可以通过子接口转发,而后续BD会和VNI结合
[Leaf1]display bridge-domain 
The total number of bridge-domains is : 1
--------------------------------------------------------------------------------
MAC_LRN: MAC learning;         STAT: Statistics;         SPLIT: Split-horizon;
BC: Broadcast;                 MC: Unknown multicast;    UC: Unknown unicast;
*down: Administratively down;  FWD: Forward;             DSD: Discard;
--------------------------------------------------------------------------------

BDID       State MAC-LRN STAT    BC  MC  UC  SPLIT   Description
--------------------------------------------------------------------------------
10         up    enable  disable FWD FWD FWD disable  
!
Leaf2
interface GE1/0/2
 description Conn2ACCESS
 undo shutdown
bridge-domain 20
vxlan vni 10
interface g1/0/2.1 mode l2
 encapsulation dot1q vid 20
 bridge-domain 20
[Leaf2]display bridge-domain  
The total number of bridge-domains is : 1
--------------------------------------------------------------------------------
MAC_LRN: MAC learning;         STAT: Statistics;         SPLIT: Split-horizon;
BC: Broadcast;                 MC: Unknown multicast;    UC: Unknown unicast;
*down: Administratively down;  FWD: Forward;             DSD: Discard;
--------------------------------------------------------------------------------

BDID       State MAC-LRN STAT    BC  MC  UC  SPLIT   Description
--------------------------------------------------------------------------------
20         up    enable  disable FWD FWD FWD disable

步骤3.创建VXLAN隧道

即创建VXLAN隧道

配置头端复制功能
Leaf:
interface Nve 1 //创建逻辑接口NVE1
 source 1.1.1.1 //配置VTEP的源地址
 vni 10 head-end peer-list 2.2.2.2 //注意两侧NVE的VNI的ID相同
!
Leaf2
interface Nve1
 source 2.2.2.2
 vni 10 head-end peer-list 1.1.1.1
[~Leaf1]dis vxlan vni 
Number of vxlan vni : 1
VNI            BD-ID            State   
---------------------------------------
10             10               up 

步骤4.实验数据通断
主机发送数据到另外一个网络的终端

PC>ping 172.16.1.2

Ping 172.16.1.2: 32 data bytes, Press Ctrl_C to break
From 172.16.1.2: bytes=32 seq=1 ttl=128 time=93 ms
From 172.16.1.2: bytes=32 seq=2 ttl=128 time=78 ms
From 172.16.1.2: bytes=32 seq=3 ttl=128 time=78 ms
From 172.16.1.2: bytes=32 seq=4 ttl=128 time=78 ms
From 172.16.1.2: bytes=32 seq=5 ttl=128 time=47 ms

--- 172.16.1.2 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 47/74/93 ms
实验完成

以上是关于使用ESNP完成SDN技术静态方式VXLAN实现同子网(不同VLAN)的通信的主要内容,如果未能解决你的问题,请参考以下文章

【网络工程师】手把手教你用华为ensp模拟器玩vxlan实验(静态方式)

从SDN鼻祖Nicira到VMware NSX 网络虚拟化平台的简单探讨

vxlan支持哪几种配置

SDN实战:Build a VXLAN Tunnel by Making Python-based API Calls for DCI

Overlay 网络 — VxLAN 网络架构与运行原理

Overlay 网络 — VxLAN 网络架构与运行原理