数据包多核并行处理研究与实现

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:liyin900101
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网与应用的快速蓬勃发展,网络带宽和服务复杂度不断增长,从路由查找到入侵检测等数据包处理技术面临性能挑战。多核处理器可以通过数据包并行处理有效提升数据包处理速度,但核间共享资源竞争与负载不均衡等问题使得数据包处理性能无法随着核数增加而线性增长。因此,研究和实现数据包多核并行处理方法,提升数据包处理吞吐率,具有非常重要的意义。  本文在研究分析现有数据包处理方法的基础上,探讨传统方法的固有缺陷和观察数据包并行处理架构的关键特性,针对内存资源竞争和流量负载均衡问题提出了两种改进方法,并在本文中所设计和实现的通用数据包处理原型系统中进行实验验证。论文主要有以下三点贡献:  1)针对传统的通用内存管理方法会带来大量内存资源竞争开销的问题,提出了一种基于多点缓存和对等交换的专用内存池管理机制。该机制通过将绝大部分内存操作局部化,提高了内存分配性能;通过内存池的运用和无关内存的节省,提高了内存资源利用率。实验结果表明,在使用12核并行处理和两级流水线扩展的配置下,其内存操作的锁开销较全局存储共享类型的内存管理方法降低了42%,较普通的线程局部缓存类型的内存管理方法降低了31%,且随着核心数量增加锁开销基本保持不变。  2)针对传统的负载均衡方案只支持单级负载均衡且仅局限于静态的Hash均衡算法,从而导致真实网络环境中负载容易不均衡的问题,提出了一种支持自动伸缩的多级动态负载均衡方法。该方法充分考虑了网络数据的动态性、处理线程的异构性和真实流量的波动性,通过针对流水线适配的多级负载均衡机制,扩大了负载均衡范围;通过基于EWMA的动态均衡算法,提升了负载均衡效果;通过引入自动伸缩机制,提高了系统的资源利用率。实验结果表明,在使用某真实流量数据集的测试环境下,该方法较Hash均衡算法而言数据包队列平均长度降低了93%,较单级负载均衡而言第二级队列平均长度降低了72%,在开启自动伸缩功能时能够节省34%的计算资源。  3)应用上述内存管理机制与负载均衡方法,设计并实现了一套数据包处理原型系统。该原型系统基于可双向同时扩展的并行流水线混合架构,内部实现简单而通用,可灵活配置流水线阶段数和每阶段并行度等关键参数,且支持通过线程内部模块链机制实现功能扩展。实验结果表明,在使用上述两种方法进行优化后,该数据包处理原型系统的整体吞吐率较优化前提升了22%,具有更加接近线性的多核可扩展性。
其他文献
随着互联网技术的蓬勃发展和相关应用的迅速普及,尤其随着Web2.0技术的发展,每个人不再仅仅是信息的消费者,更是信息的生产者,网民可以借助于电脑,手机等网络终端,随时随地在微博、
在高校的日常管理工作中,排课系统管理是其中的重要组成部分,是学校教学管理中最重要、最繁重的工作之一。排课表问题普遍存在于大中小各级学校中,这些学校,无论规模大小、学科多
随着科学技术的不断进步,社会发展步入知识经济时代。信息技术的深入发展和广泛应用,一方面使得海量的信息资源广泛存储于计算机和互联网当中,形成潜在知识宝库;另一方面,巨大的
飞行课目的仿真与飞行数据的智能评估预测在国内外的飞行训练中应用的越来越广泛,本文采用DirectX技术,在飞行训练智能评估系统的基础上,建立某型飞机3D模型,设计实现了某型飞机
现代信息技术的发展和社会信息化水平的提高对于软件功能、性能的要求越来越高,如何利用非常有限的时间和资源保证软件质量成为企业关注的重点。软件测试做为保证软件质量的关
随着各种信息处理技术的发展,人们可以访问的数字资源越来越多,如何从海量数据中方便快捷地得到人们所需要的信息成为人们非常关心的问题。  目前的信息服务还处于一种基于关
Deep Web是Web数据管理研究面临的一个新的领域,集成系统将收集不同Web数据源返回的查询结果并加以集成,以提供给用户一个统一的视图。为了保证集成后的查询结果具有很高的用户
随着物种基因组测序的完成,揭示基因组序列所包含和隐藏的生物信息,乃是一段时间内生物学领域关注的焦点。其中,对基因表达及其功能的探索和研究是至关重要的一步。那么,各种相关
当前,高性能计算已经全面进入“千万亿次计算”时代。根据最新的Top500列表显示,理论峰值1Petaflops以上的超级计算机已经达到55台。面向P级、E级计算,应用数学算法的设计应该考
无线多跳网络包括无线Ad Hoc网络、无线Mesh网络和无线传感器网络,其应用场景非常广泛,如应急通信、防灾减灾、环境监测等。无线多跳网络作为一种新兴的无线网络技术,还可以与传