(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈

上传人:hjk****65 文档编号:40519514 上传时间:2021-11-16 格式:DOC 页数:8 大小:200.50KB
收藏 版权申诉 举报 下载
(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈_第1页
第1页 / 共8页
(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈_第2页
第2页 / 共8页
(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈_第3页
第3页 / 共8页
资源描述:

《(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈》由会员分享,可在线阅读,更多相关《(中文)lyranet :嵌入式操作系统系统的一种零拷贝TCP IP协议栈(8页珍藏版)》请在装配图网上搜索。

1、lyranet :嵌入式操作系统系统的一种零拷贝TCP / IP协议栈李云陈,蒋美玲信息管理部 国家池南大学 埔里 台湾 中华民国s1213526ncnu.edu.tw , joannancnu.edu.tw摘要 在嵌入式系统中处理能力,内存,以及功率消耗这些资源总是有限,因此,嵌入式TCP / IP应设计成充分利用有限的资源。 申请零拷贝机制,可以减少内存的使用以及CPU传输数据的处理时间,功率消耗也可减少。在本文中,我们提出零拷贝机制的设计和实施方案的目标是嵌入式TCP / IP的组成部分lyranet(来自Linux的TCP / IP的代码并被改造成一个可重用的软件)从操作系统和硬件中独

2、立出来。性能评价表明, TCP / IP协议的处理开资可明显降低23-56.22 。 此外,这个网络组件的对象代码的大小只有原始的Linux的TCP / IP协议栈的78 。 这项研究的经验,可以作为嵌入Linux的TCP / IP协议栈成为一个指标体系的参考,并且提高零拷贝Linux TCP / IP协议传输效率。1.导言 由于互联网的爆炸,嵌入式系统要求加入互联网。 TCP / IP协议是这个连接的核心技术。在为了适应有限的资源的嵌入式设备,一些商业产品实施TCP / IP协议栈 以减少代码大小和CPU处理开销为目标的嵌入式系统。他们的代码不是自由索取。自从Linux开放源代码,此外,它很

3、普遍的还具有稳定性,可靠性,高性能,以及很好的文件,这些优势让利用现有的开放的源代码和整合的Linux TCP / IP协议栈 6 变成一个目标作业系统成为一个符合成本效益的方法。 不过,由于Linux是一块铁板内核, Linux的TCP / IP协议栈不是一个单独的组件它和其他Linux内核的功能,如档案系统,装置驱动程序和内核的核心有着密切的关系并且相互作用。这增加在指标体系中重用Linux的TCP / IP协议栈的困难。 此外,对于嵌入式系统的特别需要,直接移植Linux的TCP / IP 协议栈成为一个目标操作系统也不是最好的执行情况 。特别是,在嵌入式系统中处理能力,内存,以及功率消

4、耗这些资源总是有限。举例来说,Linux TCP / IP协议代码的数据传输适合一般用途、共同资源丰富的台式电脑的操作系统。 传输数据总是从用户缓冲区复制到内核缓冲区,然后从内核缓冲区发送到网络接口卡( NIC ) 。收到的数据从NIC带到内核网的缓冲区,然后从内核网络缓冲区复制到用户缓冲区。这些数据复制操作需要CPU的处理时间也增加了开销。因此,对于嵌入式系统 TCP / IP协议的执行,应尽量减少数据量复制,以减少能量消耗和提供高回应的效率。 零拷贝 2 是一个网卡中的数据直接接收到用户缓冲区而用户缓冲区的数据直接发送到网卡的机制。 在用户缓冲器和内核缓冲区之间没有数据需要被复制。零拷贝的

5、执行需要虚拟内存的操作,如页面重映和硬件设备支持,如DMA控制器。 必须保证TCP / IP数据传输的一致性。此外,由于虚拟内存操作和DMA需要实施零拷贝,通过网络接收或发送数据的内存缓冲器须受到限制。因为设备不支持DMA操作,从网卡到用户的缓冲区或从用户的缓冲到网卡的数据复制仍是需要的。 因为重用Linux的TCP / IP代码,我们已我们以前的的研究中提取TCP / IP协议栈 。这是当时作为一个独立于作业系统和硬件的软件组件所实施的,叫做lyranet 。在组件的设计原则的基础上, 1 ,可以得到模块化,可重构,构件更换和再利用的优势。作为一个自成一体的组成部分来实施的TCP / IP

6、协议栈,需要修改Linux的TCP / IP的代码,将它们从其他核心职能和整合Linux的TCP / IP协议目标操作系统的执行内核支持模块分开。 为了使lyranet适应嵌入式系统,要求减少协议处理开销,内存使用,功率消耗。在本文中,我们的重点提出零拷贝机制,当将数据发送到网络时通过传送用户数据缓冲区的地址,和从网络中接收数据时逐页重,来减少TCP / IP传输的数据复制操作。此外, NIC的操作者需要修改融入零拷贝机制。在用消除复制到lyraos (基于组件的嵌入式操作系统)整合lyranet后,性能评价表明TCP / IP协议处理开销可降低23-56.22 。表1实验平台 2 . lyr

7、aos和lyranet lyraos是一个基于组件的操作系统,它的目的是作为一个研究工具操作系统服务,并提供了一套为互联网的个人电脑,手提式电脑,嵌入式系统等精心设计的、明确界面的系统软件组件。它主要是在C + +和少数集中代码中实施。它设计来概括电脑系统的硬件资源,如低层次机的依赖层明显是从高层次机系统的语义剪切的。因此,它可以很容易地移植到不同的硬件体系结构 3 。 如图1所示lyraos系统的体系结构。每个系统组件是完全独立的,自我控制, 和高度模块化的。它除了是一个重量轻的系统软件,还是一个时间共享多线程微内核。线程可以被动态地创建和删除,线程的优先次序可以被动态改变。它提供了一个有先

8、买权的优先时间安排并支持信号,信号量,和信息之间的线程的各种机制。再加上提供微内核(有着Windows操作系统的外观和感觉微型窗口)。此外, lyrafile组件(一个重量轻,基于vfat文件系统)既支持基于RAM也支持基于磁盘的货仓。特别是, lyraos提供Linux设备驱动仿真环境来使用Linux的设备驱动程序。 在这种环境下, Linux设备驱动代码可以未作修改的融入lyraos。 该lyranet 4 组件是一个来自Linux的TCP / IP代码的 6TCP / IP协议栈。我们充分的使用Linux开放的源代码,主要是为减少我们发展的难度。然后,我们把它作为一个可重用的,独立于操作

9、系统和硬的件软件组件来改造它。我们的工作主要包括:重塑Linux的TCP / IP协议栈,把它从档案系统分裂出来,实施对内核和设备的包装独立开来,并提供兼容插座接口的包装。 3.性能评价本节介绍安装了lyra操作系统的应用复制消去技术的lyranet的性能评价。表1给出了我们的实验平台,我们使用模拟的嵌入式系统,在其中的两台电脑连接在一个专用网络,以避免影响外部网络的通信。应用ttcp 7 基准,并且协议处理和网络驱动器运行的处理时间是有限制的。总的数据长度设置为PIO网卡26280k字节和DMA的NIC131400k字节。3.1 。比较对象的代码大小从表2可以看出,应用复制消除技术的lyra

10、net的基础代码的规模是Linux的TCP / IP协议栈的78 。加入复制消除机制之后,只增加lyranet1.1到1.7的目标代码。 3.2 。发送数据性能我们发送数据的大小为1460字节的整数倍。图5给出了lyranet应用复制消除级之后,该协议的性能的改善5 1.34-56.22 。 当应用DMA的网卡时,虽然加入复制消除机制的驱动程序的处理时间增加,但是总处理时间仍是下跌27.7-50 。由于快速的DMA控制器,驱动程序处理是高效的,不是总处理时间的主要部分时, DMA的网卡是适用的。此得出结论认为,当数据复制占总处理时间的主要部分时,复制消除是有利的。当使用PIO网卡时,由于PIO

11、的特性,驱动处理时间成为总处理时间非常大的部份 。因为协议的处理时间减少了,复制消除的总的处理时间仍是略有下降3.3 。接收数据性能我们把处理时间分为三个部分: NIC的驱动程序的执行时间(例如ei_interrupt ( )或boomerang_interrupt ( ) ) ,接收数据主要协议的代码,(例如from net_bh ( ) tcp_rcv ( ) ) ,和系统调用处理代码(例如from sys_recv ( ) tcp_recvmsg ( ) ) 。在Linux的源代码中,从网卡收到的传入的数据包在NIC在中断服务程序中进行( ISR) ,那么ISR给net_bh做标记来激活

12、底部的一半处理,例如net_bh ( ) 。大部分接受协议的处理是在从net_bh ( ) tcp_rcv ( )控制流中完成的。然后tcp_rcv ( )调用tcp_data ( )唤醒数据的线程等待。当线程先前调用sys_recv ( )来接收数据时,睡在tcp_recvmsg ( )的等待线程苏醒了来复制的数据。1 图6 (a)显示,当系统由DMA的网卡接收数据的处理时间。该ttcp是被设定来发送1460字节的数据102400次到lyranet 。结果表明,在原始TCP / IP协议栈复制数据的时间是总处理时间最大的一部分。(即从sys_recv ( ) tcp_recvmsg ( )

13、)。应用了复制消除,数据复制的处理时间是大大降低了。虽然boomerang_interrupt ( )在复制消除中不会修改,不过,网页重映会导致TLB的浪费,这反过来会改善DMA驱动程序的性能。在协议处理部分,在有无复制消除机制的lyranet从netbh ( ) tcp_rcv ( )的处理时间的不同是微不足道的。 图6 (b)表明,系统由PIO的NIC接收数据的处理的时间。该ttcp是安装来发送1460字节的数据8192次到 lyranet 。结果表明,从NIC接收数据是主要瓶颈。没有快速设备的支持,如DMA控制器,网卡的PIO依赖于CPU通过主存接收数据。虽然我们应用复制消除大大降低了数

14、据复制处理时间,但是,驱动处理占大部分总处理时间,从而导致性能的改善微不足道。 4 .结论我们已经重载和改造Linux的TCP / IP协议栈为一个软件组件,称为lyranet,这是独立于操作系统和硬件。为适应纳入资源有限的环境下,我们在lyranet中发展的复制消除,以减少协议处理时间的开销和减少内存的开销。性能评价表明,协议的处理时间在发送数据时可减少5 1.34-56.22 和在接收数据时23-46 。加入复制消除机制,仅仅增加了1.1-1.7的目标代码的大小。总之,成功的经验和我们的工作可以作为嵌入式Linux TCP / IP协议栈成为一个指标体系要求的网络连接的参考。此外,我们的零

15、复制的执行情况还可以帮助工作,提高Linux TCP / IP协议栈传输效率。 5.参考文献J. Bruno, J. Brustoloni, E. Grabber, A. Silberschatz, and C. Small, “Pebble: A Component Based Operating System for Embedded Applications”, In Proceedings of 3rd Symposium on Operating Systems Design and Implementation, USENIX, February 1999.2 J. C. Brus

16、toloni and P. Steenkiste, “Effects of Buffering Semantics on I/O Performance”, Proceedings of 2nd Symposium on Operating Systems Design and Implementation, pages 277291, USENIX, Oct. 1996.3 Z. Y. Cheng, M. L. Chiang, and R. C. Chang, “A component based operating system for resource limited embedded

17、devices”, IEEE International Symposium on Consumer Electronics, HongKong, Dec. 5-7, 2000.4 J. W. Chuang, K. S. Sew, M. L. Chiang, and R. C. Chang, “Integration of Linux Communication Stacks into Embedded Operating Systems”, International Computer Symposium, December 6-8, 2000.5 T. Herbert, “Embeddin

18、g TCP/IP”, 6 S. T. Satchell and H. B. J. Clifford, Linux IP Stacks Commentary, Coriolis Group Books, 2000.7 ttcp, http:/www.clarkson.edu/projects/itl/HOWTOS/PCATTCP-j nm-20011113.htm .8 C. W. Yang, C. H. Lee, and R. C. Chang, “Lyra: A System Framework in Supporting Multimedia Applications”, IEEE International Conference on Multimedia Computing and Systems99, Florence, Italy, June 1999.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!