在上面的图片中有两个IP范围(192.168.0.10-192.168.0.50)和(192.168.0.60- 192.168.0.100),从192.168.0.51到192.168.0.59的IP被保留,这样管理员可以把它们分配 给不被ZStack管理的设备。 如果没有由网络服务提供模块提供的、和底层的L2网络服务相关的网络服务,L3网络 没有任何用处。网络服务提供模块可以提供一个或多个网络服务,例如,ZStack的默认虚拟 路由提供模块能够提供几乎所有常见的网络服务如DHCP、DNS、NAT等,而F5提供模块可 能只提供负载均衡服务。在ZStack版本(0.6)中,网络服务提供模块只能在L2网络被创建 的时候和L2网络关联;例如,实现了L2NetworkCreateExtensionPoint的虚拟路由,将在任 何L2网络创建后与之关联。 管理员可以将网络服务绑定到一个L3网络;对于一类服务,只有一个网络服务提供模 块提供的服务可被绑定到这个L3网络;例如,你不能将来自不同提供模块的两个DHCP服 务绑定到同一L3网络。在ZStack版本(0.6)中,定义了六种网络服务类型:DHCP、DNS、 NAT、EIP、端口转发和安全组,提供模块只需要实现相应的后端:NetworkServiceDhcpBackend, NetworkServiceDnsBackend,NetworkServiceSnatBackend,EipBackend,PortForwardingBackend, 和SecurityGroupHypervisorBackend来提供这些服务。在“网络模型2:虚拟路由器的网络 服务提供模块”,我们将讨论我们引用到的提供模块——虚拟路由,你可以探索更多的细节。
总结
在这片文章中,我们简要地解释了ZStack的网络模型。在没有挖掘后台Hypervisor的细 节的情况下,我们演示了ZStack是如何将OSI模型抽象为L2网络(layer2),L3网络(layer 3)以及网络服务(layer4~7)。在下一篇文章中,我们将详细阐述网络服务提供模块的参考 实现,关于它如何在虚拟机中实现DHCP、DNS、NAT、EIP和端口转发。
|
|