基于ARM的嵌入式Web服务器设计(共16页).doc
《基于ARM的嵌入式Web服务器设计(共16页).doc》由会员分享,可在线阅读,更多相关《基于ARM的嵌入式Web服务器设计(共16页).doc(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 题目:基于ARM的嵌入式Web服务器设计与实现 学 号: 姓 名: 吴明川班 级: 专 业: 计算机科学与技术课程老师: 孔军二零一六年五月 摘 要随着计算机、网络通信和Internet 技术的飞速发展和不断进步,嵌入式系统在家庭和工业应用越来越广泛。如何将嵌入式系统和工业控制系统接入Internet,综合利用嵌入式系统资源,实现嵌入式系统的远程管理和控制,已成为倍受关注的研究课题,而实现嵌入式系统的网络化则成为嵌入式系统的发展趋势。网络通信时,应用程序使用C/S(客户/服务器)模式进行信息交互。传统的服务器程序一般运行在大型的拥有高级操作系统的服务器的计算机上,这
2、样服务器软件需要强大的硬件和系统软件支持。嵌入式网络服务器是利用嵌入式系统实现服务器的软件和硬件功能,是嵌入式技术和网络技术相结合的产物。与传统服务器相比,嵌入式Web服务器具有结构简单、体积小、可靠性强以及方便灵活等特点。这些让它具有很大的发展潜力。另一方面,嵌入式Web服务器与传统的web服务器相比,也受到一些限制。传统的Web服务器主要用于处理较大的客户量的同时并发访问,硬件方面有强大的处理器和内存支持,软件方面有商业数据库支持,而嵌入式Web服务器的处理能力和存储容量都有限,这就要求嵌入式Web服务器在设计过程中需要尽量合理利用资源。将嵌入式技术与Web 技术相结合,已成为目前嵌入式系
3、统的一个重要发展方向和必然趋势。利用源代码开放的uClinux 为操作系统平台,实现了以ARM微处理器为核心的嵌入式Web 服务器,在分析了嵌入式Web 服务器的体系结构后,给出了系统的硬件结构组成和软件设计。对Web 服务器的测试结果表明,该服务器运行稳定、控制方便,将在智能家居、远程数据采集、工业控制等领域有着广泛的应用前景。 关键词:网络通信;嵌入式系统;ARM处理器;uClinux;Boa服务器;专心-专注-专业引言 随着Internet 技术的飞速发展,导致许多领域的传统控制方式发生变革。这些领域的控制系统可以通过Web 服务器接入Internet,这样用户在世界任何一个地方都可以通
4、过Internet 获取Web 服务器提供的信息,进而实现系统的远程控制和管理。但以具有高运算处理能力和海量存储容量的工作站或PC机为硬件平台,以非实时操作系统为软件平台,运行着大型复杂程序的传统Web 服务器,并非在任何环境下都适用,尤其是对实时性要求比较高的领域,如工业控制、远程数据采集等。基于嵌入式系统的Web服务器的出现,为以上问题的解决开辟了一条新途径。1 发展背景 随着计算机技术的发展,嵌入式系统已成为计算机领域的一个重要组成部分。广义讲,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。所谓嵌入式设备,是指具有计算机功能,但又不称为计算机的设备或器材,几乎包括了我们周期的所有
5、设备:PDA、手机机顶盒、汽车、微波炉、电梯、安全系统、自动售货机、医疗仪器、自动取款机等。嵌入式系统可以通过各种无线形式(如WAP、BlueTooth等)和有线形式(TCP/IP、PPP等)的网络连接方式实现它们之间的相互连接,因此,在网络通信市场上极具生命力。现在人们对Internet应用的依赖程序日渐增加,也促进了嵌入式技术的增长。信息家电的发展也为嵌入式Internet技术提供空间,如面向Internet的信息冰箱。这种信息家电的特点就是价格低廉、软件功能强大、全面支持Internet访问、软件可通过网络升级、有效保护用户投资。 嵌入式Internet技术主要包括器技术、通信技术、计算
6、机技术和技术等。以前的设备系统一般是通过专用通信线中进行的,其通信介质、通信协议、相关软件和硬件都是专用的,而Internet技术的发展使嵌入式设备的远程控制和管理方式有了改变。不需要专用的通信线路,并且传输的信息不局局于数据信号,还有声音和图像。最重要的是其通信协议是标准且公开的。随着Web技术的发展,几乎改变了现在的信息表达形式,很多应用都是基于Web技术的。由于HTML语言的标准统一性,只要在嵌入式设备中有一个微型服务器,就可以使用任意一种Web浏览器接收和发送信息。所以如何设计这种特别Web服务器,如何在嵌入式设备中安装Web服务器,就成了嵌入式Web服务器的发展和研究方向。 对于嵌入
7、式Web服务器的研究和应用,其意义是重大的。它为我们管理、控制和监测各种各样设备提供了一个很好的途径。这种设备可以是具有有限内存资源的8位或16位系统,已足够提供一个用户界面,而且这种方式是基于Internet的。这种设备可以在世界任何一个地方,只要它连入Internet就能够控制它。1.1 课题的研究意义Internet的迅猛发展,传统的Client/server体系结构(客户机/服务器),渐渐的在某些方面显示出它的局限性,Browser/server结构(浏览器/服务器)的出现恰恰弥补了这种缺陷。B/S方式已成为一种时尚,大部分网络应用系统都是以这种B/S方式与网络用户交换信息。B/S的基
8、础是客户端要有一个浏览器程序,服务器端要有一个与之对应的Web服务器。显然,Web服务器在B/S方式下起着决定性的作用,因此,一般互联网站都采用功能强大的通用Web服务器。随着网络各个核心部分业务量的提高,其访问量和数据流量快速增长,处理能力和计算强度也相应增大,使得单一设备根本无法承担,而且许多企业级应用系统的应用请求具有突发性和紧急性的特点,当应用访问急剧上升时,容易造成网络瓶颈。解决这一问题的办法是采用多台嵌入式Web服务器为一个应用服务,集群负载均衡机制就是为解决多个网络设备之间实现合理的业务量分配而提出的。 1.2 论文研究内容嵌入式Web服务器是指将Web服务器引入到现场测试和控制
9、设备中,在相应的硬件平台和软件系统的支持下,使传统的测试和控制设备转变为具备了以TCP/IP为底层通信协议,Web技术为核心的基于互联网的网络测试和控制设备。EWS系统与传统的Web应用相比,简化了系统结构,将信息采集和信息发布都集成到现场的测控设备中。而有了标准的接口形式和通信协议,内嵌于设备的从Web服务器同样可以向任何接入它所在网络的合法用户提供统一的基于浏览器方式的操作和控制界面,浏览器成了设备的前端控制板。由于Web技术的开放性和独立平台特性,大大降低了软件系统和通信系统的设计、维护工作量,节省了人员培训费用等,提高了现场测试和控制设备的管理水平。本文设计的基于ARM的嵌入式Web服
10、务器,响应速度快,实时性强,用户通过浏览器中的表单向服务器发送控制信息,操作方便、快捷,经过适当修改,能够很好地适应智能家居等远程监控的需要。2 嵌入式Web服务器的软件构成嵌入式 Web 服务器主要解决的问题是通过 Internet 来进行远程访问和控制现场的设备,所以必须在嵌入式设备中配置 TCP/IP 协议和 Web 服务器 , 以解决网络互联问题。但是嵌入式服务器系统只需要使用其中的某些基本 的功能,也要减去一些使用不到有功能 ,以节省有限的嵌入式资源。TCP/IP 此外还要用到的软件资源有嵌入式实时操作系统 、HTTP 协议 ,同时带有 SMTP 和 SNMP 协议 ,使其具有网络管
11、理的简单功能 ,通过网络可以对接 入到 Internet 上的设备进行管理和控制。 2.1 CGI技术2.1.1 CGI概述由于传统的Web 服务器无法实现Web 数据库访问功能,CGI 技术充当了访问数据库的重要媒介。CGI 是使用应用相关软件增强Web 服务器的一种标准方法, 可以用任何语言书写。CGI 根据需求更新网页, 是一种公共网关接口。它通过客户提供给Web 服务器的各种信息, 由Web 服务器启动指定CGI 模块函数, 完成客户端与服务器端动态的交互, 从而实现静态HTML 网页无法实现的功能( 如表单查询、数据库查询等)。通常CGI 应用程序处于休眠状态, 通过使用一定的网络事
12、件触发回调函数来实现, 并显示动态页面。例如,Web 服务器收到一个URL 里面包含的网页请求时, 将执行结果返回给HTML 网页,CGI 可实现处理表格、数据库查询和电子邮件等操作。2.1.2CGI工作原理系统嵌入式Web服务器通过CGI程序来获取用户的请求、查询条件,使用HTML方式描述结果并直接回送到客户端的浏览器上,此过程中浏览器将用户输入的数据发送到Web服务器,Web服务器将数据使用STDIN(标准输入)送到CGI程序。在执行CGI程序后,会访问数据库的记录,最后使用STDOUT输出HTML形式的结果文件,经Web服务器送回浏览器显示给用户。使用CGI实现客户与服务器的交互分一下九
13、个标准步骤:Web客户(浏览器)通过URL与Web服务器相连;服务发送HTML(和别的组成请求页面的文件)给用户,一旦页面内容传完,这个连接自动断开;在客户方,HTML脚本提示用户做动作或输入,当用户响应后客户请求Web服务器建立一个新的连接;一旦建立连接,客户把用户输入的数据传送给Web服务器;Web服务器把这些信息和别的进程变量传给由HTML以URL形式提交的CGI程序;CGI程序根据输入作出相应的操作,产生对客户的响应(一般以一个HTML文档的形式),并将其传送给Web服务器;Web服务器把应答数据传送给客户,并关闭连接;图2.4 CGI工作原理其中CGI与表单之间的信息交互方法有两种模
14、式:“GET”和“POST”。选择哪一种模式取决于表单(FORM)的“METHOD”字段的设置,如果METHOD设定为GET,CGI程序从环境变量QUER_STRING中获取数据。为了解释数据和执行需要的动作,CGI程序必须要分析(处理)此字符串;如果METHOD设定为POST,数据会以STDIN,必须使用CONTENT_LENGTH值。在本设计中CGI程序采用的是POST方法。如果想从服务器获得数据并且不改变服务器上的数据时,应该选用GET方法;也有例外,当传输的数据很长时,选用POST方法较好;使用GET方式编写CGI程序会更加简单,但是POST方式则更加先进;当发送的数据将改变Web服务
15、器端的数据时,或者想给CGI程序传输大量数据(一般地,超过1024字节,这是URL的极限长度)时,应该选用POST方法。 3 嵌入式Web 服务器简述 嵌入式Web 服务器(Embedded Web Server)是指将Web 服务器嵌入到控制设备和现场测试中,借助于相关的软硬件平台系统,将传统嵌入式设备转变成了以TCP/IP 为底层通信协议和Web 技术为核心的网络测试及远程控制设备。嵌入式Web 服务器基于HTTP 协议运作,具有标准的接口形式和通信协议,所以它可以向接入其所在网络的用户提供统一的基于浏览器的控制界面和相关操作。这种技术因具有平台独立特性和开放性,在某种程度上降低了开发难度
16、,使通信系统和软件系统的设计维护工作更容易,提升了控制设备和现场测试的管理水平。如图1所示是典型的嵌入式Web服务器的系统模型:图1 典型的嵌入式Web服务器系统模型Internet可以提供多种网络服务,比如通过SMTP(简单邮件传输协议)收发邮件,通过FTP(文件传输协议)传输文件。Internet能得到如此大规模的流行,WWW(World Wide Web)技术居功至伟。可以说如果没有WWW和HTTP技术就不会有这么多人使用Internet,正是WWW技术把Internet的结构、服务和应用引上了一个新台阶。3.1 嵌入式Web 服务器的主要应用目前嵌入式Web 服务器主要用于设备管理和企
17、业应用程序网络扩展,它作为后台程序在运行嵌入式设备上,用户可以通过网络对设备进行配置、监测和控制,以保证设备正常而高效地运作。Web 接口可以让用户借助于Web 浏览器和网络来访问嵌入式设备。以这种方式对设备进行管理不仅可以监测和控制,而且可以根据设备的特点设计地更加人性化和智能化。Web 服务已成为支撑现代应用程序的技术和系统的核心组件,目前大部分企业用户都希望为他们的程序添加上基于Web 的用户接口。3.2 嵌入式Web 服务器的优点嵌入Web 服务器的优点主要体现在以下几个方面:1)它可以与Internet 连接,不再使用专用的线路,这样就具有了最大的普及范围;2)传输内容不局限于数据信
18、息,还有图像和声音等多媒体信息;3)通信协议(HTTP)独立于系统平台,而且是标准而且公开的;4)Web 页面使用的HTML 语言是统一的网页语言, 这使标准化界面与客户端的软硬件平台相互独立, 节省了客户端的开发工作;5)Web 架构能够减少了在设计系统时的工作量;6)存在大量的工具和函数库,减少了开发的工作量;7)嵌入式Web 服务器具有通用性,能够嵌入到任何设备当中。通过应用程序接口,服务器可以运行程序去实现高级功能,普通的监控方式达不到这样的效果。3.3 嵌入式Web 服务器实现原理Web 服务器监听来自客户端请求,并根据请求类型提供相对应的服务。它将Web 服务器引入到现场嵌入式设备
19、中,并将信息采集与发布都集成到现场的嵌入式设备中。在相应的软硬件平台支持下,利用标准的通信协议和接口形式,内嵌于嵌入式设备的Web 服务器就具备了向接入它所在网络的合法用户提供统一的基于浏览器方式的控制界面和操作,此时浏览器成了设备的前端控制板。当前在嵌入式应用领域,主要通过两种方式将嵌入式系统转变为嵌入式WebServer:1)通过网关服务器实现Internet 接入;2)直接通过TCP/IP 协议实现嵌入式设备的Internet 接入。4 嵌入式Web 服务器硬件整体结构 嵌入式Web 服务器的硬件系统包含了具有Web 通信能力的微处理器,它可以通过现场总线与应用系统相连,也可以与前端的应
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 嵌入式 Web 服务器 设计 16
限制150内