欢迎来到天天文库
浏览记录
ID:52934519
大小:461.25 KB
页数:14页
时间:2020-04-02
《深入剖解路由器技术.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、深入剖解路由器的心脏技术“”宽带上网已经不是什么新鲜事情,人们对相关的网络器件已经不再陌生,比如说常见的路由器。对于一般的网络用户,他们能知道怎样使用路由器来上网、玩游戏等就已经感到很满足了,通常情况下对路由器的深层技术很少去过问研究,但做为兴趣广泛的技术爱好者,对这方面的知识是非常感兴趣的。但限于各种条件的制约,这些爱好者都非开发者,很大程度上无法深入了解真正的技术实现过程以及相关的核心内幕。正是基于此点,笔者凭借自身的知识沉淀,尽最大努力为爱好技术的读者架设一坐能通向深层核心的桥梁,为大家揭开路由器的神
2、秘面纱,剖开其核心内脏。为使读者能清晰明白的理解掌握,笔者尽量将专业的技术内容转化为容易接受的知识讲解,其中可能有不足偏颇之处,还请大家多见谅。概述什么是路由器?互联网是依靠路由器连接起来的,路由器是互联网或者说IP网络的核心设备。宽带接入的不断增长,带动了路由器的需求不断增加。路由器究竟是什么样的技术产物?谈到路由器的开发,我们就不免要谈到嵌入式“”设备的开发,没错,通俗的说,路由器就是一种嵌入式产品。那么究竟什么是嵌入式设备呢? 其实就目前而言,嵌入式设备已经不断深入我们的日常生活方方面面。通俗的讲,
3、嵌入式设备是指具有计算机功能,但又不称为计算机的设备或器材,它几乎包括了我们周围的所有电器设备:PDA、手机、机顶盒、汽车、微波炉、电梯、安全系统、自动售货机、医疗仪器、立体音响、自动取款机等。 用较为专业的话来表述的话,嵌入式设备就是使用微处理器或微控制器芯片(MCU)加上外围电路再加上内部的程序部分来实现特定功能的嵌入设备。比如8位的单片机、32的ARM以及DSP芯片等都属于嵌入式核心芯片的范畴。8位MCU市场已逐步趋向稳定,32位MPU代表着嵌入式技术的发展方向,正在加速发展。在32位嵌入式微处理器
4、市场上,基于ARM内核的微处理器在市场上处于绝对的领导地位,因此追踪ARM技术的发展趋势显得尤为重要。 路由器的开发通常都是基于32位处理器的,就通常的中低端路由器而言,在开发的配置上有多种选择,比如有ARM9核心芯片+Wince操作系统、ARM7核心芯片+uClinux操作系统、DSP芯片+Vxworks操作系统等等各种各样的选择。本文针对常用的SOHO路由器来介绍,选择ARM7核心芯片+uClinux操作系统开发模式,以完整形象的实例为大家清晰讲解路由器的技术实现过程。 我们为什么以SOHO路由器为
5、介绍对象呢?什么是SOHO路由器?前很多家庭中有不止一台电脑,需要上网获取信息、收发邮件等。这些小型公司和家庭网络用户计算机的数目一般不多,网络结构不复杂。功能和带宽的要求不高。出于提高网络性能、共享有限IP地址或节省上网费用等原因,这些用户迫切需要具有较高性价比的小型路由器。我们把这种小型路由器称为SOHO路由器。目前市场上已经充斥了大量的这类低端路由器.由于ARM7系列芯片价格便宜,非常适合嵌入式系统使用。目前市场上的SOHO路由器大多采用ARM7系列处理器。不过由于技术的发展,ARM9系列的专用路由芯
6、片的路由器也逐渐普及。路由器宏观介绍 我们可以形象的把嵌入式设备的开发简单的理解成三层模式,最底层的是微控制器芯片加外围器件组成的硬件系统,比如我们介绍的开发小型SOHO路由器所使用的ARM7TDMI芯片等硬件环境,它是设备功能实现的硬件基础,要实现上层的应用肯定离不开最底层硬件的支持。中间层是操作系统,比如我们所选择的uClinux操作系统,它是衔接硬件部分和应用程序的过渡层,它既可以完成对底层硬件的基本操作,又能为上层应用程序提供运行环境支持。最上层自然就是应用程序层了,它是实现针对性应用的程序代码部
7、分,比如路由设置等功能程序部分。 那对与SOHO路由器来说,它当然也脱离不了这样的技术框架,它的更为具体的实现过程简单的汇总的话,莫过于如下内容: 首先先要知道SOHO实现的网络功能,典型路由器应该具备以下功能:• 支持PPPoE,固定IP上网;•DHCP动态主机配置协议;•网络地址转换(NAT)技术;• 根据TCP,UDP的端口号(portnumber),IP的(协议号)protocolnumber,对IP地址进行简单过滤的防火墙;•虚拟服务主机/端口映射(PortForwarding)技术;•
8、 支持一定数量的特殊应用程序; 然后针对于上边的功能要求,相应地要通过硬件和软件的构造来实现:硬件方面:1、要明确家用小型路由器(一个WAN接口,四个LAN接口)的硬件原理。2、实现硬件电路板设计,完成电路布线设计,并对元件焊接,通过硬件板的调试。 软件方面:1、在分析uClinux内核源代码的基础上,对uClinux操作系统的内核裁剪。2、完成BoaWeb服务器的配置,并对CGI脚本进行设计,完成动态网页的功
此文档下载收益归作者所有