(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf_第1页
(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf_第2页
(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf_第3页
(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf_第4页
(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(电子科学与技术专业论文)基于嵌入式linux的路由器的开发.pdf.pdf 免费下载

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

文档简介

浙江大学硕士学位论文 a b s t r a c t w j t ht h er a p i dd e v e l o p m e n to fc o m p u t e rt e c h n o l o g y ,e m b e d d e ds y s t e mi s m o r ea n dm o r ew i d e l yu s e d b yn o w ,e m b e d d e dc o m p u t e rs y s t e mi sm u c hm o r et h a n c o m m o nc o m p u t e ri nq u a n t i t y ,t h e r ea r ea b o u t5 - 1 0m i c r o p r o c e s s o ri nt h e p e r i p h e r a le q u i p m e n to fac o m p u t e r a tt h em e a nt i m e , o t so fn e t w o r k e q u i p m e n t sb e c o m et h en e wa p p l i c a t i o ne n v i r o n m e n to fe m b e d d e ds y s t e ms i n c e t h ep r o g r e s s i v e l yd e v e l o p m e n to fn e t w o r kt e c h n o l o g y a l t h o u g ht h ec h e a pa n d p o w e r f u lm i c r o p r o e e s s o r sa n dv a r i o u sk i n d so fp e r i p h e r a le q u i p m e n t sh a v e m a d et h eh a r d w a r ef r a m e so fa l lk i n d so fe m b e d d e da p p l i c a t i o t i ss t a b l ea n d t e l i a b l e ,t h ec h o k ep c i n to ft h ew i d e l ya p p l i c a t i o i lo fe m b e d d e ds y s t e mis t h es o f t w a r et h a tm a k e t h e mw o r k b e c a u s ei t se x c e l l e n tk e r n e ld e s i g na n da p p l i c a t i o np e r f o r m a n c e , l i f l u xi sr u n n i n go nm a n yk i n d so fh a r d w a r e l i n u xa l s oo w n so t h e rm e r i t ss u c h a si t sf r e e s o u r c ec o d e ,i t si n h e r i tn e t w o r k i n gf u n c t i o n sa n di t s m o d u l a r i z a t i o nd e s i g ni nk e r n e l t h e r e f o r el i n u xi sv e r ys u i t a b l et ob et h e o p e r a t es y s t e mo fe m b e d d e ds y s t e m b a s e do no u rf u n d a m e n t a le x p e r i m e n t s 。a f te m b e d d e dl i n u xs y s t e mo n a d i s k o n c h i pw h o s ec a p a c i t yi s8 mr u nb yo u rn e wc o m p i l e dr e dh a tl i n u x6 2 i sp r e s e n t e di nt h i sa r t i c l e as i m p l er o u t e risa l s oc o n f i g u r e do nt h is e m b e d d e dl i n u xs y s t e m t h e n ,i no n ec h a p t e ro ft h i sa r t i c i ead e t a i l e d a n a l y s i sa b o u ts o m ea p p i c a t i o nh o t s p o t ss u c ha ss y s t e md r i v e r ,f i l es y s t e m a n di pm a s q u e r a d ei sa l s om a d e a tl a s t as u m - u pa n dp r o s p e c to fs o m eo t h e r u s a g eo fl i n u xe m b e d d e ds y s t e ma r eg i v e n 2 浙江大学硕士学位论文 第一章理论背景 第一节问题的提出 一、路由器的分类分析 随着因特网的飞速发展,各种网络设备也逐渐成熟,功能日益强大。路由器就 是最常见的网络设备之一。它将全球因特网的各子网联系起来,使人觉得因特网是 一个单一的网络 1 】。路由器的主要作用是将从一组输入链路中收到的包转发给一组 输出链路。同时,路由器应该能够处理异构网络、调度不同的服务要求、使用分布 式算法产生一致化的路由表。此外,由于人们对因特网带宽的要求永无止境,路由 器也自然应具有高带宽,所有这些因素决定了路由器的复杂性,所以,路由器被称 为“网络的巨型机”。 路由器按照连接的网络级别可以分为接入网路由器,企业网或校园网路由器和 骨干网路由器三大类。接入网络使得家庭和小型企业可以连接到某个因特网服务提 供商( i s p ) 。企业网中的路由器连接一个校园或企业内成千上万的计算机。骨干网 上的路由器终端系统通常是不能直接访问的,它们连接长距离骨干网上的1 5 p 和企 业网络。企业级路由器不但要求端口数目多、价格低廉,而且要求配置起来简单方 便,并提供0 0 s 。 1 目前,大型的企业级路由器主要是采用硬路由器。这类路由器产品性能好,功 能强大,多业务支持,工作稳定,但是价格昂贵,开发周期长,配置复杂,且灵活 性不高,每增加新的功能就要向原产品的厂家购买新的模块。 小型的企业级路由器有的采用的是软路由器。软路由是在一台连接多个网络的 计算机上运行路由软件,以实现网络间路由的一种方法。利用软路由方式,勿需购 置价格昂贵的专用路由设备,只需利用普通微机,便可实现路由功能。在一台运行 w i n d o w s n t 4 0 的p c 机上,增插几块n t 系统支持的网卡,运行m i c r o s o f t 公司的 r o u t i n ga n dr e m o t ea c c e s ss e r v e r ( r a s ) 软件,即可构建具有路由功能的软路由器 【2 】。但是这种路由器工作不稳定。运行受操作系统的影响大,功能不强大而且速度 慢。 二、问题的提出 浙江大学硕士学位论文 在中小型企业网的环境下,每个子网的计算机数目不是很大,对实时性和多业 务支持的要求也不是非常严格。网络结构不复杂,但是要求价格便宜,稳定性高, 操作简单,安全性好。 为此,我们经过多方研究,比较,选择了嵌入式l i n u x 这一新兴的,充满活力 的系统来做路由器。因为路由转发是l i n u x 内核支持的功能之一,配置方便,管理 简单,嵌入式l i n u x 系统价格上有无可比拟的优势,而且源代码开放,升级方便, l i n u x 系统的性能尤其是网络性能卓著,稳定性好,安全性高。传统的路由器都是 使用专用的r t o s ( r e a lt i m eo p e r a t es y s t e m 实时操作系统) 开发的,在开发t c p 1 p 、 防火墙协议以及w e bs e r v e r 协议时都只能自己去实现,产品上市的周期非常长,对 新协议、新接口的支持以及设备升级的周期也很长,因为专用的r t o s 有关内容都 要自己开发:而对于l i n u x 来说,这些都可以直接从网上获得代码,针对应用系统 的要求作必要的改动即可,对新协议、新接口的支持也是如此,无需要自己从头去 开发。这就使嵌入式l i n u x 在开发成本上有了使用专用操作系统无法匹及的优势。 在下表中,我们将分别对利用v x w o r k s 专用操作系统和嵌入式l i n u x 操作系 统来开发路由器作详细地比较和分析。 恒用专用操作系统性用嵌入式l i n u x 操作系统 产品上市时间长达9 个月i 仅需3 个月 投入开发的人力孥达6 人以上只需3 人 产品的附加成本每台路由器需要交一份版没有任何附加费 | 权费,成本大大提高 产品功能的丰富性卜一般,增加功能要象厂家手昌,可利用自由软件的大量 购买模块 公开代码移植 网络特性另外购买网络模块,如纽费获得自由软件代码,只需 9 s p r 动态路由协议库,移植,由于来自桌面l i n u x 平 i 很昂贵;若自行开发则稳| 台,继承性好、稳定性好、开 窿性较差且开发时间长泼时间短 产品升级以及对新网l 厂家反映慢,支持慢,不剐用全世界l i n u x 自由软件开 络协议的支持l 一定能支持新特性陵团体的力量,支持迅速 开发路由器情况表 3 浙江大学硕士学位论文 艾蒙( m s y s t e m s ) 公司的d i s k o n c h i p 系列产品,是世界上最早的单片固态快闪磁 盘( f l a s hd i s k ) ,使用的t r u e f f s 技术能够使d i s k o n c h i p 完全模拟硬盘,进行读写 操作,非常适合做嵌入式系统,并且价格便宜。 下一步工作的难点就是嵌入式平台的搭建。主要困难如下: 1 对d i s k o n c h i p 芯片的性能构造不了解。网上用d i s k o n c h i p 措建嵌入式l i n u x 的 资料贫乏。 2 文件系统的制作是一个难点,l i m l x 的文件系统包含的文件很多,比如,启动文件 都放在b o o t 目录下,配置文件都放在e t c 目录下,库文件都放在l i b 目录下,常用 程序都放在b i n 和s b i n 目录下,要分析这些文件的作用和联系,以确定制作的文件 系统应该包含哪些内容。 3 我们使用的d i s k o n c h i p 芯片的容量只有8 m ,而普通安装的l i n u x 文件系统大小 都在3 0 0 m 毗上,所以压缩文件系统也是一个难点。 浙江大学硕士学位论文 第二节嵌入式系统概述及现状 一、嵌入式系统的发展现状 嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中的系统。简单 的说就是系统的应用软件和系统的硬件一体化,类似于b i o s 的工作方式,具有软 件代码小,高度自动化,响应速度快等特点。特别适合于要求实时性和多任务的体 系。 嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外 部设备中就包含了5 1 0 个嵌入式微处理器,键盘、鼠标、软驱、硬盘、显示卡、显 示器、m o d e m 、网卡、声卡、打印机、扫描仪、数字相机、u s b 集线器等均是由嵌 入式处理器控制的。 嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体 应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分 散、不断创新的知识集成系统。 嵌入式系统的核心部件是各种类型的嵌入式处理器,目前据不完全统计,全世 界嵌入式处理器的品种总量已经超过1 0 0 0 多种,流行体系结构有3 0 几个系列,其 中8 0 5 l 体系的占有多半。生产8 0 5 l 单片机的半导体厂家有2 0 多个,共3 5 0 多种衍 生产品,仅p h i l i p s 就有近1 0 0 种。现在几乎每个半导体制造商都生产嵌入式处理器, 越来越多的公司有自己的处理器设计部门。嵌入式处理器的寻址空间一般从6 4 k b 到1 6 m b ,处理速度从0 1m i p s 到2 0 0 0m i p s ,常用封装从8 个引脚到1 4 4 个引脚。 今天嵌入式系统带来的工业年产值已超过了1 万亿美元,1 9 9 7 年来自美国嵌入 式系统大会( e m b e d d e ds y s t e mc o n f e r e n c e ) 的报告指出,未来5 年仅基于嵌入式计算 机系统的全数字电视产品,就将在美国产生一个每年1 5 0 0 亿美元的新市场。 美国汽车大王福特公司的高级经理也曾宣称,“福特出售的计算能力已超过 了i b m ”由此可以想见嵌入式计算机工业的规模和广度。1 9 9 8 年1 1 月在美国加州 圣何塞举行的嵌入式系统大会上,基于r t o s 的e m b e d d e di n t e m e t 成为一个技术新 热点。 美国著名未来学家尼葛洛庞帝9 9 年1 月访华时预言,4 5 年后嵌入式智能( 电 脑) 工具将是p c 和因特网之后最伟大的发明。我国著名嵌入式系统专家沈绪榜院士 9 8 年1 1 月在武汉全国第1 1 次微机学术交流会上发表的计算机的发展与技术一 浙江大学硕士学位论文 文中,对未来1 0 年以嵌入式芯片为基础的计算机工业进行了科学的阐述和展望。 二、嵌入式系统工业的特点和要求 1 嵌入式系统工业是不可垄断的高度分散的工业 从某种意义上来说,通用计算机行业的技术是垄断的。占整个计算机行业9 0 的p c 产业,8 0 采用i n t e l 的8 x 8 6 体系结构,芯片基本上出自i n t e l ,a m d ,c y r i x 等几家公司。在几乎每台计算机必备的操作系统和文字处理器方面,m i c r o s o f t 的 w i n d o w s 及w o r d 占8 0 - 9 0 ,凭借操作系统还可以搭配其它应用程序。因此当代的 通用计算机工业的基础被认为是由w i n t e l ( m i c r o s o f t 和i n t e l9 0 年代初建立的联盟) 垄断的工业。 嵌入式系统则不同,它是一个分散的工业,充满了竞争、机遇与创新,没有哪 一个系列的处理器和操作系统能够垄断全部市场。即便在体系结构上存在着主流, 但各不相同的应用领域决定了不可能有少数公司、少数产品垄断全部市场。因此嵌 入式系统领域的产品和技术,必然是高度分散的,留给各个行业的中小规模高技术 公司的创新余地很大。另外,社会上的各个应用领域是在不断向前发展的,要求其 中的嵌入式处理器核心也同步发展,这也构成了推动嵌入式工业发展的强大动力。 嵌入式系统工业的基础是以应用为中心的“芯片”设计和面向应用的软件产品 开发。 2 嵌入式系统具有的产品特征 嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用自行发展, 则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电 磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。 和通用计算机不同,嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、 去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用对处理 器的选择面前更具有竞争力。嵌入式处理器要针对用户的具体需求,对芯片配置进 行裁剪和添加才能达到理想的性能;但同时还受用户订货量的制约。 因此不同的处理器面向的用户是不一样的,可能是一般用户,行业用户或单一 用户。 嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步 进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。嵌入式系统中的 9 浙江大学硕士学位论文 软件,一般都固化在只读存储器中,而不是以磁盘为载体,可以随意更换,所以嵌 入式系统的应用软件生命周期也和嵌入式产品一样长。另外,各个行业的应用系统 和产品,和通用计算机软件不同,很少发生突然性的跳跃,嵌入式系统中的软件也 因此更强调可继承性和技术衔接性,发展比较稳定。 嵌入式处理器的发展也体现出稳定性,一个体系一般要存在8 - 1 0 年的时间。一 个体系结构及其相关的片上外设、开发工具、库函数、嵌入式应用产品是一套复杂 的知识系统,用户和半导体厂商都不会轻易地放弃一种处理器。 3 嵌入式系统软件的特征 嵌入式处理器的应用软件是实现嵌入式系统功能的关键,对嵌入式处理器系统 软件和应用软件的要求也和通用计算机有所不同。 ( 1 ) 软件要求固态化存储 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯 片或单片机本身中,而不是存贮于磁盘等载体中。 ( 2 ) 软件代码高质量、高可靠性 尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大 多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和 编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。 ( 3 ) 系统软件c o s ) 的高实时性是基本要求 在多任务嵌入式系统中对重要性各不相同的任务进行统筹兼顾的合理调度是 保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的, 这种任务调度只能由优化编写的系统软件来完成,因此系统软件的高实时性是基本 要求。 ( 4 ) 多任务操作系统是知识集成的平台和走向工业标准化道路的基础 4 嵌入式系统开发需要开发工具和环境 通用计算机具有完善的人机接口界面,在上面增加一些开发应用程序和环境即 可进行对自身的开发。而嵌入式系统本身不具备自举开发能力,即使设计完成以后 用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能 进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分 析仪、混合信号示波器等。 5 嵌入式系统软件需要r t o s 开发平台 1 0 浙江大学硕士学位论文 通用计算机具有完善的操作系统和应用程序接口( a p i ) ,是计算机基本组成不可 分离的一部分,应用程序的开发以及完成后的软件都在o s 平台上面运行,但一般 不是实时的。嵌入式系统则不同,应用程序可以没有操作系统直接在芯片上运行; 但是为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用 户必须自行选配r t o s 开发平台,这样才能保证程序执行的实时性、可靠性,并减 少开发时间,保障软件质量。 4 浙江大学硕士学位论文 第三节嵌入式l i n u x 系统分析 l i n u x 最初是芬兰一个大学生l i n u st o a i d s 开发的一个操作系统。之后他把这 个操作系统的源代码公开,然后有成千上万的训练有素的程序员利用自己的业余时 间为l i n u x 系统创建了许多重要的系统组件并把l i n u x 系统与各种硬件平台进行连 接。现在按照l i n u x 开发者的说法,l i n u x 已经是一个遵循p o s i x 标准的免费操作 系统,具有b s d 和s y s v 的扩展特性。 一、l i n u x 的工作机制 进程管理 l i n u x 系统是分时多用户系统,它具有多进程系统的特点,c p u 按时间片分配 给各个进程使用,每个进程都有自己的运行环境以使得在c p u 做进程切换时保存该 进程已运行了一半的状态。l i n u x 会跟踪进程本身和它使用的系统资源,这样,就 可以公平的管理系统中的进程。 内存管理 l i n u x 能够克服物理内存的局限,使用户进程在透明的方式下,拥有比实际物 理内存大的多的内存。其策略之一就是使用虚拟内存机制。l i n u x 成功的实现了以 虚拟内存为核心的内存管理策略,强大的分页机制,公平的交换方式各类有效的 高速缓存。以及以页保护为主的保护措施等等。 但是在嵌入式l i n u x 中,并不需要这种强大的功能。因为,页面换入换出的这 种机制会使系统的实时性大大降低。这对小巧的嵌入式系统来说,是一大缺点。 然而,通常需要在l i n u x 中保存虚拟内存代码,因为将它清除很费事。而且还 有另外一个原因是它支持共享文本,这样就可以使许多程序共享一个软件。没有这 个,每一个程序都要有它自己的库。虚拟内存的调入功能可以被关掉,只要将交换 空间的大小设置为零。 文件系统的管理 l i n u x 系统启动时,需要首先装入“根”文件系统,然后根据e t u f s m b 中的指 定逐个建立文件系统。当装入一个文件系统时,应首先向系统核心注册该系统及其 浙江大学硕士学位论文 类型。当卸载一个文件系统时,应向核心申请注销该文件系统及类型。文件系统的 安装或卸载反应在以v f s m n t l i s t 为链头,v f s m n t t a i l 为链尾,以v f s m o u n t 为节点的单 向链表中。 网络设备的管理 为了简化网络环境中物理网络设备的多样性,l i n u x 对所有的物理设备进行了 抽象并定义了一个统一的概念,称之为接口( i n t e r f a c e ) 。所有对网络硬件的访问都是 通过接口进行的,接口为所有类型的硬件提供了一个一致化的操作集合来处理基本 数据的发送和接收。l i n u x 内核在启动时,通过网络设备驱动程序,注册系统中可 用的网络设备。设备用标准的、支持网络的机制把收到的数据转发到相应的网络层 【5 】。 二、l i n u x 的特点 强大的网络功能。 l i n u x 操作系统最突出的是网络部分,基本上所有的网络协议和网络接口都可 以在l i n u x 上找到,l i n u x 内核比标准的u n i x 能更加高效地处理网络协议,系统的 网络吞吐性能非常好,这也是为什么l i n u x 在网络服务器市场上占据越来越大市场 份额的一个原因。 提供全部源代码。 l i n u x 最伟大的一个特性就是它的全部源代码是免费公开的,包括整个系统核 心,所有的驱动程序,开发工具包以及所有的应用程序。提供源代码的其中一大好 处就是:排错变得容易。固然公布源代码之后寻找系统漏洞更加容易,但是同样的 弥补系统的漏洞会一样容易,因而系统的健壮性其实要强于大多数的商业操作系统。 这也使使用l i n u x 的用户大大节省了开发成本并且维护自己的系统更加方便, 及时,现在l i n u x 的官方网站w w w k e r n e l o r g 一平均每三天就升级一次内核。 微内核。 我们编译好的内核只有5 0 0 多k 字节,所以完全可以把l i n u x 内核和简单的文 件系统放在一张软盘上,启动一台机器。也可以利用l i n u x 实现从网络启动,实现 网络无盘图形工作站。这一点使l i n u x 非常适合做嵌入式开发的操作系统。 多任务。 浙江大学硕士学位论文 多任务指的是计算机在同一时间内运行多个应用程序的能力。例如用户可以一 边编译系统核心一边编辑另外一个文件。这对于用户最大限度的利用计算机资源是 很有好处的。l i n u x 也是一个多任务系统,l i n u x 允许同时创建的进程数为5 1 2 个。 【5 多用户。 多用户指的是多个用户在同一时间内使用一台机器。而且l i n u x 不象某些操作 系统那样有l i c e n s e s 的限制,在实际应用中,很多大学的b b s 服务器使用的就是 l i n u x ,一个普通的b b s 站使用操作系统为l i n u x 的普通微机,同时上线的人数能 达到几百个。 多平台。 最新的l i n u x 内核支持i n t e lx 8 6 、m o t o r o l a i b mp o w e r p c 、c o m p a q ( d e c ) a l p h a 、 i a6 4 、s 3 9 0 、s u p e r h 等多种微处理器体系结构。 三、l i n u x 做嵌入式操作系统的优势 随着微处理器的产生,价格低廉、结构小巧的c p u 和外设连接提供了稳定可靠 的硬件架构,那么限制嵌入式系统发展的瓶颈就突出表现在了软件方面。尽管从八 十年代末开始,陆续出现了一些嵌入式操作系统,比较著名的有v x w o r k 、p s o s 、 n e c u l e u s 和w i n d o w sc e 。但这些专用操作系统都是商业化产品,其高昂的价格使 许多低端产品的小公司望而却步:而且,源代码封闭性也大大限制了开发者的积极 性。另外,结合国内实情,当前我国对自主操作系统的大力支持,也为源码开放的 l i n u x 的推广提供的广阔的发展前景。还有,对上层应用开发者而言,嵌入式系统 需要的是一套高度简练、界面友善、质量可靠、应用广泛、易开发、多任务,并且 价格低廉的操作系统。在不久的将来,从冰箱到收音机都会内置处理器。因为l i n u x 的开放性,许多人认为l i n u x 非常适合多数i n t e m e t 设备。他们认为l i n u x 可以支持 不同的设备,支持不同的配置。l i n u x 对厂商不偏不倚而且成本极低,能够很快成 为用于各种设备的操作系统。如今,业界已经达成共识:即嵌入式i i n u x 是大势所 趋,其巨大的市场潜力与酝酿的无限商机必然会吸引众多的厂商进入这一领域。【6 嵌入式l i n u x 由于代码开放性以及强大的网络功能,在中低端的嵌入式网络设 备中应用起来,比起p s o s + v x w o r k s 等专用系统有许多优势,l i n u x 甚至支持蓝牙 技术v x w o r k s 对于新技术的支持远没有l i n u x 那么迅速:从我们开发路由器卡可 浙江大学硕士学位论文 知:从产品上市时间到产品的功能不断扩充、开发人力的投入都验证了使用嵌入式 l i n u x 作为操作系统平台的优势。如果是用v x w o r k s 作为平台来做就相当困难,一 系列的防火墙协议以及w e bs e r v e r 协议、t c p i p 整个体系结构、拨号协议等等,不 是自己开发就是要买v x w o r k s 的编译好的库( 不公开源代码的) ,价格也比较昂贵。 下表将专用嵌入式实用操作系统与嵌入式l i n u x 作了详细的分析和比较。 3 】 专用嵌入式实时操作系统与嵌入式l i n u x 的比较 专用嵌入式实时操作系统嵌入式l i n u x 操作系统 版权费! 每生产一件产品需交纳一份版权费 免费 购买费用队民币数十万元 免费 技术支持由开发商独家提供有限的技术支持 全世界的自由软件开发者提供支持 网络特性另加人民币数十万购买 免费而且性能优异 软件移植! 难,因为是封闭系统易,代码开放,有许多应用软件支持 应用产品开长,因为可参考的代码有限随,新产品上市迅速,因为有许多公开 发周期的代码可以参考和移植 从技术、成本、安全还是兼容性的角度,l i n u x 都是嵌入式操作系统的最佳选 择。【7 1 四、嵌入式l i n u x 的三个基本元素 一个小型的嵌入式l i n u ) ( 系统只需要下面三个基本元素: 引导工具 l i n u x 微内核,由内存管理、进程管理和事务处理构成 初始化进程 如果要在上面开发一些应用且继续保持小型化,还得加上: 硬件驱动程序 提供所需功能的一个或更多应用程序。 再增加功能,或许需要这些 一个文件系统( 也许在r o m 或r a m 中) 浙江大学硕士学位论文 t c p i p 网络堆栈 存储半过渡数据和交换用的磁盘。 8 五、嵌入式l i n u x 内核主要支持功能 嵌入式l i n u x 基本内核提供: 处理器支持; 内存管理: 进程管理: 支持s y s t e m v i p c : 支持e l f b i n a r yl i b r a r y : r a m d i s k 支持: e x t 2 文件系统支持: 嵌入式l i n u x 内核扩展提供以下功能支持: 模块支持: 网络支持: 。m i s cb i n a r yl i b r a r y 支持: 能源管理: 支持t c p i p 协议; 支持一种以上的文件系统; 提供网络、串口等设备驱动程序 1 6 浙江大学硕士学位论文 第四节本论文的基本内容 本论文后面的章节主要内容是: 第二章路由器原理及l i n u x 的路由策略分析讲述了路由器的工作原理,i p 伪 装技术的原理,分析了l i n u x 的路由策略 第三章硬件描述描述了系统的硬件环境。包括嵌入式主机板和d i s k o n c h i p 芯 片的物理描述和参数。 第四章嵌入式l i n u x 平台的搭建讲述了在d i s k o n c h i p 芯片上搭建嵌入式 l i n u x 系统的具体实现方法和步骤,重点是内核的编译,d i s k o n c h i p 的启动方法和 文件系统的创建。 第五章基于嵌入式l i n u x 的路由器的实现给出了一个嵌入式l i n u x 网络方面 的应用,简单路由器的实现。 结束语总结了本论文的内容,指出了不足,并且提出了嵌入式l i n u x 的其他 应用。 本章小结 这一章分析了本论文要解决的问题,介绍了本论文的理论基础。阐述了嵌入式系统 的发展现状和与l i n u x 系统结合的优点。并且概述了本论文的主要内容。 浙江大学硕士学位论文 第二章路由技术及l i n u x 的路由策略分析 第一节路由器原理及发展趋势 1 9 8 4 年,l e o n a r db o s a c k 和s a n d yl e m e r 夫妇为解决美国斯坦福大学校园网中 计算机系统之间相互通信的问题,发明了路由器( r o u t e r ) 。 一、什么是路由技术? 路由技术就是数据包从一台主机到另一台主机的寻址过程技术 9 】。路由器是一 种典型的网络层设备,在两个局域网之间接帧传输数据,在o s i r m 之中被称之 为中介系统,完成网络层中继或第三层中继的任务。路由器负责在两个局域网的网 络层间接帧传输数据,转发帧时需要改变帧中的地址。【1 0 二、原理 路由器( r o u t e r ) 用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个 单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器 来完成。因此,路由器具有判断网络地址和选择路径的功能,它能在多网络互联环 境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网, 路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。它不关心各子 网使用的硬件设备,但要求运行与网络层协议相一致的软件。 一般说来,异种网络互联与多个子网互联都应采用路由器来完成。路由器的主 要工作就是为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地 传送到目的站点。由此可见,选择最佳路径的策略即路由算法是路由器的关键所在。 为了完成这项工作,在路由器中保存着各种传输路径的相关数据一路由表 ( r o u t i n g t a b l e ) ,供路由选择时使用。路由表中保存着子网的标志信息、网上路由 器的个数和下一个路由器的名字等内容。路由表可以是由系统管理员固定设置好的, 也可以由系统动态修改,可以由路由器自动调整,也可以由主机控制。 静态路由表 由系统管理员事先设置好固定的路由表称之为静态( s t a t i c ) 路由表,一般是在 系统安装时就根据网络的配置情况预先设定的,它不会随未来网络结构的改变而改 浙江大学硕士学位论文 变,当网络结构的改变时需管理员手工改动相应的表项。 动态路由表 动态( d y n a m i c ) 路由表是路由器根据网络系统的运行情况而自动调整的路由 表。路由器根据路由选择协议( r o u t i n g p r o t o c 0 1 ) 提供的功能,自动学习和记忆网 络运行情况,在需要时自动计算数据传输的最佳路径。 动态路由的基本原理 因特网是个庞大的系统,上面跑的网络结构复杂,而且拓扑结构也在随时改变, 这样在某些复杂的范围里我们的静态配置就不一定能获得最佳的寻路路径了。而且 一旦网络结构发生改变,我们手动的静态配置也往往无法及时跟着改变。在这个背 景下,产生了动态路由配置的概念,也就是动态路由器。 动态路由器上的路由表项是通过相互连接的路由器之间交换彼此信息,然后按 照一定的算法优化出来的,而这些路由信息是在一定时间间隙里不断更新,以适应 不断变化的网络,以随时获得最优的寻路效果。为了实现p 分组的高效寻路,i e t f 制定了多种寻路协议。其中用于自治系统( a s :a u t o n o m o u ss y s t e m ) 内部网关协议 有开放式最短路径优先( o s p f :o p e ns h o n e s tp a t hf i r s t ) 协议和寻路信息协议 ( r i p :r o u t i n gi n f o r m m i o np r o t o c 0 1 ) 。所谓自治系统是指在同一实体( 如学校、企业或 i s p ) 管理下的主机、路由器及其他网络设各的集合。还有用于自治域系统之间的外 部网络路由协议b g p 一4 等。 运行这些路由协议的软件就是我们通常说的路由软件,l i n u x 下常见的路由软 件有g a t e d 和z e b r a ,。前者既有g p l 版本的发行,又有收费的版本;而后者则是日 本某组织开发的完全g p l 的高效的路由软件。l i n u x 的发行里面一般都缺省就有 g a t e d 这个软件。【1 0 1 l 】 三、路由器必须具备的基本条件: 两个或两个以上的接口; 协议至少实现到网络层: 至少支持两种以上的子网协议 具有存储、转发、寻径功能: 一组路由协议。 1 浙江大学硕士学位论文 四、现代路由技术的要求 随着i n t e m e t 的发展,新业务不断出现,网络数量和规模不断增长,给路由技术 提出了新的要求。 1 路由技术和交换技术相互结合 在过去的2 0 多年中,路由技术和交换技术都得到了充分的发展。但随着网络 流量的高速增长,路由器的处理速度低下以及交换机无法适应众多新业务等问题也 日益暴露出来。在这种情况下,多种多层交换技术被提出。但无论是c i s c o 的标签 交换,还是n o k i a i p s i l o n 的i ps w i t c h 技术,其基本实现方法均是将i p 层的智能 路由能力与第二层的快速交换能力融合在一起。无论采用哪一种交换技术,都离不 开路由技术。离不开现有的路由协议,只是与第二层交换功能结合得更为紧密。 2 支持c i d r ( 无类域问路由) 目前的i p 地址总长度为3 2 b i t ,总共能提供2 1 0 万个网络号,3 7 亿个主机地址。 但随着i n t e m e t 的迅猛发展,局域网数量和主机数量急剧增长,地址耗尽问题迫在 眉睫。同时随着网络数量的增长,路由表表项增长过快。因为从路由器的观点来看, i p 地址空间是一个由网络号和主机号组成的两级结构,路由表中不必包含所有主机 的地址信息,但必须知道所有的网络。如果有5 0 万个c 类网络地址,则i n t e r n e t 上的每个主干路由器都要保存一个有5 0 万个表项的路由列表,这将导致与路由表管 理相关的算法复杂度会超线性地增长。而c i d r 以可变长分块的方式分配所剩的c 类网络地址,将几个连续的c 类网络地址压缩为一个表项,这可以缓解一下地址耗 尽和路由表表项增长过快问题的解决,也就要求路由协议支持c i d r 方案。 3 支持组播传送 通过i n t e r n e t 向小组内的每个成员发送消息的事件时有发生,尤其在多媒体应 用方面。如果组的规模较小它可以通过点到点的方式向其他成员发送消息:如果 组太大,这种策略会造成带宽的极大浪费。组播( 点到多点) 方式仅在必要的时候 才复制数据分组这使网络负载大大减少。另一方面采用支持组播的路由协议还 需允许进行资源发现。为了支持组播传送能力,需要开发相应的路由算法和路由协 议。 浙江大学硕士学位论文 4 网络攻击给路由安全提出了要求 最初的计算机网络应用范围狭小,主要是针对科研人员和公司职员而言,所以 在安全性问题上并未给予足够的重视。随着越来越多的用户开始通过网络办理各项 业务,路由信息被攻击和篡改事件屡见不鲜,路由的安全性己成为一个不容忽视的 大问题。这就要求路由协议支持一定的安全机制,如数字签名和m d 5 等。 五、未来发展 1 i p v 6 尽管采用c i d r 技术缓解了i p v 4 所面临的问题,但i p v 4 的诸多弊端是它自身 所不能解决的。为了摆脱i p v 4 所固有的症结,需要采用新版本的网络协议i p v 6 。 下个世纪初i p v 6 将逐步地取代i p v 4 ,而这将带来一系列问题。r f c 2 0 8 0 中描述了 面向i p v 6 的r i p i p n g ,该协议在r i p - 1 和r i p 一2 基础上做了较小的改动,使 之适用于i p v 6 的环境。 2 增强组播路由 支持组播的算法主要有扩散式( f l o o d ) 、生成树( s p a n n i n g t r e e ) 、反向路径转发 ( r e v e r s e - p a t hf o r w a r d i n g ) 、s t e i n e r 树、修剪反向路径广播( t r u n c a t e dr e v e r s ep a t h b r o a d c a s t i n g ) 和有核树( c o r e b a s e d t r e e s ) 。支持组播的路由协议主要有d v m r p , m o s p f 和p i m 。d v m r p 是距离向量组播路由协议的缩写,它源于r i p ,在r f c l 0 5 7 中有详尽的描述:r f c l 5 8 4 中描述了支持组播路由的m o s p f ,它在o s p f 链路状 态数据库的帮助下建立自己的组播传送树:p i m ( 协议无关组播) 是由i d m r ( 域 间组播路由) 工作组提出,r f c 2 1 1 7 中提出了p i m 的稀疏形式。支持组播的m b o n e ( 组播主干网) 实验网于1 9 9 2 年开通,并在随后的几年得到了迅速发展。 3 可移动i p 随着可移动计算机和可移动网络的出现,移动用户在不断地增长。同时这也带 来了一个有挑战性的课题:考虑可移动i p 。为此,1 e t f 专门成立了移动i p 小组, 处理可移动i p 的相关问题。可移动i p 路由需考虑以下问题:一个移动的主机必须 能持续通信,并使用同一p 地址;一个移动的主机应该能与现有的其它主机和路由 器相互协作:考虑移动主机的安全性问题:支持移动主机的组播处理能力。到现在, 有关移动i p 的解决方案多以草稿的形式出现在r f c 中。随着移动用户的增加,有 关移动i p 方面的研究将会越广泛。【1 2 】 浙江大学硕士学位论文 第二节l i n u x 中路由功能实现原理 l i n u x 中有两个i p 路由数据库,最重要的是转发信息数据库旺o r w a r d i n g i n f o m l a t i o nd a t a b a s e l 。这个数据库是己知i p 目标和它们最佳路由的详尽的列表。 另一个小一些,更快的数据库,路由缓存( r o u t ec a c h e ) 用于快速查找i p 目标的路由。 它只包括最常访问的路由,它的内容是从转发信息数据库中得来的。 不论何时查找一个i p 路由的时候,都首先在路由缓存中检查匹配的路由。如 果在路由缓存中没有匹配的路由,才查找转发信息数据库。如果这里也找不到路由, i p 报文发送会失败,并通知应用程序。如果路由在转发信息数据库而不在路由缓存 中,就为这个路由产生一个新的条目并增加到路由缓存中。路由缓存是一个表( i pn h a s h,包括指向数据结构链的指针。链包括一个引用计数器_ t a b l e ) r t a b l er u b l e ( r e i r e n e ec o u n t ) ,一个使用计数器( u s a g ec o u n t ) 和上次使用的时间戳。每一次使用这 个路由的时候这个引用计数器就增加,显示利用这个路由的网络连接数目,当应用 程序停止使用这个路由的时候就减少。使用计数器每一次查找路由的时候就增加, 用来让这个条目链的r t a b l e 条目变老。路由缓存中所有条目的最后使用的时间戳用 于定期检查这个r t a b l e 是否太老。如果这个路由最近没有使用,它就从路由表中废 弃。如果路由保存在路由缓存中,它们就被排序让最常用的条目在h a s h 链的前 面。这意味着当查找路由的时候找到这些路由会更快。 转发信息数据库包含了当时从i p 的观点看待系统可用的路由。它是非常复杂 的数据结构,虽然它已经进行了合理有效的安排,但是它对于参考而言并不是一个 快速的数据库。特别是如果每一个传输的i p 报文都在这个数据库中查找目标会非 常慢。这也是为什么要有路由缓存:加速已经知道最佳路由的i p 报文的传送。路 由缓存从这个转发信息数据库得到,表示了它最常用的条目。 2 2 浙江大学硕士学位论文 第三节i p 伪装原理与配置( i pm a s q u e r a d e ) 一、i p 伪装的原理 i p 伪装技术允许用户扩展i p 地址,允许没有注册的i p 地址的计算机经由使用己 注册合法i p 的l i n u x 主机连接到互联网上。同时扩展i p 的计算机系统可以自由进出互 联网,它从表面上看起来就像只有这个

温馨提示

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

评论

0/150

提交评论