Openstack中间DVR Part1 -- 东西走向的交通处理
作者:Liping Mao 发表于:2014-07-04
版权声明:能够随意转载。转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明
本文focus在DVR中东西向流量的处理流程。
南北向的处理不在本文范围内。
首先看一下东西向流量存在的问题。 一个用户创建了一个VRoute1(在Network Node上)和两个虚拟网络Net1、Net2,然后在两个网络中分别起了一个虚机,如果这两个虚机分别在Compute Node1和Compute Node2上。能够看到当VM1想要和VM2通信时。数据须要集中到Network Node,因而产生了东西向流量集中的问题。例如以下图所看到的:
启用DVR须要在compute node上安装neutron-l3-agent。而且要打开DVR mode。同一时候须要改动neutron-openvswitch-agent为DVR mode:
在IR1中查找路由,发现目标地址是属于Net2。而在IR1的ARP表中有全部VM的Static ARP Entry。因此目标地址为VM2就会已经存在ARP Entry,不会发出ARP Request。ARP表是在neutron-l3-agent中维护的。
当有新增/删除虚机时,都会改动此ARP表。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWF0dF9tYW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
这个唯一MAC地址是由DVR生成的。
同一时候在br-eth0上也有阻止对qr-net1和qr-net2的ARP请求的rule,这样就能保证本机的VM使用本机的Internal
Router。
如果不改动Source MAC。那各个计算节点上的OVS以及外部物理交换机会从不同的port收到同样源MAC地址的包。这会造成交换机MAC地址表thrashing。
尽管即使使用了唯一MAC还是会出现不同Vlan
id但MAC地址同样的情况,但这样的情况影响要小的多。
Openstack中间DVR Part1 -- 东西走向的交通处理的更多相关文章
- OpenStack Neutron DVR L2 Agent的初步解析 (一)
声明: 本博客欢迎转载,但请保留原作者信息! 作者:林凯 团队:华为杭州OpenStack团队 OpenStack Juno版本号已正式公布,这是这个开源云平台的10个版本号,在Juno版的Neutr ...
- openstack网络DVR
一.DVR描述 分布式路由 二.相关的专业术语 术语名称 术语解释 SNAT 在路由器后(POSTROUTING)将内网的ip地址修改为外网网卡的ip地址,也就是绑定浮动IP和外部通信 DNAT 在路 ...
- Openstack Neutron DVR workflow
目前在Juno版本的trunk中已经合入了DVR相关的代码,我的理解是在Juno版本中DVR是一个experimental feature.最好需要稳定一个版本以后再上生产环境.之前写过一篇博文是DV ...
- 初探Openstack Neutron DVR
目前在Juno版本的trunk中已经合入了DVR相关的代码,我的理解是在Juno版本中DVR是一个experimental feature.最好需要稳定一个版本以后再上生产环境.之前写过一篇博文是DV ...
- 零基础学习openstack【完整中级篇】及openstack资源汇总
1.你是如何学习openstack的?2.你对openstack的组件了解多少?3.你认为openstack该如何学习? 一直想写关于openstack的方面的内容,今天终于整理完成.算是完成一桩心事 ...
- OpenStack网络新项目Dragonflow研究
https://www.ustack.com/blog/openstack-dragonflow/ 本文由2015年5月30日举行的OpenStack Meetup北京上的演讲整理而成,演讲者为Uni ...
- <JAVA图像学习笔记>十字路口交通模拟--操作系统模拟课后小项目
项目的要求很简单: 模拟出十字路口的交通控制情况: 秒. 当东西(或南北)方向红灯时,所有车辆(除了消防车.救护车.警车)均排队等待,当东西(或南北)方向绿灯时,所有车辆按序行驶(不准超车). 制作这 ...
- 学习OpenStack之(5):在Mac上部署Juno版本OpenStack 四节点环境
0. 前沿 经过一段时间的折腾,终于在自己的Mac上装好了Juno版本的四节点环境.这过程中,花了大量的时间,碰到了许多问题,学到不少知识,折腾过不少其实不需要折腾的东西,本文试着来对这过程做个总结. ...
- openstack与VMware workStation的区别
免责声明: 本文中使用的部分图片来自于网络,如有侵权,请联系博主进行删除 最近一直在研究云计算,恰好有个同事问了我一个问题:你们研究的openstack到底是什么东西?跟VMware Work ...
随机推荐
- 运行edX Devstack
前一篇文章,我们安装完成了edX Devstack,本文将介绍edX Devstack的常用命令 6.1. 连接到 Devstack Virtual Machine 为了连接到Devstack vir ...
- 10. 将摄像机对准物体,并显示整个对准过程,摄像机Zoom
1. 如果把代码放到按钮事件中调用,达不到想要的效果 2. 可以不用委托,但是要在Update函数中写调用CameraZoonIn的代码 3. 有很多需要改进的地方,可以参考使用 iTween 插件达 ...
- 166. Fraction to Recurring Decimal
题目: Given two integers representing the numerator and denominator of a fraction, return the fraction ...
- hadoop2.2编程:各种API
hadoop2.2 API http://hadoop.apache.org/docs/r0.23.9/api/index.html junit API http://junit.org/javado ...
- C++ CGI Helloword
一 什么是CGI CGI(The Common Gateway Interface):通用网关接口,定义web服务器和客户脚本进行信息交互的一系列标准. 二 web浏览器 为了了解CGI的概念,让我 ...
- Ubuntu 安装Chrome步骤
一.添加PPA 从Google Linux Repository(http://www.google.com/linuxrepositories/)下载安装Key,或把下面的代码复制进终端,回车,需要 ...
- [NOIP2011]数的划分
本题地址:http://www.luogu.org/problem/show?pid=1025 题目描述 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序).例如:n=7,k=3,下面三 ...
- linux内核申请内存函数
kmap函数: 把某块高端内存映射到页表,然后返回给用户一个填好vitual字段的page结构 建立永久地址映射,不是简单的返回virtual字段的pageioremap: 驱动程序 ...
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...
- Shell脚本编程总结及速查手册
Shell是一种编程语言, 它像其它编程语言如: C, Java, Python等一样也有变量/函数/运算符/if语句/循环控制/… 但在开始之前, 我想先理清Shell语言与Shell之间的关系. ...