【IT168 虚拟化频道】 微软和加州大学的研究人员两个研究小组本周在巴塞罗那举行的SIGCOMM大会上提出了他们的研究成果,每一家都有自己的优点。微软的团队主要寻求的是高性能,而忽略了所有通讯的要求,加州大学的团队主要集中在虚拟机迁移,最小化配置以及迅速处理故障方面。
微软的研究人员也讨论了虚拟机迁移和二层处理,但他们采用的方法要求在每个端点安装代理。相反,加州大学研究人员的规划是调整交换机软件,而与端点无关。加州大学的研究小组是由该校计算机科学系的Amin Vahdat教授领导的,他们提出了一种混合了二层和三层连接的数据中心,使大规模部署成为可能,同时降低了三层的管理和配置要求。
加州大学研究人员说他们的PortLand协议可以支持100000台服务器的数据中心网络,而且不需要修改任何主机设置。该小组的研究报告指出“PortLand是一种可扩展的具有容错能力的二层数据中心网络结构”。Vahdat说“可以让设备在网络中即插即用,不用配置或修改任何终端设备,这是PortLand的一个关键目标”。
Vahdat还谈到,它支持虚拟机迁移以及某些三层不能做的东西,因为虚拟机可以从一台服务器迁移到另一台服务器上,它还引入了流动机制,为共享PortLand分配的媒体访问控制(MAC)地址,通过减少地址表的大小克服了大部分交换机的内存限制。
PortLand需要额外的软件让交换机发现它们在数据中心拓扑结构上的位置,这个软件也可以让交换机分配一个伪MAC地址给每个直接连接它们的设备。
在PortLand下,交换机维护MAC前缀表,并负责转发通讯内容给其它交换机,直到通讯内容抵达目的地。交换机转换伪MAC到真实MAC地址,因此通讯内容能够被正确地传输到正确的设备。
为了方便转发通讯内容,PortLand引入了一个结构管理服务器,它实现了类似于DNS服务器解析URL到IP地址的功能。在伪MAC和IP地址之间的解析没有使用广播方案,交换机将来自连接它们的主机的广播ARP请求重定向到结构管理器,由这个结构管理器返回正确的IP地址。
结构管理器维护网络的一个软状态,因此即使它崩溃了,还可以使用PortLand协议访问网络中的交换机重建地址信息。
如果结构管理器崩溃,在网络上的连接时间可以忽略,因为该协议可以恢复到广播地址解析模式,如果结构管理器处于正常运行状态,那查找速度是线速的。
PortLand也涉及到了网络设备管理员控制和系统管理员控制,没有使用服务器或代理直接修改主机的MAC地址,PortLand架构是让交换机将真实MAC地址转换成伪MAC地址的,Vahdat说“我们只是对交换机软件做了一点点修改,对交换机硬件没有做任何变化”。
微软的研究小组是由Albert Greenberg,David Maltz和Parveen Patel领导的,也涉及到了通过引入一个双层系统来解决地址问题。
在微软的VL2架构下,每台服务器都关联了一个位置特定的它连接的交换机IP地址,而在PortLand下,一个VL2目录系统实现了位置IP到应用程序IP的映射。每台服务器上的VL2代理检索目标服务器附近的交换机位置特定的IP地址,并将应用程序包封装在它里面。
部署一个代理和配置服务器是PortLand专门避开的,但VL2也具有PortLand没有解决的功能,例如,如果访问策略拒绝了初始化服务器到目标服务器的连接,VL2目录服务器可以拒绝提供位置特定的IP地址。这让VL2有能力执行强制访问控制。
微软的研究人员野心超过了加州大学的专家,他们研究了数据中心的流量模式,设计了一个网络拓扑让每个通讯都可以选择通信路由,避免了持续热点拥堵,并为数据中心任何两台服务器之间提供了统一的高容量。
微软的研究人员谈到,VL2使用了一层高度集成的聚合交换机,在发生故障时连接都转向这个中间交换机,性能下降不明显。