DataSocket
在baidu上看到的 转到我的blog O(∩_∩)O~
DataSocket技术是NI公司推出的面向测控领域的网络通信技术。DataSocket技术基于Microsoft的COM和ActiveX技术,对TCP/IP协议进行高度封装,面向测量和自动化应用,用于共享和发布实时数据DamSockd能有效地支持本地计算机上不同应用程序对特定数据的同时应用,以及网络和不同计算机的多个应用程序之间的数据交互,实现跨机器、跨语言、跨进程实时数据共享。
在测试测量过程中,用户只需要知道数据源和数据宿及需要交换的数据就可以直接进行高层应用程序的开发,实现高速数据传输,而不必关心 底层的实现细节,从而简化通信程序的编写过程、提高编程效率。
目前DataSocket在10M网络中的传输速率可达到640kbps。对于一般的数据采集系统,可以达到很好的传输效果。随着网络技术的飞速发展和网 络信道容量的不断扩大,测控系统的网络化已经成为现代测量与自动化应用的发展趋势。依靠DataSocket和网络技术,人们将能更有效地控制 远程仪器设备,设置在任何地方进行数据采集、分析、处理和显示,并利用各地专家的优势,获得正确的测量、控制和诊断结果。
DataSocket 是独立于平台的解决方案,可以通过网络传输数据。DataSocket 非常类似于可以在网络电脑间读写数据的全局变量。DataSocket 用在您需要共享一台电脑上的数据到其他电脑或者某个电脑组中。
例如:实验室的电脑采集数据并发布到办公室一台电脑进行后期处理与分析。
DataSocket技术
DataSocket基于Microsoft的COM和ActiveX技术,源于TCP/IP协议并对其进行高度封装,面向测量和自动化应用,用于共享和发布实时数据,是一种易用的高性能数据交换编程接口。它能有效地支持本地计算机上不同应用程序对特定数据地同时应用,以及网络上不同计算机地多个应用程序之间的数据交互,实现跨机器、跨语言、跨进程的实时数据共享。用户只需要知道数据源和数据宿及需要交换的数据就可以直接进行高层应用程序的开发,实现高速数据传输,而不必关心底层的实现细节,从而简化通信程序的编写过程,提高编程效率。
DataSocket逻辑构成
DataSocket包括DataSocket Server Manager(以下简称Manager),DataSocket Server和DataSocket API一部分。
Manager是一个独立运行的程序,主要功能有:设置DataSocket Server连接的客户端程序的最大数目和创建数据项的最大数目:创建用户组和用户;设置用户创建和读写数据项的权限;限制身份不明的客户对服务器进行访问和攻击。例如,将Manager中的Default Reader设置为everyhost,则网中的每台客户计算机都可以读取服务器上的数据。Manager对DataSocket Server 的配置必须在本地计算机上进行,而不能远程配置或通过运行程序来配置。
DataSocket Server 是一个必须运行在服务器端的程序,负责监管Manager中所设定的具有各种权限的用户组和客户端程序之间的数据交换。DataSocket Server通过内部数据自描述格式对TCP/IP进行优化和管理,简化Internet通信方式,提供自由的数据传输,可以直接传送虚拟仪器程序所采集到的布尔型、数字型、字符串型、数组型和波形等常用类型的数据。它可以和测控应用程序安装在同一台计算机上,也可以分装在不同的计算机上,以便用防火墙进行隔离来增加整个系统的安全性。DataSocket Server不会占用测控计算机CPU的工作时间,测控应用程序可以运行得更快。使用DataSocket技术进行通信时服务器和客户端得计算机上笔形都进行DataSocket Server。
DataSocket API提供独立的接口,用于不同的语言平台内部多种数据类型的通读。在LabVIEW中,DataSocket API被制作成ActiveX控件和一系列功能VI(Virtual Instrument),用户可以方便地使用。一般由服务器进行数据采集,根据需要将测量地数据写入DataSocket 数据公共区,然后客户端通过网络充数据公共区读取所需地测量数据。
DataSocket 资源定位
DataSocket 对外提升资源定位接口和功能调用接口,通过统一资源定位符(URL)对数据的传输目的地进行定位,读数据时为源地址,写数据时为宿地址。在资源定位符中标明数据的传输协议、网络计算机标志和数据缓冲区变量。DataSocket支持多种数据传送协议,不同的URL前缀表示不同的协议或数据类型。主要包括:(1)dstp(DataSocket Transfer Protocol):DataSocket 的专门通信协议,可以传输各种类型的数据,当使用这个协议时,VI与DataSocket Server连接,用户必须为数据提供一个附加到URL的标识Tag,DataSocket连接利用Tag在DataSocket Server上为一个特殊的数据项目指定地址,目前应用虚拟仪器技术组建的测量网络大多采用该协议;(2)http(Hyper Text Transfer Protocol,超文本传输协议);(3)ftp(File Transfer Protocol,文件传输协议);(4)opc (OLE for Process Control,操作计划和控制);特别为实时产生的数据而设计,例如工业自动化操作而产生的数据。要使用该协议,必须首先运行一个OPC Server;(5)fieldpoint,logos,lookout:分别为NI FieldPoint 模块,LabVIEW数据记录与监控(DSC)模块及NI Lookout模块的通信协议;(6)file(local file servers,本地文件服务器);可提供一个到包含数据的本地文件或网络文件的连接。