《深入理解OpenStack Neutron》—3.2.4 计算节点的实现模型小结

举报
华章计算机 发表于 2019/05/30 15:40:33 2019/05/30
【摘要】 本书摘自《深入理解OpenStack Neutron》一书中的第3章,第3.2.4节,作者是李宗标。

3.2.4 计算节点的实现模型小结

通过前面的介绍,我们可以总结出计算节点的实现模型,如图3-15所示。

image.png

如果我们考虑网络层面的话,计算节点一共分为两层:用户网络层、本地网络层。

(1)用户网络层

用户网络层(User Network),指的是Open-Stack的用户创建的网络,也就是前文一直说的外部网络,这个外部网络是相对于Host内部网络而言的。用户网络层对应的Bridge是br-ethx(对应Flat、VLAN等非隧道型二层网络)或者br-tun(对应VXLAN、GRE等隧道型二层网络),其实现载体一般来说是OVS。用户网络层的功能是将用户网络与本地网络(Host内部的本地网络)进行相互转换,比如我们前面介绍的:内外VID转换,VXLAN封装与解封装,等等。为“用户网络层”是对本地网络层的一个屏蔽,即不管用户网络采用什么技术(比如VXLAN,GRE等),本地网络永远感知的仅仅是一个技术:VLAN。

(2)本地网络层

本地网络指的是Host内部的本地网络。由于用户网络层(Local Network)对这一层的屏蔽,本地网络层只需要感知一种技术:VLAN。本地网络层再分为两层。根据前文介绍,qbr的实现载体是Linux Bridge,它仅仅是负责安全,所以称之为安全层。br-int的实现载体一般是OVS,它负责内部交换,所以称之为Bridge层。

Bridge层是对VM层的一个屏蔽。从VM发出的Untag报文,被Bridge层转换为Tag报文转发到br-ethx/br-tun;从br-ethx/br-tun转发到br-int的Tag报文,被br-int剥去Tag,变成Untag报文,然后再转发给VM。

VM也有可能会收发带有Tag的报文,关于这一点,请参阅4.3节。

最后强调一下,位于同一个Host的本地网络中的不同VM之间的通信,它们经过本地网络层(即经过br-int)即可完成,不需要再往外走到用户网络层,如图3-16所示:

image.png

图3-16中,VM1-1与VM1-3在同一个Host内,同时也属于同一个本地网络,它们之间的通信只需经过br-int转发即可。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。