zoukankan      html  css  js  c++  java
  • Openstack网络相关概念比较复杂,经常使人混淆,本文进行相关说明。

    Openstack网络相关概念比较复杂,经常使人混淆,本文进行相关说明。

    文中相关术语与缩写

    英文

    缩写

    中文

    Virtual Local Area Network

    VLAN

    虚拟局域网

    Virtual Extensible LAN

    vxlan

    虚拟可扩展局域网

    Generic Routing Encapsulation

    GRE

    通用路由封装

    Software Defined Network

    SDN

    软件定义网络

    Neutron是用来创建虚拟网络的Openstack网络服务。Neutron network可以根据网络类型或创建用户的权限进行分类。

    一、根据网络的类型,Neutron network可分为:

    1)VLAN network:基于物理 VLAN 网络实现的虚拟网络。多个 VLAN 网络相互隔离,甚至可以使用重叠的 IP 地址空间。每个支持 VLAN network 的物理网络可以被视为一个分离的 VLAN trunk,使用一组独占的 VLAN ID(VLAN ID 有效范围 1 到 4094)。

    2)Flat network:基于不使用 VLAN 的物理网络实现的虚拟网络。每个物理网络最多只能实现一个Flat虚拟网络。

    3)Local network:本地网络,只允许在本服务器内通信的虚拟网络,不支持跨服务器的通信。主要用于单节点上测试。

    4)GRE network:使用 GRE 封装网络包的虚拟网络。GRE 封装的数据包基于 IP 路由表来进行路由,因此 GRE network 不和具体的物理网络绑定。

    5)VXLAN network:基于 VXLAN 实现的虚拟网络。同 GRE network 一样, VXLAN network 中 IP 包的路由基于 IP 路由表,不和具体物理网络绑定。

    二、根据创建网络的用户权限,Neutron network可分为:

    1)Provider network:由管理员创建,与网络规划相关,直接映射物理网络。

       Provider network有 Flat 和 VLAN 类型,其重要属性 provider:physical_network对 Flat 和 VLAN 以外的网络类型无意义。

    2)Tenant network:由租户普通用户创建,受限于系统中管理员的Neutorn配置。

        Openstack结合模型场景,对部分API操作进行了权限控制。默认情况下,普通用户不能创建共享的 tenant network(因此 Nuetron Server 的policy 设置了"create_network:shared": "rule:admin_only")。这种网络是完全隔离的,不可被别的 tenant 共享。

    Tenant network 有 local,flat,vlan,gre 和 vxlan 等类型。但 tenant 普通用户创建的 Flat 和 VLAN tenant network 实际还是 Provider network。所以,真正有意义的是与物理网络没有绑定关系的 GRE 和 VXLAN 类型。

    一般而言,SDN采用VXLAN,政务云基本采用VLAN。由于政务云涉及物理规划,且都是规划好的VLAN和IP的关系,政务云通常由管理员做好相关网络,由租户使用。

    三、总结

    1、Provider network 由管理员用户创建,而 Tenant network 由租户普通用户创建。

    2、Provider network 和物理网络的某段直接映射,比如对应某个 VLAN,因此需要预先在物理网络中做相应配置。

       而 Tenant network 是虚拟化的网络,Neutron负责其路由等三层功能。

    3、对 Flat 和 VLAN 类型的网络,仅 Provider network有意义。即使是此类型的 tenant network,其本质上也是对应于一个实际的物理段。

       对 GRE 和 VXLAN 类型的网络,仅Tenant network有意义。因为它本身不依赖于具体物理网络,只需要物理网络提供 IP 和 组播即可。

    4、Provider network 根据管理员用户输入的物理网络参数创建,创建时允许使用不在配置项范围内的 segmentation_id。

       而 Tenant work 由 租户普通用户创建,Neutron 根据其网络配置来选择具体配置(包括网络类型,物理网络和 segmentation_id)。

  • 相关阅读:
    在chrome插件开发中,如何executeScript多个content script文件
    [Silverlight]MVVM+MEF框架Jounce练习(1)
    EF的日期运算
    【silverlight】Silverlight TreeViw默认展开节点
    singleton pattern简单随笔
    Design pattern形象比喻
    C#简单选择排序
    回文算法
    C#插入排序
    Jquery调用存储过程实例
  • 原文地址:https://www.cnblogs.com/onetwo/p/6135273.html
Copyright © 2011-2022 走看看