zoukankan      html  css  js  c++  java
  • LAN VLAN与VXLAN学习笔记

    一、LAN(Local Area Network,局域网)

    1.通信方式

      向目标IP地址发送ARP广播,获取目的IP地址的MAC地址,然后用单播MAC地址实现相互通信

    2.LAN的特点

      1.同一LAN下的节点不需要通过三层设备(路由器)就可以通信。

      2.LAN中的结点能够互相发送广播报文,这些结点组成了一个广播域

    3.LAN的不足:

      当一个LAN中的结点数量增加时,随之带来的广播风暴就会导致整个网络的瘫痪,。

      比较LOW的解决办法:

                  买两台交换机,两台交换机不做连接,这样两个LAN就不会相互影响。 

      靠谱解决方法:

             把一台交换机当成两台虚拟虚拟交换机,两台虚拟机交换机相互之间互不影响,并能动态的调整交换机的端口。这就是VLAN

    二、VLAN

     1.VLAN的特点:

           1.一台物理交换机上可以有多个LAN

           2.每个LAN之间的广播报文互相不可达,VLAN之间互不影响。

           3.每一个VLAN就是一个广播域

    2.VLAN的优点:

           1.提高网络安全:不同VLAN之间的结点需要通信必须通过三层设备,这种情况下就可以在三层设备上配置访问列表,阻止部分业务流在VLAN之间的流动。

           2.降低开销:不用另外再买一台物理交换机就可以实现LAN的隔离

      3.提高性能:减少逻辑组之间不必要的广播流量,提升网络性能

      4.减轻广播风暴

    3.VLAN下源地址追踪:

           1.帧标记(显式标记):根据数据帧进入的端口属于哪一个VLAN确定(发生在交换机的内部)。在帧进入交换机之前就决定帧属于哪一个VLAN。

             优点:立即标记VLAN

             标记机制:IEEE 802.1Q

           2.帧过滤(隐式标记):交换机通过某种方式为每个VLAN保持一张MAC地址表,当帧需要转发时才做出决定

             优点:不修改帧

    4.802.1Q新增标签信息

      802.1QTag的长度是4bytes,它位于以太网帧中源MAC地址和长度/类型之间。

      802.1QTag包含4个字段的含义:

      Type:长度为2bytes,表示帧类型,802.1Qtag帧中type字段取固定值0x8100,如果不支持802.1Q的设备收到802.1Q帧,则将其丢弃。

      PRI:priority字段,长度为3bit,表示以太网帧的优先级,取值范围是0~7,数值越大,优先级越高。当交换机/路由器发生传输阻塞时,优先发送优先级高的数据帧。

      CFI:Canonical FormatIndicator,长度为1bit,表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。该字段用于区分以太网帧、FDDI帧和令牌环网帧,在以太网帧中,CFI取值为0。

      VID:VLAN ID,长度为12bit,取值范围是0~4095,其中0和4095是保留值,不能给用户使用。

     5.VLAN间路由:

           VLAN之间的互访需要借助路由器或三层交换机

    三 、VXLAN

     1.基本概念

      1.VXLAN (Virtual eXtensible Local Area Network,虚拟可拓展局域网):VXLAN是NVO3(Network Virtualization over Layer3)中的一种网络虚拟化技术,通过将VM或物理服务器发出的数据包封装在UDP中,并使用物理网络的IP/MAC作为报文头进行封装,然后在IP网络上传输,到达目的地后由隧道终结点解封装并将数据发送给目标虚拟机或物理服务器。

      2. NVE (Network Virtual Endpoint):网络虚拟边缘节点NVE,是实现网络虚拟化功能的网络实体。报文经过NVE封装转换后,NVE间就可基于三层基础网络建立二层虚拟化网络。

       3.VTEP(VXLAN Tunnel Endpoints):VTEP是VXLAN隧道端点,封装在NVE中,用于VXLAN报文的封装和解封装。

      4. VNI(VXLAN Network Identifier):VXLAN网络标识VNI类似VLAN ID,用于区分VXLAN段,不同VXLAN段的虚拟机不能直接二层相互通信。

    2.VXLAN产生的背景

      云计算和大规模的虚拟化网络环境的产生。

      2.1. 虚拟机规模受网络规格限制

           在大的数据中心,单台交换机连接数十台物理服务器,单台物理服务器又可以虚拟出多台虚拟机,为了保证集群中所有的虚拟机可以正常通信,交换机必须保存所有虚拟机的MAC地址,而MAC地址表的容量限制了虚拟机的数量

      2.2. 网络隔离能力限制

           VLAN 使用 12-bit 标记 VLAN ID,最多支持 4094 个 VLAN,这对大型云部署会成为瓶颈。VXLAN 的 ID (VNI 或者 VNID)则用 24-bit 标记,支持 16777216 个二层网段。

      2.3.虚拟机迁移范围受网络架构限制

      虚拟机启动后,可能由于服务器资源等问题(如CPU过高,内存不够等),需要将虚拟机迁移到新的服务器上。为了保证虚拟机迁移过程中业务不中断,则需要保证虚拟机的IP地址、MAC地址等参数保持不变,这就要求业务网络是一个二层网络,且要求网络本身具备多路径的冗余备份和可靠性。参考(http://developer.huawei.com/ict/cn/site-agile-network/article/site-doc-vxlan/

    3.VXLAN的优势

      1. 支持更多的二层网段。

         VLAN 使用 12-bit 标记 VLAN ID,最多支持 4094 个 VLAN,这对大型云部署会成为瓶颈。VXLAN 的 ID (VNI 或者 VNID)则用 24-bit 标记,支持 16777216 个二层网段。

      2. 能更好地利用已有的网络路径。

        VLAN 使用 Spanning Tree Protocol 避免环路,这会导致有一半的网络路径被 block 掉。VXLAN 的数据包是封装到 UDP 通过三层传输和转发的,可以使用所有的路径。

      3. 避免物理交换机 MAC 表耗尽。

        VXLAN将虚拟机发出的数据包封装在UDP中,并使用物理网络的IP/MAC地址作为外层头进行封装,对网络只表现为封装后的参数。因此,极大降低了大二层网络对MAC地址规格的需 求。由于采用隧道机制,TOR (Top on Rack) 交换机无需在 MAC 表中记录虚拟机的信息。

      4. 针对虚拟机迁移范围受网络架构限制

        通过VXLAN构建大二层网络,保证了在虚拟迁移时虚拟机的IP地址、MAC地址等参数保持不变。

    4.VXLAN的报文格式

    5.VXLAN包转发流程

      图中 Host-A 和 Host-B 位于 VNI 10 的 VXLAN,通过 VTEP-1 和 VTEP-2 之间建立的 VXLAN 隧道通信。数据传输过程如下:

      1. Host-A 向 Host-B 发送数据时,Host-B 的 MAC 和 IP 作为数据包的目标 MAC 和 IP,Host-A 的 MAC 作为数据包的源 MAC 和 IP,然后通过 VTEP-1 将数据发送出去。

      2. VTEP-1 从自己维护的映射表中找到 MAC-B 对应的 VTEP-2,然后执行 VXLAN 封装,加上 VXLAN 头,UDP 头,以及外层 IP 和 MAC 头。此时的外层 IP 头,目标地址为 VTEP-2 的 IP,源地址为 VTEP-1 的 IP。同时由于下一跳是 Router-1,所以外层 MAC 头中目标地址为 Router-1 的 MAC。

      3. 数据包从 VTEP-1 发送出后,外部网络的路由器会依据外层 IP 头进行路由,最后到达与 VTEP-2 连接的路由器 Router-2。

      4. Router-2 将数据包发送给 VTEP-2。VTEP-2 负责解封数据包,依次去掉外层 MAC 头,外层 IP 头,UDP 头 和 VXLAN 头。VTEP-2 依据目标 MAC 地址将数据包发送给 Host-B。

     6.关于VXLAN的网关

     

      

  • 相关阅读:
    linux安装
    ajax基础------备忘
    jquery简单入门1
    在jsp页面如何获得url参数
    MySQL外键设置中的的 Cascade、NO ACTION、Restrict、SET NULL
    springmvc.xml和applicationContext.xml配置的特点
    1.更改当前工作目录
    0.学习资料
    13.git别名
    12.打标签
  • 原文地址:https://www.cnblogs.com/gaoyuanzhi/p/9317874.html
Copyright © 2011-2022 走看看