OpenStack Neutron网络详解:基础架构与关键技术

0 下载量 193 浏览量 更新于2024-07-15 收藏 1.73MB PDF 举报
OpenStack网络实现(上)着重介绍了Neutron,OpenStack中的网络服务模块,其目标是实现网络即服务(Network as a Service, NaaS),通过软件定义网络(Software Defined Networking, SDN)技术来虚拟化网络架构。在Linux系统上下文中,理解以下关键概念至关重要: 1. **网桥(Bridge)**: Linux中的网桥是一种虚拟设备,用于连接不同的网络设备。传统的网桥类似Hub,而如Open vSwitch (OVS) 管理的网桥则更像一个交换机。在Neutron中,br-int(综合网桥)通常代表内部网络功能的核心,而br-ex(外部网桥)则负责与外部网络的通信。 2. **GRE(Generic Routing Encapsulation)**: 是一种网络隧道技术,通过封装原始数据包并在目标节点解封装来实现跨网络通信。在OpenStack中,L3 GRE(originalpkt/GRE/IP/Ethernet)用于提供网络隔离和访问。 3. **VETH(Virtual Ethernet)**: 一对虚拟以太网接口,它们之间通信如同真实网络设备,常用于在两个网桥间建立通信通道。 4. **qvb/qvo(neutronveth)**: 分别表示Linux Bridge和OVS侧的Neutron虚拟以太网接口,用于实现不同网络组件间的通信。 5. **TAP/TUN设备**: TAP模拟二层设备处理二层数据包,而TUN模拟三层设备处理三层数据包,各有其在网络架构中的作用。 6. **iptables**: Linux中的防火墙工具,用于设置安全策略,保护网络资源。 7. **VLAN(Virtual Local Area Network)**: 在同一物理网络中,通过添加标签实现不同虚拟网络间的隔离,标签范围通常为1-4094。 8. **VXLAN(Virtual Extensible LAN)**: 基于UDP的Overlay技术,扩展了VLAN的功能,提供跨数据中心的网络连接。 9. **Namespace**: 一种隔离机制,允许在单个主机上运行多个独立的网络实例,不同namespace内的资源互不干扰。 在Neutron中,网络、子网和端口是核心的概念。网络提供了L2隔离,子网则为L3隔离,分配IP地址;端口是连接网络和虚拟机的接口,具有CRUD操作能力和状态跟踪。通过理解这些概念,可以深入理解Neutron在网络虚拟化中的设计和实现原理。