很多网络供应商已经开始通过使用Intel的平台和硬件产品来 减小开发成本。例如,Cisco的ASA防火墙、F5的负载均衡器和Vyatta的路由器。接下来的事情是很明显的,其中一些此类供应商已经开始为虚拟设 备提供产品了。F5已经有它的Local Traffic Manager–Virtual Edition (LTM VE)产品,而Vyatta则宣称具有一个全面虚拟设备解决方案。虽然VMware在这方面稍微有些落后,但也提供了虚拟防火墙(vShield Zones、vShield App)和路由器/负载均衡器(vShield Edge)。
虚拟网络设备:关键是什么?
网络设备与服务器不同,它们一般执行高I/O的任务,通过网络接口以最小附加处理来传输大量的数据,并且非常依赖于专用硬件。所有高速路由和数据包转 发,包括加密(IPsec与SSL)和负载均衡,都依靠专用处理器。当一个网络设备被重新打包为一个虚拟机格式时,专用硬件就失效了,所有的这些任务现在 都必须由通用的CPU执行,这有时候会导致性能的显著下降。
在虚拟设备中部署路由器、交换机或者防火墙可能会直接占用在其他地方可以更好利用的CPU时间——当然,除非您已经充实地预分配了服务器,并且还有大量闲置的CPU处理时间,否则在这种情况下您的规划将会出现严重的问题。
更糟糕的是,在服务器虚拟化解决方案中所使用的虚拟机管理软件也可以虚拟化网络接口。这意味着从网络设备到虚拟化硬件的每个I/O访问路径都会经过一个 更高特权软件(虚拟机管理程序)进行环境转换,它可以使用大量的CPU时间来解码所需要做的事情,模拟想要的动作。同时,在虚拟机器之间传输的数据必须在 它们的地址空间进行复制,这会给整个过程增加更多的延迟。
VMware的虚拟机管理程序具有的DVFilter API会带来一定的帮助,它支持一个可加载的内核模块,来检查和修改虚拟机管理程序(vNetwork Data Path Agent)内部或它与虚拟机(vNetwork Control Path Agent)之间传输的网络流量。可加载的内核模块能够显著地减少VM环境转换的开销。
虚拟网络设备发挥作用的位置
虚拟网络设备可以发挥作用的位置很多。例如,您可以将一个不依靠专用硬件而执行大量CPU密集处理的设备虚拟化。Web应用程序防火墙(WAF)和复杂的 负载均衡器就是很好的例子(它们一般是作为Apache Web服务器或者作为Squid反向代理服务器的可加载模版实现,也就不足为奇了)。
(责任编辑:武林网)
新闻热点
疑难解答