[发明专利]一种实现基于多核处理器和混合操作系统的卸载协议栈的方法有效
申请号: | 201110367887.4 | 申请日: | 2011-11-18 |
公开(公告)号: | CN102571912A | 公开(公告)日: | 2012-07-11 |
发明(设计)人: | 王劲林;郭秀岩;张武;查奇文 | 申请(专利权)人: | 中国科学院声学研究所 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京法思腾知识产权代理有限公司 11318 | 代理人: | 杨小蓉;高宇 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 基于 多核 处理器 混合 操作系统 卸载 协议 方法 | ||
技术领域
本发明涉及一种实现基于多核处理器和混合操作系统的卸载协议栈的方法,具体来说,是在一颗多核处理器上同时运行Linux操作系统和实时操作系统或简单执行环境,在Linux操作系统上提供至卸载协议栈的标准BSD socket接口,在实时操作系统或简单执行环境上实现具体的OSI网络模型中4层及以下的协议处理。
背景技术
TCP协议栈被广泛地应用于互联网的各个领域,例如HTTP协议、FTP协议、RTSP协议都是基于TCP协议实现的。但是处理TCP协议会产生大量的系统开销,导致处理器利用率上升,这样会影响操作系统中其他程序的运行。因此TCP卸载技术应运而生,TCP卸载(TCP offload)又名TCP卸载引擎(TCP offload engine,简称TOE),其主要功能是将TCP协议层以下的部分从操作系统中分离,并将其放在独立的网卡或者芯片上实现。通过TCP卸载技术可以有效地缓解操作系统的压力,高效的TOE网卡可以将处理器的利用率从95%降低到5%,因此操作系统可以有更多的处理器资源用于调度其他的任务,从而提高系统的整体性能。
随着处理器技术的不断发展,多核处理器的使用逐渐成为趋势。多核处理器相对于单核处理器来说,虽然每个处理器核心的主频较低,但是整体功耗更小,并且多核处理器可以通过提升核数弥补主频的不足,多个处理器核心可以通过串行、并行、混合流水线等结构对不同的应用进行优化,既可以充分发挥处理器的性能,又能提高应用程序的执行效率。目前多核处理器已经被广泛用于嵌入式平台,如基于ARM的Cortex处理器、基于MIPS的OCTEON II处理器和基于PowerPC的各种高性能处理器已经大量应用于手机、单片机、路由器、服务器等领域。
嵌入式平台大多采用Linux操作系统,在处理TCP协议时同样面临开销过高的问题,尤其是当处理器的主频较低时,处理TCP协议的开销会直接影响其他程序的性能,因此需要提出合理的解决方案降低Linux操作系统处理TCP协议的系统开销,合理地分配处理器的计算资源,提高嵌入式平台的整体性能。并且为了充分利用处理器上的多核资源,还应重点考虑如何将Linux操作系统和TCP协议栈实现在同一颗处理器上,这样可以降低Linux操作系统和协议栈之间的通信开销以及内存拷贝等问题。
发明内容
为解决以上问题,本发明提供一种实现基于多核处理器和混合操作系统的卸载协议栈的方法,包括:将卸载协议栈分为卸载协议栈和卸载协议栈适配层,所述卸载协议栈适配层运行于Linux操作系统上,所述卸载协议栈运行于简单执行环境或实时操作系统上,所述卸载协议栈适配层与卸载协议栈之间利用消息机制实现信息交互,其中所述卸载协议栈执行OSI网络模型中4层即传输层及以下的协议处理,所述卸载协议栈适配层为所述卸载协议栈提供Linux操作系统上的标准的套接字接口。
根据本发明的方法,其还包括将所述卸载协议栈适配层分为BSD socket函数族接口、卸载协议栈驱动、Linux侧卸载协议栈交互接口;将上述卸载协议栈分为实时操作系统侧或简单执行环境侧卸载协议栈交互接口、协议栈处理核心模块、网卡驱动。
根据本发明的方法,其中还包括:将所述卸载协议栈适配层中的BSD socket函数族接口设为Linux操作系统中的标准函数接口且具体实现功能不变;所述卸载协议栈驱动将所述BSD socket函数族中的函数调用重定向到所述Linux侧卸载协议栈交互接口,也可以根据所述Linux侧卸载协议栈交互接口返回的信息重定向到所述BSD socket函数族中的对应函数;所述Linux侧卸载协议栈交互接口将所述卸载协议栈驱动重定向的函数调用转换为消息,发送到所述卸载协议栈;所述Linux侧卸载协议栈交互接口从卸载协议栈接收消息,解析消息中的信息,返回给所述卸载协议栈驱动。
根据本发明的方法,其中还包括:所述卸载协议栈中的实时操作系统侧或简单执行环境侧卸载协议栈交互接口接收所述卸载协议栈适配层发送的消息,解析消息中的信息,根据消息中的操作类型调用所述协议栈处理核心模块的对应函数,并将函数执行结果填写到消息中返回给所述卸载协议栈适配层;所述协议栈处理核心模块与网卡驱动执行OSI网络模型中4层及以下的协议处理。
根据本发明的方法,其中还包括:所述卸载协议栈适配层和卸载协议栈通过消息建立起所述卸载协议栈适配层和卸载协议栈之间的数据和操作通道。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院声学研究所,未经中国科学院声学研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110367887.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:动力传递链的组装方法
- 下一篇:半导体装置