非阻塞算法与多进程网络程序优化研究

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:ccll
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在多核处理器、多队列网卡环境下,操作系统网络协议栈和多进程程序的可扩展性与性能优化成为研究的热点。当前,使用多进程模式编写的网络程序存在以下三个主要问题:1)多进程使用加锁的共享数据结构造成的低可扩展性:2)操作系统网络协议栈与多进程之间缺少密切配合而导致的系统Cache低效和网络协议栈的低可扩展性:3)会话保持困难。由于以上问题,多进程网络程序不能发挥多核多队列网卡平台应有的优势,在会话保持不能正确进行的情况下,程序只能在单进程模式下运行。本文从非阻塞编程、操作系统负载均衡、网络协议栈和网卡驱动等方面出发,展开对以上问题的研究,主要工作和创新点如下:针对进程间共享数据结构的加锁带来低可扩展性的问题,本文提出了MWrite无障碍编程模型和无锁数组哈希表。MWrite编程框架模型简洁,可扩展性好,适用于高读写比的场景,使用MWrite实现的无障碍双链表的性能,比基于MCAS实现的无锁双链表的性能高72.65%,MWrite解决了为多进程程序编写高可扩展性的非阻塞数据结构困难的问题。无锁数组哈希表在多进程并发访问的情况下,扩展性接近100%,其访问速度比红黑树和读写锁保护传统哈希表均快10倍,虽然在数据规模较大时(>=1W),可能会因冲突导致数据不能存入其中,但是理论和实验表明产生冲突的概率极低;无锁数组哈希表易于实现、实用性高,从理论上解决了多进程网页缓存的加锁问题。针对进程数大大超出核数的网络程序,本文提出了Linux操作系统负载均衡优化方法。Linux使用调度域负载均衡算法,它优先分配新进程到最空闲的处理器核中的最空闲的CPU上;核上第一个空闲CPU能够周期性地从该核最繁忙的CPU上迁移任务到自身。然而在某些情况下,该策略会导致系统更加不平衡。在本文的优化算法中,新创建的进程被安排到整个系统的最空闲的CPU上运行,核内最空闲的CPU可迁移核内的任务。实验表明,该方法在最好的情况下可使系统性能提升8%。针对操作系统网络协议栈与进程间缺少配合和会话保持困难这两个问题,本文提出了多进程服务器模型优化方法和多进程代理服务器模型优化方法,提高了系统的Cache效率、提升了网络协议栈的可扩展性,并使得各进程可独完成会话保持。这两种优化方法使得同一连接(或代理服务器中的两个相关连接)的网络硬中断、软中断、收包和发包都处在同一个网卡队列中,并使用同一个处理器、同一个进程来处理,并且同一源IP的数据包交由同一个进程处理。在三项不同的测试中,该优化方法使系统性能分别提升了25%、53%和46%。最后,本文应用以上的优化思想,提出了基于用户态包处理的高效高可扩展性网络负载均衡框架UVS。该框架使用零拷贝技术,在用户态收发数据包,并实现了TCP/UDP反向代理。该框架使用基于数组的无锁队列在进程间传递数据包,使用多进程服务器模型优化方法提高系统Cache效率和可扩展性。实验表明其性能优于LVS。
其他文献
目的:探讨铍针联合免荷型膝关节护具治疗内侧间室膝骨关节炎的临床疗效。方法:采用铍针联合免荷型膝关节护具治疗内侧间室膝骨关节炎患者57例114膝,男20例,女37例。年龄49~69岁,中
作为生物信息学的传统研究领域,生物序列分析得到了广泛的研究。然而,随着测序技术的发展,生物序列数据在规模和特性上都发生了改变,生物序列分析要求新的软件方法和计算平台。在
火箭级间段采用多个螺栓盘式连接,在高速飞行过程中,箭体受横向异常载荷的作用,导致连接螺栓相继失效。本文利用非线性有限元软件ABAQUS,对单个螺栓的失效进行数值模拟(包括
资源受限的项目调度问题(Resource-Constrained Project Scheduling Problem,RCPSP)广泛地存在于各行各业,不仅是项目管理实践的核心内容,也是运筹学的一个重要分支。合理的
<正>《诗经》是中国古典诗歌现实主义传统的滥觞,它在中国文学史上的地位是至为崇高的。《诗经》的源头性意义是多方面的,有思想方面的,也有艺术方面的。
本文结合工程项目内部审计的现状,从资格预审、招标投标、合同签订、工程验收和竣工结算五个环节展开分析,提出了加强工程项目内部审计的措施和建议。
X线计算机辅助断层摄影技术(X-ray CT)、磁共振成像(MRI)、正电子成像(PET)等断层成像技术能够在不破坏样品的情况下,对骨骼、牙齿、生物材料等离体样本和活体样本进行断层图
金融危机又称金融风暴,是指一个国家或几个国家与地区的全部或大部分金融指标(如短期利率、货币资产、证券、房地产、土地(价格)、商业破产数和金融机构倒闭数)的急剧、短暂和超周
对于被誉为心理现实主义之先驱的亨利·詹姆斯,以女性为作品的中心人物是其小说的显著特色。因此,学者和评论家们往往趋向于从许多不同的角度去分析他小说中的女性人物,这就
西方女权主义城市政治理论的女权主义批判主要指涉认识论批判、西方中心主义批判、二元论批判;关注的核心议题包括女权主义社团、女性政治领导、女性社会运动、城市政治暴力