建设可扩展、高性能集群/网格网络:以太网的角色
| [日期:2006-9-12] |
来源: 作者: |
[字体:大 中 小]
|
网格是什么?
网格计算机是集成分布式系统部件(例如:计算机系统、存储器等等)的硬件和软件系统,使用户把它们看成是单个大型“虚拟化”计算系统。“单个系统”的基本
概念会应用于建设集中化“集群”计算机(由配置好的计算机和存储器组成的多处理器系统),和地理位置分散的计算机、仪器和其他资源组成的联网网格。
通过网格计算,计算机系统和其他资源不一定被限制于专用与个人用户或应用,而能用于动态冷却或共享,以满足公司不断变化的需求。使用互联网、基于网格的资源共享和协作问题解决能延伸至多机构的“虚拟单位”。
选择“网格计算”的名称是因为它的概念与电力网格相似,后者满足客户对于电力的应用,这是通过在由所有用户共享的电力生成资源的分布式网格上的明显的制图。
网格的优势
因为网格计算作为非常灵活、也许甚至是全能、分布式系统技术发展起来的技术,它提供许多用法和优势,能大致划分为一下几种:
高性能
计算(HPC):对于能用于并行计算的应用来说,在由众多小型或专业系统组成的联网计算机系列上,网格提供执行计算密集应用的可能。与传统的超级计算机相
比,计算网格能提供性价比和最大性能的可观的优势。于是,网格使HPC可接入更多企业、促进计算密集型计算结果可用性,它是产品研究和部署所需的,使科学
家能解决对于传统超级计算机来说是难以完成的“巨大挑战”的问题。
在目前的发展环境中,大多数网格应用都属于HPC类型。这是由于网格计算源于对更经济的HPC解决方案的需求这一事实,该解决方案解决了科学和工程的关键
问题。由于投资高回报,以及解决了以前在合理时间或成本下无法解决的计算密集型问题,网格最初被商业企业采用一直集中于HPC。HPC网格成功地解决了以
下领域的广泛的计算问题:
- 气候/天气/海洋建模与模拟
- 计算化学和材料科学
- 环境质量建模与模拟
- 军事建模与模拟
- 互联网搜索引擎
- 药物研究
- 电子与机械设计模拟与证实
- 地震处理与解释
- 信号/图像处理
- 财务投资与市场建模
数据联盟与协作;网格还能联合到数据综合,不同来源的数据(相关数据库、文件、或应用数据),能统一到单一数据服务,该服务隐藏了数据地址、本地所有者、
和消耗源设施的复杂性。凭借数据联盟,数据停留在原位置,不影响本地用户、应用程序和数据管理政策。多来源、多地点的数据的综合有利于更广反的集合应用,
包括公司业绩记录表、市场分析工具、客户服务应用、和数据挖掘应用。因为数据资源在网络上被访问,因此要求现有数据公布或消耗数据的应用最小的更改。
资源分配与优化:大多数桌面系统和服务器闲置时间超过80%,因为计算机传统上被严格专用于某组用户和应用。网格计算提供虚拟结构,它能实现灵活的计算和
存储共享,以提高资源利用率。举个最简单的例子,批量任务能透明地分配给资源库中的闲置服务器。另一种可能,应用程序和工作都能被传输到一个闲置服务器。
另外,如果安装虚拟机器软件,单个物理服务器甚至能配置到运行不同操作系统和应用程序。同理,闲置的配置在网络上的存储器,或SAN的存储容量,能被利用
于数据存储器。通过虚拟化行程实现的资源优化带来的主要优势是,它收回计算设施的大量碎片空间,因此降低了支持特定IT功能水平所需的资本投资水平。资源
优化的另一个方面在于,它通常不需要现有应用程序的更改。由于所有3类网格都依赖于好的用于互连分布式系统部件的网络性能,HPC到目前为止对网络提出了
最高的要求。因为HPC应用的网格形式这一事实可能涉及到密集的进程内通讯,该通讯对网络带宽和时延特性高度敏感。为此,此文以下部分将集中于HPC计算
网格特性。
网格剖析
简化的基本网格结构如图1所示,网格中间设备提供地址透明,使应用程序能运行在虚拟联网资源层上。中间设备的主要特点是,它使网格看起来是一个计算机系
统,在组成网格的所有计算资源中提供协调。这些功能通常包括处理资源发现和监控的工具、资源分配与管理、安全、性能监控和计费。
商业网格中间设备可从许多系统厂商和独立软件厂商(ISV)获得。大多数这种软件具有所有权,然而也可得到广泛的开放源中间设备。一个开放源网格中间设备
值得注意的案例是,源于研究团体对成功HPC网格的发展形成的Globus工具包。现在全球网格论坛(GGF)——www.ggf.org——正在使用
Globus,将它作为开发行业标准的基础,促进网格间的互用性。大多数系统厂商和ISV支持GGF试图最终提供负荷行业标准的所有者中间设备的努力。

图1:网格计算结构
GGF已经开发了开放网格服务结构(OGSA),从基于标准的服务导向结构(SOA)的角度看,它本质上彻底改变了网格,在SOA中,网格服务仅仅是种特
殊的网络服务类型。和其他网络服务一样,能使用一种网络服务定义语言术语(WSDL)定义OGSA网格服务。将网格转变为网络服务模式的优势在于,它使用
现有标准,如SOAP、XML和WS-Security,为接入网格资源提供可扩展结构。OGSA开放源执行Globus工具包3.0,延伸了
Globus工具包2.0的主要观点,继续支持现有Globus API和WSDL接口。
TCP/IP和其他IETF标准使互联网和企业网的不同类型的系统之间互用通信。同理,GGF的OGSA有意制定标准,这些标准将能在分布于互联网的不同
类型系统之间互用网格计算。开放网格服务设施(OGSI)定义这种机制为,在基于不同中间设备执行的网格服务间创建、管理和交换信息。
除了GGF,企业网格联盟(EGA)——www.gridalliance.org——是新的厂商和最终用户联盟,致力于开发企业网格解决方案。EGA章
程是集中于网格的商业应用,甚于技术或科研超级计算应用。EGA对位于企业数据中心的战略网格特别感兴趣,想要尽可能多地建设应用、服务器、SAN和网络
的现有基础设施。EGA特别致力于数据中心,而非互联网扩展网格或者扩展虚拟机构等更广泛的问题。EGA通过尽可能地采纳现有标准、促进在明后两年内出现
的开放、互操作的解决方案,希望采取实际的措施。
相比之下,所有者网格软件主要关注于个人企业的需要,在这样的企业中,多厂商产品互操作性、系统异类、和互联网可扩展性在当前网格发展阶段还算不上问题。因此,有理由期待在以后几年中,网格中间设备将在三条路线上平行重叠发展:
- 符合标准的开放源
- 非标准开放源
- 所有权,包括厂商支持的开放源或符合OGSI的工具
不论动机与目标如何不同,所有类型的网格中间设备都需要解决支持网格范例的一套基本功能。
发现与监控:网格上的系统必须能发现何种资源或服务可用,并能监控其状态。一旦识别资源,为了定义工作的网格拓扑,必须能访问系统配置和状态信息。网格发
现和监控服务常常基于现有工具,如LDAP、DNS、网络管理协议、和检索服务。
资源分配与管理:资源管理软件在被发现的网格拓扑中,为可用计算资源自动匹配应用要求,按要求创建远程工作。在执行过程中,该软件确定工作时间,监控进
程,以确保最优负荷平衡和资源利用。来自资源管理系统的数据还能用于计数、计费和报告。
安全:网格安全至关重要,因为共享资源可能包含可能泄露商业机密或其他知识产权的敏感信息。因此,有必要保护通信安全,识别用户身份,根据授权政策限制用
户行为。由于网格会由无数资源组成,通常要求单个sign-on能力。现有软件安全标准,如Kerberos、SSL/TLS和X.509证书,可用于执
行这个功能。
信息传输系统:网格需要支持运行在不同计算机系统的进程之间的高效通信。最初为并行超级计算机开发的计算密集型应用频繁使用信息传输模式用于互处理通信
(IPC)。信息传输界面(MPI)和并行虚拟机器(PVM)编程模式是两个最出色的信息传输系统。编程工具使这些并行应用适用于网格。例如,MPICH
-G是网格启用的MPI版本,支持MPI计划从并行超级计算机升级,这是一个基于Globus服务的网格。网格启用的信息传输系统还被期望广泛使用于为网
格特别设计的新的计算密集型应用。
集群对网格
关于本地计算机计算集群是否应被划分为网格的问题存在大量争论。无疑,集群在概念上与网格很相似。更重要的是,它们都依赖中间设备以提供虚拟,这是联网计
算机系统的多样性让用户看起来像一个系统所需的。因此,集群和网格中间设备解决同样的基本问题,包括并行应用信息传输。结果,集群与网格的高水平结构本质
上相同,如图1所示。
尽管有这些相似之处,集群和网格之间还是有许多重要区别:
- 集群通常位于房间或建筑的局部,而网格可能分散于本地、城域、或广域网络
- 集群具有单一管理,而网格可能横跨管理边界
- 集群主要只解决计算密集型问题和HPC。网格处理分布计算和资源共享方面更普遍的问题
- 集群通常为同类,基于一种类型处理器和操作系统。网格能将工作量分布于众多机器类型和操作系统
- 集群本质上是静态的,具有固定的处理器和资源。网格本质上是动态的, 具有随问题本质和资源可用性改变的资源
由于差异非常明显,仍有可能将计算集群视为更广义的网格计算非常特别的案例。然而集群专有的本质使中间设备层有许多简化。
由于其同质和静态本质,集群能稳定地为用户展现更透明的单一系统形象(SSI)。例如,集群SSI能为集群资源提供单一名称栏,包括文件系统、设备、进
程、网络和IPC目标。SSI功能本质上结合了前面提到的资源发现/监控和资源分配/管理的网格功能。SSI中间设备还能提供容错服务,如检查、自动故障
切换,以及集群所有节点的故障回复。集群SSI,与其本地化、封闭的本质相结合,大幅简化安全性问题。由于集群SSI的专有本质,在用于集群对网格的特殊
中间设备工具/部件之间,相对没有重叠。
SSI还使集群作为单一系统参与到大型网格网络中。实际上,HPC计算未来的一个前景是,作为由高性能LAN、城域或广域网互连的专用集群网格。集群网格
能在比较松散地连接的网格内在灵活性和可扩展性,与紧密连接的集群性能优势之间,提供适宜的平衡。网格启用的集群意味着,至少在集群的一些节点上,集群和
网格中间设备的某种程度的结合。
部署集群/网格
部署集群或网格涉及到系统的方法,这起始于对于被转移到集群/网格的应用程序,以及图1结构图中集群/网格系统的不同部件间的相互独立性的分析。
应用程序
部署集群/网格计算的第一步是识别出能从分布的计算范例中受益的应用程序。对于计算网格来说,明显的候选者将是那些能在多处理器上并行执行的应用程序。并行应用程序可按照以下方式分类:
艰难并行计算(EPC)能被立即分为几个独立部分,他们会被分配到多个处理器上同步执行。一旦工作分配完毕,在处理器之间不需要通信。问题常常被分为比可
用处理器数量更多的部分,因此,通过并行执行可能实现的最大加速收到处理器数量的限制。EPC应用程序的案例包括为测定其是否为素数而测试巨大整数,和各
种蒙特卡罗模拟。
参数和数据并行计算与EPC相似,每个处理器处理一个独立数据子集,或者独立的一组参数。它们也被作为“近似艰难并行计算”(NEPC)提到。NEPC要
求结果最初分布于独立计算机中,然后利用通常需要的邮件处理,由一个进程聚集在一起。这种应用程序案例有互联网搜索引擎和低水平数据图像着色。
分散连接同步并行计算要求在计算完成之前,处理器中的一小部分之间实现进程间通信。紧密连接同步并行计算要求在计算完成之前,所有处理器(全球同步)之间通信。同步应用程序还具备以下特征:
- 他们要求单个处理器执行的同步计算和通信的程度
- 节点间传输的信息分配大小
- 应用程序对信息时延的敏感度
同步应用程序包括集群的数据库和离散事件系统、粒子系统和集中/连续变量系统的大型复杂模拟。后者的应用程序中,有被开发用来运行在并行处理超级计算机上
的应用程序,如巨型并行处理器(MPP),或对称多处理(SMP)计算机。已经为MPP或SMP“并行”的同步应用程序能稳定地过渡到集群或网格计算。
上述所有类别的应用程序都适应本地集群或地理位置分散的网格。然而,本地集群通常最适合“同步并行”应用程序,而分散的网格通常更适合EPC和NEPC应用程序和一些分散连接的同步应用程序。
尽管看起来相对较少应用程序本身并行执行,但这未必是事实。过去,应用程序编程师通常执行最简单的概念上的运算法则,这通常是本质上连续的。然而,许多同
样的问题也能使用各种并行(或部分并行)运算法则解决。将来,当集群/网格更为广泛地被采用时,编程师将主动使并行运算法则的利用率最大化。
中间设备
基于被识别的应用程序的特征,系统结构需要考虑中间设备选择。最重要的决定是,是否在分散的部门、校园或企业内部署集群或网格。这个决定将通常以性能目标和其他考虑为基础,包括系统管理、安全性、和机构内资源共享政策。
从性能角度考虑,这个决定应该基于对几个因素的分析:
- 应用程序并行程度
- 处理器数量
- 处理器类型(速度、内存等)
- 操作系统
- IPC机制(MPI、PVM等)
- 存储结构和存储互连特征
- 处理器互连带宽、时延和CPU利用率
由于这些因素相互影响的复杂性,通常会明智地在考虑的平台、处理器和结构的各种配置下,测试应用程序或其关键部分。许多系统厂商具有专为测试客户应用的工
程实验室,也提供与集群/网格部署相关的咨询服务。并行应用程序厂商还能提供各种计算环境的性能指导。
另一个可能就是使用能基于特殊集群/网格配置的动态行为,预测应用性能的模拟工具。使用工具,设计师能在上述因素间这种考察性能。
一旦作出集群对网格的决定,就能选择中间设备了。显然,中间设备选择与系统其他部分独立,包括处理器类型、操作系统、和互连技术。因此,中间设备选择来源的对比涉及到第二轮更加详细的分析和测试。
如前文所述,集群中间设备和网格中间设备都可以从许多系统厂商或ISV得到。系统厂商通常不了解中间设备,基于其自己或许多合作伙伴ISV的中间设备提供
pre-integrated平台。早期采用集群和网格的商业企业通常从这些商业来源选择中间设备解决方案。
一个可供选择的方法是,从互联网上可得的开放源代码集合中间设备。对于研究机构和IT员工在分布式计算系统设计和综合方面非常专业的商业机构来说,这是个可行的选择。
IPC交换结构
网格通常利用企业IP网络进行节点间的数据传输和进程通信。园区范围内的网格,其IP网络一般是基于千兆和万兆以太网建设的,要求具备支持网格应用和非网
格应用流量的吞吐能力,同时提供丰富的QoS功能满足网格IPC通信对带宽和低时延的要求。网络设计应当控制带宽使用的过载率,避免发生网络拥塞导致时延
增大甚至丢包。远程网格节点之间的文件传输和报文交换需要通过在全网范围内部署QoS等功能,将时延优化到最小。
集群内部的通信更加复杂。对于一个简单的集群而言,所运行的应用程序不是非常有关联的。无阻塞的以太网交换机能够接入其他网络中,也能实现基于
TCP/IP的IPC通信,如图2a所示。在执行关键的并行应用程序时,建议将集群和其他网络隔离开来,或者采用严格的措施限制其他流量影响到执行关键应
用程序的资源。
对于关联性比较强的应用程序而言,通常考虑增加一个独立的、针对应用程序专门设计的IPC交换结构,实现低时延和IPC通信(如Infinband、
Myrinet、Quadrics等),见图2b。维护集群各个节点的以太网连接便于集群节点之间的数据传输,使集群节点组加入到企业的网格之中。
应用程序效率表示了集群的每个节点访问共享的存储资源,可以增加SAN交换结构,例如光通道交换机,如图2c中所示。

图2:集群交换结构
基于以太网的IPC通信
交换式千兆以太网是配置简单集群的最佳选择,如图2a所示。千兆以太网交换和专用的IPC交换结构相比,有扩展性高、成本低等显著优点。随着更多的企业级
桌面计算机使用千兆网卡,交换机端口和服务器网卡成本正在不断下降。1000base-TX在Cat5e的双绞线上可以传输90米,1000Base-
SX在多模光纤上可以传输500米,建设大规模集群无需增加额外的光纤布线成本。
千兆以太网交换机构建大规模集群如图3中所示。采用无阻塞的交换机,1,008个节点的集群仅需9台交换机,通过48条万兆以太网链路实现交换机之间的互
连,这48个万兆链路分成6个组,每组由8条链路通过IEEE 802.3ad实现链路捆绑。本例中采用有14个业务卡插槽的Force10
E1200交换机,E1200交换机支持多达672个GE或56个10GE端口。

图3:1,008个节点的千兆以太网集群
千兆以太网支持系统到系统之间线速传输,达到约800Mbps的实际数据传送速率,报文收/发时延在60微秒左右。报文收/发延时(或称为ping
pong延时)用报文发出到接受到对方回应之间的时间间隔的一半来计算。时延包括交换机的时延(收发双向均为10微秒左右)和接收方主机的收发延时(包括
TCP/IP协议栈的处理和缓存到缓存的传送,这些均需要通过软件处理)。带宽延时和报文延时在绝大部分同步并行应用程序允许的范围内,因为这些应用程序
的每个进程之间并不是非常高度关联的。在Top500评比出的世界性能最好的集群系统中,超过100个(>25%)采用千兆以太网作为集群主要连接
技术,包括排位在第25和第43的集群。
如上所述,以太网IPC中大部分的延时是由于主机上的软件处理带来的。网络I/O软件处理的另外一个缺点是有可能带来相当高的CPU使用率。基于
TCP/IP的应用中,常规的经验值是每秒钟每个比特位大约需要CPU的1个赫兹时间来处理。因此,800Mbps持续的以太网传输大约需要占用主频为
1GHz的CPU的80%使用率。对于需要高性能的并发计算和IPC而言,高的CPU使用率将对应用程序的性能造成极大的负面影响。但是,对于计算和通信
不是同时进行的应用而言,影响没有这么严重。
将来,基于以太网的IPC通信端到端时延有可能降低到接近交换机时延的程度,即10微秒左右。这是由于新的基于以太网和TCP/IP协议的RDMA(远程
直接内存访问)标准的制定而有望实现。RDMA技术通过取消用于网卡缓存和应用缓存之间数据复制的操作系统内核中断,保存内存带宽并减少延时。RDMA网
卡(RNIC)通过TOE(TCP/IP卸载引擎)大大减少了CPU使用率。TOE通过网卡的硬件功能实现了TCP/IP处理,无需系统软件的参与。
除了MPI之外,RNIC也将支持iSCSI和socket上层接口,实现交换式以太网作为单个“集中”设施满足集群IP通信、IPC和存储系统互连的多
种功能。集中的结构有可能基于单个交换结构实现非常高性能的集群,以替代图2c中所示的非常复杂和昂贵的方法。
第一个千兆位的RMDA/TOE以太网适配器有可能紧跟着万兆以太网网卡,在2004年年底前问世。一旦基于双绞线的10GBase-T标准被正式批准,
第一张万兆网卡很可能基于RNIC技术的。为了满足数据中心应用的广泛要求,GE和10GE的RNIC网卡最终将实现量产。和快速以太网和千兆以太网网卡
一样,将在较短时间内大幅度降低成本。
基于InfiniBand, Myrinet和Quadrics的IPC通信
InfiniBand 体系结构
(IBA)是定义全新高速交换结构子系统的业界标准,用于连接处理器节点和I/O节点组成系统级网络。数据中心的服务器经常连接到3个或4个不同的网络,
InfiniBand的目标是减小I/O的复杂程度。InfiniBand作为统一的结构支持IPC和I/O连接,实现多个服务器之间的共享。
InfiniBand交换机基于“胖树”配置中24端口矩阵式交换芯片的汇聚。InfiniBand交换机的速率有2.5 Gbps (1X)、10
Gbps (4X)和30 Gbps (12X)等。目前典型的集群使用10 Gbps
(4X)交换机端口和HCA(主机通道适配器)组成。HCA使用到IB传输协议的VAPI软件接口支持报文收发,以及在数据传输路径中的无软件参与的
RDMA读写。
Myrinet是Myricom公司私有的交换式集群互连技术,该技术原来为大容量并行处理器系统设计的。Myrinet的基本组成部分是16端口矩阵式
交换芯片,通过‘胖树’结构组成较大的交换机和交换阵列。Myrinet交换机和主机适配器的端口速率为2Gbps。Myrinet
GM为低级报文层支持收发和RDMA操作。主机端口执行“操作系统旁路”固化微码将协议处理工作从主机CPU卸载下来。
QsNet和QsNetII
是Quadrics公司私有的系统互连技术,源自于为SMP系统开发的技术。QsNet和QsNetII交换机的基本组成部分是8端口的矩阵式交换芯片,
端口速率为3.2 Gbps和10.6 Gbps。QsNet
Elan通信接口通过将单个节点地址空间集成,提供一个全局虚拟地址空间。这使得RDMA直接访问每个节点的页面虚拟内存成为可能。最新的QsNetII
支持64位的虚拟内存系统。
表1中提供了这三种集群/系统互连技术的简要比较。它们之间有许多类似的方面:都通过内部“胖树”结构用相对小的矩阵式交换芯片来组建较大的独立交换机。
独立交换机通过外部“胖树”结构再联合起来满足更大规模的应用要求。所有这些交换机均使用“直通”交换技术减少交换时延,RDMA旁路系统内核处理降低时
延和CPU使用率。
表1: 集群/系统互连技术比较
|
|
Mellanox InfiniBand |
Myricom Myrinet |
Quadrics QsNet I |
Quadrics QsNetI |
|
交换矩阵芯片 |
24 端口 |
16端口 |
8端口 |
8端口t |
|
交换拓扑 |
Fat tree |
Fat tree |
Fat tree |
Fat tree |
|
最大电缆长度
(交换机到主机) |
10m 铜线 |
10m铜线
200m 光纤 |
10m铜线 |
10m铜线
100m 光纤 |
|
单台交换机端口数 |
144 端口/10 RU |
128端口/9 RU |
128端口 |
128端口 |
|
主机适配器 |
PCI-X |
PCI-X |
64 bit PCI 2.1 |
PCI-X |
|
端口速率 |
2.5, 10, 30 Gbps |
2 Gbps |
3.2 Gbps |
10.6 Gbps |
|
大报文吞吐能力 >64 字节 |
6.6 Gbps
(10 Gbps ports) |
1.88 Gbps |
2.5 Gbps |
6.4 -7.2 Gbps |
|
最大吞吐率时的CPU使用率 |
3% |
6% |
N/A |
N/A |
|
16字节报文的收/发延时 |
7.8 微秒 |
6.5微秒 |
2微秒 |
1.2微秒 |
|
4字节报文的收发延时 |
15微秒 |
32微秒 |
15微秒 |
N/A |
尽管有很多的相似之处,在主机适配器体系结构上仍然有许多显著差异,如表1中的数据显示。对特定的应用选择最佳的高性能IPC结构通常需要对应用程序的
IPC特性、系统互连交换机/适配器的体系结构和CPU处理、操作系统一起进行仔细分析。这些详细的分析可以借助于公开发布的基准数据和经验证的实际性能
数据来进行。
从Top500的名单中可以看出这三种互连技术都已经成功应用在组建高性能集群系统中。在2003年9月的名单中,39%的集群使用了Myrinet,
Quadrics在前十名种有6个系统使用,包括第二位的由4096个处理器组成的ASCI-Q系统。InfiniBand是相对较新的技术,但是排名第
三的Virginia Tech大学由1100台Macintosh计算机组成的集群采用了这种技术。
采用完全“胖树”结构的大型集群需要大量的交换机和繁重的布线工作,图4是一个1024个节点的典型集群结构,总共使用了24个交换机节点,每台交换机提
供128个端口。这个配置的每个链路带宽均相同,因此共计有964条交换机互连链路。

图4: 采用128端口的交换机组成1024节点集群
InfiniBand、Myrinet和Quadrics都比千兆以太网提供了更好的带宽、时延和CPU使用率。但是,由于相对小规模的交换矩阵芯片,端
口数较多的交换机的内部可能会变得非常复杂。整个集群需要的交换机数量将很多,交换机之间互连的布线也将非常复杂。因此,IPC结构选择哪种互连技术将必
须根据应用程序的特点在性能和复杂性/成本上作出权衡。
为集群和网格建设以太网通信网络
如本文的前面章节所述,集
群和网格应用可能比企业的其他应用更加依赖于网络性能。运行大型的批处理作业需要的时间可能非常长(几个小时甚至几天),需要网络在长时间内连续提供高性
能和可用性。因此,为集群和网格设计的以太网通信网络,必须选择具备运行分布式应用所需要的性能和稳定性特点的以太网交换机/路由器。交换机/路由器的主
要需求包括以下方面:
端口密度和可扩展性:交换机/路由器应当有能力支持数量较大的GE和10GE端口。高密度交换机可以简化网络设计,有效利用机房和机架空间,降低成本和网
络复杂程度,有利于网络运维管理。可扩展的交换机/路由器将具备支持下一代技术的潜在能力,如40Gbps和100Gbps以太网,无需更换设备。
无阻塞的交换结构:交换机/路由器应当具备在端口满配置情况下支持线速、无阻塞的包转发能力。在集群和网格应用中,如果网络或交换机/路由器内部过载,可
能产生网络拥塞将严重影响到系统的性能。无阻塞的体系结构提供了网络性能的一致性和可预见性,和实际流量模式无关。此外,即使在启用包括流量管理、流量控
制和QoS等三层服务时,线速无阻塞的包转发性能不会受到任何影响。
集成的二层交换和三层路由功能:和多层次网络结构相比,集成了的二层交换和三层路由功能的交换机/路由器简化了网络拓扑结构,减少设备和端口数量。除了大
型网络设计中要求的稳定性外,三层路由可以通过ECMP(等值多路径路由)实现冗余链路上的负载均衡,这种网络结构在要求最高性能和最大程度的可靠性网络
设计中普遍使用。
QoS服务质量:由于对吞吐能力和时延的敏感性,集群/网格种的某些关键流量,如MPI和其他IPC消息必须提供最高级别的优先级进行传输。QoS可以基
于TCP端口号码的数据包识别/分类或末端系统的IEEE 802.1p和IP DiffServ字段进行标识。QoS可以通过对集群
/网格消息提供严格优先级,限制其他数据类型的传输等措施保证关键信息的传递。
稳定性和高可靠性:交换机/路由器即使在出现部分软件或硬件故障的情况下仍能持续提供不间断操作。基本的高可靠性功能包括所有关键子系统的完全硬件冗余,
如控制平面/管理模块、交换矩阵模块、电源和冷却系统。另外,软件设计中协议升级或重新初始化不会中断数据转发等功能。弹性组网功能包括支持
802.3ad二层链路冗余和中继,以及三层路由冗余实现高容错网络。其他的软件稳定性包括控制平面的模块化设计,以隔离软故障所造成的影响。交换机/路
由器的安全功能有助于防范系统遭受DOS攻击或非法访问。
为集群和网格设计以太网通信网络
单个交换机集群
最简单的集群网络采用了单台高可靠的千兆以太网交换机/路由器作为系统互连设备,如图5所示。在这个简单配置种,所有的服务器端口配置在同一个基于端口的
VLAN/子网中,服务器之间的流量进行二层交换。从集群到企业园区网的连接通常被配置成三层路由,最大程度控制集群和其他网络之间的流量。路由端口上可
以启用三层扩展ACL(访问控制列表)、速率限制等功能对进出集群的流量进行有效控制。
单台交换机组成的以太网集群的最大规模由该交换机的最大无阻塞端口数量所确定。目前的万兆以太网交换机/路由器(例如Force10的E1200)能够同
时提供超过600个千兆端口连接服务器节点,以及4个万兆端口连接到企业网主干。

图5:单台交换机组成的以太网集群网络
大规模集群
更大规模的集群的互连网络可以由多台以太网交换机联合组成。例如,图6中显示了一个二层集群网络拓扑网络,可扩展到支持数千个节点,同时提供到企业网主干
的高带宽连接。在这个配置中,上行链路的带宽必须等于或者大于每个接入层交换机汇聚的节点带宽总和,上行链路同时均衡地接入到无阻塞的核心层网络。必要
时,可以增加网络层次构建更大规模的集群系统。
对于大型的集集群,以太网的一大好处是它支持范围很广的介质类型和线缆长度,包括:
• 1000Base-T:5类线上可达90米
• 1000Base-LX:多模光纤上可达550米
• 1000Base-LX:单模光纤上可达5公里
• 10GBase-CX4:双绞线上可达15米
• 10GBase-SX:多模光纤上可达85米
• 10GBase-LR:单模光纤上采用LAN PHY可达10公里
• 10GBase-LW:单模光纤上采用WAN PHY可达10公里
对于大型的多个交换机的集集群网络,和接入交换机相连的服务器通常都配置在基于端口的VLAN中,接入交换机上启用二层交换功能提供和交换机相直连的服务
器之间的通信。上连端口提供和核心层的连接,核心层设备通常启用三层路由功能。由于核心层的交换机需要为接入层交换机提供多个负载均衡的链路以保证无阻塞
连接,因此路由功能对于核心层设备是需要的。三层路由协议支持的ECMP功能可以提供负载分担和路径保护等功能,在二层该功能是由生成树协议(STP)实
现的。

图6:交换机组成的大型以太网集群
以太网格网络
图7显示的是一个采用以太交换路由器的,高密度GbE和10GE交换优化的,分层的园区网格网络。这一设计类似于大家熟悉的采用L2/L3模型的园区交换
以太网络。这个例子更进一步说明了通过以太网技术可以为集集群互连,网格,园区网络提供一个简单的,统一的交换解决方案。
园区网络的核心采用
10GE链路的网状三层交换/路由结构。在每个园区点,桌面电脑和工作站通过GbE端口连接到和园区网格骨干网络相连接的二/三层接入/分布交换机上。集
集群之外的服务器集群通过GbE,GbE捆绑,或者10GE连接到二/三层服务器点交换机。与远程节点的以太网连接可以通过MAN或者WAN提供的
10GbE over 裸光纤,多个10GbE链路over CWDM/DWDM over 裸光纤,或者电信公司提供的10GbE接口等。
为了最大化网格流量的服务质量的可预测性,需要对现有的多用途的园区网络做些调整。基本目标是对于网格流量进行优先处理,保证IPC流量和关键的网格流量不会被堵在非关键数据的后面而增加了时延。
首先考虑的是保证由于网格应用而增加流量的网络有充足的容量。
这也许会引起网络分段里服务于重要网格资源的超额预定(over-sbubscription)比率减少。一旦成功完成, 网络设计师就能利用现代以太网交换机的QoS 能力优先重要网格流量。 一些可利用的工具有:
优先级队列: 应用优先级队列, 繁忙端口的处理能力就会立刻被分配
给进入队列的任何优先级流量。 所以, 使用优先级队列, 可能延迟重要网格流量的唯一的流量是其它已经在队列的网格流量。适当的调整超额预定比率,可以降低发生阻塞的可能性。
速率限定和监管: 能控制超额预定效应的一种方法就是应用ACLs, 速率限定,并且监管限制那些进入骨干网络或者对于传送网格流量至关重要的网段的低优先级流量的数量。
带权随机早期丢弃(WRED): 数据包丢失可能从根本上消除,如果坚决预防缓存溢出。应用带权随机早期丢弃(WRED)可以避免流量泛滥。这就可以根本消除高优先级数据包到达已经充满低优先级数据包的缓存的可能性。

图7:基于以太网交换机的园区网格网络
结论/摘要
以太网继续演变成为一高度有效并且灵活的技术,他可以应用组建计算机集群, 园区网格网络,集群网格, 和扩展的多站点网格。
以太网的大容量产品继续刺激迅速下滑的价格和 一系列的改革创新包括RDMA/TOE-capable NICs、双绞线10GBase-T
for10 GbE、和40 或100 Gbps的新一代以太网。
对于对数据传送带宽,消息时延,CPU负载高度敏感的紧密耦合同步应用,
一些专用的集群/系统互联技术可以和以太网技术互为补充从而组建非常高性能的系统和集群。虽然这些技术主要适用于集群内部,
但为连接更大的网格网络之内的集群,以太网仍然是当然的选择。
但是,企业还是愿意部署大多数平行或更通用的网格应用, 包括大多数集群和网格应用,
作为集群网格互联的以太网的性能特性得到很好展示。
作为集群网格互联技术的以太网具有宽广的应用性,世界上前500强中的超过100强的超级计算机使用的都是集群吉比特以太网就很好的证明了这点。
在将来, 由于NIC的改进,以太网端到端数据传送带宽, 信息时延, 和CPU
运用将会巨大改进,当这些产品批量生产时,各代产品的价格有望迅速地下降。 这些改进有望改善以太网集群网格的所有功能,
随着大量企业采用以太网,也有望加速集群网格技术的适应性。
附录A:
E系列交换路由器
为新一代LANs, MANs, 和
WANS,E系列交换路由器家族从一开始设计就支持全功能2层交换和互联网规模3层路由。这些网络要求准确无误地高密吉比特和10 吉比特接口,
无阻塞, 线速度功能。 E 系列是唯一的这样的模块化交换路由器,它提供顾客可以选择的以下10 GbE平台,如表A1 所示。
E系列交换路由
器采用虚拟输出队列的交换矩阵结构,配合基于ASIC的分布式包转发结构可以保证包转发速率达到1BPPS。交换矩阵可支持无阻塞的1.68Tbps的交
换容量,并支持高级队列,组播,超长帧等。每个线卡和背板的交换带宽为全双工56.25Gbps。这可以保证在一个机框内可以支持672个线速千兆端口或
者56个线速万兆端口。
表A1:E系列交换路由器的端口密度
Force10在每个线卡上都有全部的分布式的转发信息表,不同于基于流的二/三层转发结构,E系列交换路由器不存在基于流的转发机制的“慢速路径”的问题。
硬
件数据包分类ASIC,还有高级的TCAM保证线卡上线速的二层转发和三层转发。入端口的分类ASIC可以执行线速的查表,ACL,策略处理,Qos映射
等功能。数据分类和转发的并行处理可以保证E系列交换路由器实现真正的线速转发性能,该性能不受路由表大小,IP地址前缀长度,数据包大小,是否激活
ACL,Qos,以及其他高级特性的影响。
E系列的设计理念是最大化产品的稳定性和可靠性,因此我们的产品所支持的技术指标都非常大,譬如:
• 80K的二,三层ACL
• 200Milliseconds的缓存以及交换矩阵中也有相应缓存
• 每个线卡可以支持512K的路由表,而现阶段互联网路由也只有150K左右
• 整机支持高达1.4Million MAC地址
• 线速二层转发和三层转发
• 独立的100M控制总线连接RPM和线卡上的微处理器
• 每个线卡与背板的交换带宽为全双工56.25Gbps
• 1.68T的交换处理能力,保证系统可以提供线速的672个千兆,或者56个线速万兆
• 无源铜背板可以扩展至5Tbps的处理能力,每个线卡可以支持350Gbps的带宽,可以平滑升级至支持100G端口
附录B:
根据Force10 E 系列交换路由器
以太网集群/网格案例
Force10 E 系列交换路由器是真正的新一代设备,
专门设计了具有难度的高稳定无阻塞2层交换与3层路由功能。以它的强壮稳固的组合和可测量性, 以及功能表现, Force10 E
系列,与其他任何GbE/10 GbE交换路由器家族相比,应用于大量的集群网格网络之中。
已经采用E 系列交换路由器优化集群和网格的客户有:
TeraGrid
由美国国家科学基金会(NSF)发起, TeraGrid
项目是多协会努力共同组建与部署的世界最强最全面的计算基础设施,旨在开放的科学研究。美国国家科学基金会TeraGrid项目使用专门的40
Gbps 广域骨干互联计算机, 存贮设施,可视化系统, 和多元化TeraGrid 站点力争在美国创造最全面最开放的网格计算环境。
TeraGrid
站点包括:National Center for Supercomputing Applications (NCSA),
Argonne国家实验室(ANL), 在加利福尼亚学院技术的the Center for Advanced Computing
Research (CACR), 和圣迭戈巨型计算机中心(SDSC) 。
所有列出的TeraGrid 站点都部署了Force10的E 系列交换路由器,旨在为分散在站点或在TeraGrid里的集群提供吉比特Ethernetattached Linux 集群互联以及10 GbE互联。
NASA
Goddard 空间飞行中心的地球和空间数据计算分部(ESDCD) 提供科学社区可以访问业内性能最好的计算和大容量存储器系统,
网络, 和信息系统技术。使用这些设施, 并通过计算模型和太空航行观察处理,能促使美国航空航天局的科学家们更加了解地球, 太阳系, 和宇宙。
进行模仿和计算模型, 科学家需要借助于非常巨大的超级运算能力。
具备那种功能的有效方法是互联几个独立的HPC集群和连接一个相对低廉的, 非常高性能的以太网LAN
创造一个扩展的集群或"网格集群。"ESDCD" 网格集群"被实施应用于Force10 E300 交换路由器,提供稳固必要的以太网LAN 连通性。
Veritas
Veritas DGC 提供一套全面的联合为石油和天然气产业的地球物理服务,包括地震勘测计划和设计, 地震数据采集, 数据处理,
数据可视化,数据解释, 和水库描述特性。Veritas DGC
结合它在地震数据的创新和信息技术的优势,为它的顾客提供他们需要开发气体和石油资源的信息。与四国家艺术数据可视化中心, Veritas
DGC为多重学科的探险队提供显示和交互式地操作大容量复杂3D 地震数据和许多不同的型geoscientific 数据的服务。
Veritas DGC 在它的数据处理中心部署了Force10 E1200,因而得已组建了先进的集群并提供了高精度成像方案,
使顾客获得更多的利润和在世界范围里取得产品成功。 E1200 提供可预测性,使Veritas DGC
扩展它的服务范围并实现数据分析先进革新的应用。 E12004的复原力保证在全世界范围内可预测网络功能,这也是提供配套联合地球物理服务所要求的。
PGS
全球石油服务集团(PGS) 是一个总部在挪威,休斯敦和得克萨斯的油田服务公司。PGS
收集和分析海洋地震数据,帮助石油公司找出新油田和在已知的油田地点更好的提取石油。 PGS操作超过12 艘地震船, 有四个浮动产品系统,
维护八个地震数据处理中心以提供海洋地震数据,在陆上勘测, 和石油和气体生产服务。支持它的集群计算和存贮资源, 为更好的探索全球石油资源,
PGS 处理3D 和4D 地震数据, 4D 水库成像, 以及研究水库描述特性。
PGS 部署了E 系列,作为它的英国数据中心的集群网络互联巨型的存贮设施的核心设备。采用Force10 E600 作为骨干之后,
PGS 以六倍的速度运行现有的应用, 极大减少了处理全面数据分析的时间。
改善的数据中心可靠性和功能表现有助于未来部署更加先进的算法以便处理地震数据。