首页 >> 运维管理 >> 技术 >> 正文
太一星晨:多核平台下应用交付设备如何修炼性能
通信世界网 http://www.cww.net.cn 2014年7月25日 10:40
标签:太一星晨
 
   7月24日消息,近年来,随着云计算、大数据的迅猛发展,应用交付控制器(ADC)已被行业公认为是实现云计算环境安全、高可用性且可扩展性的关键解决方案,它在推动云计算市场的快速发展方面发挥着举足轻重的作用。那么,应用交付设备为什么具有如此神奇的魔力?应用交付设备又如何修炼自身的超强性能呢?不妨与国内新兴应用交付企业太一星晨研发总监冯晓杰冯晓杰先生,一同走进应用交付设备的架构内部,来探究其神秘的技术原理。

“两手抓 两手都要硬”

冯晓杰表示,从宏观层面上看,ADC的技术原理与邓小平同志当年提出的“两手抓,两手都要硬”的治国方针非常相似。一方面,网关位置的应用场景要求具有超大的网络吞吐性能;另一方面,应用层加速的特性功能又要求具备超强的CPU计算能力。如此双管齐下,便能有效保障ADC的运转能力。从这种意义上来讲,它是既要求纯四层防火墙场景下的高吞吐,又要求防攻击防病毒特性下的高计算能力。而要实现这样的目标,首先需要一款技术先进、性能稳定、且有强大拓展空间的硬件平台做支撑。

目前,Intel x86平台的出现让众多应用交付厂商如获至宝。近年来,为了在网络产品上开疆拓土,Intel在嵌入式平台领域持续发力,其Sandybridge/Ivybridge系列平台在IO方面做了大幅优化,这使其在网络吞吐方面的性能也大幅提升。而基础硬件平台搞定以后,留给各家应用交付厂商的核心问题就只有一个——如何才能在同质化的硬件平台上优化各自的软件架构,创造最大的性能效益?

冯晓杰表示,在Intel x86平台上,优化目标很明确,就是在单CPU处理能力够强劲的基础上增加多核的并行计算水平。

目前,在中低端嵌入式平台上普遍应用的Sandybridge/Ivybridge酷睿CPU,最多4核心,如果算上超线程计数可达8核心;而应用于中高端嵌入式的双路至强平台,则最多可以做到2路10核心也就是总共20核心,再算上超线程即可达到40核心之多。拥有如此多的CPU核心,如果能够做到完全的多核并行的话,那么其创造出的性能效益将是非同凡响,但这绝非易事。

通用操作系统的困扰

目前,国内大部分厂商都采用直接利用Linux的SMP模式,因为Linux自身就具备支持并行化处理的功能。SMP模式的先天优点是,软件几乎不需要做额外改动就可以运行在多核平台上。但该模式的缺点也非常明显,由于Linux的SMP机制效率太低,随着CPU核数越多,性能反而可能下降。这主要是由以下问题所导致的:

首先,流水线作业导致堵车事故时有发生。Linux的SMP在工作时,CPU几个核必须流水线一样依次处理各个任务,前面的任务完不成,后面的任务就不能继续。

其次,SMP模式存在大量的互锁操作。何为互锁操作?比如把CPU比作人,就好比一群人打算吃一筐苹果,当第一个人从筐里拿苹果的时候,为了避免其他人都来吃苹果而产生冲突,需要临时“锁”住这筐苹果,使其他人必须等着第一个人吃完苹果后才能接着吃。如此一来,必然人数越多,冲突就越厉害,效率也越低。

第三,内存共享与IPC机制。由于Linux是多核内存共享,因此当一个CPU操作内存的部分数据块时,其他CPU就得在旁边“干等”,无谓消耗资源。

最后是IPC通讯,CPU核与核之间完成交互、调度机制,需要通过IPC消息,而这个在大流量应用层处理时,往往占据了大量了系统开销。

综上可以看出,由于SMP机制的这些问题,就会直接导致在多核平台下,软件的使用效率很低。那么,面对这诸多性能困扰,有没有更好地解决方法呢?

日前,太一星晨T-Force ADC V3.0版本的推出让业内眼前一亮,T-Force ADC V3.0在吞吐量、拓展性、虚拟化等关键性能方面都实现了大幅的飞跃。其中,T-Force 8000系列作为运营商级应用交付的标志性产品,通过了公安部三所的功能、性能测试,其吞吐量高达75G,在单个硬件平台上,这已成为本土最高性能的应用交付产品。那么,同样是多核平台,T-Force的ADC为什么能做到这么高的性能呢?

巧置分流器破解难题

冯晓杰表示,T-Force ADC实现高性能的核心在于,其单独设计了软件架构,并在业务系统前端增加了分流器的概念。也就是说,进入ADC设备的数据流首先经过分流器的梳理,将数据流分成若干份(一般是按照TCP/UDP五元组的hash值进行分流),再分配到每个核心的业务系统上。这样每个核心的业务系统处理自己单独的一份数据流,不需要和其他核心共享任何表项资源,最大程度上避免共享资源的互斥访问,增加业务处理的并行性。

传统的无分流器的软件架构下ADC设备的并行处理

从图例不难看出,处理业务流量的APP受传统的操作系统的SMP管理,每个APP随机处理数据包。因此所有的APP会在系统内存中共享全局的连接表等资源,业务处理过程就存在比较明显的互斥访问。在核心数越多的情况下,互斥碰撞的概率越高,并行化水平也就衰减得越快。

引入分流器后的软件架构下ADC设备的并行处理通信世界网

冯晓杰指出,在引入分流器后,分流器的实质是将流量分组化,每个核心处理一组独立的流。分组之后连接表等数据结构都分布化了,核心之间自然也不存在共享互斥了,如此便能充分发挥多核之间的并行处理能力,大幅提升应用交付设备性能。

同时,分流器还分为软件分流器与硬件分流器。软件分流是使用多核CPU内部的某些核心去处理分流的工作,硬件分流是在CPU之外扩展硬件组件完成分流的工作。其中,软件分流器架构以其实现方便,灵活性好的优点,在盒式ADC设备中普遍应用,为其带来了很大的成本、性能优势。但是在向高端设备衍生铺设时,软件分流器也会遇到新的性能瓶颈,这时就需要硬件分流器的支持。

 

来源:通信世界网
相关文章
 
文章评论
 
    昵称:  验证码:
 
关注通信世界网
 
 
官方微信
“cww-weixin”(或扫描下图二维码),即可于获得独家的CWW视点分析、最新的通信资讯。
 
 
专家观点
邬贺铨:频率紧张限..
“中国移动说今年要建20万个基站,到时就超过其他国家4G基站总和。但是..
 
 
最新专题
  • 1

  • 1

  • 1

  • 1

通信百科
 
华为IDC/ISP信息安全管理..
IDC需要加强信息安全管理互联网接入服务管理是互联网管理的重要组成部分..
 
 
 
新浪微博 腾讯微博 微信 rss
人民邮电出版社
工业和信息化部
人民邮电出版社图书专营店
中国通信企业协会
中国通信学会
中国互联网协会
无线电频谱管理中心
工业和信息化部电信研究院
中国通信标准化协会
中国移动通信联合会
中国邮电器材公司
中国电信
中国移动
中国联通
中国信息协会信息服务网络委员会
爱购服务器之家
新浪科技
搜狐IT
腾讯科技
凤凰网科技
人民网无线频道
中国通信网
移动Labs
中华电子网
通信产业网
企业网
In-Stat
IT价值联盟
中国软件资讯网
通信人才网
慧聪通信网
CTI论坛
CIO选型网
CTO技术网
美通社
赛立信竞争情报网
CRS通信学社
ZDNet至顶网
和讯科技
博趣·兴趣门户
呼叫中心频道
运营与增值
信天下企业短信
新电子
OFweek光通讯网
中云网