|
摘 要:文章探讨了web服务的技术及其技术构架,分析了web构架的组成部分,对虚拟仪器中的通讯技术和网络中常见的各种技术分别作了介绍。 关键词:web服务;传输协议;虚拟仪器 1Web服务 1.1什么是Web服务 Web服务是松散耦合的,可复用的软件模块,它封装了离散的功能,在Internet上发布后能够通过标准的Internet协议在程序中访问。这样,在服务器中备有各种测量程序,当仪器(即客户端)需要完成某个测量任务时,可通过从服务器下载相应的应用程序,完成测量功能。因此,在服务器上更新和升级测量程序就可以实现多客户端应用程序的更新和升级,维护起来也方便。 1.2Web服务的传输协议 Web服务的实现需要传送各种数据,如虚拟仪器(客户端)和控制端(服务器端)之间的数据传输。这种传输数据格式通过协议来协调。在Web服务中,这种协议主要有三种:SOAP(Simple Object Access Protocol,简单对象访问协议)、WSDL(Web Services Description Language,Web服务描述语言)和UDDI(Universal Description、Discovery and Integration,通用描述、发现和集成)。

1.3Web服务的技术架构 ●网络层 网络层位于Web服务技术架构的底层,各种协议在这一层配置。为了各虚拟仪器(客户机)能够使用,Web传输协议要得到大多数客户机的支持,一般有http、SMTP、FTP等。 ●XML消息层 Web使用的消息封装是基于XML的,一般使用SOAP,它包含了消息封装,路由,可靠传输和安全性方面的内容。 ●服务说明层 Web服务的基本结构是建立在通过基于XML的消息进行通信的基础之上的,而这些消息必须遵循Web服务说明的约定。服务说明是一个使用WSDL表示的XML文档,其中定义了Web服务可以理解的消息格式。服务说明就好比是在Web服务和使用它的客户之间达成的协议,它定义了服务的行为,并指导使用它的客户该如何与之交互。服务的行为取决于服务定义和支持的消息样式,从概念上讲,这些样式指示了在服务的使用者给Web服务发送了一个格式正确的消息后可能得到的预期结果。WSDL语言用来描述如何连接到一个Web服务。使用WSDL,服务的请求方可以通过UDDI查找到Web服务的信息。 ●服务发布层 服务发布是让服务的请求者得到WSDL文档,最简单的方法是服务提供者将WSDL文档直接发送给服务请求者,这称为“直接发布”。 ●服务发现层 任何允许服务请求者得到服务说明并在运行时刻让应用程序使用的机制都可以被看作服务发现。服务的发现机制对应于服务发布层的发布机制,有静态发现,设计时或运行时使用本地WSDL注册,私有UDDI注册或UDDI操作节点等几种发现Web服务的方法。 2虚拟仪器中的通讯技术 在NI公司的Labview软件中,提供了几种通讯手段,有DataSocket、DDE、TCP、UDP等。 2.1DataSocket技术 DataSocket是NI公司提供的一种基于TCP/IP协议的网络编程技术,借助它可以在不同的应用程序和数据源之间共享数据。它支持本地文件I/O操作、FTP和HTTP文件传输、实时数据共享,并提供统一的API编程接口,适用于远程数据采集、监控和数据共享等应用程序的开发。可以方便地使用DataSocket来组建一个远端的智能测试节点,在该节点上运行应用程序完成数据采集、数据分析和控制等任务,并利用DataSocket提供的功能通过网络将测试数据发回服务器PC节点;服务器运行DataSocket工具中的data update更新测试数据;各测试节点通过Web浏览器访问服务器相应的数据。同时,服务器也可通过URL来定位各测试节点,向各测试节点发送控制命令和数据等。 2.2DDE技术 DDE(Dynamic Data Exchange)动态数据交换是WINDOWS应用程序间相互传递和共享数据的一种方法,DDE用共享存储器在应用程序间交换数据。在网络化的虚拟仪器中,可用DDE实现各进程间的通讯,在各测试节点中交换信息和命令,协调各测试节点的运行。DDE会话发生在测试节点的DDE客户端与服务器的DDE服务器应用程序之间。测试节点打开DDE会话,向服务器请求DDE服务。若服务器响应请求,则开始DDE会话,结束后关闭会话。 2.3TCP、UDP技术 TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报文协议)是传输层中最主要的协议。当网络中的一测试节点和服务器建立连接时,测试节点的TCP/IP协议将创建一个IP数据包。数据包包含下列信息:目的IP地址—Internet网络中的主机地址;源IP地址—请求服务的测试节点的IP地址;目的端口—Internet网络主机的TCP/UDP端口;源端口—请求服务的测试节点的TCP/UDP端口。使用IP路由功能把数据包发送到目的地,从而为应用程序及应用层协议(包括:HTTP、SMTP、FTP和CORBA)提供网络服务。Web服务器通过解析服务程序,分析源端口,响应测试节点的请求。TCP提供的是面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的数据流传输。 Web服务技术是Internet的一个组成部分,应用这些技术,可以实现虚拟仪器的网络化。组建的网络化虚拟仪器的模型为: 
随着浏览器技术的发展,可以在浏览器中运行各种控件,如ActiveX,将Datasocket中的ActiveX集成到Web服务的浏览器页面;也可以将虚拟仪器的前面板集成到浏览器页面,通过浏览器来控制虚拟仪器;同时将现场数据发布到服务器上。这样一来,用户可以通过浏览器实现远程控制和监控。 3结束语 网络化的虚拟仪器是虚拟仪器的发展方向,也是网络技术和虚拟仪器技术结合的产物。它可以实现各种信息的共享,从而协调各种测试节点的运行,实现资源的优化配置。 () |