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)。
Openstack网络相关概念比较复杂,经常使人混淆,本文进行相关说明。的更多相关文章
- 绝不能错过的10款最新OpenStack网络运维 & 监控工具
摘要 今天我们要推荐给大家的是关于奥斯汀OpenStack Summit的OpenStack网络方面功能与工具相关的技术演讲. 希望可以帮助国内的开发者.架构师和用户更好地了解OpenStack在SD ...
- 深入理解openstack网络架构(3)-----路由
原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture2 译文转自:http://b ...
- 深入理解openstack网络架构(1)
原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture 译文转载自:http://b ...
- openstack 网络架构 nova-network + neutron
openstack网络架构(nova-network/neutron) openstack网络体系中,网络技术没有创新,但用到的技术点很庞杂,包含bridge.vlan.gre.vxlan.ovs.o ...
- OpenStack云计算(一)——OpenStack 网络
关于OpenStack OpenStack它是 Rackspace Cloud 和 NASA 负责的一个开源基础架构即服务的云计算项目. OpenStack 是一个由开发者和云计算技术人员的全球协作开 ...
- OpenStack 网络:Neutron 初探
OpenStack Neutron 网络模型 OpenStack nova-network 独立成为单独的组件 Neutron 后,形象的网络模型的多平面网络.混合平面私有网络.如图 3,图 4,图 ...
- openstack网络架构(nova-network/neutron)
openstack网络体系中,网络技术没有创新,但用到的技术点非常庞杂,包括bridge.vlan.gre.vxlan.ovs.openflow.sdn.iptables等,当然这里不会做具体技术介绍 ...
- openstack网络(一)
什么是OpenStack Networking OpenStack网络的特性 交换机 路由器 负载均衡 防火墙 虚拟专用网络 网络功能虚拟化 网络类型 管理网络 API 网络 外部网络 访客网络 在一 ...
- 2.OpenStack 网络简介(neutron)
OpenStack 网络简介(neutron) 概述和组件 OpenStack 网络允许您创建和管理网络对象, 如网络.子网和端口, 其他 OpenStack 服务可以使用.插件可以实现, 以适应不同 ...
随机推荐
- easyui中使用的遮罩层
easyui 的 dialog 是继承自 window的,而 window中有modal这样的属性(见参考资料),就是用于打开模态的窗口的,也就是你说的有遮罩层的窗口.所以不需要额外的代码,仅需在di ...
- 推荐Java程序员阅读的书籍(转)
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...
- 仿LOL项目开发第九天
仿LOL项目开发第九天 by 草帽 OK,今天我们完全换了一种风格,抛弃了Unity3d的c#语法,我们来写写java的项目. 说到java服务器,当然有些人可能鄙视java的服务器速度太慢,但是相对 ...
- Expectation Maximization-EM(期望最大化)-算法以及源码
在统计计算中,最大期望(EM)算法是在概率(probabilistic)模型中寻找参数最大似然估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variable).最大期望经常用在机器学 ...
- SpringMVC处理方法的数据绑定
一.SpringMVC数据绑定流程 Spring MVC通过反射机制对目标处理方法的签名进行解析,将请求消息中的信息以一定的方式转换并绑定到处理方法的入参中.数据绑定的核心部件是DataBinder, ...
- 游戏:贪吃虫(GreedyMaggot)
该游戏类似于贪吃蛇,但可以在二维平面上以任意方向前进.当吃到食物手,食物会从虫头向虫尾移动,移到虫尾后,贪吃虫长度会增加.本来给它取名为贪吃蛆的,并且工程的英文名Maggot就是蛆的意思,后来想想有点 ...
- 矩阵求和及Kadane算法
今天的一道题目: https://leetcode.com/problems/max-sum-of-sub-matrix-no-larger-than-k/ 有难度.这一类题目很有代表性. 搜到这个网 ...
- Mac OS中Java Servlet与Http通信
Java中一个Servlet其实就是一个类,用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序.Servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器 ...
- SoundPool 音频播放 API 详解【示例】
demo地址:https://github.com/baiqiantao/PermissionTest.git 一个大坑:SoundPool最多只能播放时长10s左右.大小70kb左右(这些值是我多次 ...
- JS操作JSON常用方法
一.JSON字符串的替换 工作经常遇到这样的字符串,如下: 需要经过替换后,才能从字符串转化成JSON对象.这里我们需要用JS实现replaceAll的功能, 将所有的 ' \\" ' 替换 ...