【Nova】nova-network网络模型之vlan网络
来源:互联网 发布:淘宝的配送范围 编辑:程序博客网 时间:2024/05/21 22:56
因为flat和flatdhcp中所有虚拟机处于同一个虚拟网络, 所以不同租户间不能进行网络隔离。为了解决这个问题, 引入了vlan网络,这也是默认的网络模式。在vlan网络中,nova-network会为每个租户创建一个vlan和网桥,在多节点部署的情况下,vlan需要交换机能支持vlan tagging(IEEE 802.1Q)。每个租户会获取一段私有IP并且只能在对应的vlan中访问;为了让用户能访问虚拟机实例,需要创建一个特殊的VPN实例(代码中命名为cloudpipe)。在这种模式下,每个租户会获取属于自己的vlan、linux网桥和子网。
vlan即虚拟局域网,一个vlan相当于一个2层的广播域,它能将广播控制在内部,不同vlan之间的数据通信必须通过网络层完成。传统的linux网桥只能用于构建单一的广播域,为了进行广播隔离,我们可以使用vlan这种逻辑分段技术,将一个网络划分为多个虚拟子网。802.1Q vlan是通过在以太网帧头插入4字节的vlan tag来工作的,因此多节点部署的情况下,我们需要使用支持vlan的交换机。
支持vlan的交换机的端口有3种类型可供配置:access/trunk/hybird:
1.access端口只能加入1个vlan,它有一个缺省的vlan id,收到一个以太网帧时,先判断是否有vlan tag;如果没有则打上端口的PVID,然后进行交换转发;有则直接丢弃。发送以太网帧时,会先剥离vlan信息,然后直接发送出去。access口适合PC之间的连接
2.trunk端口可以允许多个vlan通过,它需要设置缺省的vlan id;收到一个以太网帧时,先判断是否有vlan tag;如果没有则打上端口的PVID,并进行交换转发;有则判断该端口是否允许该vlan的数据进入;如果可以则转发,不可以则丢弃。发送以太网帧时,比较端口的PVID和帧的vlan id,如果相等则剥离vlan信息后转发,不等则直接发送。我们在使用vlan网络时,可以把交换机的端口配置成trunk类型
3.hybird端口是trunk的升级版,可以允许多个vlan通过,它需要设置缺省的vlan id;收到以太网帧时,工作流程和trunk端口一致;发送以太网帧时,我们可以配置一些vlan是tag而另一部分是untag的,那么如果帧的vlan id在tag的vlan中那么直接发送;在untag的vlan中则剥离vlan信息再发送;那都不在的情况下会怎么样呢?我也不造,我也很无奈orz
从上面我们可以看出,使用vlan网络,每次添加租户或者添加子网时,需要管理员对交换机进行适当的配置工作。
- 【Nova】nova-network网络模型之vlan网络
- 【Nova】nova-network网络模型之vlan网络-代码学习
- 【Nova】nova-network网络模型之flat网络
- 【Nova】nova-network网络模型之flat网络-代码学习
- 【Nova】nova-network网络模型之flatdhcp网络
- 【Nova】nova-network网络模型之flatdhcp网络-代码学习1
- 【Nova】nova-network网络模型之flatdhcp网络-代码学习2
- 【Nova】nova-network网络模型之flatdhcp网络-代码学习3
- nova-network网络模式
- openstack 网络架构 nova-network + neutron
- openstack 网络架构 nova-network + neutron
- openstack 网络架构 nova-network + neutron
- openstack 网络架构 nova-network + neutron
- openstack nova -network使用vlan-manager
- 【nova】【nova-network】nova-network在FlatDHCP模型下给VM分配多网卡
- Openstack的网络(nova)
- nova-network创建实例之FlatManager
- OpenStack云平台的网络模式及其工作机制(nova-network )
- 【hdoj 5294】 Tricks Device 【最小割+最短路spfa】
- docker swarm如何在指定节点运行service
- 挑战程序竞赛系列(28):3.5最小费用流
- 堆栈解释
- 微信用户登录
- 【Nova】nova-network网络模型之vlan网络
- 电影与Linux
- Cassandra 常用命令之 nodetool repair
- 常用正则积累
- LayoutInflater
- 【077】ubuntu12安装nginx步骤
- QT库版本查询
- 对象中的属性中能不能有对象类型?
- 进程的五种状态