(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf_第1页
(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf_第2页
(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf_第3页
(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf_第4页
(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf_第5页
已阅读5页,还剩154页未读 继续免费阅读

(计算机系统结构专业论文)tcpip协议栈卸载及硬件加速技术的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一1j1ij1 ad i s s e r t a t i o nf o rt h ed e g r e eo fd o c t o ri nc o m p u t e ra r c h i t e c t u r e r e s e a r c ho nt c p i pp r o t o c o ls t a c ko f f i o a da nd h a r d w a r e s p e e d u pt e c h n o l o g i e s b yl i u t i a n h u a s u p e r v i s o r :p r o f c h a n gg u i r a n n o r t h e a s t e r nu n i v e r s i t y f e b r u a r y2 0 0 8 l 独创性声明 本人声明,所呈交的学位论文是在导师的指导下完成的。论文中取得的研究成果除 加以标注和致谢的地方外,不包含其他人己经发表或撰写过的研究成果,也不包括本人 为获得其他学位而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在 论文中作了明确的说明并表示谢意。 学位论文作者签名: 日期: 学位论文版权使用授权书 婺鬟 弓、3 本学位论文作者和指导教师完全了解东北大学有关保留、使用学位论文的规定:即 学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借 阅。本人同意东北大学可以将学位论文的全部或部分内容编入有关数据库进行检索、交 流。 ( 如作者和导师不同意网上交流,请在下方签名:否则视为同意。) k f 肠弋 1 7 即 轹力 猁 卯 者 作 : 文期 沦日 位字 学签 rpj i一 东北大学博士学位论文 摘要 t c p i p 协议栈卸载及硬件加速技术的研究 摘要 社会的需求和技术的进步促进了网络带宽和传输速度的飞速发展。当网络进入g b i t 或者更高速度传输时,提高t c p i p 协议性能的主要任务已经从网络转移到主机c p u 上, 传统的基于软件进行t c p i p 协议处理的方式成为高性能网络传输的瓶颈,这对服务器、 路由器、防火墙等网络设备的性能提高带来了很大的负面影响。 为提高性能,国内外一些科研机构及相关领域的跨国公司对t c p i p 协议栈的加速 技术进行了深入的研究。通过分析协议栈的实现过程,得出数据复制、协议解析和中断 处理等三个因素是占据主机c p u 的主要开销的结论。围绕这三个方面,本文对国内外 相关研究的各种成果,进行了评述和系统分析。 在综述的基础上,本文进行了t c p i p 协议卸载及硬件加速技术的研究,针对开源 l i n u x 操作系统,设计了一种基于t o e l i n u x 体系结构的整体加速方案。基本思想是利 用硬件处理速度快的特性,将协议处理过程放到f p g a 等硬件处理单元( 为了便于实验 和调试) 上完成,分担服务器c p u 对t c p i p 协议栈的处理任务。同时,采用多种加速 技术复用的技术思路,综合运用软硬件实现协议技术、零拷贝技术和减少中断技术,从 而将服务器的c p u 解放出来,提高c p u 的工作效率,从解决瓶颈的角度使高速网络的 整体传输性能大幅提高。 在对l i n u x 系统内核协议栈整体流程和可加载内核模块机制( l k m ) 进行分析的基 础上,给出了一种改进的、以l i n u x 系统内核网络设备驱动程序为基础的零拷贝原理及 其实现方法。对l i n u x 网络设备驱动结构与功能进行了具体研究,并对零拷贝技术从原 理到实现进行了深入的分析。详细描述了驱动程序模块和零拷贝技术实现程序的设计过 程。在设计中,将零拷贝技术的实现划分为网络设备内存到内核内存映射和内核内存到 应用程序内存映射两部分,并在编写l i n u x 网络设备驱动程序的基础上,通过p r o c 文件 系统和m m a p 函数,完成了内核内存到应用程序内存映射的实现,完成的软件模块不但 可以替代普通网络设备驱动程序,还可以实现内核内存的映射、输出。同时,给出了相 应的实验和测试方法、测试结果达到了预期目的。 对l i n u x 操作系统中的t c p i p 协议栈的卸载方法展开了研究。针对l i n u x 操作系统, h ,h 东北大学博士学位论文摘要 定义了卸载引擎的体系结构,讨论了卸载引擎与服务器操作系统连接接口的解决办法, 提出了使用卸载支持模块来完成两者之间连接的实现策略。根据所提出的策略,对l i n u x 系统内核协议栈进行了分析和修改;利用l k m 机制对卸载支持模块进行编程实现。测 试证明卸载支持模块可以成功地屏蔽原来的l i n u x 内核协议栈,使i n e ts o c k e t 层与驱 动程序之间可以直接交互。 最后,完成支持t c p i p 协议栈卸载、硬件实现协议、多种加速技术复用的新型网 卡的总体设计方案,并且就协议栈的设计以及硬件实现方法进行了研究。利用v h d l 语言、f p g a 和x i l i n x 公司的m l 4 0 3 开发板,对协议栈的几个主要模块进行了状态和 硬件描述,对部分模块进行了功能仿真,最终形成了一种新的加速网卡的总体技术原型。 测试和功能仿真的实验结果表明:这种智能的t o e 网络接口卡原型带有可编程处理 器和缓冲内存,可以通过硬件快速地实现t c p i p 协议栈,并在解析过程中,实现了数 据的零拷贝,并且大大减少了中断次数。因此,所定义的卸载引擎体系结构和设计是合 理的,相应的解决方案也是可行的,这项成果为开发实用化产品打下了技术基础。 l , r 、 东北大学博士学位论文 a b s t r a c t r e s e a r c ho nt c p i pp r o t o c o is t a c ko f f i o a da n d h a r d w a r es p e e d u pt e c h n o l o g i e s a bs t r a c t t h es o c i a ld e v e l o p m e n tr e q u i r e m e n t sa n dt e c h n o l o g yp r o g r e s sa r ed r i v i n gt h en e t w o r k b a n d w i d t ha n dd a t at r a n s m i s s i o ns p e e dt oi n c r e a s er a p i d l y w h e nn e t w o r k se n t e rt h ee r ao f g b i t so rh i g h e rt r a n s m i s s i o n s p e e d ,t h em a i nt a s kt oi m p r o v et h et c p i pp r o t o c o l p e r f o r m a n c ei sm o v i n gf r o mn e t w o r kt oc p u t h et r a d i t i o n a ls o f t w a r et c p i pp r o c e s s i n g b a s e dm o d eh a sb e c o m et h eb o t t l e n e c kf o rh i g hp e r f o r m a n c en e t w o r kd a t at r a n s m i s s i o n , w h i c hi n c u r ss t r o n gn e g a t i v ee f f e c t st ot h ep e r f o r m a n c eo fh a r d w a r e ,s u c ha st h es e r v e r s , r o u t e r s ,a n df i r e w a l l s ,e t c i no r d e rt oi m p r o v et h en e t w o r kp e r f o r m a n c e ,s o m er e s e a r c ho r g a n i z a t i o n sh a v e i n v e s t i g a t e da n ds t u d i e dt h em e t h o d sf o rt c p i pp r o t o c o ls t a c ka c c e l e r a t i o n b a s e dt h e a n a l y s i so nt h ei m p l e m e n t a t i o np r o c e s so ft h ep r o t o c o ls t a c k ,t h e i rc o n c l u s i o ni st h a td a t a r e p l i c a t i o n ,p r o t o c o lr e s o l v i n g ,a n dt h ei n t e r r u p tp r o c e s s i n ga r et h et h r e em a j o rf a c t o r st h a t c o s tm o s to ft h ec p ut i m e f o rt h e s et h r e ef a c t o r sa n ds o m eo t h e rr e l a t e dr e s e a r c hr e s u l t s ,w e g a v eo u to u rs u r v e ya n da n a l y s i s i nt h i sd i s s e r t a t i o n ,b a s e do nt h er e s e a r c hr e s u l t ss t a t e da b o v e ,w ei n v e s t i g a t e da n d s t u d i e dt h et c p i pp r o t o c o lo f f l o a de n g i n e ( t o e ) a n dh a r d w a r es p e e d i n gu pt e c h n o l o g i e s a i m i n ga tt h eo p e ns o u r c el i n u xo p e r a t i n gs y s t e m ,w ep r o p o s e da no v e r a l lt o e - l i n u xb a s e d s p e e du pa r c h i t e c t u r e t h eb a s i c i d e ai st h a t b yu t i l i z i n gt h ec h a r a c t e r i s t i c so fh i g h e r p r o c e s s i n gs p e e do fh a r d w a r e ,t h ed e s i g nm o v e st h ep r o t o c o lp r o c e s s i n gt ot h eh a r d w a r e p r o c e s s i n gu n i t sl i k ef p g a ( f o rc o n v e n i e n c eo fe x p e r i m e n ta n dt e s t i n g ) t os h a r et h ec p u w o r k l o a df o rt h et c p i pp r o t o c o ls t a c kp r o c e s s i n g i nt h em e a n t i m e ,b ym a k i n gu s eo f m u l t i p l es p e e d i n gu pt e c h n o l o g i e s ,t h ed e s i g nc o m p r e h e n s i v e l yu s e st h et e c h n o l o g yo f h a r d w a r ei m p l e m e n t a t i o no fp r o t o c o ls t a c k ,z e r o c o p y , a n di n t e r r u p tr e d u c t i o nt or e l e a s et h e c p ut i m ea n di m p r o v e st h ec p up e r f o r m a n c es ot h a tw ec a ni n c r e a s et h es p e e do ft h e h i g h s p e e dn e t w o r kt r a n s m i s s i o n b a s e do nt h ea n a l y s i st op r o t o c o ls t a c kp r o c e s s i n gs t e p so fl i n u xs y s t e mk e m e la n dt h e l o a d a b l ek e m e lm o d u l em e c h a n i s m ( l k m ) ,t h ep r i n c i p l ea n d i m p l e m e n t a t i o no fa n i m p r o v e dz e r o - c o p yt e c h n i q u ei sp r o p o s e db a s e do nl i n u xk e r n e ln e t w o r kd e v i c ed r i v e rt h e l i n u xd e v i c ed r i v e rs t r u c t u r ea n di t sf u n c t i o n a l i t i e sa r e a n a l y z e d t h ez e r o 。c o p y i m p l e m e n t a t i o ni si n v e s t i g a t e da n dt h en e t w o r kd e v i c ed r i v e rm o d u l ei sd e s c r i b e di nd e t a i l i n t h i sd e s i g n ,t h ez e r o c o p yt e c h n o l o g yi ss e p a r a t e di n t ot w op a r t s o n ei st h em a p p i n gf r o m t h en e t w o r kd e v i c em e m o r yt ot h ek e r n e lm e m o r ya n dt h eo t h e ri st h em a p p i n gf r o mt h e k e r n e l m e m o r yt ot h ea p p l i c a t i o nm e m o r y a n di n t h el i n u xn e t w o r kd e v i c ed r i v e r - v r 沙 东北大学博士学位论文 a b s t r a c t p r o g r a m m i n g ,w eh a v ei m p l e m e n t e dt h em a p p i n gf r o mt h ek e r n e lm e m o r y t ot h ea p p l i c a t i o n m e m o r yw i t ht h ep r o cf i l es y s t e ma n dm m a pp r o c e d u r e t 1 1 ei m p l e m e n t e dm o d u l en o to n l y c a nr e p l a c et h en o r m a ln e t w o r kd e v i c ed r i v e r , b u ta l s oc a nc o m p l e t et h em a p p i n ga n do u t p u t o ft h ek e m e lm e m o r y t h ee x p e r i m e n ta n dt e s tm e t h o d sa r ep r e s e n t e d t h et e s tr e s u l t s i n d i c a t et h a tt h em o d u l ea n dt h ep r o g r a mr u ns t a b l y , w h i c ha c h i e v e so u re x p e c t e dg o a l s t h eo f f i o a dm e t h o d o l o g yf o rt h et c p i pp r o t o c o ls t a c ki nt h el i n u xs y s t e mi s i n v e s t i g a t e d b a s e do nl i n u xs y s t e m w eh a v ed e f i n e dt h ea r c h i t e c t u r eo ft h eo m o a de n g i n e , d i s c u s s e dt h ei n t e r f a c es o l u t i o nb e t w e e nt h eo m o a de n g i n ea n dt h es e r v e ro p e r m i n gs y s t e m , a n dd e s c r i b e dt h ei m p l e m e n t a t i o ns t r a t e g yw h i c hc a nl i n kt h e s et w os i d e su s i n ga no f f i o a d s u p p o r tm o d u l e a c c o r d i n gt o t h i ss t r a t e g y , t h e o r d i n a r yl i n u xk e r n e lp r o t o c o ls t a c ki s a n a l y z e da n dm o d i f i e da n dt h eo m o a dm o d u l ei si m p l e m e n t e db ym a k i n gu s eo fl k m m e c h a n i s m t h et e s tr e s u l t sp r o v e dt h a tt h eo f f i o a dm o d u l ec a ns u c c e s s f u l l ym a s kt h eo r i g i n a l l i n u xk e m e lp r o t o c o ls t a c ka n dc a nr e a l i z et h ed i r e c tt a l k i n gb e t w e e ni n e ts o c k e tl a y e ra n d t h ed e v i c ed r i v e r t h eo v e r a l ld e s i g no ft h en e t w o r kc a r di sc o m p l e t e dw h i c hs u p p o r t st c p i pp r o t o c o l s t a c ko f f i o a d ,h a r d w a r ei m p l e m e n t a t i o no fp r o t o c o l ,a n dt h eu s a g eo fm u l t i p l es p e e d u p t e c h n o l o g i e s b ym a k i n gu s eo fv h d ll a n g u a g e ,f p g a ,a n dm l 4 0 3d e v e l o p m e n tb o a r d p r o v i d e db yx i l i n x ,t h es t a t e so fs o m em a j o rm o d u l e sa n dt h eh a r d w a r eo f t h ep r o t o c o ls t a c k s a r ed e s c r i b e di nd e t a i l t h ef u n c t i o n so fs o m em o d u l e sa r es i m u l a t e da n dap r o t o t y p eo ft h e o f f i o a de n g i n ew i t ht o t a l l yn e wa r c h i t e c t u r ei sc o n s t r u c t e d 耶1 et e s tr e s u l t sa n df u n c t i o n a ls i m u l a t i o ni n d i c a t et h a tt h i si n t e l l i g e n tt o en e t w o r kc a r d p r o t o t y p ew i t hp r o g r a m m a b l ep r o c e s s o ra n db u f f e rm e m o r yc a ni m p l e m e n t s at c p i p p r o t o c o ls t a c ku s i n gh a r d w a r ew i t hf a s ts p e e d a n dd u r i n gt h er e s o l v i n gp r o c e d u r e ,i tc a n i m p l e m e n tz e r o c o p y w i t hs i g n i f i c a n ti n t e r r u p td e c r e a s e t h ep r o p o s e do f f i o a de n g i n e a r c h i t e c t u r ea n di t sc o r r e s p o n d i n gd e s i g na r er e a s o n a b l ea n dt h ec o r r e s p o n d i n gs o l u t i o n sa r e a l s ov i a b l ei na p p l i c a t i o n s k e y w o r d s :t c p i pp r o t o c o ls t a c k ;h a r d w a r es p e e d u p ;t c p i po f f i o a de n g i n e ( t o e ) ; l k m ;z e r o - c o p y ;v h d l ;s t a t em a c h i n e ;f u n c t i o n a ls i m u l a t i o n v 1 - 一f 、 、 东北大学博士学位论文 目录 目录 独创性声明i 摘要i i i a b s t r a c t v 第1 章绪论1 1 1 引言1 1 2 本文的研究思路2 i 3 本文的主要工作3 1 4 论文的结构安排4 第2 章t c p i p 协议栈卸载及硬件加速技术的研究综述5 2 1 t c p i p 协议栈实现过程中的主要开销6 2 1 1 数据复制。6 2 1 2 协议解析7 2 1 3 中断操作8 2 2 t c p 协议处理性能的实验分析9 2 2 1 性能评价标准9 2 2 2 分析结果0 ;9 2 3 加速t c p i p 协议处理的有关技术1 1 2 3 1 零拷贝技术1 l 2 3 2 硬件处理技术1 7 2 3 3 其他加速执行协议的技术1 9 2 4 本章小结2 0 第3 章l i n u x 内核网络协议栈及可加载内核模块机制( l k m ) 2 1 3 1l i n u xt c p i p 协议分层结构2 1 3 2 各层数据结构2 2 3 2 1s k b u f f 2 2 3 2 2b s ds o c k e t 层2 3 3 2 3i n e ts o c k e t 层2 4 3 2 4i p 层2 4 ,伊卜 东北大学博士学位论文 目录 3 2 5 硬件层2 7 3 3 网络初始化2 7 3 4 数据接收2 8 3 5 数据发送2 9 3 6l i n u x 内核t c p i p 协议栈整体流程3 0 3 7 可加载内核模块机制( l k m ) 3 2 3 7 1 模块的加载3 2 3 7 2 模块的卸载3 3 3 7 3l k m 模块用到的数据结构3 4 3 8 本章小结3 4 第4 章一种支持t o e 的l i n u x 系统网络设备驱动程序3 5 4 1网络驱动程序的总体结构3 5 4 2网络驱动程序中用到的数据结构3 7 4 3 编写l i n u x 网络驱动程序中的几个关键问题3 7 4 3 1 共享中断3 7 4 3 2 流量控制3 8 4 3 3 调试3 8 4 4 支持t c p i p 卸载的网络驱动程序的设计3 8 4 5 支持t c p i p 卸载的网络驱动程序的实现3 9 4 5 1 引入头文件的作用3 9 4 5 2 驱动程序基本结构框架3 9 4 5 3 数据结构和功能函数详解4 0 4 6 支持协议栈卸载的驱动程序的测试程序设计和测试结果4 3 4 6 1 测试程序的设计4 3 4 6 2 测试结果4 5 4 7 本章小结4 6 第5 章一种实现数据零拷贝的技术4 7 5 1 零拷贝技术原理简介4 7 5 1 1p r o c 文件系统4 8 5 1 2 内存映射( m m a p ) 4 9 5 2 零拷贝模型结构设计5 1 i i 膏 7 东北大学博士学位论文 目录 5 3 5 4 5 5 5 6 第6 章 6 1 6 2 6 3 【, 、r 6 4 争 卜 l 6 5 6 6 6 7 第7 章 零拷贝技术实现5 3 5 3 1 引入的头文件5 3 5 3 2 变量声明和结构体声明5 4 5 3 3 缓冲区相关操作函数5 5 零拷贝技术的关键问题与解决方法5 8 零拷贝技术的测试结果5 9 本章小结6 0 l i n u x 内核协议栈卸载的支持技术6 1 t c p i p 协议栈卸载引擎( t o e ) 6 1 6 1 1t o e 如何为系统减负6 2 6 1 2t o e 技术的实现策略6 3 6 1 3t o e 功能的实现方案6 4 基于l i n u x 系统的t o e 体系结构6 4 协议卸载支持模块:6 6 6 3 1 卸载支持模块的实现难点6 6 6 3 2 卸载支持模块的实现策略6 6 卸载支持模块的设计6 8 6 4 1 完全卸载支持模块的主要功能6 8 6 4 2 完全卸载支持模块的卸载点分析t 6 8 6 4 3 完全卸载支持模块的实现方法7 0 卸载支持模块的实现7 1 6 5 1 修改内核协议栈源代码7 1 6 5 2 与驱动程序结合7 2 6 5 3 编写模块代码7 3 6 5 4 编写m a k e f i l e 7 5 测试及结果7 6 6 6 1 修改后的协议栈对普通网卡支持的测试7 6 6 6 2 执行i n s m o d 命令7 7 6 6 3 执行r m m o d 命令7 8 本章小结7 8 l i n u x 协议栈卸载引擎的实现7 9 i i i 东北大学博士学位论文目录 7 1t o e 解决方案设计7 9 7 1 1t o e 中t c p i p 协议栈的设计7 9 7 1 2 硬件开发板m l 4 0 3 的规划7 9 7 1 3 服务器与m l 4 0 3 之间的串口编程8 0 7 1 4 两个协议栈的过渡8 0 7 1 5 基于m l 4 0 3 的t o e 解决方案8 1 7 1 6 实现模块的划分8 2 7 2 硬件设计技术8 5 7 2 1 硬件描述语言v h d l 8 5 7 2 2 开发平台简介8 5 7 3 硬件实现t c p i p 协议栈的相关研究成果8 6 7 4a r p 协议模块的设计与实现8 8 7 4 1a r p 模块的系统流程8 9 7 4 2a r p 高速缓存模块设计9 0 7 4 3a r p 控制模块设计9 2 7 4 4 顶层文件元件连接图9 4 7 5i p 协议模块的设计与实现9 4 7 5 1i p 接收模块的设计9 5 7 5 2i p 发送模块的设计9 7 7 5 3 三层交换技术1 0 0 7 6u d p 及i c m p 协议模块的设计与实现1 0 1 7 6 1u d p 协议模块的设计1 0 1 7 6 2i c m p 协议模块的设计1 0 2 7 7t c p 协议模块的设计与实现1 0 5 7 7 1t c p 接收模块的设计1 0 6 7 7 2t c p 发送模块的设计1 0 9 7 8 协议模块的功能仿真1 11 7 8 1 关于t c p 协议模块仿真的说明1 1 2 7 8 2a r p 高速缓存模块的功能仿真1 1 4 7 8 3a r p 控制部分的功能仿真1 1 5 7 8 4a r p 模块的整体功能仿真1 1 6 i v - 1 乞 , 东北大学博士学位论文 目录 7 9 多种加速技术的结合1 1 7 7 1 0 本章小结1 1 9 第8 章结束语1 2 1 8 1 论文工作总结1 2 1 8 2 将来的工作设想1 2 3 参考文献1 2 5 致谢1 3 7 作者简介1 3 9 攻读博士学位期间进行的科研工作1 4 1 v - 东北大学博士学位论文第1 章绪论 1 1引言 第1 章绪论 i n t e m e t 的快速发展,极大地推动了网络通信技术、传输模式和传输内容的快速发 展。从2 0 世纪8 0 年代起,作为主流局域网技术的以太网由最初的1 0 m b i t s 带宽,发展 到1 0 0 m b i t s ,后来又发展到1 0 0 0 m b i t s ,直到现在的万兆( 1 0 g b i t s ) 以太网【1 1 ,带宽 和运行速度提高了3 个数量级1 2 】。在同一期间,常用广域网的传输速率也由几十k b i t s , 发展到1 0 g b i t s 以上。 t c p i p 协议是目前占据主导地位的网络协议,在i n t e m e t 上广泛应用。t c p i p 协议 是基于软件进行协议处理的,一般由c p u 操控和管理。网络越快,服务器或网络设备 ( 以下用主机代替) 需要处理的网络协议工作就越多;网络规模越大,主机c p u 就越 繁忙,应用程序直接读取内存和磁盘数据就越频繁。但c p u 在同一时刻只能处理一个 作业,新作业引发持续性中断会导致内存和p c i 总线通信量激增,从而使得c p u 随时 都处于临界作业执行状态。随着千兆位的传输网络被越来越多地普及,带宽扩充越来越 大,主机c p u 处理能力就成为瓶颈。 传统的t c p i p 技术在处理网络数据传输的过程中,要占用大量的主机资源。c p u 每处理1 比特网络数据,大致将消耗1 h z 的处理性能【3 】,也就是说需要2 0 g h z 的c p u 处理能力满负荷运行,才能满足1 0 g 比特全双工以太网数据流的处理要求【4 1 。当网络链 路速度高于c p u 对t c p i p 协议栈的处理速度时,传统的t c p i p 协议处理的方式就会 成为高性能网络传输的瓶颈【5 j 。 通过对t c p i p 协议实现过程的详细分析,可以判断出主机的主要开销集中在数据 复制、协议解析和中断操作三个方面。围绕t c p i p 协议优化技术的研究成果较多,但 大多数研究只是针对开销中的一部分的优化和加速,提出的解决方法是单一的、割裂的, 甚至是相互矛盾的,所以必须进行整体的、多种技术综合的研究。最新的许多研究表明, 将协议卸载和复制避免技术结合起来,会对性能提升起到非常重要作用。 本文进行t c p i p 协议卸载、通过硬件实现及多种加速技术复用的研究,其基本思 想是:分担c p u 对t c p i p 协议栈的处理,利用硬件处理速度快的优势,将协议处理过 程放到高速网卡等硬件上完成( 包括t c p 、i p 、u d p 、i c m p 等子协议的处理) ,同时避 免数据的多次复制和减少中断。即使用f p g a 、a s i c 等器件研制具有t c p i p 协议处理 功能的网卡,从而将主机c p u 解放出来,应付其他的作业,这样既可提高网络传输的 】- 东北大学博士学位论文第1 章绪论 速度,又可提高主机c p u 的工作效率。 本研究来源于辽宁省自然科学基金项目,属于前瞻性科研课题,主要是在开源的 l i n u x 系统平台上研究t c p i p 协议的卸载技术,完成一种t c p i p 协议卸载引擎( t o e ) 的原型。关于t o e 技术,发达国家自2 0 0 0 年开始研究,取得的成果比较多,2 0 0 1 年市 场上已经有了相应功能的产品,但是大多并不具备完整意义的t o e 功能,只是具备部 分卸载功能;自2 0 0 3 年,国内开始此类研究,但取得研究成果不多,没有商用产品问 世。 传统t o e 技术的研究,一般脱离操作系统,导致在使用t o e 网卡的时候需要与操 作系统开发商协商来开发专门的操作系统,缺乏兼容性,影响了产品的推广和普适性。 本课题研究采用不同的技术路线,使用开源的l i n u x 操作系统,研究t c p i p 卸载技术, 一改传统t o e 的研究方式,使t o e 技术与操作系统紧密绑定。 本课题虽然以科学研究为主,但是充分考虑了商业应用的可能性。利用原型中f p g a 的可扩充性和重复性,可以在卸载引擎上附加更多的功能,如防火墙( f i r e w a l l ) 、入侵 检测( i d s ) 等。因此,本课题研究不仅具有较高的学术价值,而且还具有广泛的应用 价值和市场前景。 1 2 本文的研究思路 本文的研究思路集中在将数据复制避免、协议卸载技术及相互结合方面。首先进行 数据零拷贝技术的研究,以减少主机处理中的最大开销部分。并在此基础上,进行t c p i p 协议栈的卸载研究,利用硬件处理速度快的特性,对协议栈的主要协议功能进行硬件实 现。多种方法综合、协调使用,达到加速协议栈执行的目的。 一般来说,根据协议栈的卸载情况,卸载引擎分成完全卸载和部分卸载两种情况。 完全卸载情况指对t c p i p 中的主要协议如t c p 、i p 、i c m p 、a r p 等基本功能进行硬件 实现;而部分卸载主要是针对t c p i p 中某些协议的部分功能进行硬件实现,如进行校 验和的计算等等。 本课题主要研究完全卸载的情况。 据此,形成以下的研究思路: 文献综述部分:t c p i p 协议栈卸载及硬件加速技术的研究是当前高速网络通信 领域研究的热点之一,本文首先对国内外的相关研究工作进行查阅、分析和总结。 基础研究部分:通过对l i n u x 内核网络t c p i p 协议栈及主要几个子协议进行介 - ? - 、 东北大学博士学位论文第1 章绪论 绍,着重对l i n u x 中的分层结构、主要用到的数据结构、数据收发的函数处理流程等做 了分析,同时介绍l k m ( l o a d a b l ek e r n e lm o d u l e ) 机制和使用方法。目的是实现卸载引 擎( t o e ) 与服务器操作系统的接口部分,使得卸载引擎( t o e ) 能够替代主机上的t c p i p 协议栈。 应用研究部分:利用l i n u x 系统内核的l k m 机制,研究以修改l i n u x 网络设备 驱动程序为基础的零拷贝原理和实现方法,并进行了测试;对卸载支持模块进行了编程 实现和测试,给出了卸载引擎( t o e ) 的体系结构和总体设计;利用x i l i n x 的m i a 0 3 电路开发板和v h d l 语言,对t c p i p 协议栈及a r p 、i p 、u d p 、i c m p 和t c p 等各个 模块做了状态描述和硬件设计,最后对上述模块进行了功能仿真。综合零拷贝和减少中 断技术,最终完成一种完全卸载引擎( t o e ) 的原型实现

温馨提示

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

最新文档

评论

0/150

提交评论