OpenStack之Neutron模块

       1. 传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备;而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要创建、修改和删除网络,网络的连通性和隔离不已经太可能通过手工配置来保证了。

       2. 如何快速响应业务的需求对网络管理提出了更高的要求。传统的网络管理方式已经很难胜任这项工作,而“软件定义网络(software-defined networking, SDN)”所具有的灵活性和自动化优势使其成为云时代网络管理的主流。

       3. Neutron 的设计目标是实现“网络即服务(Networking as a Service)”。为了达到这一目标,在设计上遵循了基于 SDN 实现网络虚拟化的原则,在实现上充分利用了 Linux 系统上的各种网络相关的技术。

       4. SDN 模式服务— NeutronSDN( 软件定义网络 ), 通过使用它,网络管理员和云计算操作员可以通过程序来动态定义虚拟网络设备。Openstack 网络中的 SDN 组件就是 Quantum.但因为版权问题而改名为Neutron 。

    二、基本概念

       1. Network:是一个隔离的二层广播域。Neutron 支持多种类型的 Network,包括 Local, Flat, VLAN, VxLAN 和 GRE。

           1. Local网络与其他网络和节点隔离。Local 网络中的 instance 只能与位于同一节点上同一网络的 Instance 通信,主要用于单机测试。

           2. Flat 网络是无 vlan tagging 的网络。Flat 网络中的 instance 能与位于同一网络的 instance 通信,并且可以跨多个节点。

           3. VLAN 网络是具有 802.1q tagging 的网络,是一个二层的广播域,同一 Vlan 中的 instance 可以通信,不同 vlan 只能通过 router 通信。vlan 网络可跨节点,是应用最广泛的网络类型。

           4. Vxlan 是基于隧道技术的 overlay 网络。Vxlan 网络通过唯一的 segmentation ID(也叫 VNI)与其他 Vxlan 网络区分。vxlan 中数据包会通过 VNI 封装成 UDP 包进行传输。因为二层的包通过封装在三层传输,能够克服 VLAN 和物理网络基础设施的限制。

           5. GRE 是与 Vxlan 类似的一种 overlay 网络。主要区别在于使用 IP 包而非 UDP 进行封装。

 

       2. Subnet:是一个 IPv4 或者 IPv6 地址段。Instance 的 IP 从 Subnet 中分配。每个 Subnet 需要定义 IP 地址的范围和掩码。

           1. Network 与 Subnet 是 1对多 关系。同一个Network 的 Subnet 可以是不同的 IP 段,但CIDR不能重叠。

               1. 有效配置

                  

OpenStack之Neutron模块

               2. 无效配置(同一个Network)

                  

OpenStack之Neutron模块

 

           2. 不同 Network 的 Subnet 的CIDR 和 IP 都是可以重叠的。因为 Neutron 的 router 是通过 Linux network namespace 实现的。

              

OpenStack之Neutron模块

 

           3. Network Namespace:是一种网络的隔离机制,通过网络命名空间的每个 router 都有自己独立的路由表

               1. 如果两个 subnet 是通过同一个 router 路由,根据 router 的配置,只有指定的一个 subnet 可被路由。

               2. 如果两个 subnet 是通过不同 router 路由,因为 router 的路由表是独立的,所以两个 subnet 都可以被路由。

 

       3. Port:是虚拟交换机上的一个端口。Port 上定义了 MAC 地址和 IP 地址,当 instance 的虚拟网卡 VIF(Virtual Interface) 绑定到 Port 时,Port 会将 MAC 和 IP 分配给 VIF。

       4. Project、Network、Subnet、Port之间的关系:Project 1 : m Network 1 : m Subnet 1 : m Port 1 : 1 VIF m : 1 Instance。

      

    三、功能

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpdywx.html