公务员期刊网 精选范文 通信协议范文

通信协议精选(九篇)

通信协议

第1篇:通信协议范文

modbus协议是一个公开的、被广泛应用的串行通信协议,最初由modicon公司为其可编程控制器和工业自动化系统而制定的http://,使用于控制设备间传输数字和模拟的i/o及寄存器数据时使用。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一个控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

当在一个modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用modbus协议发出。在其它网络上,包含了modbus协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。

1.modbus协议

1.1 modbus协议族

modbus协议中有ascii、rtu、tcp等,其中前二者规定了消息、数据的结构、命令和应答的方式,数据通信采用master/slave(主从)方式,主端发出数据请求消息,从端接收到正确消息后就可以发送数据到主端以响应请求;主端也可以直接发送消息修改从端的数据,实现双向读写。此外,在校验上,ascii模式采用lrc校验,rtu模式采用16位crc校验。而tcp模式除了有奇偶校验外,没有额外规定校验,其原因就是tcp协议是一个面向连接的可靠协议。

1.2 modbus网络上的数据传输

modicon控制器上的标准modbus端口是使用一个rs232兼容的串行接口,定义了连接器,接线电缆,信号等级,传输波特率,和奇偶校验,控制器可直接或通过调制解调器接入总线(网络)。控制器通讯使用主从技术而其它设备(从机)应返回对查询作出的响应,或处理查询所要求的动作。典型的主机设备应包括主处理器和编程器,典型的从机包括可编程控制器。

主机可对各从机寻址,发出广播信息,从机返回信息作为对查询的响应。从机对于主机的广播查询,无响应返回modbus协议报据设备地址,请求功能代码,发送数据,错误校验码,建立了主机查询格式,从机的响应信息也用modbus协议组织,它包括确认动作的代码,返回数据和错误校验码。若在接收信息时出现一个错误或从机不能执行要求的动作时,从机会组织一个错误信息。并向主机发送作为响应。

1.3 在其它总线上传输数据

除标准的modbus功能外,有些modicon控制器内置端口或总线适配器,在modbus+总线上实现通讯或使用网络适配器,在map网络上通讯。

在这些总线上,控制器间采用对等的技术进行通讯,即任意一个控制器可向其它控制器启动数据传送。因此,一台控制器既可作为从机,也可作为主机,常提供多重的内部通道,允许并列处理主机和从机传输数据 在信息级,尽管网络通讯方法是对等的,但modbus协议仍采用主从方式,若一台控制器作为主机设备发送一个信息,则可从一台从机设备返回一个响应,类似,当一台控制器接受信息时,它就组织一个从机设备的响应信息,并返回至原发送信息的控制器。

1.4 查询响应周期

查询:查询中的功能代码为被寻址的从机设备应执行的动作类型。数据字节中包含从机须执行功能的各附加信息,如功能代码03将查询从机,并读保持寄存器。并用寄存器的内容作响应。该数据区必须含有告之从机读取寄存器的起始地址及数量,错误校验区的一些信息,为从机提供一种校验方法,以保证信息内容的完整性。

响应:从机正常响应时,响应功能码是查询功能码的应答,数据字节包含从机采集的数据,如寄存器值或状态。如出现错误,则修改功能码,指明为错误响应。并在数据字节中含有一个代码,来说明错误,错误检查区允许主机确认有效的信息内容。

1.5 modbus协议帧结构

modbus协议帧通常也被称作modbus信息包裹,一个协议帧由从前到后有以下四个部分组成:地址域:发送信息的目的地址,即主站请求时的从站地址或从站响应时的主站地址。从站地址域长度为一个字节,其中

转贴于 http://

包括信息包裹传送的从站地址。从站地址范围为“1”至“255”。 功能码域:信息包裹中功能域长度为一个字节,用以通知从站应当执行何种操作。数据域:域长度不定,依据其具体动能而定。校验域:两种不同模式下,计算而得的校验码。

2.通信接口模块开发 http://

modbus通信接口位于上位机和下位机之间,若要完成modbus通信,则上位机和下位机必须安装有能够实现modbus协议的硬件和软件。在系统集成工程中,如果出现通信双方任何一方不具备modbus接口的情况,则必须进行底层驱动模块的开发。

一般下位机一侧会出现不匹配,因为下位机系统中包括数据的采集和模数转换处理等等,那么下位机系统结构包括:数据采集处理模块、中央处理模块、通信模块。

3.modbus集成工程应用

第2篇:通信协议范文

目前最完成,最被大众接受的通信协议标准就是TCP/IP协议。它的存在能使不相同的硬件结构,操作系统的计算机互相通信。在20世纪60年代末,美国政府出资近资助了一个分组(包)交换网络研究项目ARPAnet,这就是TCP/IP的最初样貌。最初ARPAnet使用的是租用的以点对点为主的通信线路,在后面当通信网和卫星通信系统发展起来之后,它最初开发的网络协议在通信可靠性较差的通信子网络中产生了很多问题,为了解决这些问题,TCP/IP协议就应运而生。作为一个开放的协议,有很多不同的厂家生产了很多型号的计算机,他们各自有完全不同的操作系统,但是在TCP/IP协议组件下,他们能进行通信。在如今的社会,TCP/IP已经成为一个由成千上万的计算机和其使用者组成的全球化网络,此时的ARPAnet也就顺理成章的变成了Internet。TCP/IP是Internet的基础。TCP/IP协议是以套件的形式推出的,在这个套件中包括有一组互相补充、互相配合的协议。在TCP/IP协议族中就包含有IP(互联网协议)、TCP(传输控制协议)和其他协议,在网络通讯中,只有这些协议相互配合,才能实现网络上的信息传输。IP和TCP的组合不仅仅只是表示两个协议,还指整个协议套件,TCP和IP只是作为其中最主要的两个协议,读者应该更好省核此术语的真正含义。TCP/IP协议如果在严格上来说只是人们习惯的说法,更为专业的说法应该称其为Internet协议。同时在国际上,TCP/IP协议也不是ITU-T或OSI的标准,但是它作为一种事实的标准被执行着,并且完全独立于任何硬件或者软件厂商,可以运行在不同体系的计算机上。它采用通用的寻址方案,通过寻址的方法,一个系统能访问到任何其他系统,就算在Internet这样庞大的全球性网络内,寻址的运行也可以说是游刃有余。不管是局域网,还是广域网,TCP/IP都是其中的最大协议最广的使用协议。

二管理TCP/IP的组织机构

Internet因为其开放性,所以不受任何政府部门或者组织所拥有和控制,因此没有统一的管理机构,但是还有非营利机构管理其标准化过程。这些机构承担Internet的管理职责,建立和完善TCP/IP和相关协议标准。与TCP/IP协议相关的组织机构简介如下:

1ISOCISOC为Internet的国际化提供支持、并且是一个非营利性的组织,同时也作为上级组织管理所有Internet委员会及任务组。

2IABIAB是ISOC的技术顾问,主要负责处理Internet技术,协议和研究。

3IETF与IESGIETF制定草案,提出建议,维护Internet标准都是其负责的。IESG在Internet制定标准以及IETF的各项活动中负责。

4IRTF与IRSGIRTF,在Internet发展中所遇到的技术问题,并且处理与TCP/IP相关的协议和一般体系结构研究活动。IRSG则是作为IRTF的指导小组,指导其工作。

第3篇:通信协议范文

【关键词】网络节点;wince;信道冲突;数据通信;网络协议

1.引言

随着嵌入式系统在各个领域的广泛应用,嵌入式系统的软件开发变得越来越重要,而对于嵌入式的开发环境也有了新的要求[1]。在我国,嵌入式系统软件的开发正处在初级阶段,普遍用的是国外产品,所以对嵌入式系统的研究有着极其重要的意义[2]。嵌入式系统通信模式一般是由宿主机/目标机的模式进行[3],其调试过程分为两部分,一部分是编译软件运行在宿主机(如PC机)上,另一部分是编译软件需要下载到目标机(如移动设备或者鱼雷等)上[4]。由于水下通信网络中水声信道的特殊性,在实际的应用中,往往需要三个或者以上的节点设备进行网络通信,这样就会出现通信信道冲突的问题,要解决这个问题,就需要在各个节点进行通信的过程中设计一种通信协议。本文设计的一种通信协议可以有效的改善多节点通信信道冲突的问题。

2.水下通信网络节点概述

2.1 单节点系统

所谓节点简单而言就是指的具有收发数据功能的电脑或其他设备。拥有唯一的网络地址的设备都可以称作网络节点,如工作站、终端设备、服务器、网络设备等,各个节点之间具有通信功能,可以进行收发数据。

2.2 三节点通信网络概述

本文中三节点通信系统是由三个同样的单节点系统组成,每个节点需要完成的功能是,ARM分别通过网口,串口控制与之相连的DSP、PC机、SD卡和姿态方位仪之间的数据通讯。各个节点之间可以通过水声网络收发数据,保证其通信信道的通畅性,不冲突性,其示意图如图1所示。

如图1所示,为三个节点组成的节点通信网络,在本文中A、B、C三个节点是具有相同功能的节点。A节点与B节点之间的信道为AB信道,B节点与C节点之间的信道为BC信道,A节点与C节点之间的信道为AC信道,为了保证三个节点之间在进行自主通信时,不会因为信道冲突而出现未知的错误,本文需要通过设计三节点网络通信协议,验证水下通信网络节点三节点通信协议的实现。在实际的水声通信网络中,往往需要多个节点进行通信,三节点通信协议的实现,为多节点水声通信的实现打下了基础。

3.基于CSMA协议/RTS-CTS机制的三节点网络协议程序设计

3.1 水下通信网络节点三节点接收数据程序设计

通过对CSMA协议和RTS-CTS机制的研究,本文设计了一种基于CSMA协议/RTS-CTS机制的网络协议来改善水声通信信道的冲突问题。本文提出如下的设计思路[6]来改善这种信道冲突,定义该三节点网络通信发送数据的数据帧为如下表所示的格式。

信号类型 目的节点 源节点 待发送数据 结束符

信号类型指的是RTS信号(用0x00表示),CTS信号(用0x01表示),DATA数据(用0x02表示)和ACK信号(用0x03表示)。目的节点指的是要向哪个节点发送数据:A节点(用0x00表示),B节点(用0x01表示)C节点(用0x02表示)。源节点指的是数据来自于哪个节点:A节点(用0x00表示),B节点(用0x01表示)和C节点(用0x02表示)。待发送数据就是实际要发送的数据,这里的字节位数因实际数据的长度而定。

通过以上的定义,不管哪个节点收到了数据,都可以通过判断数据帧的前六位知道,该数据是什么类型的,由哪个节点发出的,是发给谁的。那么该节点就可以知道应该给哪个节点回复什么类型的数据,以及通过对收到数据的源节点个数来判断当前信道是否冲突。本文处理信道冲突的方法是,让发送数据的节点退避等待一段随机的时间,再次请求通信。以A节点收到数据是否为RTS信号为例,其程序设计流程如图2所示。

同样的,判断数据是否为CTS信号或DATA数据其设计思想也是如此。

对于收到的数据是ACK信号时,对数据类型,目的节点的判断与前面的程序流程一样,而对源节点的处理采用的方式是,判断数据是不是由B节点发送的ACK信号,如果是,判断当前有没有C节点与之请求信道的信号,即C_RTS信号是否为真,如果有,说明信道有冲突,之前对B节点发送的数据可能出现错误。造成这种结果的原因是,在B节点接收A节点的数据的时候,C节点对A节点发送的RTS信号同时也被B节点收到,那么B节点实际收到的数据就是两个节点发送数据和信号的叠加。A节点就需要重新对B节点发送数据,同时暂时拒绝与C节点的通信。如果当前没有C节点的请求信道信号,说明信道没有冲突,将冲突标志位置假,并反馈给B节点,告诉B节点数据接收完毕。

对收到ACK信号的处理程序设计流程如图3所示。

3.2 水下通信网络节点三节点发送数据程序设计

对于发送数据节点,其数据类型也是RTS信号,CTS信号,数据信号和ACK信号。在发送这些信号和数据前,都需要对当前的信道进行判断,是否信道冲突。本文的程序中是用冲突标志位(m_bCollision)值的真假来判断的,若为真,表示信道冲突,若为假,则表示信道空闲。当信道空闲和发送冲突之后,该节点需要对这两种情况进行相应的处理,来延续后续的通信。以下以节点发送RTS信号为例来介绍其具体的设计过程。

在发送RTS信号之前,首先判断冲突标志位是否为真,如果是,则随机等待一段时间,并启动退避变量(程序中为RTSWait_i),直到冲突标志位值为假。每随机等待一段时间,RTSWait_i自加1,当退避次数大于3,冲突标志位仍未真,则放弃本次通信,随机延时一段时间,重新准备发送RTS信号。如果首先判断的冲突标志为假,则表示信道空闲,发送RTS信号,同时启动定时器等待CTS信号的来临,如果等待时间超过了规定的时间(这个时间值因具体的水下通信环境而定——信号的传播速度和节点之间的距离等),认定当前信道冲突,对信道标志位重新判断,若为假,重新发送RTS信号。每一次重新发送RTS信号都会用一个变量来计量重发的次数,如果次数超过3次,则放弃重发,随机延时一段时间,重新准备通信请求。其设计的程序流程如图4所示。同样,对于发送CTS信号和DATA数据也是如此。

对于发送ACK信号,是在数据已经准确接收完之后,回复给发送节点的信息,所以节点发送ACK信号主要考虑的是在回复信息的时候,判断信道是否空闲,如果空闲,就可以发送ACK信号,如果冲突,随机等待一段时间等待信道空闲,并同时进行退避操作,用退避变量记录退避次数,当退避次数小于3次时,信道空闲了就可以直接发送ACK信号,当退避次数大于3次,信道仍冲突,就继续等待。

4.水下通信网络节点三节点网络协议实验实现

按照以上的设计思路,用A节点向B和C节点发送RTS信号,进行通信调试,其具体调试过程和实验结果:

将编写好的带有通信协议的服务器程序下载到A节点ARM中启动,分别用两台PC机模拟B节点和C节点,将编写好的带有通信协议的客户端程序在B,C节点中启动,与A节点中的服务器程序(带有协议)建立连接。点击服务器端的“自动1按钮”,向B节点请求通信,发送数据为“0x0001001111111111”表示发送的是RTS信号,由A节点发出给B节点,发送的数据为“0x1111111111”。得到如图5的调试结果:

由图5可以看出,整个协议运行的机制,当对B节点发送RTS信号之后,收到了B节点的CTS信号,然后自动发送数据给B节点,B节点接收完数据,回复给A节点ACK信号,完成了此次通信,说明此时信道是不冲突的。发送控件中显示的数据“0201001111111111”是A节点发送的数据信号。

接着点击“自动2”按钮,得到如图6的调试结果:

如图6所示,当点击按钮“自动2”之后,A节点向C节点发送RTS信号,等待C节点回复CTS信号,等待超过10ms,重新传送RTS信号,当等待次数超过3次,仍旧没有收到来自于C节点的CTS信号,则放弃本次操作,退避等待1ms(这里的1ms是随机的时间,恰好为1ms),再次发送RTS信号。可以看到,这种处理的方式有效地改善了因为信道冲突而出现数据丢失的情况,达到了预期设计的要求,完成了水下通信网络三节点网络协议实现的设计实验。

5.结束语

对水下通信网络节点信道冲突问题进行了研究,将CSMA协议和RTS-CTS机制应用到三节点网络协议程序设计中,改善了三节点网络中各个节点收发数据时的各种信道冲突问题,通过编程和调试实验对该协议进行验证,证明了这种设计思想和方法对改善水下通信网络通信信道冲突问题的可行性,验证了水声通信网络节点三节点网络协议的实现。

参考文献

[1]薛弼.基于WinCE的ARM9嵌入式一体化工控机的设计、实现与应用[D].上海交通大学硕士论文,2007.

[2]肖为.嵌入式系统概述及其在综合信息终端中的应用及前景[J].北京广播学院学报(自然科学版),2001.

[3]胡虚怀.Windows CE的通信技术[J].岳阳师范学院学报(自然科学版),2000(02).

[4]周毓林,宁杨.WinCE内核定制及应用程序开发[M].电子工业出版社,2005:35-50.

[5]James Y.Wilson,Aspi Havewala.Building Powerful Platforms with Windows CE.Addison-Wesley,2001.

第4篇:通信协议范文

第三代移动通信系统(3G)是一个在全球范围内覆盖与使用的网络系统,它集有线、蜂窝和卫星通信于一体,向用户提供高质量的多媒体通信[1]。第三代移动通信系统(3G系统)的认证和密钥协商协议是3G系统网络接入安全的核心机制,如果身份认证和密钥协商协议出现安全漏洞,会使整个会话都没有安全性可言。可见对于3G系统的认证和密钥协商协议的研究具有十分重要的意义。本文对密码学相关理论知识做了研究,介绍了第三代移动通信系统的安全体系结构,研究了第三代移动通讯系统的认证与密钥协商机制,指出了其中存在的漏洞,并给出了解决办法,最后介绍3G认证和密钥协商协议(AKA)的安全算法。

13G移动通讯系统的认证与密钥协商机制

认证与保密是信息安全的两个重要的方面。保密是防止明文信息的泄漏,认证则主要是为了防止第三方的主动攻击,比如,冒充通信的发送方或者篡改信道中正在传输的消息。在GSM系统中,身份认证是单向的,基站能够验证用户的身份是否合法,而用户无法确认他所连接的服务网络是否可靠。3GAKA协议借鉴了GSM身份认证的询问-应答机制,结合ISO/IEC9798-4基于“知识证明”和使用顺序号的一次性密钥建立协议,实现了双向认证。该安全机制如图1所示。

在该系统中,用户UE的USIM(UserServiceIdentityModule)和它的归属域HLR中的认证中心AuC共享密钥K,该密钥不在网络中传输。当HLR/AuC接收到VLR发来的认证请求信息后,它将产生一组认证向量并发往VLR(Authenticationdataresponse)。这些认证向量基于序列号SQN顺序排列。每一个认证向量都是一个五元组(RAND,XRES,CK,IK,AUTN)。当VLR要发起一次AKA协商时,从认证向量数组中选择当前的下一个未被使用的向量AV(i),并将参数RAND和AUTN付发给用户USIM。一旦收到,用户首先验证AUTN是否可接受,如果AUTN是可接受,USIM它将产生一应答RES发往VLR,同时计算CK和IK。VLR将接收的RES及与存储的XRES比较,如果两者匹配,VLR认为本次AKA成功。双方就可以用CK、IK加密验证后续的通信内容。

23G认证和密钥协商协议(AKA)的安全分析

2.1VLR对MS的认证以及MS对HLR的认证

VLR在协议第三步接收到来自HLR的认证向量中包含了期望MS产生的应答XRES=f2K(RAND)。若MS是合法用户,在协议第四步接收到HLR产生的随机数RAND后,应能正确的计算RES=f2K(RAND),并且RES=XRES。MS对HLR的认证是通过消息认证码MAC实现的。MS接收到VLR转发的来自HLR的MAC=f1K(SQNRANDAMF),计算XMAC=f1K(SQNRANDAMF),在保证SQN的正确性前提下,MACXMAC,则认证成功。

2.2MS与VLR之间的密钥分配

VLR在协议第三步接收到来自HLR的认证向量中包含了加密密钥CKHLR与完整性密钥IKHLR,合法用户在收到正确的随机数RAND后,能正确产生CKMS=f3K(RAND),IKMS=f4K(RAND),并且CKHLRCKMS,IKHLRIKMS。CK与IK将用于其后的保密通信,而CK与IK未在无线接口中传输,确保了密钥的安全性。

2.3确保MS与VLR之间密钥的新鲜性

MS与VLR之间每次通信均采用不同的密钥CK与IK。由于每次通信前的认证选择了不同的认证向量,保证每次通信采用的密钥CK与IK是采用不同的随机数计算得到。而每次使用的消息认证码MAC是由不断递增的序列号SQN作为其输入变量之一,保证了认证消息的新鲜性,从而确保密钥的新鲜性,有效地防止了重放攻击。

2.43G认证和密钥协商协议(AKA)的安全漏洞和可能受到的攻击

通过对上述协议过程分析发现,该认证方案实现了VLR对MS以及MS对HLR的认证,而不要求MS对VLR进行认证。攻击者A可利用截获的合法用户身份标识进行的攻击如下:

(1)MSA:IMSI

(2)AVLR:IMSI

(3)VLRHLR:IMSI

(4)HLRVLR:AV=RANDXRESCKIKAUTN

(5)VLRA:RANDAUTN

(6)AMS:RANDAUTN

(7)MSA:RES

(8)AVLR:RES

这样,攻击者A就可以假冒该用户身份入网。但由于加密密钥CK与完整性密钥IK未在无线接口中传输,攻击者无法获得这些密钥而进行正常的保密通信。另外,上述方案没有考虑到网络端的认证与保密通信。如果攻击者对VLR与HLR之间的信息进行窃听,就可以获得HLR传给VLR的认证向量AV,从而可获得加密密钥CK与完整性密钥IK。此时,攻击者再假冒该合法用户身份入网,即可实现正常的保密通信,而且合法用户传送的信息也就失去的保密性。

3基于混沌映射的Hash函数为内核算法的AKA安全算法设计

3.1算法的函数

这一内核算法可以用函数表示为Core(I1,I2,I3,P),I1,I2,I3,每个输入参数长度为128bit,分别作为Hash算法的明文输入,p对于Hash算法而言,表示需要进行Hash运算的次数,函数的输出长度为160bit。据此,AKA协议中涉及到的函数f0、fl、fl*、f2、f3、f4、f5和f5*可分为以下3类表述:

(1)f0函数对函数f0,其输入只要是内部状态即可,我们设置如下参数:op,长度为128bti,为or函数的特有操作员变量;Seed,长度为128bti的秘密种子;函数识别符idf0,长度8bit。

(2)fl、fl*函数fl、fl*函数的共同输入参数有:密钥K,长125bit;随机数RAND,长128bit;设置操作员变量op,长125bit;SQN,长48bit,AMF,长16bit。对fl和fl*,采用同一次计算的结果,取Result的高64bit作为fl*函数的输出.

(3)f2、f3、f4、fs、fs*函数这些函数的共同输入参数有:密钥K,长128bit;随机数RAND,长128bit;设置操作员变量op,长128bit。此外,各函数的输入参数还有函数识别符dif:对函数f2,dif=dif2;对函数f3,dif=dif3;对函数f4,dif=dif4。令I1=op,I2=RAND(dif000dif000dif000),I3=K,Result=Core(I1,I2,I3,P)。

对函数f2和f5,取Result的低64位作为f2函数的输出,取Result的高48bit作为f5函数的输出。对函数绍f3或f4,Result即作为f3或4f的输出。对函数,取Result的高48bit作为f5*函数的输出。

3.2仿真结果

由于新的AKA算法设计的安全性依赖于内核算法Hash函数的安全性,所以仿真重点放在对Hash函数性能的测试上面。根据3.1所述算法编制了程序,并作了大量测试,以下是截取的部分实验。取初始文本1为“Find”,文本2将文本1中首字母F改为G,调整的原则是保证后面的文本相对于文本1只有1hit的变化。同时分别去p=1,2做测试。

Hash结果用十六进制表示,得到的Hash结果分别为:(l)P=l时:

文本一:

10l0000l00l000001000l0100O01l0ll0ll11lI00l1l01l001l01l0000lO0l0I01l1lO001l00l11000ll011ll0ll000000l0l00O111lll0100010llll000000000011010111100101000-100000001100

文本二:

10001l100l11ll100010l0l11OlO0011l011l01010l10010l100l1100ll1001101011000ll1000110Ol0ll10ll01100ll01100000110001001O0l100ll0100l0lO11001110101101000010-0100110110

(二)p=2时:

文本一:

01000l0100010l10010101001l01lllO0ll1l1l000101111001100001l00111l011011001000l10l0010000l1l00000111ll0101l11l11001l10l110ll001l00Ol10001010000010110110-1100010010

文本2:

0010100ll01100l100l110011l11001O00ll00100101O0l011001001ll1l0010000101110111101001000000l010000l10ll101001010000l10001l001l100O00000110010001110010001-1111110101

从仿真结果我们可以看出该算法的单项hash性能很好,初值的每bit变动,结果都会发生很大的变化,具有很高的初值敏感度。

第5篇:通信协议范文

传输层的安全协议包括SOCKv5、TLS、SSL等,其中SOCKv5协议工作在传输层及应用层之间,其扩展了IPv6地址、寻址方案、框架等内容。TLS由IETF标准化,是SSL通用的加密协议。SSL协议工作在传输层和应用层之间,被作为标准集成在浏览器上。但该协议只能在TCP上应用,而无法应用到UDP上。

1.3网络层安全协议

IPSec协议工作在网络层上,具备认证、加密功能,适合应用在IPv4、IPv6上,可为基于TCP/IP协议的应用,提供安全保障。

1.4网络接口层安全协议

网络接口层安全协议包括L2TP、L2F、PPTP等,其中L2TP协议是基于数据链路层的隧道协议,其融合了PPTP、L2F的优点。L2F为第二层转发协议,基于ISP,为RAS提供VPN功能。PPTP协议在IP网上建立隧道实现PPP帧的透明传输,其对PPP会话进行延伸,实现了远程拨号的虚拟化。

2网络安全协议的应用

网络安全协议为计算机通信过程中应遵守的规范,因此,为保证计算机通信的安全性,充分发挥网络安全协议的作用,应用网络安全协议时应注重考虑以下内容:

2.1深入分析原理,掌握工作机理

众所周知,网络安全协议类型较多,不同的协议工作原理及内容不尽相同,因此,要求技术人员加强安全协议理论知识学习。一方面,熟练掌握安全协议工作原理。不同的安全协议在网络上发挥的作用不同,如上文所述,有些协议工作在应用层,有些工作在传输层,而有些工作在网络层,技术人员明确不同协议下信息的构成、传输原理、工作模式等,布设在合理的层面之上。另一方面,明确安全协议体系构成。技术人员应做好不同协议的体系分析,明确协议包括的内容,以及安全性能,根据计算机通信需要,布置安全性能好、最优的安全协议,切实保障计算机通信安全。

2.2细解安全需求,优化协议使用

网络安全协议的部署专业性较强,为充分发挥各协议的安全防护作用,提高部署工作效率,技术人员应认真落实以下内容:一方面,认真分析计算机通信的安全需求。为使不同安全协议间相互补充,杜绝计算机信息传输过程中可能发生的泄漏、攻击等情况,技术人员应认真分析信息通信需求,明确传输信息对安全级别的要求,以确定最佳的协议部署方案,保证信息安全传输的同时,提高网络资源利用率。另一方面,选择最优部署方案。计算机通信中可部署不同的安全协议,为充分发挥各安全协议优势,需要技术人员做好不同安全协议部署方案的研究,充分论证各安全协议优势,选择最佳的安全协议组合。

2.3进行全面测试,做好分析总结

计算机通信技术中,安全协议部署需要设置较多参数,对技术人员的专业水平要求较高,因此,为保证各安全协议均能正常运行,要求技术人员做好以下工作:一方面,部署网络安全协议后,有时会因参数设置不合理,导致安全协议不能正常工作。为保证安全协议均能正常运行,做好部署后的调试工作尤为重要。技术人员应尝试传输信息,结合计算机通信实际情况,认真分析通信安全存在的问题,分析哪些安全协议设置的合理、哪些安全协议未发挥作用,找到原因后及时进行改进、优化,将协议参数设置在合理范围内。另一方面,技术人员做好调试工作总结与分析,总结安全协议部署中存在的问题,分享安全协议部署经验,以及应注意的事项等,不断提升网络安全协议部署水平与质量。

3结束语

网络安全协议保障了计算机通信的安全性,为充分发挥不同协议的保护作用,技术人员应加强安全协议知识的学习与研究,保证网络安全通信协议的合理部署。笔者通过将网络安全协议运用于某单位视频会议系统,经过多次测试验证,得出以下运用意见:(1)网络安全协议是计算机通信应遵守的规则,保证计算机通信的安全性。根据协议工作的层面,可将网络安全协议分为:应用层安全协议、传输层安全协议、网络层安全协议以及网络接口层安全协议。(2)为充分发挥网络安全协议的保护作用,应做好安全协议的应用研究,一方面,做好不同安全协议理论知识学习,明确不同协议下保障信息安全传输的机制。另一方面,结合计算机通信对安全级别的要求,制定合理的网络协议部署方案,合理设置安全协议相关参数。另外,做好计算机通信安全调试工作,及时发现与处理安全协议部署中存在的问题,堵住安全漏洞,为计算机通信功能的安全、稳定发挥奠定坚实基础。

参考文献

[1]冯瀚霄.网络安全协议在计算机通信技术当中的作用分析[J].中国新通信,2018,20(03):142-143.

[2]代欣.网络安全协议在计算机通信创新技术中的作用[J].数字通信世界,2018(01):137.

第6篇:通信协议范文

  关键词:计算机 网络通信协议

  0 引言  

  本文就计算机网络通信协议、选择网络通信协议的原则、tcp/ip通信协议的安装、设置和测试等,作进一步的研究和探讨。

1 网络通信协议

目前,局域网中常用的通信协议主要有:netbeui协议、ipx/spx兼容协议和tcp/ip协议。

1.1 netbeui协议 ①netbeui是一种体积小、效率高、速度快的通信协议。在微软如今的主流产品,在windows和windows nt中,netbeui已成为其固有的缺省协议。netbeui是专门为几台到百余台pc所组成的单网段部门级小型局域网而设计的。②netbeui中包含一个网络接口标准netbios。netbios是ibm用于实现pc间相互通信的标准,是一种在小型局域网上使用的通信规范。该网络由pc组成,最大用户数不超过30个。

1.2 ipx/spx及其兼容协议 ①ipx/spx是novell公司的通信协议集。与netbeui的明显区别是,ipx/spx显得比较庞大,在复杂环境下具有很强的适应性。因为,ipx/spx在设计一开始就考虑了多网段的问题,具有强大的路由功能,适合于大型网络使用。②ipx/spx及其兼容协议不需要任何配置,它可通过“网络地址”来识别自己的身份。novell网络中的网络地址由两部分组成:标明物理网段的“网络id”和标明特殊设备的“节点id”。其中网络id集中在netware服务器或路由器中,节点id即为每个网卡的id号。所有的网络id和节点id都是一个独一无二的“内部ipx地址”。正是由于网络地址的唯一性,才使ipx/spx具有较强的路由功能。在ipx/spx协议中,ipx是netware最底层的协议,它只负责数据在网络中的移动,并不保证数据是否传输成功,也不提供纠错服务。ipx在负责数据传送时,如果接收节点在同一网段内,就直接按该节点的id将数据传给它;如果接收节点是远程的,数据将交给netware服务器或路由器中的网络id,继续数据的下一步传输。spx在整个协议中负责对所传输的数据进行无差错处理,ipx/spx也叫做“novell的协议集”。③nwlink通信协议。windows nt中提供了两个ipx/spx的兼容协议:“nwlink spx/spx兼容协议”和“nwlink netbios”,两者统称为“nwlink通信协议”。nwlink协议是novell公司ipx/spx协议在微软网络中的实现,它在继承ipx/spx协议优点的同时,更适应了微软的操作系统和网络环境。windows nt网络和windows的用户,可以利用nwlink协议获得netware服务器的服务。从novell环境转向微软平台,或两种平台共存时,nwlink通信协议是最好的选择。

1.3 tcp/ip协议 tcp/ip是目前最常用到的一种通信协议,它是计算机世界里的一个通用协议。在局域网中,tcp/ip最早出现在unix系统中,现在几乎所有的厂商和操作系统都开始支持它。同时,tcp/ip也是internet的基础协议。①tcp/ip具有很高的灵活性,支持任意规模的网络,几乎可连接所有的服务器和工作站。但其灵活性也为它的使用带来了许多不便,在使用netbeui和ipx/spx及其兼容协议时都不需要进行配置,而tcp/ip协议在使用时首先要进行复杂的设置。每个节点至少需要一个“ip地址”、一个“子网掩码”、一个“默认网关”和一个“主机名”。在windows nt中提供了一个称为动态主机配置协议(dhcp)的工具,它可自动为客户机分配连入网络时所需的信息,减轻了联网工作上的负担,并避免了出错。同ipx/spx及其兼容协议一样,tcp/ip也是一种可路由的协议。tcp/ip的地址是分级的,这使得它很容易确定并找到网上的用户,同时也提高了网络带宽的利用率。当需要时,运行tcp/ip协议的服务器(如windows nt服务器)还可以被配置成tcp/ip路由器。与tcp/ip不同的是,ipx/spx协议中的ipx使用的是一种广播协议,它经常出现广播包堵塞,所以无法获得最佳的网络带宽。②windows中的tcp/ip协议。windows的用户不但可以使用tcp/ip组建对等网,而且可以方便地接入其它的服务器。如果windows工作站只安装了tcp/ip协议,它是不能直接加入windows nt域的。虽然该工作站可通过运行在windows nt服务器上的服务器(如proxy server)来访问internet,但却不能通过它登录windows nt服务器的域。要让只安装tcp/ip协议的windows用户加入到windows nt域,还必须在windows上安装netbeui协议。

③tcp/ip协议在局域网中的配置。只要掌握了一些有关tcp/ip方面的知识,使用起来也非常方便。④ip地址。tcp/ip协议也是靠自己的ip地址来识别在网上的位置和身份的,ip地址同样由“网络id”和“节点id”(或称host id,主机地址)两部分组成。一个完整的ip地址用32位(bit)二进制数组成,每8位(1个字节)为一个段(segment),共4段(segment1~segment4),段与段之间用“,”号隔开。为了便于应用,ip地址在实际使用时并不直接用二进制,而是用大家熟悉的十进制数表示,如192.168.0.1等。在选用ip地址时,总的原则是:网络中每个设备的ip地址必须唯一,在不同的设备上不允许出现相同的ip地址。⑤子网掩码。子网掩码是用于对子网的管理,主要是在多网段环境中对ip地址中的“网络id”进行扩展。例如某个节点的ip地址为192.168.0.1,它是一个c类网。其中前面三段共24位用来表示“网络id”;而最后一段共8位可以作为“节点id”自由分配。⑥网关。网关(gateway)是用来连接异种网络的设置。它充当了一个翻译的身份,负责对不同的通信协议进行翻译,使运行不同协议的两种网络之间可以实现相互通信。如运行tcp/ip协议的windows nt用户要访问运行ipx/spx协议的novell网络资源时,则必须由网关作为中介。如果两个运行tcp/ip协议的网络之间进行互联,则可以使用windows nt所提供的“默认网关”(default gateway)来完成。⑦主机名。网络中唯一能够代表用户或设备身份的只有ip地址。但一般情况下,众多的ip地址不容易记忆,操作起来也不方便。为了改善这种状况,我们可给予每个用户或设备一个有意义的名称,如“haoyun”。

2 选择网络通信协议的原则

2.1 所选协议要与网络结构和功能相一致。如你的网络存在多个网段或要通过路由器相连时,就不能使用不具备路由和跨网段操作功能的netbeui协议,而必须选择ipx/spx或tcp/ip等协议。另外,如果你的网络规模较小,同时只是为了简单的文件和设备的共享,这时你最关心的就是网络速度,所以在选择协议时应选择占用内存小和带宽利用率高的协议,如netbeui。当你的网络规模较大,且网络结构复杂时,应选择可管理性和可扩充性较好的协议,如tcp/ip。

2.2 除特殊情况外,一个网络尽量只选择一种通信协议。现实中许多人的做法是一次选择多个协议,或选择系统所提供的所有协议,其实这样做是很不可取的。因为每个协议都要占用计算机的内存,选择的协议越多,占用计算机的内存资源就越多。一方面影响了计算机的运行速度,另一方面不利于网络的管理。事实上一个网络中一般一种通信协议就可以满足需要。

2.3 注意协议的版本。每个协议都有它的发展和完善过程,因而出现了不同的版本,每个版本的协议都有它最为合适的网络环境。从整体来看,高版本协议的功能和性能要比低版本好。所以在选择时,在满足网络功能要求的前提下,应尽量选择高版本的通信协议。

2.4 协议的一致性。如果要让两台实现互联的计算机间进行对话,它们两者使用的通信协议必须相同。否则中间还需要一个“翻译”进行不同协议的转换,这样不仅影响通信速度,同时也不利于网络的安全和稳定运行。

3 tcp/ip通信协议的安装、设置和测试 

局域网中的一些通信协议,在安装操作系统时会自动安装netbeui通信协议;在安装netware时,系统会自动安装ipx/spx通信协议。在3种协议中,netbeui和ipx/spx在安装后不需要进行设置就可以直接使用,但tcp/ip要经过必要的设置。下面是windows nt环境下的tcp/ip协议的安装、设置和测试方法。①tcp/ip通信协议的安装:在windows nt中,如果未安装有tcp/ip通信协议,可选择“开始/设置/控制面板/网络”,出现“网络”对话框后,选择对话框中的“协议/添加”命令,选取其中的tcp/ip协议,然后单击“确定”按钮。系统会询问你是否要进行“dhcp服务器”的设置。如果你的ip地址是固定的,可选择“否”。随后,系统开始从安装盘中复制所需的文件。②tcp/ip通信协议的设置:在“网络”对话框中选择已安装的tcp/ip协议,打开其“属性”,在指定的位置输入已分配好的“ip地址”和“子网掩码”。如果该用户还要访问其他windows nt网络的资源,还可以在“默认网关”处输入网关的地址。③tcp/ip通信协议的测试:当tcp/ip协议安装并设置结束后,为了保证其能够正常工作,在使用前一定要进行测试。笔者建议大家使用系统自带的工具程序ping.exe,该工具可以检查出任何一个用户是否与同一网段的其他用户连通,是否与其他网段的用户正常连接,同时还能检查出自己的ip地址是否与其他用户的ip地址发生冲突。

第7篇:通信协议范文

[关键词]局域网;通信协议;tcp/ip

how to configure the communication protocols of the lan

wang guang ming

(class one,grade three,department of computer science,zaozhuang teachers' college,zaozhuang 277100)

abstract: based on the lan,for netware、windows 95/98 and the main is windows nt operation system,this paper introduce and analysis the characteristic、 capability and the essential configure method of the communication protocols.

key words: lan;communication protocols; tcp/ip

    不同的网络协议都有其存在的必要,每一种协议都有它所主要依赖的操作系统和工作环境。在一个网络上运行得很好的通信协议,在另一个看起来很相似的网络上可能完全不适合。因此,组建网络时通信协议的选择尤为重要。

    无论是几台机器组成的windows 95/98对等网,还是规模较大的windows nt、novell或unix/xenix局域网,凡是亲自组建或管理过网络的人,都遇到过如何选择和配置网络通信协议的问题。由于许多用户对网络中的协议及其功能特点不是很清楚,所以在组网中经常选用了不符合自身网络特点的通信协议。其结果就造成了网络无法接通,或者是速度太慢,工作不稳定等现象而影响了网络的可靠性。 下面我就分析一下各个协议的特点和性能借以说明我配置协议的理论和立场。

一、通信协议

组建网络时,必须选择一种网络通信协议,使得用户之间能够相互进行“交流”。协议(protocol)是网络设备用来通信的一套规则,这套规则可以理解为一种彼此都能听得懂的公用语言。关于网络中的协议可以概括为两类:“内部协议”和“外部协议”下面分别予以介绍。

1.内部协议

1978年,国际标准化组织(iso)为网络通信制定了一个标准模式,称为osi/rm(open system interconnect/reference model,开放系统互联参考模型)体系结构。该结构共分七层,从低到高分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中,任何一个网络设备的上下层之间都有其特定的协议形式,同时两个设备(如工作站与服务器)的同层之间也有其使用的协议约定。在这里,我们将这种上下层之间和同层之间的协议全部定义为“内部协议”。内部协议在组网中一般很少涉及到,它主要提供给网络开发人员使用。如果你只是为了组建一个网络,可不去理会内部协议。

2.外部协议

外部协议即我们组网时所必须选择的协议。由于它直接负责计算机之间的相互通信,所以通常称为网络通信协议。自从网络问世以来,有许多公司投入到了通信协议的开发中,如ibm、banyan、novell、microsoft等。每家公司开发的协议,最初一般是为了满足自己的网络通信,但随着网络应用的普及,不同网络之间进行互联的要求越来越迫切,因此通信协议就成为解决网络之间互联的关键技术。就像使用不同母语的人与人之间需要一种通用语言才能交谈一样,网络之间的通信也需要一种通用语言,这种通用语言就是通信协议。目前,局域网中常用的通信协议(外部协议)主要有netbeui、ipx/spx及其兼容协议和tcp/ip三类。

3.选择网络通信协议的原则

我们在选择通信协议时一般应遵循以下的原则:

第一、所选协议要与网络结构和功能相一致。如你的网络存在多个网段或要通过路由器相连时,就不能使用不具备路由和跨网段操作功能的netbeui协议,而必须选择ipx/spx或tcp/ip等协议。另外,如果你的网络规模较小,同时只是为了简单的文件和设备的共享,这时你最关心的就是网络速度,所以在选择协议时应选择占用内存小和带宽利用率高的协议,如netbeui。当你的网络规模较大,且网络结构复杂时,应选择可管理性和可扩充性较好的协议,如tcp/ip。

第二、除特殊情况外,一个网络尽量只选择一种通信协议。现实中许多人的做法是一次选择多个协议,或选择系统所提供的所有协议,其实这样做是很不可取的。因为每个协议都要占用计算机的内存,选择的协议越多,占用计算机的内存资源就越多。一方面影响了计算机的运行速度,另一方面不利于网络的管理。事实上一个网络中一般一种通信协议就可以满足需要。

第三、注意协议的版本。每个协议都有它的发展和完善过程,因而出现了不同的版本,每个版本的协议都有它最为合适的网络环境。从整体来看,高版本协议的功能和性能要比低版本好。所以在选择时,在满足网络功能要求的前提下,应尽量选择高版本的通信协议。

第四、协议的一致性。如果要让两台实现互联的计算机间进行对话,它们两者使用的通信协议必须相同。否则中间还需要一个“翻译”进行不同协议的转换,这样不仅影响通信速度,同时也不利于网络的安全和稳定运行。

二、局域网中常用的三种通信协议

1.netbeui协议

■netbeui通信协议的特点。netbeui(netbios extended user interface,用户扩展接口)由ibm于1985年开发完成,它是一种体积小、效率高、速度快的通信协议。netbeui也是微软最钟爱的一种通信协议,所以它被称为微软所有产品中通信协议的“母语”。微软在其早期产品,如dos、lan manager、windows 3.x和windows for workgroup中主要选择netbeui作为自己的通信协议。在微软如今的主流产品,如windows 95/98和windows nt中,netbeui已成为其固有的缺省协议。有人将winnt定位为低端网络服务器操作系统,这与微软的产品过于依赖netbeui有直接的关系。netbeui是专门为几台到百余台pc所组成的单网段部门级小型局域网而设计的,它不具有跨网段工作的功能,即netbeui不具备路由功能。如果你在一个服务器上安装了多块网卡,或要采用路由器等设备进行两个局域网的互联时,将不能使用netbeui通信协议。否则,与不同网卡(每一块网卡连接一个网段)相连的设备之间,以及不同的局域网之间将无法进行通信。

虽然netbeui存在许多不尽人意的地方,但它也具有其他协议所不具备的优点。在三种通信协议中,netbeui占用内存最少,在网络中基本不需要任何配置。尤其在微软产品几乎独占pc操作系统的今天,它很适合于广大的网络初学者使用。

■netbeui与netbios之间的关系。细心的读者可能已经发现,netbeui中包含一个网络接口标准netbios。netbios(network basic input/output system,网络基本输入/输出系统)是ibm在1983年开发的一套用于实现pc间相互通信的标准,其目的是开发一种仅仅在小型局域网上使用的通信规范。该网络由pc组成,最大用户数不超过30个,其特点是突出一个“小”字。后来,ibm发现netbios存在的许多缺陷,所以于1985年对其进行了改进,推出了netbeui通信协议。随即,微软将netbeui作为其客户机/服务器网络系统的基本通信协议,并进一步进行了扩充和完善。最有代表性的是在netbeui中增加了叫做smb(server message blocks,服务器消息块)的组成部分,以降低网络的通信堵塞。为此,有时将netbeui协议也称为“smb协议”。

人们常将netbios和netbeui混淆起来,其实netbios只能算是一个网络应用程序的接口规范,是netbeui的基础,它不具有严格的通信协议功能。而netbeui是建立在netbios基础之上的一个网络传输协议。

2.ipx/spx及其兼容协议

■ipx/spx通信协议的特点。ipx/spx(internetwork packet exchange/sequences packet exchange,网际包交换/顺序包交换)是novell公司的通信协议集。与netbeui的明显区别是,ipx/spx显得比较庞大,在复杂环境下具有很强的适应性。因为,ipx/spx在设计一开始就考虑了多网段的问题,具有强大的路由功能,适合于大型网络使用。当用户端接入netware服务器时,ipx/spx及其兼容协议是最好的选择。但在非novell网络环境中,一般不使用ipx/spx。尤其在windows nt网络和由windows 95/98组成的对等网中,无法直接使用ipx/spx通信协议。

■ipx/spx协议的工作方式。ipx/spx及其兼容协议不需要任何配置,它可通过“网络地址”来识别自己的身份。novell网络中的网络地址由两部分组成:标明物理网段的“网络id”和标明特殊设备的“节点id”。其中网络id集中在netware服务器或路由器中,节点id即为每个网卡的id号(网卡卡号)。所有的网络id和节点id都是一个独一无二的“内部ipx地址”。正是由于网络地址的唯一性,才使ipx/spx具有较强的路由功能。

在ipx/spx协议中,ipx是netware最底层的协议,它只负责数据在网络中的移动,并不保证数据是否传输成功,也不提供纠错服务。ipx在负责数据传送时,如果接收节点在同一网段内,就直接按该节点的id将数据传给它;如果接收节点是远程的(不在同一网段内,或位于不同的局域网中),数据将交给netware服务器或路由器中的网络id,继续数据的下一步传输。spx在整个协议中负责对所传输的数据进行无差错处理,所以我们将ipx/spx也叫做“novell的协议集”。

■nwlink通信协议。windows nt中提供了两个ipx/spx的兼容协议:“nwlink spx/spx兼容协议”和“nwlink netbios”,两者统称为“nwlink通信协议”。nwlink协议是novell公司ipx/spx协议在微软网络中的实现,它在继承ipx/spx协议优点的同时,更适应了微软的操作系统和网络环境。windows nt网络和windows 95/98的用户,可以利用nwlink协议获得netware服务器的服务。如果你的网络从novell环境转向微软平台,或两种平台共存时,nwlink通信协议是最好的选择。不过在使用nwlink协议时,其中“nwlink ipx/spx兼容协议”类似于windows 95/98中的“ipx/spx兼容协议”,它只能作为客户端的协议实现对netware服务器的访问,离开了netware服务器,此兼容协议将失去作用;而“nwlink netbios”协议不但可在netware服务器与windows nt之间传递信息,而且能够用于windows nt、windows 95/98相互之间任意通信。

3.tcp/ip协议

tcp/ip(transmission control protocol/internet protocol,传输控制协议/网际协议)是目前最常用到的一种通信协议,它是计算机世界里的一个通用协议。在局域网中,tcp/ip最早出现在unix系统中,现在几乎所有的厂商和操作系统都开始支持它。同时,tcp/ip也是internet的基础协议。

■tcp/ip通信协议的特点。tcp/ip具有很高的灵活性,支持任意规模的网络,几乎可连接所有的服务器和工作站。但其灵活性也为它的使用带来了许多不便,在使用netbeui和ipx/spx及其兼容协议时都不需要进行配置,而tcp/ip协议在使用时首先要进行复杂的设置。每个节点至少需要一个“ip地址”、一个“子网掩码”、一个“默认网关”和一个“主机名”。如此复杂的设置,对于一些初识网络的用户来说的确带来了不便。不过,在windows nt中提供了一个称为动态主机配置协议(dhcp)的工具,它可自动为客户机分配连入网络时所需的信息,减轻了联网工作上的负担,并避免了出错。当然,dhcp所拥有的功能必须要有dhcp服务器才能实现。

同ipx/spx及其兼容协议一样,tcp/ip也是一种可路由的协议。但是,两者存在着一些差别。tcp/ip的地址是分级的,这使得它很容易确定并找到网上的用户,同时也提高了网络带宽的利用率。当需要时,运行tcp/ip协议的服务器(如windows nt服务器)还可以被配置成tcp/ip路由器。与tcp/ip不同的是,ipx/spx协议中的ipx使用的是一种广播协议,它经常出现广播包堵塞,所以无法获得最佳的网络带宽。

■windows 95/98中的tcp/ip协议。windows 95/98的用户不但可以使用tcp/ip组建对等网,而且可以方便地接入其它的服务器。值得注意的是,如果windows 95/98工作站只安装了tcp/ip协议,它是不能直接加入windows nt域的。虽然该工作站可通过运行在windows nt服务器上的服务器(如proxy server)来访问internet,但却不能通过它登录windows nt服务器的域。如果要让只安装tcp/ip协议的windows 95/98用户加入到windows nt域,还必须在windows 95/98上安装netbeui协议。

■tcp/ip协议在局域网中的配置。在提到tcp/ip协议时,有许多用户便被其复杂的描述和配置所困扰,而不敢放心地去使用。其实就局域网用户来说,只要你掌握了一些有关tcp/ip方面的知识,使用起来也非常方便。

ip地址基础知识。前面在谈到ipx/spx协议时就已知道,ipx的地址由“网络id”(network id)和“节点id”(node id)两部分组成,ipx/spx协议是靠ipx地址来进行网上用户的识别的。同样,tcp/ip协议也是靠自己的ip地址来识别在网上的位置和身份的,ip地址同样由“网络id”和“节点id”(或称host id,主机地址)两部分组成。一个完整的ip地址用32位(bit)二进制数组成,每8位(1个字节)为一个段(segment),共4段(segment1~segment4),段与段之间用“.”号隔开。为了便于应用,ip地址在实际使用时并不直接用二进制,而是用大家熟悉的十进制数表示,如192.168.0.1等。ip地址的完整组成:“网络id”和“节点id”都包含在32位二进制数中。目前,ip地址主要分为a、b、c三类(除此之外,还存在d和e两类地址,现在局域网中这两类地址基本不用,故本文暂且不涉及),a类用于大型网络,b类用于中型网络,c类一般用于局域网等小型网络中。其中,a类地址中的最前面一段segment1用来表示“网络id”,且segment1的8位二进制数中的第一位必须是“0”。其余3段表示“节点id”;b类地址中,前两段用来表示“网络id”,且segment1的8位二进制数中的前二位必须是“10”。后两段用来表示“节点id”;在c类地址中,前三段表示“网络id”,且segment1的8位二进制数中的前三位必须是“110”。最后一段segment4用来表示“节点id”。

值得一提的是,ip地址中的所有“网络id”都要向一个名为internic(internet network information center,互联网络信息中心)申请,而“节点id”可以自由分配。目前可供使用的ip地址只有c类,a类和b类的资源均已用尽。不过在选用ip地址时,总的原则是:网络中每个设备的ip地址必须唯一,在不同的设备上不允许出现相同的ip地址。表1列出了ip地址中的“网络id”的有关属性,“节点id”在互不重复的情况下由用户自由分配。其实,将ip地址进行分类,主要是为了满足网络的互联。如果你的网络是一个封闭式的网络,只要在保证每个设备的ip地址唯一的前提下,三类地址中的任意一个都可以直接使用(为以防万一,你还是老老实实地使用c类ip地址为好)。

子网掩码。对ip地址的解释称之为子网掩码。从名称可以看出,子网掩码是用于对子网的管理,主要是在多网段环境中对ip地址中的“网络id”进行扩展。举个例子来说明:例如某个节点的ip地址为192.168.0.1,它是一个c类网。其中前面三段共24位用来表示“网络id”,是非常珍贵的资源;而最后一段共8位可以作为“节点id”自由分配。但是,如果公司的局域网是分段管理的,或者该网络是由多个局域网互联而成,是否要给每个网段或每个局域网都申请分配一个“网络id”呢?这显然是不合理的。此时,我们可以使用子网掩码的功能,将其中一个或几个节点的ip地址全部充当成“网络id”来使用,用来扩展“网络id”不足的困难。

当我们将某一节点的ip地址如192.168.0.1已设置成一个“网络id”时,网络上的其它设备又怎样知道它是一个“网络id”,而不是一个节点ip地址呢?这就要靠子网掩码来告知。子网掩码是这样做的:如果某一位的二进制数是“1”,它就知道是“网络id”的一部分;如果是“0”便认作是“节点id”的一部分。如将192.168.0.1当做“网络id”时,其子网掩码就是11111111.11111111.11111111.00000001,对应的十进制数表示为255.255.255.1。否则它的子网掩码就是11111111.11111111.11111111.00000000,对应的十进制数表示应为255.255.255.0。有了子网掩码,便可方便地实现用户跨网段或跨网络操作。不过,为了让子网掩码能够正常工作,同一子网中的所有设备都必须支持子网掩码,且子网掩码相同。表2列出了a、b、c三类网络的缺省子网掩码。

网关。网关(gateway)是用来连接异种网络的设置。它充当了一个翻译的身份,负责对不同的通信协议进行翻译,使运行不同协议的两种网络之间可以实现相互通信。如运行tcp/ip协议的windows nt用户要访问运行ipx/spx协议的novell网络资源时,则必须由网关作为中介。如果两个运行tcp/ip协议的网络之间进行互联,则可以使用windows nt所提供的“默认网关”(default gateway)来完成。网关的地址该如何分配呢?可举一个例子来回答:假如a网络的用户要访问b网络上的资源,必须在a网络中设置一个网关,该网关的地址应为b网络的“网络id”(一般可理解为b网络服务器的ip地址)。当a网络的用户同时还要访问c网络的资源时又该怎么呢?你只需将c网络的“网络id”添加到a网络的网关中即可。依次类推……网关连多少个网络,就拥有多少个ip地址。

主机名。网络中唯一能够代表用户或设备身份的只有ip地址。但一般情况下,众多的ip地址不容易记忆,操作起来也不方便。为了改善这种状况,我们可给予每个用户或设备一个有意义的名称,如“wangqun”。至于在网络中用到“wangqun”时,怎样知道其对应的ip地址呢?这完全由操作系统自己完成,我们大可不必考虑。

三、通信协议的安装、设置和测试

局域网中的一些协议,在安装操作系统时会自动安装。如在安装windows nt或windows 95/98时,系统会自动安装netbeui通信协议。在安装netware时,系统会自动安装ipx/spx通信协议。其中三种协议中,netbeui和ipx/spx在安装后不需要进行设置就可以直接使用,但tcp/ip要经过必要的设置。所以下文主要以windows nt环境下的tcp/ip协议为主,介绍其安装、设置和测试方法,其他操作系统中协议的有关操作与windows nt基本相同,甚至更为简单。

■tcp/ip通信协议的安装。在windows nt中,如果未安装有tcp/ip通信协议,可选择“开始/设置/控制面板/网络”,将出现“网络”对话框,选择对话框中的“协议/添加”,选取其中的tcp/ip协议,然后单击“确定”按钮。系统会询问你是否要进行“dhcp服务器”的设置?如果你的ip地址是固定的(一般是这样),可选择“否”。随后,系统开始从安装盘中复制所需的文件。

■tcp/ip通信协议的设置。在“网络”对话框中选择已安装的tcp/ip协议,打开其“属性”,在指定的位置输入已分配好的“ip地址”和“子网掩码”。如果该用户还要访问其它widnows nt网络的资源,还可以在“默认网关”处输入网关的地址。

■tcp/ip通信协议的测试。当tcp/ip协议安装并设置结束后,为了保证其能够正常工作,在使用前一定要进行测试。笔者建议大家使用系统自带的工具程序:ping.exe,该工具可以检查任何一个用户是否与同一网段的其他用户连通,是否与其他网段的用户连接正常,同时还能检查出自己的ip地址是否与其他用户的ip地址发生冲突。假如服务器的ip地址为192.168.0.1,如要测试你的机器是否与服务器接通时,只需切换到dos提示符下,并键入命令“ping 192.168.0.1”即可。如果出现类似于“reply from 192.168.0.1……”的回应,说明tcp/ip协议工作正常;如果显示类似于“request timed out”的信息,说明双方的tcp/ip协议的设置可能有错,或网络的其它连接(如网卡、hub或连线等)有问题,还需进一步检查。

四、小结

在组建局域网时,具体选择哪一种网络通信协议主要取决于网络规模、网络间的兼容性和网络管理几个方面。如果正在组建一个小型的单网段的网络,并且对外没有连接的需要,这时最好选择netbeui通信协议。如果你正从netware迁移到windows nt,或两种平台共存时,ipx/spx及其兼容协议可提供一个很好的传输环境。如果你正在规划一个高效率、可互联性和可扩展性的网络,tcp/ip则将是理想的选择。

参考文献

[1]阮家栋 俞丽和 《微型计算机网络原理及应用》 北京 中国纺织大学出版社 1995

第8篇:通信协议范文

关键词:成套仪表;无线通信;通信协议

1 概述

成套仪表在工业生产领域有着广泛的应用。随着无线网络技术和传感技术的快速发展,使组建成套仪表远程无线通信网络成为可能[1]。成套仪表远程无线通信网络是通过仪表、无线通信设备、传感器等信息采集和传输设备,按照一定的协议将分布在现场的所有仪表与互联网络相连接,进行信息的采集与通信,从而实现远程化测量信息监控与管理的一种网络[2]。近些年,在各级政府和各工业领域的积极推动下,国内的成套仪表远程无线通信网络的建设及其应用也取得了巨大进展[3]。由于成套仪表远程无线通信网络涉及到工业生产的效率和数据的安全,相关部门投入了大量的研发资源,建设和扩展了各类成套仪表远程无线通信网络。不同种类的成套仪表远程无线通信网络采用的设备也存在巨大的差异,但大都采用的是智能终端的形式,通过无线设备接入到互联网,实现远程无线通信。由于不同的设备其功能和型号也各不相同,如此如何对这些设备资源进行整合,实现统一的信息采集与传输,已经成为当前成套仪表领域中的一个研究热点,受到了越来越多专家和学者的关注。针对该问题,提出一种基于Modbus TCP协议的成套仪表远程无线通信协议的设计方法。

2 成套仪表远程无线通信网络的框架分析

成套仪表远程无线通信网络主要由硬件部分和软件部分构成。硬件部分主要负责现场监控信息的采集,主要包括仪表、传感器、仪表数据控制平台、无线通信设备构成;软件部分主要负责监控信息的传输,主要包括仪表数据控制平台中的嵌入式系统与远程终端监控系统。仪表数据控制平台用于处理使用各类仪表在现场采集到的测量信息,嵌入式系统向下负责各种仪表的信息采集、数据封装与协议转换,向上响应上层指令,为上层提供准确的测量信息。成套仪表远程无线通信网络的核心为Modbus TCP 协议,通过该协议进行测量信息的传输与接收、各个仪表的运行状态的显示与测量数值的变化显示。成套仪表远程无线通信网络中的异常情况报警、历史数据查询等功能也需要通过Modbus TCP 协议来实现。通过Modbus TCP 协议,能够实现不同类型终端设备的监控与远程集中管理。

3 成套仪表远程无线通信协议的设计策略

3.1 Modbus TCP协议

Modbus是一种应用层的数据通信协议,它位于OSI(开放式系统互联)模型中的第7层,通过Modbus协议可以为不同类型的总线(或网络)与成套仪表之间提供服务器/客户机通信。Modbus通信协议的出现,使得分散的自动化设备之间组建通信网络成为可能。Modbus是一个请求/应答协议,可以通过TCP/IP栈上的502端口进行访问,并可以提供标准的功能码服务。Modbus 功能码是Modbus 请求/应答PUD(协议数据单元)中的核心。成套仪表远程无线通信网络使用Modbus TCP通信协议,主要通过01和03的功能码,读取成套仪表传输的测量信息。

3.2 远程无线通信协议的设计策略

成套仪表远程无线通信协议设计的策略主要有以下几点:

(1)根据设备接口编程。通信协议根据设备接口编程,在实际使用中需要判断具体设备实现的功能,使用设备时由设备的接口决定配置的方式。这种设计方法可以通过自由配置实现多种功能,设备的兼容性更强。

(2)采用动态配置方法。通过动态配置策略能够对多种设备资源进行有效整合和分类,根据不同类别的成套仪表设备,采用动态配置的策略来实现兼容多种成套仪表设备的目的,同时根据成套仪表类别的不同设计不同的解析策略。动态配置的策略可以使成套仪表远程无线通信网络的功能得到扩展,从而扩大了成套仪表远程无线通信网络的应用范围。

(3)逻辑分层的设计方法。成套仪表远程无线通信协议在设计上采用三层逻辑分层。从上到下分别为界面层、视图模型层和业务模型层。其中业务模型层又包括通信层、解析层、资源层、模型层和公共层。通过三个逻辑分层,可以使业务模型层与界面层分开,界面层与视图模型层相关联。视图模型层通过业务模型层中获得各种资源并为界面层提供这些资源。这种设计方法可以使Modbus通信协议中的代码得到最大限度的利用,从而实现不同的通信功能。

3.3 成套仪表远程无线通信协议的框架设计

3.3.1 物理部署结构的设计

在成套仪表远程无线通信网络的物理部署设计中,每一个成套仪表都可以连接多个仪表数据控制平台,而仪表数据控制平台又决定着其与远程终端监控系统之间采用的通信协议。通信协议采用Modbus TCP协议进行指令和数据通信。

3.3.2 通信协议的逻辑结构

通信协议采用三层逻辑分层设计,分别为界面层、视图模型层和业务模型层。

界面层:主要功能是显示各个成套仪表的实时测量信息的实时数据与变化趋势,并提供异常数据报警与处理功能。

视图模型层:主要功能是获取下一层(业务模型层)中的测量信息,并将测量信息传输到界面层中显示,界面层中显示的内容在视图模型层进行处理。

业务模型层:主要用于获取成套仪表远程无线通信网络中不同的设备、资源等信息。该层又可分为通信层、解析层、资源层、模型层和公共层等五个子层。各子层的功能分别为:(1)通信层:用于接收和发送Modbus TCP消息;(2)解析层:用于测量信息的解析与转换;(3)资源层:用于获取网络中各类成套仪表设备以及其它通信设备的资源信息,供系统调用;(4)模型层:用于测量对象的描述以及业务逻辑;(5)公共层:用于异常测量信息的报警、解决方法、资源配置保存等功能。

在通信协议中进行逻辑分层设计,能够对各项逻辑进行分解与细化,从而实现组件的互换。

3.3.3 通信协议的扩展设计

采用协议转换的方法对成套仪表远程无线通信协议进行扩展设计。具体的方法是,采用配置文件的方式,并通过可扩展的数据转换插件,将各个仪表采用的通信协议转换为Modbus TCP协议,并通过仪表数据控制平台中的解析器对通信协议进行转换,从而实现了不同类型、不同型号的成套仪表的接入,提高了成套仪表远程无线通信网络的可扩展性。

成套仪表远程无线通信网络在监控时采用并行的多线程无线通信设备接收和发送信息,针对每一个成套仪表采集终端,采用轮询的方式进行信息采集。

4 结束语

针对当前成套仪表远程无线通信网络存在的不足,提出一种基于Modbus TCP协议的成套仪表远程无线通信协议的设计方法。首先对成套仪表远程无线通信网络的框架进行了分析,然后提出了基于Modbus TCP协议的成套仪表远程无线通信协议的设计策略。通过对通信协议框架的设计与设计理念的阐述,为构建高兼容性、高易用性的成套仪表远程无线通信网络的构建提供了一定的参考。

参考文献

[1]王露瑶,金钟辉.油田转接站的无线仪表通信方案设计与应用[J].电子技术与软件工程,2015(2):40.

第9篇:通信协议范文

关键词:MODBUS PLC 变频器

中图分类号:TP273 文献标识码:A 文章编号:1007-9416(2012)02-0072-02

1、引言

MODBUS作为一种简单易用的通讯协议已经越来越多的应用在各类仪器仪表中,下面笔者以西门子公司的S7200PLC通过自由口与ABB公司的ACS510变频器使用MODBUS协议进行通信为例,对MODBUS通讯的应用进行叙述,以期达到抛砖引玉的效果。

2、硬件配置

图1给出了SIMATIC S7-200CPU与四台ABB ACS510变频器构成的MODBUS网络。S7-200CPU为主工作站。变频器1、变频器2,变频器3和变频器4为从工作站。设置变频器的通讯协议参数9802均为1,即变频器通过RS485串行通讯口和MODBUS总线相连。设置通讯速率参数5303为19.2kb/s。设置校验方式参数5304为偶校验,1个停止位。设置控制类型参数5305为 ABB传动简版。从左到右变频器1、2、3和4的站地址参数5302分别设置为3、4,5和6,并将变频器4的总线终端电阻DIP开关置ON。在对变频器以上参数设置完成后应对传动重新上电激活,使新地址及通讯协议生效。

变频器控制要求:

变频器分现场和远程两种控制模式,现场控制柜设置三位置模式选择开关,分别为停止、本控和远程。在本控模式下启动/停止命令由现场开关触发数字输入DI1控制,频率由现场的电位器改变模拟输入AI1的输入电压进行调节。当选择远程模式时,数字输入DI2接通,通知PLC现变频器已经处于远程控制模式。为能够实现以上功能并在人机界面能够观察到变频器的运行频率和通过模拟输入AI2输入的实际流量,还需要对变频器其他部分参数进行设置,见表1。

3、程序设计

3.1 通讯内容

主工作站轮流发送请求报文到每个变频器从工作站,随之每个从工作站产生响应报文。PLC主工作站分别对每个变频器从工作站进行如下操作:

(1)对每个变频器的输出线圈1~3的状态进行查询;

(2)查询变频器状态寄存器40004状态字、40005实际值、40006实际值和40007实际值。40005~40007数据值对应于表1中变频器参数5310、5311和5312中的实际值。

(3)写变频器控制字,对变频器的远程启停进行控制。

(4)写变频器寄存器,对变频器的外部2给定进行控制。

对一个变频器的数据全部读写完成后,开始对下一站号变频器的数据进行读写。当所有变频器的数据读写完成后,主工作站重新开始对最小站号变频器的数据进行读写。数据的传输及接受采用PLC自由通讯口模式进行,报文按照modbus的协议组织。

3.2 通讯格式

MODBUS请求报文格式如表2。

因在S7-200PLC发送指令XMT中,发送缓冲器的第一个字节指定的是数据传输的字节数,从第二个字节以后的数据为需要发送的数据。因此,结合MODBUS请求报文格式,PLC发送数据的格式如表3。

在整个网络通信过程中,主工作站轮流发送请求报文到每个从工作站,随之每个从工作站必须产生响应报文返回到主工作站。当主工作站向从工作站发送请求报文和接受从工作站返回的响应报文时,在主工作站储存区开辟了发送缓冲区和接受缓冲区。主工作站向从工作站发送请求报文时,首先对相应从工作站输出缓冲区的数据进行CRC运算生成校验码,并将校验码叠加在输出缓冲区的数据之后再传送到发送缓冲区,然后再由发送指令发出。建立一个远程循环结束标志位,当响应报文全部接受完成,置该位为ON。主工作站在接受从工作站的响应报文时,先把响应报文输入到接受缓冲区,再把接受缓冲区中的数据传送到输入缓冲区。为此,在主工作站中要留有两个数据存储区,一个作为报文请求(输出缓冲区),另一个作为报文响应(输入缓冲区)。

在MODBUS RTU通讯协议中都必须要求有CRC循环冗余校验。CRC循环冗余校验为两个字节,附加在报文后面的CRC的值由发送设备计算,当放置CRC 值于报文时,高低字节必须交换。首先发送低位字节,然后再发送高位字节。故此在发送缓冲区中的数据要比输出缓冲区的数据多两个CRC循环冗余校验字节。接收设备在接收报文时重新计算CRC的值,并将计算结果于实际接收到的CRC值相比较。如果两个值不相等,则传送的数据为错误。

3.3 程序描述

SBR0子程序:在PLC上电初始化阶段,设置通讯口为自由口通信方式,并设置波特率及校验方式,允许全部中断时件,并设置定时中断的时基为20毫秒。在这里设置波特率为19.2KB/S,偶校验,每字符8个数据。注意必须与从工作站的通讯参数相同。为输出和输入缓冲区的数据地址建立间接寻址指针。并设置请求报文的剩余数目为4,设置从工作站的查询剩余数目为4。

将输出缓冲区指针中指出的地址为起始地址的12个字节通过块传送命令传送到发送缓冲区单元中。并复位远程循环结束标志位。

对发送缓冲区中的报文进行运算生成CRC,交换CRC 寄存器中的高低字节,并将交换完成的CRC 寄存器叠加到发送缓冲区中。

启动定时中断和发送中断,并通过发送指令将发送缓冲区中的请求报文发送。

建立跳转入口,标号1。

若循环未结束,跳转到标号1。程序不向下执行,直至远程循环结束,标志位为ON。

远程I/O更新完成,将接受的报文通过块传送命令传送到接受缓冲区指针指出的接受缓冲区中。

修改发送缓冲区和接受缓冲区指针值,指向下一个输出和输入缓冲区字节地址。将请求报文的剩余数目减1。

当请求报文的剩余数目为零时,重新设置请求报文的剩余数目为4,将从工作站的查询剩余数目减1。

当工作站的查询剩余数目为零时,重新设置从工作站的查询剩余数目为4,为输出和输入缓冲区的数据地址重新建立间接寻址指针。

INT_0中断程序:在接受报文超时情况下,禁止接受中断和接受定时中断,置远程循环结束标志位为ON。

INT_1中断程序:在发送超时情况下禁止发送中断和发送定时中断,置PLC为STOP模式。

INT_10中断程序:禁止发送完成中断,启动接受定时中断INT_0和接受数据中断程序INT_11。

INT_11中断程序:若接受的首字符(从工作站地址)为从工作站的正确地址,则建立一个接受字符的地址指针。并把接受到的字符装入到接受字符指针指出地址中。增加指针的数值,指向下一个地址。并启动中断程序INT_12。

INT_12中断程序:把接受到的第二个字符(功能码)装入到接受字符指针指出地址中,增加指针的数值,指向下一个地址。启动中断程序INT_13。

INT_13中断程序:把收到的第三个字符(字节数)装入到接受字符指针指出地址中,并修改指针值。第三个字符为接受的不含CRC校验码字符的总数目,剩余接受字符数目为将字节数加2,若反馈的功能码为十六进制数0F,全部剩余字符数目为5。将全部剩余字符数目置入到累加器AC1中,当累加器AC1为零时,接收字符也就完成。启动中断程序INT_14。

INT_14中断程序:将接受到的字符装入接受字符指针指出地址中,并修改地址指针值和将将累加器AC1数值减一。若累加器AC1的数值为零。则关闭字符接受中断和定时中断,并将远程循环结束标志位置ON。

4、结语

该系统自投入在线运行以来,系统调节迅速且运行稳定,并取得了良好的经济效果,在助剂添加中具有较高的推广价值。

参考文献

[1]殷洪义.可编程序控制器选择、设计与维护.机械工业出版社,2002年.

[2]S7-200可编程控制器系统手册.2004年.