3、新型云计算服务器关键技术

3.1云处理器

本文设计的新型云处理器关注的是高性能吞吐量计算。高性能吞吐量计算是指把高端的单线程性能与多核多线程联系起来,关注一段时间工作量总和,而不是看单个核或单线程在某个Benchmark上运行后的性能指数和结果。

云服务器一般包括线程、核、处理器、网络、加速器等功能单元全部计算的总和。因此,云计算一般都有着庞大的数据输入量或海量的工作集,导致占用很多内存,但访问方式却缺乏空间局部性,从而使现有的多级cache内存架构失效率大大提高。

由于在实际情况下,很多服务器通过数以百计的双面内置的内存模型来驱动大量数据,使得内存不可避免地远离处理器,令处理器有可能很多时间花在等待远处内存的数据或指令的获取。同时,云处理的中断比较多,必须要处理好CPU计算和数据存取之间的关系。

本文的云处理器采用以下技术:

(1)硬件多线程技术

硬件多线程技术即在一个核中实现了多个硬件线程,通过多组寄存器存取各个线程的状态,来达到硬件线程之间的正确与零消耗地切换。这些线程对于上层操作系统或者软件是透明,可以直接认为底层是具有多个核的架构,然后完全按照多核处理器那般调度和分配。

(2)硬件探测技术

高性能吞吐量计算主要还得克服“内存墙问题”,即如何让L1 cache访问失效时,读取L2 cache或者主存所致的延迟控制在可容忍的范围内。在传统处理器中,大多数程序都是最大程度地利用cache空间和时间来容忍主存的延迟。云处理器设计了新型的非阻塞cache,这种cache能够在失效的情况下不全部锁定cahce,让加载数据可以继续运行。

(3)网络处理技术

云处理器内嵌了网络协处理器。它实现智能路由转发器功能,将最常见也是最耗费时间的TCP包剪切与URL地址解析进行硬件处理,大幅度提高云服务器性能与速度。云处理器经过了特别设计与优化,针对网络应用程序逐位处理的特性,加入如柱式移位器等专用于网络处理的硬件单元。协处理器与内存单元之间一般使用支持资料组交互作用的总线,并连接双端口的RAM,缓冲来自总线的网络数据包。

3.2网络拓扑结构

为了提高新型云计算服务器中多处理器之间数据交换的效率,提升性能,本文采用多维互联网络。多维互联网络具有大容量、易扩展以及高可靠性等特点。为了达到这些特点,需要在交换核心部件—交换结构方面有所突破。

多维互联网络最先应用于并行计算和多处理器技术,相对于多处理器系统的应用,数据交换中对吞吐量的要求更高,需要有业务质量保证,但对分组时延要求不高,多维互联结构具有巨大的交换容量以及高度的可扩展性和鲁棒性,这些特点恰好满足了大容量交换网络对容量、可扩展性和可靠性方面的要求,多维互联结构具有很高的并行处理特性和很好的可扩展性。

新型云计算服务器采用3D-torus结构网络拓扑、虫孔路由并结合虚通道技术的交换网络的节点结构,它可以实现维序路由算法和对节点资源进行合理的调度。3D-torus网络拓扑示意图如图2所示。

在该结构框架下,节点被划分成数据平面和控制平面2个部分,分别处理数据信号和控制信号,这使节点的结构更加清晰,功能更加明确。本文利用3D-tons实现的云服务器具有高带宽、低时延的特点,能很好地满足云计算多用户高吞吐量访问的特点。

3.3负载均衡

由于云计算需求的不断增长,需要具备提供大量并发访问服务的能力。如果简单的提高单机系统的硬件性能并不能真正解决这个问题,因为在把单机系统的性能提高到一定的程度时,其性价比会急剧下降,而且单机系统的性能总是有限的。因此,必须采用多个处理器提供网络服务,并将网络请求分配给这些处理器分担,才能提供处理大量并发服务的能力,而如何把网络请求合理地分配到多个处理器上,使之不出现一个处理器过忙、而别的处理器却未充分发挥处理能力的情况。

本文在云计算服务器中采用负载均衡机制,负载均衡技术可以解决成本、性能、可扩展能力等各方面的矛盾,通过相对总体成本较低的计算机群集,可以实现单机系统无法提供的强大性能。

负载均衡的实现方式有软件和硬件2种

基于软件的负载均衡,具有针对小规模系统性价比高,和能够更好地根据系统与应用的状况来分配负载等特点,但负载能力却受服务器本身性能的影响,性能越好,负载能力越大。

而采用硬件实现方式一般直接通过智能交换机实现处理能力更强,并与系统无关、负载性能强的负载均衡设备,其更加适用于一大堆设备、大访问量与简单应用模式。因此,非常符合目前数据中心中占主流的Web服务。

调度算法决定了负载均衡的好坏。好的调度算法不仅可以使服务器集群内的每个服务器都充分发挥各自的性能,使整个服务器集群的负载均匀分布,也不会使集群内的服务器负载过重。本文在云服务器设计中植入硬件负载均衡单元,同时配备多种供选择的均衡算法。在实际应用中可以根据规模综合考虑采用何种均衡方式本文根据云服务器的应用场合,同时采用了软件和硬件负载均衡策略。

3.4硬件虚拟化

传统的服务器一般配备有自己的主板、电源、网络模块和存储模块等,能够独立成系统。但根据目前数据中心的部署的情况来看,更多地采用集中式存储结构。就网络访问而言,目前主要采用千兆网卡,如果其能满负荷工作,能够同时支持数十万个TCP并发请求,但后端的处理速度无法跟上,所以目前高性能双至强4核处理器也只能支持最多2万个并发请求。

新型云计算服务器针对存储模块进行硬件虚拟化,去掉主板上不常使用,但十分耗电相关硬件,可根据需要集中访问存储设备,将使得服务器结构更加精简,大大降低系统功耗。针对网络模块进行硬件虚拟化,让一定数量的处理器去共享网络通信外没,即提高了网络换块的利川率,同时也降低进一步降低了功耗。

3.5服务管理

新型云计算服务器将通过为管理层提供管理接口的形式,支持云计算服务管理。

在资源接口层,提供服务器硬件平台服务接口,以便资源接口采用面向资源管理服务的方式进一步封装。在通用资源层,提供服务器通用资探管理服务接口,以便通用资源层进一步封装后体现出与硬件平台无关的特点。在服务管理层,提供高级的资源和计算服务,如流程服务、动态分配计算资源、资源监控、系统的健康管理、自动优化的调用接口。


相关内容