论文部分内容阅读
【摘 要】随着現代通工程技术的全面发展,通过技术创新的综合应用,结合新时期嵌入式Webserver技术的运用,更加有利于增强整个通信的整体发展。本文将围绕嵌入式Webserver技术进行讨论,对基于TCP/IP协议栈,利用8位单片机构建嵌入式WebServer的具体技术及相关实现方案进行深入分析,并从硬件与软件的角度进行概述,更好的实现嵌入式Webserver技术的综合效果。
【关键词】WebServer TCP/IP协议栈 套接字
在通信工程与技术的不断发展中,通过对8位微控制器的应用,在没有进行pc机或者高档单片机的情况下接入互联网,在不断创新的嵌入式技术中,通过嵌入式Webserver技术的不断创新,逐步取代PC位中心的应用系统,将成为全新的发展路径,并运用于智能家居系统、交通网路系统等各个领域,成为重要的技术模式。
一、嵌入式Webserver技术简介
(一)技术应用
Webserver是近年发展起来的新一代Web技术,它是由W3C设计和指定的,用来促进跨平台的程序间的通信。Webserver服务平台是一套标准的类型系统,基本的Webserver服务平台就是XML+HTTP,目前这些标准协议包括XML、UDDI、WSDL、SOAP、HTTP等。这些标准协议都是基于XML的,跨平台的、与编程语言无关的是XML的重要特质,建立在XML基础上的Webserver能够使运行在异种系统平台上的不同的应用程序进行信息交换和通信,提供了更大的空间交互。
对于外部使用者而言,Web服务是一种部署在Web上的对象/组件,使用者能发现并调用该对象/组件部署的服务 [9]。对于设计者来说,为优化设计,对系统进行模块化和可复用性设计,每一个业务逻辑都设计成一个独立的Web服务。同时,Web服务采取在HTTP标准协议基础上传输基于XML的SOAP协议用来表示数据和调用请求的数据,在绝大数情况下可轻松跨越企业防火墙。
Webserver体系结构是一种面向服务体系结构,即SOA架构(Service Oriented Architecture)。它通过WSDL(Web Service Description Language)来描述这个Webserver以及如何对它进行访问,使用SOAP(Simple Object Access Protocol)借由开放协议来传输数据,在商业注册中心UDDI(Universal Description Discovery and Integration)注册Webserver,从而使服务使用者可以在UDDI提供的目录服务上搜索到特定Webserver服务。Webserver的服务体系架构中有三个清晰的角色定义,角色之间的关系参见下图。
(二)XML
XML(Extensible Markup Language)作为可扩充的标记语言标准,被设计用来传输和存储数据,是基于文本的W3C规范的标记语言。它严格地定义了可移植地结构化数据,提供了灵活性、可扩展性和结构化的消息格式。XML具有以下六个特性优点:XML文件是可读的、可扩展性的、自描述的、异构系统间地信息互通的、保值的、更精确搜索的。
(三)WSDL描述语言
WSDL (Webserver Description Language)是一种基于IDL技术的服务描述语言。它用于描述Webserver以及如何访问它们。Webserver被WSDL语言描述定义为服务访问点或端口的集合。它本身是基于XML语法的,WSDL使用XML语言将Webserver描述为面向文档或面向过程信息的一组端点操作消息。信息是抽象的描述数据交换和端口类型支持的操作的抽象集合。一个可重用的绑定是针对特定端口的,由具体的协议和数据格式来规范,然后操作和消息绑定到具体的网络协议和消息格式。通过这种方式,WSDL描述了Web服务的公共接口,方便设计者描述和绑定服务。
二、嵌入式Webserver硬件平台
(一)MCU直接实现形式的WebServer的硬件平台
MCU以SX52BD100的运算速度最快,在100 MHz晶振驱动下指令执行速度可达100MIPS;RABBIT2000次之,51系列最慢。但是硬件成本恰好反之,用户可以根据不同的要求来配置MCU。以太网控制芯片可采用RealTek公司的RTL8019AS。该芯片是一款全双工以太网控制器,可以工作在Ethernet II和IEEE802.3、 10Base5、10Base2、10BaseT下,并与NE2000兼容。E2PROM主要用来存WEB页面、图像文件、PDF文档等内容,因此没有特殊要求,可由用户自由选择,一般32 KB左右即可。该方案中,MCU为核心芯片,通过它控制以太网控制芯片RTL8019AS,进而完成接入网络的工作。
(二)TCP/IP协议栈的实现
IP包含编址方案,并提供寻址功能;TCP则是在不同主机的对等进程之间提供可靠的进程间通信。与TCP两端口所连接的 实体中,一端为应用程序进程或用户,另一端则为底层协议,如IP协议。TCP在建立连接过程中采用三向握手机制,以保证数据的可靠性。以ZWORLD公司的Rabbit2000系列芯片为例,论述嵌入式WebServer的具体实现过程。Rabbit2000系列芯片是一种高性能8位器件。由于其C语言友好指令集和快速数字处理功能,因而受到瞩目。Rabbit结构以Zilog公司的原始Z80微处理器为基础,但作了几项改进:不像Z80指令集那样使用16位寻址覆盖存储空间,而用一个20位或1MB的实际存储空间;采取直接与静态存储器件相连接的方式;有3条存储芯片选择线路和2组写入/输出启动线路;片上外设包括4个串行端口、1个子端口、40条I/O线、7个不同的定时器、精确脉冲发生硬件和电池支持的RTC。
(三)Websphere组件管理相关技术
一是组件池。WebSphere EJB组件池技术可以避免频繁建立和关闭EJB实例的开销,提高系统性能。在WebSphere中部署一个EJB时,EJB容器为这个Bean分配几个实例到组件池,当客户请求一个Bean时,WebSphere将一个预先实例化的Bean分配出去,在客户的一次会话中,可以只引用一次Bean,就可以执行这个Bean的多个方法。如果另一个客户请求同一个Bean,容器检查池中空闲的Bean,如果全部的实例都已用完,则会自动生成一个新的实例放在池中,并分配给请求者。当负载减少时,池会自动管理Bean实例的数量,将多余的实例从池中释放。二是钝化EJB实例。WebSphere也会灵活的调整EJB容器与当前的组件,当 Bean 实例数大于容器配置中指定的缓存大小时,Bean 被钝化。当有状态 Bean 被钝化期间,容器将 Bean 实例序列化为钝化目录中的一个文件,并废弃来自 Bean 高速缓存的实例。之后,如果有对已钝化 Bean 实例的请求到达,容器将从钝化目录中检索出此实例,对它进行解序列化,将其放回高速缓存中,并将请求指向它。
四、结语
在建立起相应的硬件连接以后,就可以根据不同的硬件特点,选用不同的开发工具和开发语言进行WebServer的构架工作。本文给出了目前构架WebServer的主要原理和方法,并给出Rabbit 2000系列芯片实现的具体应用,相信对读者的实际工作会有些帮助。
参考文献:
[1]李巍,王慕坤;报税嵌入系统接入互联网方法的研究[J];哈尔滨理工大学学报;2004年03期
[2]李鹏,潘玲娜,赵雪英;嵌入式WEB服务器在网络摄像机中的应用[J];辽宁大学学报(自然科学版);2004年02期
[3]张明,王礼平;便携式医疗监护仪器网络化接口的设计[J];现代电子技术;2005年03期
【关键词】WebServer TCP/IP协议栈 套接字
在通信工程与技术的不断发展中,通过对8位微控制器的应用,在没有进行pc机或者高档单片机的情况下接入互联网,在不断创新的嵌入式技术中,通过嵌入式Webserver技术的不断创新,逐步取代PC位中心的应用系统,将成为全新的发展路径,并运用于智能家居系统、交通网路系统等各个领域,成为重要的技术模式。
一、嵌入式Webserver技术简介
(一)技术应用
Webserver是近年发展起来的新一代Web技术,它是由W3C设计和指定的,用来促进跨平台的程序间的通信。Webserver服务平台是一套标准的类型系统,基本的Webserver服务平台就是XML+HTTP,目前这些标准协议包括XML、UDDI、WSDL、SOAP、HTTP等。这些标准协议都是基于XML的,跨平台的、与编程语言无关的是XML的重要特质,建立在XML基础上的Webserver能够使运行在异种系统平台上的不同的应用程序进行信息交换和通信,提供了更大的空间交互。
对于外部使用者而言,Web服务是一种部署在Web上的对象/组件,使用者能发现并调用该对象/组件部署的服务 [9]。对于设计者来说,为优化设计,对系统进行模块化和可复用性设计,每一个业务逻辑都设计成一个独立的Web服务。同时,Web服务采取在HTTP标准协议基础上传输基于XML的SOAP协议用来表示数据和调用请求的数据,在绝大数情况下可轻松跨越企业防火墙。
Webserver体系结构是一种面向服务体系结构,即SOA架构(Service Oriented Architecture)。它通过WSDL(Web Service Description Language)来描述这个Webserver以及如何对它进行访问,使用SOAP(Simple Object Access Protocol)借由开放协议来传输数据,在商业注册中心UDDI(Universal Description Discovery and Integration)注册Webserver,从而使服务使用者可以在UDDI提供的目录服务上搜索到特定Webserver服务。Webserver的服务体系架构中有三个清晰的角色定义,角色之间的关系参见下图。
(二)XML
XML(Extensible Markup Language)作为可扩充的标记语言标准,被设计用来传输和存储数据,是基于文本的W3C规范的标记语言。它严格地定义了可移植地结构化数据,提供了灵活性、可扩展性和结构化的消息格式。XML具有以下六个特性优点:XML文件是可读的、可扩展性的、自描述的、异构系统间地信息互通的、保值的、更精确搜索的。
(三)WSDL描述语言
WSDL (Webserver Description Language)是一种基于IDL技术的服务描述语言。它用于描述Webserver以及如何访问它们。Webserver被WSDL语言描述定义为服务访问点或端口的集合。它本身是基于XML语法的,WSDL使用XML语言将Webserver描述为面向文档或面向过程信息的一组端点操作消息。信息是抽象的描述数据交换和端口类型支持的操作的抽象集合。一个可重用的绑定是针对特定端口的,由具体的协议和数据格式来规范,然后操作和消息绑定到具体的网络协议和消息格式。通过这种方式,WSDL描述了Web服务的公共接口,方便设计者描述和绑定服务。
二、嵌入式Webserver硬件平台
(一)MCU直接实现形式的WebServer的硬件平台
MCU以SX52BD100的运算速度最快,在100 MHz晶振驱动下指令执行速度可达100MIPS;RABBIT2000次之,51系列最慢。但是硬件成本恰好反之,用户可以根据不同的要求来配置MCU。以太网控制芯片可采用RealTek公司的RTL8019AS。该芯片是一款全双工以太网控制器,可以工作在Ethernet II和IEEE802.3、 10Base5、10Base2、10BaseT下,并与NE2000兼容。E2PROM主要用来存WEB页面、图像文件、PDF文档等内容,因此没有特殊要求,可由用户自由选择,一般32 KB左右即可。该方案中,MCU为核心芯片,通过它控制以太网控制芯片RTL8019AS,进而完成接入网络的工作。
(二)TCP/IP协议栈的实现
IP包含编址方案,并提供寻址功能;TCP则是在不同主机的对等进程之间提供可靠的进程间通信。与TCP两端口所连接的 实体中,一端为应用程序进程或用户,另一端则为底层协议,如IP协议。TCP在建立连接过程中采用三向握手机制,以保证数据的可靠性。以ZWORLD公司的Rabbit2000系列芯片为例,论述嵌入式WebServer的具体实现过程。Rabbit2000系列芯片是一种高性能8位器件。由于其C语言友好指令集和快速数字处理功能,因而受到瞩目。Rabbit结构以Zilog公司的原始Z80微处理器为基础,但作了几项改进:不像Z80指令集那样使用16位寻址覆盖存储空间,而用一个20位或1MB的实际存储空间;采取直接与静态存储器件相连接的方式;有3条存储芯片选择线路和2组写入/输出启动线路;片上外设包括4个串行端口、1个子端口、40条I/O线、7个不同的定时器、精确脉冲发生硬件和电池支持的RTC。
(三)Websphere组件管理相关技术
一是组件池。WebSphere EJB组件池技术可以避免频繁建立和关闭EJB实例的开销,提高系统性能。在WebSphere中部署一个EJB时,EJB容器为这个Bean分配几个实例到组件池,当客户请求一个Bean时,WebSphere将一个预先实例化的Bean分配出去,在客户的一次会话中,可以只引用一次Bean,就可以执行这个Bean的多个方法。如果另一个客户请求同一个Bean,容器检查池中空闲的Bean,如果全部的实例都已用完,则会自动生成一个新的实例放在池中,并分配给请求者。当负载减少时,池会自动管理Bean实例的数量,将多余的实例从池中释放。二是钝化EJB实例。WebSphere也会灵活的调整EJB容器与当前的组件,当 Bean 实例数大于容器配置中指定的缓存大小时,Bean 被钝化。当有状态 Bean 被钝化期间,容器将 Bean 实例序列化为钝化目录中的一个文件,并废弃来自 Bean 高速缓存的实例。之后,如果有对已钝化 Bean 实例的请求到达,容器将从钝化目录中检索出此实例,对它进行解序列化,将其放回高速缓存中,并将请求指向它。
四、结语
在建立起相应的硬件连接以后,就可以根据不同的硬件特点,选用不同的开发工具和开发语言进行WebServer的构架工作。本文给出了目前构架WebServer的主要原理和方法,并给出Rabbit 2000系列芯片实现的具体应用,相信对读者的实际工作会有些帮助。
参考文献:
[1]李巍,王慕坤;报税嵌入系统接入互联网方法的研究[J];哈尔滨理工大学学报;2004年03期
[2]李鹏,潘玲娜,赵雪英;嵌入式WEB服务器在网络摄像机中的应用[J];辽宁大学学报(自然科学版);2004年02期
[3]张明,王礼平;便携式医疗监护仪器网络化接口的设计[J];现代电子技术;2005年03期