【IT168专稿】图1是这篇白皮书中演示的一个完整的PortLand原型产品。这个产品目前正在加州大学圣地亚哥分校雅各布工程学院的网络上运行。PortLand是一种容错的、二层数据中心网络结构,能够升级到10万个以上的节点。
PortLand完全兼容现有的硬件和路由协议。通过提高内在的伸缩性、提供虚拟机和迁移的基本支持和显著减少管理开销,PortLand有潜力支持大规模的数据中心网络。重要的是,PortLand消除了对一个生成树的依赖,本地利用多路径路由和改善容错能力。计算机专家在2009年8月18日举行的SIGCOMM数据中心网络会议上报告了这个技术的进展。SIGCOMM是一个高级计算机网络会议,
在SIGCOMM会议上发表的这篇论文的高级作者、加州大学圣地亚哥分校雅各布工程学院计算机科学专业教授Amin Vahdat说,采用PortLand技术,我们提出了一套算法和协议,把二层和三层网络架构的非常好的成分结合在了一起。今天,最大的数据中心拥有10万多台服务器。理想的情况是,我们在最大限度减少需要的网络配置数量和状态的同时能够在任何服务器上运行任何应用程序。
计算机科学家们说,随着许多数据中心处理越来越多的全球计算和存储需求,数据中心网络将变得更加重要。例如,装载任何活跃的Facebook网站用户的首页一般都需要在不到300毫秒的时间里涉及到1000台服务器。
为了寻求改善数据中心网络的方法,Vahdat和他的雅各布工程学院的研究生团队重新研究了二层网络或以太网络(根据MAC地址路由)与三层网络(根据IP地址路由)之前长期存在的很难兼顾的权衡条件。
他们的研究结果就是PortLand。这是一个算法和协议的体系,消除了现有的二层方法的伸缩性和路由路径的局限性,避免了在数据中心环境中应用三层网络引起的管理和虚拟化的头疼问题。
目前的数据中心网络通常在三层网络上运行。但是,这需要大量的工时去设置和维护这个网络。三层网络还禁止简单地实施虚拟机迁移,限制了减少数据中心能源和成本的灵活性和努力。
加州大学圣地亚哥分校网络系统中心主管Vahdat说,我们的目标是允许数据中心操作人员把自己的网络作为一个单个的结构进行管理。我们将研制这样一种网络,让管理员能够考虑用一个配置10万个端口的交换机无缝地为100万个虚拟机服务。
位置发现协议
PortLand的一个关键的技术创新是其位置发现协议。这个协议打开了一个具有伸缩性的二层网络的可能性。交换机自动地学习自己在数据中心结构中的位置,不需要人类的干预。接下来,这些交换机把PMAC(伪MAC)地址分配给它们连接的每一台服务器。这些伪MAC地址,而不是MAC地址,通常在网络内部使用,用于发送数据包。
服务器在运行PortLand的网络行为中是一样的。当一台服务器与数据中心另一端的服务器进行沟通的时候,第一台服务器仍需要发送一个“ARP”,请求获得那台计算机的MAC地址,它要用那个MAC地址根据其IP地址进行通讯。
但是,现在不用向整个网络广播这个请求,收到这个ARP的那台交换机可以同一个目录服务对话,目录服务将返回一个PMAC地址,而不是传统的MAC地址。
Vahdat还是雅各布工程学院科学应用国际公司的主席。他说,我们使用服务器查询取代了广播。我们根据PMAC地址发送数据,而不是根据其实际的MAC地址发送数据。在最后的跳点(出口跳点),这台交换机把PMAC地址重新写为其实际的MAC地址。他说,我们实际上利用了数据中心网络内置的层级。
当增加新的机器的时候或者当撤销虚拟机的时候,新的PMAC地址将自动生成。Vahdat说,这里的一个重要的事情是所有的交换机都是没有经过修改的现成的产品。
加州大学圣地亚哥分校计算机科学专业研究生和这篇论文的第一作者Radhika Niranjan Mysore说,我认为PortLand在现实世界中将是有用的。这个目标是创建一个网络结构,允许你购买任何服务器或者交换机,插入这些设备就可以工作。Mysore在2009年8月18日在巴塞罗那举行的2009年SIGCOMM会议上演示了这个工作成果。
一个完整的PortLand的原型产品目前正在加州大学圣地亚哥分校雅各布工程学院的计算机科学与工程系的一个网络上运行。
Vahdat说,学生们从这个项目中得到了很好的实习机会并且将得到很好的工作,因为他们拥有数据中心网络技能。企业正在需要这样的人才。