上一节我们启用了 Open vSwitch,本节将查看当前的网络状态并介绍 Open vSwitch 涉及的各种网络设备

初始网络状态

查看一下当前的网络状态。

控制节点

ifconfig 显示控制节点上有三个网桥 br-ex,br-int 和 br-tun。
从命名上看我们大致能猜出他们的用途:

br-ex
连接外部(external)网络的网桥

br-int
集成(integration)网桥,所有 instance 的虚拟网卡和其他虚拟网络设备都将连接到该网桥。

br-tun
隧道(tunnel)网桥,基于隧道技术的 VxLAN 和 GRE 网络将使用该网桥进行通信。

这些网桥都是 Neutron 自动为我们创建的,但是通过 brctl show 命令却看不到它们。
这是因为我们使用的是 Open vSwitch 而非 Linux Bridge,需要用 Open vSwitch 的命令 ovs-vsctl show 查看,如下图所示:

输出内容后面会详细讲解。

计算节点

计算节点上也有 br-int 和 br-tun,但没有 br-ext。
这是合理的,因为发送到外网的流量是通过网络节点上的虚拟路由器转发出去的,所以 br-ext 只会放在网络节点(devstack-controller)上。

了解 Open vSwitch 环境中的各种网络设备

在 Open vSwitch 环境中,一个数据包从 instance 发送到物理网卡大致会经过下面几个类型的设备:

  1. tap interface
    命名为 tapXXXX。

  2. linux bridge
    命名为 qbrXXXX。

  3. veth pair
    命名为 qvbXXXX, qvoXXXX。

  4. OVS integration bridge
    命名为 br-int。

  5. OVS patch ports
    命名为 int-br-ethX 和 phy-br-ethX(X 为 interface 的序号)。

  6. OVS provider bridge
    命名为 br-ethX(X 为 interface 的序号)。

  7. 物理 interface
    命名为 ethX(X 为 interface 的序号)。

  8. OVS tunnel bridge
    命名为 br-tun。

OVS provider bridge 会在 flat 和 vlan 网络中使用;OVS tunnel bridge 则会在 vxlan 和 gre 网络中使用。
后面会通过实例详细讨论这些设备。

Open vSwitch 支持 local, flat, vlan, vxlan 和 gre 所有五种 network type。
vxlan 和 gre 非常类似,接下来我们将深入学习 Open vSwitch 是如何实现 local, flat, vlan 和 vlxan 的。

下一节将从 local network 开始。

OVS 中的各种网络设备 - 每天5分钟玩转 OpenStack(128)的更多相关文章

  1. OVS local network 连通性分析 - 每天5分钟玩转 OpenStack(132)

    前面已经创建了两个 OVS local network,今天详细分析它们之间的连通性. launch 新的 instance "cirros-vm3",网络选择 second_lo ...

  2. 分析 OVS 如何实现 vlan 隔离 - 每天5分钟玩转 OpenStack(140)

    上一节我们完成了 OVS vlan 环境的搭建,当前拓扑结构如下: cirros-vm1 位于控制节点,属于 vlan100. cirros-vm2 位于计算节点,属于 vlan100. cirros ...

  3. 在 ML2 中 enable local network - 每天5分钟玩转 OpenStack(79)

    前面完成了一系列准备工作,本节开始将创建各种 Neutorn 网络,我们首先讨论 local network. local network 的特点是不会与宿主机的任何物理网卡相连,也不关联任何的 VL ...

  4. 创建 OVS vlan101 并部署 instance - 每天5分钟玩转 OpenStack(139)

    前面我们创建了 OVS vlan100 并部署了 instance,今天继续创建 vlan101. subnet IP 地址为 172.16.101.0/24. 底层网络发生了什么变化 Neutron ...

  5. 在 Scale Up 中使用 Health Check - 每天5分钟玩转 Docker 容器技术(145)

    对于多副本应用,当执行 Scale Up 操作时,新副本会作为 backend 被添加到 Service 的负责均衡中,与已有副本一起处理客户的请求.考虑到应用启动通常都需要一个准备阶段,比如加载缓存 ...

  6. 在 Rolling Update 中使用 Health Check - 每天5分钟玩转 Docker 容器技术(146)

    上一节讨论了 Health Check 在 Scale Up 中的应用,Health Check 另一个重要的应用场景是 Rolling Update.试想一下下面的情况: 现有一个正常运行的多副本应 ...

  7. 每天5分钟 玩转OpenStack 目录列表

    最近在学习 OpenStack 的相关知识,一直苦于 OpenStack 的体系庞大以及复杂程度,学习没有进度,停滞不前.偶然机会在 51CTO 上发现了一个热点的专题关于 OpenStack 的,题 ...

  8. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重 ...

  9. 在 ML2 中配置 OVS flat network - 每天5分钟玩转 OpenStack(133)

    前面讨论了 OVS local network,今天开始学习 flat network. flat network 是不带 tag 的网络,宿主机的物理网卡通过网桥与 flat network 连接, ...

随机推荐

  1. 逆天Kali带你游遍大江南北~安全之前人铺路!

    0.Linux基础学习(基本指令) http://www.cnblogs.com/dunitian/p/4822807.html 1.Kali安装到移动硬盘或者U盘中~Linux系列通用方法(包括An ...

  2. ASP.NET MVC开发日常一:SessionID合理清除

    在MVC Web开发中临时存储数据一般会用到Session,Cookie,ViewBag,ViewData,TempData.每个的使用场景是不同,具体区别有空再补上. Session数据最敏感,最需 ...

  3. Aaron Stannard谈Akka.NET 1.1

    Akka.NET 1.1近日发布,带来新特性和性能提升.InfoQ采访了Akka.net维护者Aaron Stannard,了解更多有关Akka.Streams和Akka.Cluster的信息.Aar ...

  4. 《LoadRunner12七天速成宝典》签售会2016-12-17北京

    报名地址: http://www.after615.com/actives/s?id=3141&time=1480042829608&sign=9ac8e25e9ab3cf57f613 ...

  5. 从display:run-in;中学习新技能

    有时我们想在一行内显示一个标题,以及一段内容,虽然看起来比较简单,但是为了语义化用dl比较合适,但是它默认是block元素,改成inline?那么有多段呢?不就都跑上来了?用float?那问题也挺多. ...

  6. 你所能用到的BMP格式介绍

    原理篇: 一.编码的意义. 让我们从一个简单的问题开始,-2&-255(中间的操作符表示and的意思)的结果是多少,这个很简单的问题,但是能够写出解答过程的人并不 多.这个看起来和图片格式没有 ...

  7. animate.css(第三方动画使用方法)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px Monaco; color: #a5b2b9 } animation 语法: animatio ...

  8. ubuntu14.04redis安装以及扩展

    redis 安装http://my.oschina.net/quanpower/blog/282546#OSC_h2_2redis扩展安装wget https://github.com/nicolas ...

  9. linux下配置matlab运行环境(MCR)

    在安装好的matlab下有MCR(MatlabCompilerRuntime)在matlab2011/toolbox/compiler/deploy/glnxa64下找到MCRInstaller.zi ...

  10. SpringMVC初步

    SpringMVC框架介绍 1) Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面. Spring 框架提供了构建 Web 应用程序的全功 ...