资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,网络通信技术,TCP/IP,局域网通信,LabVIEW,具有强大的网络通讯功能,这种功能使得,LabVIEW,的用户可以很容易编写出具有强大网络通讯能力的,LabVIEW,应用软件,实现远程虚拟 仪器。,LabVIEW,支持,TCP/IP,协议、,UDP,协议等等。而且,NI,公司还开发了一种,DATASOCKET,技术,很大程度上的简化甚至免除了网络通讯编 程,用户很容易地在互联网实现高速数据交换。,TCP/IP,协议(传输控制协议,/,互联网络协议)是,INTERNET,最基本的协议,它允许分布在各地的装着完全不同系统的计算机互相通信。,由于,INTERNET,的广泛使用,使得,TCP/IP,成了事实的标准。,(一),TCP/IP,协议的体系结构,TCP/IP,是一个四层协议:,链路层:包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,他们一起处理与电缆等传输媒介的物理接口细节。,网络层:该层负责传输数据,包括将数据分割打包和组合。它需要确定的,IP,地址,以寻找路由。,传输层:该层主要为两台主机上的应用程序提供点到点的数据通讯。,传输控制协议,TCP,提供质量保证的数据传输,负责数据的分组、质量控制和超时重发。,用户数据报协议,UDP,只提供简单的数据抱传输,在及时性服务中由重要的用途。,应用层:该层负责处理实际的应用程序细节,包括,Telnet,、,Http,、,Ftp,、,SMTP,等著名协议,也包括我们自己编写的网络应用程序。,IP,地址:互联网上的每个接口(一台主机可以有几个接口)必须有一个唯一的,Internet,地址(也称作,IP,地址),,IP,地址长,32 bit,,这些,32,位的地址通常写成四个十进制的数,其中每个整数对应一个字节,例如,202.38.64.1,。另外,,127.0.0.1,将被认为是本机,(,LocalHost,),的,IP,地址,端口号:大多数情况下,只是将数据包发送给给定地址的机器,例如,202.38.64.1,,是不足以确定到底要把数据包发送给机器的哪一个进程的。端口号允许你作更确定的指定。,应用程序可以使用从,1,到,65535,之间的任何一个端口号,不过在选择端口时,必须特别小心,因为有些可用端口号是为“已知的”(即固定的)服务保留的(比如说文件传输协议和超文本传输协议,即,FTP,和,HTTP,)。“已知的协议”,即固定协议,采用的端口由“互联网编号分配认证(,IANA,)”控制和分配。,端口号分为下面这三类:“已知”端口、已注册端口、动态和(或)私用端口。,0 1023,由,IANA,控制,是为固定服务(如,FTP,HTTP,telnet,DNS,等,),保留的。,1024 49151,是,IANA,列出来的、已注册的端口,供普通用户的普通用户进程或程序使用。,49152 65535,是动态和(或)私用端口。,普通用户应用应该选择,1024 49151,之间的已注册端口,从而避免端口号已被另一个应用或系统服务所用。,(二),Windows Sockets,Windows Sockets,规范以,U.C.Berkeley,大学,BSD UNIX,中流行的,Socket,接口为范例定义了一套,Micosoft,Windows,下网络编程接口。,Windows Sockets,规范本意在于提供给应用程序开发者一套简单的,API,,并让各家网络软件供应商共同遵守。,应用程序调用,Windows Sockets,的,API,实现相互之间的通讯。,Windows Sockets,又利用下层的网络通讯协议功能和操作系统调用实现实际的通讯工作。,(三)套接字,套接字,(Sockets),是通讯端点的一种抽象,它提供了一种发送和接收数据的机制。,在,Windows,套接字中,它有两种形式,,数据报套接字,(Datagram Sockets),和流式套接字,(Stream Sockets),。,数据报套接字提供了一种不可靠的、无连接的数据包,(packet),通信方式。在这里“不可靠”的意思是指发送一个数据包不能获得担保,也不能保证数据包按照放送的顺序到达。实际上,同一分组数据报可能不止一次的被发送。数据报套接字使用用户数据报协议,(UDP,协议,).,流式套接字,提供了一种可靠的面向连接的数据传输方式,实现了无差错无重复的顺序数据传输。流式套接字使用传输控制协议,(TCP,协议,),。,无连接服务器一般都是面向事务处理的,一个请求一个应答就完成了客户程序与服务程序之间的相互作用。,面向连接服务器处理的请求往往比较复杂,不是一来一去的请求应答所能解决的,而且往往是并发服务器。,TCP,通信,1.TCP,协议简介,TCP,协议是,TCP/IP,协议中的一个子协议。,TCP/IP,是,Transmission Control Protocol/Internet Protocol,的简写,名为传输控制协议,/,互联网络协议。是,20,世纪,70,年代由美国国防部开发的协议标准。,TCP,提供了一种面向连接的、可靠的传输层服务。,2.TCP,节点,在,LabVIEW8.2,中,,TCP,节点位于函数选板的,【,数据通信,】【,协议,】【,TCP,】,子选板中,。,3.TCP,通信编程举例,例,利用,TCP,协议进行双机通信,双机通信流程如图,服务器,VI,的前面板和程序框图,客户机,VI,的前面板和程序框图,UDP,通信,1.UDP,协议简介,UDP(User Datagram Protocol),,,用户数据传输协议,是一个无连接模式协议,提供向另一用户程序发送信息的最简协议机制,使用,IP,路由功能把数据包发送到目的地。,UDP,有下述几个特性:,UDP,是一个无连接协议。,由于不建立连接,因此一台服务器可同时向多个客户机传输相同的信息。,UDP,信息包的标题很短,只有,8,个字节,相对于,TCP,的,20,个字节信息包的额外开销很小。,吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。,2.UDP,节点,在,LabVIEW8.2,中,,UDP,节点位于函数选板的,【,数据通信,】【,协议,】【,UDP,】,子选板中,3.UDP,通信编程举例,例,7.4,将服务器端产生的正弦信号由,UDP Write,节点发送到客户机。,服务器,VI,的前面板和程序框图,客户机,VI,的前面板和程序框图,DataSocket,通信,1.,DataSocket,基本概念,DataSocket,是,NI,公司推出的一项基于,TCP,IP,协议的新技术,,DataSocket,面向测量和网上实时高速数据交换,可用于一台计算机内或者网络中多个应用程序之间的数据交换。,DataSocket,的体系结构如图,DataSocket,的组成,DataSocket,由,DataSocket,API,DataSocket,Server,组成,DataSocket,API,是一个和协议、编程语言、操作系统无关的应用程序接口,能够把测量数据转化为适合在网络上传输的数据流。,DataSocket,Server,是一个独立部分,可以把现场数据高速传给远端客户。,发布者、服务器和接收者之间的关系,用,DataSocket,Server,发布数据需要,3,个部分:,发布者(,publisher,),服务器(,DataSocket,Server,),接收者(,subscriber,),三者关系如图,(,1,),DataSocket,Server Manager,DataSocket,Server Manager,是一个独立运行的程序,它的主要功能是设置,DataSocket,Server,可连接的客户程序的最大数目和可创建的数据项的最大数目,创建用户组和用户,设置用户创建数据项和读写数据项的权限。,DataSocket,Server Manager,窗口,(,2,),DataSocket,Serve,DataSocket,Server,也是一个独立运行的程序,它负责监管,DataSocket,Server Manager,中所设定的各种权限和客户程序之间的数据交换。,DataSocket,Server,运行后的窗口如图。,2.,DataSocket,节点,在,LabVIEW8.2,中,,DataSocket,节点位于函数选板的,【,数据通信,】,【,DataSocket,】,子选板中,在,Web,上发布,VI,LabVIEW,可以将,VI,发布到,Web,上,这样用户就可以通过浏览器来访问,VI,程序的前面板,甚至还可以控制远程计算机上,VI,程序的运行。,网站服务器、,VI,及远程用户客户端的关系,Web,服务器配置,Web,服务器配置界面,Web,服务器可见,VI,配置界面,Web,服务器浏览器访问配置界面,Web,发布网页配置,选择,VI,和查看选项界面,选择,HTML,输出界面,保存新网页界面,客户端的远程连接,连接远程前面板界面,客户端运行结果,在,Web,上浏览程序前面板时,URL,填写格式为:,Http:/202.197.33.63/.snap?Web,发布程序,.vi,这里,202.197.33.63,为计算机,IP,地址,,Web,发布程序,.vi,为希望查看的程序名,注意必须填写,.vi,。,.snap?,表示返回一个静态前面板。如将,.snap?,改写为,.monitor?,则返回动态的图像。,可以监测远程计算机上一个程序的前面板,甚至完全控制一个程序的运行。,前面板的远程链接的方法如下:点击,OperateConnect to Remote Panel,,弹出以下对话框:,前面板的远程链接,Web,浏览的前面板,IrDA,无线数字通信,IrDA,是红外数据协会的英文缩写(,Infrared Data Association,)。,IrDA,标准包括三个基本的规范和协议:,红外物理层连接规范,(Infrared Physical Layer Link Specification,,,IrPHY,),红外连接访问协议,(Infrared Link Access Protocol,,,IrLAP,),红外连接管理协议,(Infrared Link Management Protocol,,,IrLMP,),。,IrDA,节点,在,LabVIEW8.2,中,,IrDA,节点位于函数选板的,【,数据通信,】【,协议,】【,IrDA,】,子选板,如图所示,。,IrDA,通信编程举例,例,利用,IrDA,技术进行双机通信,服务发起方的程序框图,服务接收方的程序框图,
展开阅读全文