Linux 上虚拟网络与真实网络的映射
虚拟化环境中的网络问题
在提供 IaaS 服务的云计算环境中,每个用户都能得到一个虚拟的计算机,而这些虚拟机器以密集的方式运行在后台服务器集群中。虚拟机的一个特点是提供给用户类似于物理机器的体验,而现实世界中的物理机器能通过各种网络拓扑结构组网。如何在虚拟环境中方便快捷地创建和现实中一样的网络,成为一个新的挑战。
图 1.物理网络映射问题例子
图 1 为一个网络映射问题的例子。图中左边是现实世界中一个常见的网络环境:四台 PC 通过各自的物理网卡组成了两个子网,两个子网中的 PC 默认情况下是不能通讯的,也就是说他们被物理隔离了。图 1 的右边显示了虚拟化环境下的情景,四个虚拟机同时运行在一个物理主机上,并且需要象图 1 左边的真实环境一样划分出两个子网并隔离。如何才能做到这一点,或者说如何简单方便的创建出和图 1 左边部分类似的网络环境,成为虚拟化里必须要解决的一个问题。
回页首
虚拟化环境中模拟网络的主要方法
为方便理解,本文把虚拟化环境中模拟现实网络的方法分为两种:使用传统网络技术,或使用虚拟化网络扩展技术。传统网络技术主要指在虚拟化技术流行以前,现实世界中已经存在的以太网络,包括传统 IP 网络、802.1Q VLAN 网络,对它们 Linux 已经有良好支持,用户可以配置这些 Linux 设备以完成对现实网络的模拟。虚拟化网络扩展技术主要指为应对云计算与虚拟化环境带来的挑战而新出现的网络技术,包括 802.1Qbg 和 802.1Qbh 网络。
回页首
虚拟化环境中网络模型说明
图 2 本文使用的网络模型说明