时间:2023-03-17 17:56:30
序论:好文章的创作是一个不断探索和完善的过程,我们为您推荐十篇数据通信论文范例,希望它们能助您一臂之力,提升您的阅读品质,带来更深刻的阅读感受。
二、数据通信的应用及发展前景
(一)移动数据通信在业务上的应用
1.移动数据通信的应用是利用移动通信的系统进行数据通信,它不仅可以作为固定的数据通信,还能够实现移动的图文传真、计算机联网、远距离传输等。由于移动数据的通信设备具有个性化的特点,因此数据传输的时候往往会由于一个网络端口会被人们多次使用,所以会经常出现拥堵的情况,由此便造成了多个连接终端不顺利进数据传输。但是移动数据通信就不会出现这种情况,我们只需要根据正常的程序进行,一个终端只负责一个用户,提高了数据传输的效率。除此之外,移动数据通信还能够实现电脑与电脑之间的远程操作和简单的数据传送,这样就利于人们在业务频繁的时候,可以随时随地的进行数据传输,从而达到省时高效的目的。由此可以发现,移动数据的通信可以使用户及时的收发消息。
2.帧中继技术应用。所谓的帧中继应用,主要是指使用光纤作为主要的传输方式,由于帧中继由于具有出错率低的技术特点,从而受到了人们的广泛关注。目前为止,这种技术被作为主要的宽带数据接口,也是交换数据的一种手段。但是这种方式不适用语音或者是视频这类传输,其具有特定的服务特性。
2西门子CP544的通讯协议
CP544卡是西门子S5系列的专门的点对点串口通讯卡。它有3种通讯协议,分别是RK512、3964和OPENDRIVER协议。其中前两种协议因为需要设置西门子PLC能识别的目的地址,所以只能在西门子系列的设备中使用。要与电能表进行通讯,只能采用OPENDRIVER协议。该协议的特点是不管通讯设备的地址,只需确定西门子PLC侧的发送地址和接收地址即可。图3为西门子PLC通过CP544卡与电能表通讯的示意图。在图3中,PLC程序将指定的发送数据块通过SEND发送程序块,在物理上经CP544通讯卡与新电能表进行串口通讯,将请求报文发送给电能表。而电能表中的数据报文也通过串口通讯方式经CP544卡再经过RECEIVE-ALL接收程序块存放到指定的接收数据块中。串口通讯一个最基本的要求就是通讯双方的通讯参数设置必须一致。根据电能表的要求,CP544卡有以下设置。通讯基本参数:通讯模式选择:MODE2Variableusefuldatalength(endcharacter)波特率:2400b/s数据位:8位停止位:1位奇偶校验:无流量控制:无字节传送监控时间:20ms第一个结束识别字节(endcharacter1):03H(这个非常关键,设置03是为了与电能表的报文终止位相适应,否则通讯不能成功)第二个结束识别字节(endcharacter2):00H另外数据接收地址也在CP544卡设置软件中进行设置如表2:在表2中,分别设置了CP544卡两个通讯接口的接收地址分别为DB11和DB12,接收字长最大为64个字。通讯接口从CP544卡到RS485/232转换器,再到电能表的通讯链路的通讯接口接线如图4所示。
3通讯程序编写
按照前面部分所述的报文收发格式及CP544的相关协议要求,对西门子PLC与电能表通讯的控制程序进行了重新编写和调试,在程序的编写调试过程中,解决了电能表报文应答式收发存储、电能表数据CRC校验码解码、不同数制格式的转换和临界数据显示不稳定等几个技术难点,实现了新的电能表与PLC的数据通讯,使得电度值在上位机上得以重新显示并自动打印。
2USB设备驱动程序及应用程序的设计
WindowsZO00/XP驱动程序。以Windows2000操作系统为例,Windows2000系统可以使用多种驱动程序,图2中显示了其中几种。WDM驱动程序的分层。WDM采用分层驱动的方法,即在用户应用程序和硬件设备之间存在着几个不同的驱动程序,每个驱动程序对应一层,且不同层上的驱动程序可以相互调用。为适用于即插即用系统,WDM重新定义了驱动程序的分层结构,其主要包含如下三种类型的驱动程序,即总线驱动程序、功能驱动程序和过滤驱动程序。WDM驱动程序的组成。简单地说,驱动程序是一些例程的集合,它们被动地存在,等待主机系统软件(PnP管理器、I/O管理器、电源管理等)来调用或激活它们。具体驱动程序不同,其所包含的例程也不同。驱动程序入口例程:处理驱动程序的初始化。DriverEntry例程是驱动程序入口点,由FO管理器在驱动程序加载时调用它负责执行一些初始化操作,主要工作是设置驱动程序对象(DriverEniry)中指向各种例程的指针。在其驱动程序中必须包括这些例程的具体函数实现,以便主机系统软件的调用。即插即用例程:处理PnP设备的添加!删除和停止。从用户的角度来看,即插即用是很容易理解的,当连接某个新设备时,Windows会自动识别,并提示用户选择正确的驱动程序,之后它就可以被使用了;当设备被断开时,Windows将检测到这个事件并作相关处理,不需要用户的干预。USB设备驱动程序的设计。Windows下的USB设备驱动程序遵循WDM标准,其主要分为三个层次:最高层,是用户开发的被称为USB设备驱动程序;中间层为USB类驱动程序,在Windows98中为us-bd.sys;最低层为主机控制器驱动程序,有两种主机控制器驱动程序,即通用主机控制器驱动程序和开放主机控制器接口。
2数据通信的分类
1)有线数据通信。①数字数据网(DDN),主要由四部分组成,分别是用户环路、DDN节点、数字信道及网络控制管理中心。DDN是一种数字通信网络,它把数字通信技术、数据通信技术、光迁通信技术以及数字交叉连接技术有机的结合在一起。②分组交换网(PSPDN),又称为X.25网,采用CCITTX.25协议。PSPDN采用存储—转发的方式,将用户传来的报文分割成一定长度的数据段,并在各数据段上添加控制信息,构成一个能在网上传输的带有地址的分组组合群体。PSPDN的主要优点是为了达到多用户同时使用,可同时开放多条虚通路于一条电路上,并具有先进的误码检错功能和动态路由选择功能,但通信性能较差。③帧中继网,起源于X.25分组交换技术,主要包括存取设备、交换设备、公共帧中继服务网三部分。帧中继网它可在帧中继帧中将不同长度的用户数据组包封,并在网络传输前添加控制及寻址信息。2)无线数据通信。无线数据通信是以有线数据通信为基础,而采用无线电波传送数据的通信方式,也可称为移动数据通信,它是计算机网络与数据通信相结合的产物,可实现网络计算机之间或人与计算机终端之间的通信。无线数据通信也是依靠有线数据网将网路应用扩展至便携式用户。
3网络及其协议
1.2过程变量应用层接口1)过程变量标识符在一个设备内,过程变量由其所在的数据集(DS_Name)和其在数据集中的位偏移量(Var_Offset)来标识[6]。通过总线传送时,过程变量由逻辑地址和被传送的数据集的位偏移量来识别。2)AVI原语应用变量接口AVI定义了变量提供给总线的服务。应用变量接口原语只访问通信存储器的端口,并没有触发总线的通信。在应用变量接口中,过程变量是单个访问的,属于数据集的一部分。为了提高传输效率,属于同一个数据集的过程变量作为一个坚固的整体进行传送和存储。过程变量和其所在数据集的刷新定时器一起在一次不可分割的操作中获取[7]。应用变量接口AVI原语分为3类:单个变量访问,集合访问,群集访问。
2过程数据通信设计思路
2.1过程数据链路层的设计
2.1.1过程数据链路层数据结构设计在链路层传输的数据属于数据集的一部分,数据集由其DS_Name来标识。
2.1.2过程数据链路层接口函数设计此函数用于实现过程数据模块的初始化功能。首先,读取配置文件建立相应的端口属性表来建立初值。然后进行差错判断,分为通信存储器标识和端口地址的判断,如果超出了系统设定的最大值,那么初始化过程失败。只有在以上条件为真的情况下,才初始化强制变量表和数据集预定表。2)过程“lp_put_dataset”此函数用于数据集的发送,从应用拷贝一个数据集到通信存储器中的端口。首先,要对输入参数的合法性进行检查,主要是对通信存储器和端口地址进行检查,判断是否在系统设定的范围内。在完成参数检查后,开始进行数据的发送,将数据拷入相应的端口中,同时,前一次的数据集将被覆盖。3)过程“lp_get_dataset”此函数用于接收数据集,即从端口拷贝一个数据集和其刷新定时器到应用层。首先,要检查输入参数的合法性,分别是对通信存储器标识和端口地址的值的判断。然后,根据相应的端口属性表,将端口中的数据集和刷新定时器拷贝到应用提供的内存中。
2.2过程变量应用层的设计
2.2.1过程变量应用层数据结构设计1)单个变量数据结构设计对于单个变量,利用结构体PV_NAME来描述一个变量,如下:2)集合变量数据结构集合变量使用结构体PV_SET来标识同一个数据集的一组变量,包括每个变量拷入(或拷出)的内存地址以及整个数据集的刷新定时器。3)群集变量数据结构群集结构体PV_Cluster标识一组PV_Set,由通信存储器进行排序。
2.2.2过程数据应用层接口函数设计1)函数“ap_put_variable”此函数用于单个变量的发送,从应用内存地址空间拷贝一个单个过程变量及检查变量到通信存储器。首先,检查PV_NAME参数的合法性,从PV_NAME中获取数据集DS_NAME的信息,接着调用lp_get_dataset函数从相应的端口读取数据集,然后根据PV_NAME中var_type类型,分7种情况进行数组元素个数和数据派生类型的计算,根据计算结果将过程变量和检查变量拷贝到数据集中,变量上一次的值被覆盖。在上述过程完成后,调用lp_put_dataset函数将数据集拷贝到宿端口中。2)函数“ap_get_variable”此函数用于单个变量的接收,从通信存储器拷贝一个过程变量及检查变量和刷新定时器到应用内存的地址空间。首先,要对PV_NAME进行参数检查,然后根据PV_NAME获取的端口信息,调用lp_get_dataset函数从相应的端口获取数据集。接着就根据算法从数据集中获取过程变量和检查变量。3)函数“ap_put_set”此函数用于集合变量的发送,在一次不可分割的操作中,从应用内存地址空间拷贝集合变量到端口。首先,获取PV_LIST中DS_NAME信息,根据相应的ts_id和port_address调用lp_get_dataset函数获取数据集。接着,将变量写进数据集中,在进行此操作前,先对PV_LIST进行参数的检查。在检查完成后,调用lp_put_dataset函数将数据集拷贝至相应的端口。4)函数“ap_get_set”此函数用于集合变量的接收,在一次不可分割的操作中,从端口拷贝属于同一个集合中的过程变量到应用内存地址空间。首先,对PV_LIST进行参数的检查,检查通过后,根据PV_LIST中DS_NAME的信息,调用lp_get_dataset函数获取数据集,然后根据算法将数据集中的变量进行提取,实现群集变量接收的功能。5)函数“ap_put_cluster”此函数用于群集变量的发送,从应用拷贝一个变量群集到通信存储器中,属于同一个PV_SET的变量一起拷贝。其实现的过程和函数ap_put_set相同,只是在参数检查上改为对PV_SET的检查。6)函数“ap_get_cluster”此函数用于群集变量的接收,从通信存储器拷贝过程变量的一个群集到本地用户实体。其实现的过程和函数ap_get_set基本相同,不同点在于参数检查是对PV_SET的检查。
3过程数据实时协议通信测试验证
3.1测试验证平台由于变量服务对于MVB和WTB通信存储器的访问原理和实现过程相同,因此测试基于MVB设备间的过程数据通信来验证链路层和应用层接口功能[8]。本测试连接以D113为核心的MVB主设备、UIC网关A、B两组的MVB通信板以及MVB协议分析设备,组成拥有一主、三从的MVB通信网络,如图3所示,连接无误后各套设备上电准备,UIC网关的两组从设备分别与电脑主机通过以太网相连,MVB协议分析设备通过USB与电脑主机相连。
3.2过程数据链路层测试及验证首先启动D113MVB板卡的PC104核心模块进入winxp系统,启动UIC网关MVB板下位机VxWorks系统。然后启动上位机Tornado集成开发环境,运行FTP服务器程序Tftpd32,建立连接后,下载MVB实时协议栈代码。接着就开始进行端口配置,在测试中,配置0x001,0x002,0x005为源端口,接收来自D113MVB板卡发出的数据,3个端口功能码分别为0,1,4,接收字节数为2,4,32,配置0x008,0x009,0x00a为宿端口,向D113MVB板发送数据,功能码为2,接收的字节数为8,测试结果如图4,图5所示。链路层接口向上层应用提供数据集的读写操作,对于应用是不可见的,因此,为了测试的可视性,在上层应用中设计了两个函数ap_get_dataset和ap_put_dataset,这两个函数调用了链路层lp_put_dataset和lp_get_dataset这两个收发数据集的函数,测试时能实时反应出收发数据的情况。通过以上两个结果图可以看出,D113板卡和UIC网关的MVB板卡能准确地互相接收和发送数据,验证了过程数据链路层能正常的进行数据通信,功能得以实现。
3.3过程数据应用层测试及验证应用层的测试针对集合和群集变量的收发进行了试验。在进行集合变量测试时,配置主设备端口0x004为源端口,功能码为4,从设备配置相应的宿端口。群集变量测试配置0x003端口,数据0x10和0xAA在数组1中,0xA1A2在数组2中,两个数组整合成一个变量集合发送。测试结果如图6~8所示。根据图6~8,集合变量和群集变量能准确的收发和接收,验证了实时协议变量应用层接口能正常使用,功能得以验证。
数据报分为报文头部和数据部两部分,其格式如图2所示。报文头部由6字节组成,第1、2字节AB表示报文长度,即报文头部长度加上数据部长度;第3、4字节CD表示整个报文的校验和;第5、6字节XX表示应答ACK;第7、8字节GH表示报文序号。数据报长度AB范围为0~65535,所以一个报文最大为8KB。数据部长度等于报文长度(AB)减去报文头长度(8B)。2.2数据处理与报文处理数据处理包括分割上层应用提供的数据,以及从报文还原拼接数据;报文处理包括格式化报文以提供给串口发送以及从串口读取报文、校验报文、提取数据。
1.2.1数据分割
协议从应用程序接口获取应用程序提供的数据并以流式数据写入发送方数据缓冲区;然后以事先设定的数据分割长度取数据,长度不足的部分则全部取出,取数据指针移动相应距离。
1.2.2报文组装
报文的组装过程如下:
(1)计算取出数据的长度,填入报文第1、2字节;
(2)报文第3~6字节全部置0;
(3)计算报文序号GH;
(4)计算校验和,从第1字节开始,每两个字节为一个单元进行分割,末尾不足两字节则在其后补0,再将这些单元进行二进制反码求和,结果存在检验和字段中第3、4字节;
(5)将取出的数据接在报文头部后面,将整个报文写入报文缓冲区。
1.2.3报文拆分
报文拆分的具体步骤如下:
(1)从报文缓冲区按报文长度获取报文数据;
(2)计算校验和,方法同报文组装里的计算方法:如果校验和不为0xFFFF,则传输过程中发生差错,丢弃此报文;如果校验和为0xFFFF,取出报文长度及报文序号,计算数据部长度,取出数据。
1.2.4数据拼接
将从报文取出的数据填入接收方数据缓冲区,写数据指针移动相应距离;接收完最后一个数据后,协议将数据缓冲区中的数据提供给上层应用程序,写数据指针恢复初始值。
1.3数据报传输过程
数据报传输情况分为考虑定时器超时和不考虑定时器超时两种,定时器超时处理应属于中断调用。
1.3.1传输过程数据报传输过程如下:
(1)在进行数据报传输前,发送方将数据分割并装进报文,ACK置为0x0000,计算报文序号,再将报文送入报文缓冲区。
(2)开始发送时,串口按已经设定的工作方式和波特率工作,从报文缓冲区获取报文数据并发送。
(3)发送方发送完毕一个数据报后,停止发送,启动定时器计时,准备接收响应。
(4)接收方串口接收数据并填入报文缓冲区。
(5)接收方从报文缓冲区获取报文数据,进行校验:
①若接收方校验结果为正确,则取出数据;若接收的ACK=0x0011并且收到的序号等于前面一个报文的序号,则将数据覆盖到前一块数据,否则将数据填入数据缓冲区;记录报文序号,发送数据部为空、ACK=0x1111的报文。
②若接收方校验结果为错误,则丢弃数据报,发送数据部为空、ACK=0x1110的报文,通知发送方重发。
(6)接收方每次处理完数据报均初始化并启动定时器计时,刚收到数据报时关闭定时器。
(7)发送方收到响应报文,校验通过则关闭定时器,获取ACK,若ACK=0x1111,则发送下一个数据报;若ACK=0x1110,则重发当前数据报(ACK置0x0011)。如果校验不通过就丢弃此数据报,仍保持定时器计时。
(8)双方重复以上步骤直到最后一个报文发送完毕。
(9)发送方发送最后一个报文完成后,发送数据部为空、ACK=0x0001的报文提示数据传输完毕,若此报文发送后收到重传响应,则重发此数据报(ACK仍置0x0001)。
1.3.2定时器超时处理
若发送方定时器达到发送方超时等待时间仍未收到响应报文,则重传当前数据报(ACK置0x0011),连续超时三次还没收到应答则停止发送数据报,清空报文缓冲区和数据缓冲区,并向应用程序返回通信失败。若接收方定时器达到接收方超时等待时间仍未收到报文,清空报文缓冲区和数据缓冲区,关闭定时器,并向上层应用程序返回通信失败。
中国移动、中国电信、中国联通三大运营商IP数据骨干网,基本覆盖了所有省会节点和大部分地市节点,采用核心、汇聚和接入3层结构。它们基本都采用BGPMPLSVPN承载业务,建立了服务质量保证(QoS)体系,在全网部署了IGP/LDP快速收敛功能,并部署了MPLSTEFRR链路保护功能,域内路由协议采用IS-IS,并通过MP-iBGP传播MPLSVPN路由信息。
1.2铁路既有IP数据网
铁路数据通信网由建设于不同时期的客运专线数据网、铁通公司划转的专用数据网及铁路综合计算机网(TMIS数据网)3个相对独立的网络构成。客运专线数据网目前已经覆盖了铁路总公司,各铁路局的调度中心,京沪、京石武、武广、甬台温、温福、郑西、沪宁、沪杭等已建成的客运专线沿线站段、动车所等业务节点。铁路局区域网络由核心节点、汇聚节点、接入节点构成。骨干网络暂采用北京、武汉、西安、上海局区域网络的核心节点路由器作为临时域间数据转发节点,满足各铁路局对总公司区域网络间,以及各铁路局区域网络间数据路由转发需求。客运专线数据网采用MPLSVPN实现对业务的承载。既有普速线数据网大部分为铁通公司划转铁路之前的铁通建设,目前各铁路局网进行基础通信网改造工程,在改造完成后基本实现了对既有普速线所有车站的覆盖,并实现了与客运专线数据网的整合。铁路综合计算机网为2层网络结构,覆盖铁路总公司、铁路局及部分车站。随着网络安全工程的实施,铁路总公司、铁路局机关局域网实行三网分离,即局域网被分割成内部服务网、安全生产网、外部服务网3个逻辑子网,分属于不同的安全域。TMIS网络以路局为分界点,路局以上是骨干网,路局以下是基层网,总公司至各路局为星形组网。目前TMIS数据网与客运专线数据网(即铁路数据通信网)未实现整合。
2铁路数据通信网网络建设
铁路数据通信网建设的目标为以既有数据网为基础,整合成一张综合的IP数据网,实现对不涉及行车安全及资金往来的铁路信息系统和通信数据业务的承载,采用适合铁路需求的技术策略,提高数据网络运行效率。
2.1骨干网建设方案
骨干网络由汇接节点、转发节点和接入节点组成。骨干网汇接节点设置在铁路总公司;转发节点设置在北京、西安、武汉、上海、成都;接入节点设置在各铁路局。每个节点设置2台路由器。骨干网为一个独立自治域。北京、武汉、西安转发节点间构成半网状连接方式,相邻骨干网转发节点间互联,每个转发节点与总公司节点间直联,实现全网流量在骨干网层面转发;骨干网接入节点同时与2个大区转发节点互联。骨干网节点间采用10GEWAN接口互联。
2.2区域网络建设方案
每个铁路局区域网络均作为一个独立的自治域,区域网络间的互访通过骨干网络实现。铁路局区域网络由铁路局所在地的核心节点、业务相对集中的汇聚节点和接入节点组成。接入节点到汇聚节点间、汇聚节点到核心节点间的连接,在城市范围内或有需求的节点,采用星形或环形方式接入上层节点,在铁路沿线范围,接入节点采用链型双归方式接入汇聚节点。对于接入节点,采用分层PE技术,在大型车站部署SPE节点,小型站段或工区部署UPE节点。
2.3既有数据网整合方案
由于TMIS数据网承载着货票、确报、调度、车号自动识别、行车安全监控(5T)、铁路办公自动化、统计、工务、财务核算等多个应用系统,因此,铁路数据网与TMIS网络的整合要分步骤实施。第一步:TMIS数据网业务之间存在大量互通需求,因此没有对承载业务做严格的访问隔离,而铁路数据通信网采用VPN方式实现业务接入,为避免对TDMS广域网承载业务造成影响,第一步将承载的全部业务以一个统一VPN接入铁路数据网。第二步:新的信息业务直接接入铁路数据网,TMIS既有业务逐步向铁路数据网割接,业务割接后TMIS网络设备根据性能及配置情况,融入铁路数据网各类节点中,实现一张统一的数据网,实现信息资源共享。
2.4技术策略
铁路数据通信网采用骨干网络及区域网络二级构建,在区域网络接入节点,采用分层PE构建。铁路数据通信网骨干网络链路由OTN承载,采用10GE接口;铁路局区域网络核心、汇聚节点间的链路及接入节点到汇聚节点间的链路,主要由OTN承载,采用GE接口;接入节点间的链路主要由光纤承载,采用GE接口。为保证数据网对业务承载的可靠性,数据网要求OTN承载网启用保护机制,并利用传输网络保护机制、数据网故障检测恢复机制及两者的协调配合,来共同保证数据网的可靠性。数据网通过lay-er3MPLSVPN实现对业务的承载,保证不同业务组的安全隔离,采用OptionB方式实现VPN跨域互通;将layer2MPLSVPN作为补充,提供基于MartiniVLL业务。采用区分业务(DiffServ)同时结合CBQ以及CAR等多种技术方式,来保证各类业务的QoS。骨干网络依靠高带宽的设计提供网络的轻载来保证SLA,采用IPDSCP、IPTOS和MPLSEXP字段标识QoS等级;在PE路由器实现QoS的等级化标记,根据初始业务类型提供6类服务等级对应6种队列;部分关键业务,如GSM-R/GPGS、会议电视、软交换等,考虑直接在区域网核心节点下设置独立的PE接入设备,基于物理端口进行分类和标识。在全网部署路由快速收敛功能,启用BFD完成快速链路故障探测,先期在骨干网络转发节点间对重要业务(如GSM-R/GPRS业务)进行MPLS-TEFRR的部署。域内路由协议采用IS-IS,并通过MP-iBGP传播MPLSVPN路由信息,域间协议采用E-BGP。骨干网络及各区域网络均为独立AS。在骨干网接入路由器部署流量采集设备,在铁路总公司节点设置流量分析与统计服务器,对各铁路局引入骨干网流量进行统计分析,并对异常流量进行告警。数据网为铁路专网综合IP网,与公众互联网采用物理隔离;全网通过实施MPLSVPN,完成各业务系统的隔离;网络支持分域、分权管理;对于网络设备的服务配置,遵循最小化服务原则,关闭网络设备不需要的物理端口及服务;对网络设备实行交互式访问安全措施;支持对接入业务限速处理;在IS-IS、BGP等协议中启用校验和认证功能;网管区域的防火墙具有入侵检测功能;在网络互联端口开启I-SISHello的MD5认证;在区域网出口限制BGP对等体(peer)以外IP地址对179端口的访问。在MPLS环境下向IPv6演进,在所有IPv6业务不需隔离时,可采用6PE技术实现;在IPv6业务需隔离的情况下,可采用6VPE技术实现。
有效保障数据通信网络的稳定性和安全性,就必须充分发挥技术人力资源的作用,积极构建起健全完善的数据通信平台,并积极对系统平台的安全性进行科学的全面的评估。作为一名合格具备专业化技术的人员,应按照相关制度要求和标准流程,设置科学的评估方式,对整个网络环境进行系统的评估,并适时给予安全调整,准确分析潜在的用户群体以及信息源,并对他们进行安全评估和识别,充分了解数据通信网络的发展实际,以此为出发点开展系统安全性的分析活动。
1.2及时排查隐存的安全威胁
定期开展网络安全的检查与维修活动,以及时确保数据信息的可靠性与真实性得到有效的安全确认,避免服务器的终端设备以及信息网中的硬件设备和软件设备受到恶意破坏,防止系统网络受到不法分子的严重攻击,达到对数据库内部的信息进行保密的目的。所以这就要求专业化的技术人员需以对网络安全性的有效评估为前提,全面仔细存在的隐形的安全威胁,积极设置高效的网管设置等形式,不断优化系统漏洞,拒绝一切不法分析用户的对网络系统的入侵和攻击,降低安全风险的发生。
2路由器与交换机漏洞的发现和防护
作为通过远程连接的方式实现网络资源的共享是大部分用户均会使用到的,不管这样的连接方式是利用何种方式进行连接,都难以避开负载路由器以及交换机的系统网络,这是这样,这些设备存在着某些漏洞极容易成为黑客的攻击的突破口。从路由器与交换机存在漏洞致因看,路由与交换的过程就是于网络中对数据包进行移动。在这个转移的过程中,它们常常被认为是作为某种单一化的传递设备而存在,那么这就需要注意,假如某个黑客窃取到主导路由器或者是交换机的相关权限之后,则会引发损失惨重的破坏。纵观路由与交换市场,拥有最多市场占有率的是思科公司,并且被网络领域人员视为重要的行业标准,也正因为该公司的产品普及应用程度较高,所以更加容易受到黑客攻击的目标。比如,在某些操作系统中,设置有相应的用于思科设备完整工具,主要是方便管理员对漏洞进行定期的检查,然而这些工具也被攻击者注意到并利用工具相关功能查找出设备的漏洞所在,就像密码漏洞主要利用JohntheRipper进行攻击。所以针对这类型的漏洞防护最基本的防护方法是开展定期的审计活动,为避免这种攻击,充分使用平台带有相应的多样化的检查工具,并在需要时进行定期更新,并保障设备出厂的默认密码已经得到彻底清除;而针对BGP漏洞的防护,最理想的办法是于ISP级别层面处理和解决相关的问题,假如是网络层面,最理想的办法是对携带数据包入站的路由给予严密的监视,并时刻搜索内在发生的所有异常现象。
3交换机常见的攻击类型
3.1MAC表洪水攻击
交换机基本运行形势为:当帧经过交换机的过程会记下MAC源地址,该地址同帧经过的端口存在某种联系,此后向该地址发送的信息流只会经过该端口,这样有助于节约带宽资源。通常情况下,MAC地址主要储存于能够追踪和查询的CAM中,以方便快捷查找。假如黑客通过往CAM传输大量的数据包,则会促使交换机往不同的连接方向输送大量的数据流,最终导致该交换机处在防止服务攻击环节时因过度负载而崩溃。
3.2ARP攻击
这是在会话劫持攻击环节频发的手段之一,它是获取物理地址的一个TCP/IP协议。某节点的IP地址的ARP请求被广播到网络上后,这个节点会收到确认其物理地址的应答,这样的数据包才能被传送出去。黑客可通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,ARP欺骗过程如图1所示。
3.3VTP攻击
以VTP角度看,探究的是交换机被视为VTP客户端或者是VTP服务器时的情况。当用户对某个在VTP服务器模式下工作的交换机的配置实施操作时,VTP上所配置的版本号均会增多1,当用户观察到所配置的版本号明显高于当前的版本号时,则可判断和VTP服务器实现同步。当黑客想要入侵用户的电脑时,那他就可以利用VTP为自己服务。黑客只要成功与交换机进行连接,然后再本台计算机与其构建一条有效的中继通道,然后就能够利用VTP。当黑客将VTP信息发送至配置的版本号较高且高于目前的VTP服务器,那么就会致使全部的交换机同黑客那台计算机实现同步,最终将全部除非默认的VLAN移出VLAN数据库的范围。
4安全防范VLAN攻击的对策
4.1保障TRUNK接口的稳定与安全
通常情况下,交换机所有的端口大致呈现出Access状态以及Turnk状态这两种,前者是指用户接入设备时必备的端口状态,后置是指在跨交换时一致性的VLAN-ID两者间的通讯。对Turnk进行配置时,能够避免开展任何的命令式操作行为,也同样能够实现于跨交换状态下一致性的VLAN-ID两者间的通讯。正是设备接口的配置处于自适应的自然状态,为各项攻击的发生埋下隐患,可通过如下的方式防止安全隐患的发生。首先,把交换机设备上全部的接口状态认为设置成Access状态,这样设置的目的是为了防止黑客将自己设备的接口设置成Desibarle状态后,不管以怎样的方式进行协商其最终结果均是Accese状态,致使黑客难以将交换机设备上的空闲接口作为攻击突破口,并欺骗为Turnk端口以实现在局域网的攻击。其次是把交换机设备上全部的接口状态认为设置成Turnk状态。不管黑客企图通过设置什么样的端口状态进行攻击,这边的接口状态始终为Turnk状态,这样有助于显著提高设备的可控性[3]。最后对Turnk端口中关于能够允许进出的VLAN命令进行有效配置,对出入Turnk端口的VLAN报文给予有效控制。只有经过允许的系类VLAN报文才能出入Turnk端口,这样就能够有效抑制黑客企图通过发送错误报文而进行攻击,保障数据传送的安全性。
4.2保障VTP协议的有效性与安全性
VTP(VLANTrunkProtocol,VLAN干道协议)是用来使VLAN配置信息在交换网内其它交换机上进行动态注册的一种二层协议,它主要用于管理在同一个域的网络范围内VLANs的建立、删除以及重命名。在一台VTPServer上配置一个新的VLAN时,该VLAN的配置信息将自动传播到本域内的其他所有交换机,这些交换机会自动地接收这些配置信息,使其VLAN的配置与VTPServer保持一致,从而减少在多台设备上配置同一个VLAN信息的工作量,而且保持了VLAN配置的统一性。处于VTP模式下,黑客容易通过VTP实现初步入侵和攻击,并通过获取相应的权限,以随意更改入侵的局域网络内部架构,导致网络阻塞和混乱。所以对VTP协议进行操作时,仅保存一台设置为VTP的服务器模式,其余为VTP的客户端模式。最后基于保障VTP域的稳定与安全的目的,应将VTP域全部的交换机设置为相同的密码,以保证只有符合密码相同的情况才能正常运作VTP,保障网络的安全。
2当前网络数据通信中存在的主要安全隐患
2.1网络病毒
当前,Internet已经成为了各种计算机网络病毒的最大传播途径,一旦用户终端被网络病毒感染,就可能造成与其进行数据通信的其他用户终端被连带感染,特别是当前病毒的破坏形式多种多样,能在不被发现的情况下对传输数据进行复制、篡改和毁坏,也可以通过侵入终端内部对系统数据进行攻击,从而造成数据通信质量下降或中断。在政府机构或企业中,一些非法分子出于经济或政治目的,通过对政府机关网或企业局域网的服务器植入病毒,造成机密信息外泄,从而造成不可估量的损失,严重时还可能威胁到国家安全和社会稳定。
2.2黑客攻击
正常的网络通信是通过合法访问的形式实现的,而在现实中,一些网络黑客出于不同的目的,在未经允许的情况下就利用网络传输协议、服务器以及操作系统上的安全漏洞进行非法访问,使得系统内部的信息和数据被盗取或删改等,从而造成系统崩溃、重要信息丢失或泄露等严重事件。
2.3管理缺失
在实际工作中,很多用户在利用网络进行数据通信时没有充分重视安全方面的问题。一方面没有投入先进的网络硬件设备,或者投入时只重视服务器、交换机等硬件设备的性能而忽略了安全防护性;另一方面由于相关技术人员和管理人员缺乏,使得信息的使用和传输非常随意,再加上对传输和终端设备的入网安全性检测工作不严,容易被不法分子在设备内部设置后门,从而给数据通信安全造成威胁。
3网络数据通信中的安全防范技术措施
3.1对网络入侵进行检测
网络数据通信一般都是基于TCP/IP等网络通信协议的基础上完成的,在这个过程中可以加强对网络访问行为的监视和分析,判断其是否属于合法访问的范畴。一旦发现其存在违反安全策略的行为,就要立即对访问实施拦截,同时发出报警,提示相关工作人员进行进一步的处理。
3.2实施访问控制
首先,对不同的访问用户设置不同的安全权限。通过设置不同的安全权限可以有效防止未经授权的用户访问敏感信息,避免了机密信息数据的外泄。其次,局域网用户还应做好内部访问外网的控制,通过部署网络版防火墙等方式杜绝外部病毒和木马程序顺着访问路径入侵。最后,采用认证技术来限制用户访问网络。用户只有通过门户网站或客户端的形式完成认证步骤,才能实施对外部网络的访问。
3.3进行数据加密将信息数据在传输前进行加密,被接收之后通过解密机进行还原,从而有效提高数据在传输过程中的安全性。目前常用的数据加密技术有两种:
(1)端到端加密技术。在数据信息的发送端和接收端同时以加密的形式存在。
(2)链路加密技术。在数据信息的传输过程中以加密的形式存在。在实际应用中,这两种加密技术一般混合采用,以提高数据信息的安全性。
2命令/应答式通信协议
2.1协议框架
V8_Loader(监控主机,PC)与V8_Agent(目标机)之间采用命令/应答式通信协议进行命令、数据、状态等信息的传送.通信过程总是由监控主机首先向目标机发送一个命令包,目标机在收到命令包后,执行相应读写操作,再根据通信协议向监控主机回送相应的状态应答包.因为远程监控系统对于不同命令的反应实效性是不一样的,为了便于管理,将协议命令分为三种类型,包括立即命令、缓冲命令和数据命令.立即命令信息量短,用于需要马上执行的命令;缓冲命令用于对可延时命令进行延时管理,主要是对数据包进行管理;数据命令主要是用来对大量数据信息进行数据包装.三种命令的具体定义如下:(1)立即命令:目标机接收到立即命令后进行校验,如果正确则立即执行,完成相应控制和状态查询等功能,并回送状态应答包.若校验不正确,则不进行处理和响应.(2)缓冲命令:目标机接收到缓冲命令后,首先存储在缓冲区中,并不立即执行,当监控主机发送执行命令后才执行缓冲区中的命令;执行完成后,也不立即向监控主机回送状态应答包,而是将执行结果存储在缓冲区中,当接收到监控主机发来的查询命令时,才将缓冲区中的状态应答信息作为查询命令的应答包回送给监控主机.(3)数据命令:目标机接收到数据命令后,将数据放在缓冲区中,同时进行校验,根据校验结果设置数据缓冲区的状态,数据包接收后不回送状态应答包给监控主机.
2.2协议包格式
协议包从传输方向上分为两类:上行协议包,由监控主机发送,目标机接收;下行协议包,由目标机发送,监控主机接收.其中上行协议包又包括立即命令包、缓冲命令包和数据命令包三种类型;下行协议包又包括状态应答包和数据应答包两种类型.各种协议包的格式如下:(1)立即命令包:监控主机发送的立即命令,包括前导字符、命令长度、命令内容和校验字节等部分.立即命令的类型包括很多种,具体使用中可以根据需要添加和扩展.(2)缓冲命令包:监控主机发送的缓冲命令,也是实际的功能命令,包括前导字符、命令长度、命令内容和校验字节等部分.缓冲命令包从功能上分为擦除命令、上传命令、下载命令、转移命令等,根据需要可以添加不同的功能命令.(3)数据命令包:监控主机发送的数据命令,用来向目标机的接收数据缓冲区注入一个数据块,包括前导字符、数据块长度、数据块内容和校验字节等部分.(4)状态应答包:目标机发送的状态应答信息,对来自监控主机的立即命令进行响应,包括长度、状态数据和校验字节等部分,长度表示状态数据的字节数,状态数据根据立即命令的不同而不同,从而给宿主机发送不同的状态响应.(5)数据应答包:目标机发送的数据信息,数据应答包是功能命令的数据块,包括长度、数据块和校验字节等部分,长度表示数据块的字节数,数据块是从宿主机接收到的具体数据信息.
3软件实现方法
远程监控系统软件具体实现分为两部分,分别为目标机上运行的V8_Agent,监控主机上运行的V8_Loader程序.本文按照图2所示的系统体系结构模型,采用模块化的设计方法进行了实现.软件整体设计框图如图3所示[9].下面分别从目标机和监控主机两个方面对该系统的软件实现进行说明.
3.1V8_Agent的实现
V8_Agent主要完成各种通信协议命令的解析、执行,在V8_Loader的控制下,将数据传送到目标机的指定区域,或将目标机指定区域的数据传给V8_Loader.图4给出了目标机解析命令的运行过程,主要分为以下几个步骤执行:(1)初始化所有通信端口和缓冲区,转步骤(2),进入通信端口选择过程;(2)采用自动识别方法对通信端口进行识别,按照预先设定的通道顺序查询各端口,首先查到数据的端口将被选择为临时端口;如果从临时端口接收到一个正确的命令,则认为收到该命令的通信通道就是当前选择的通信通道,将当前通道选择标志送给通信通道选择标志,完成通信通道的选择;(3)识别到可用通信端口后,执行命令解析过程;由所接收信息包的第一个字符确定监控主机送来的包类型;如果是缓冲命令包则执行步骤(4),数据命令包执行步骤(5),立即命令包执行步骤(6),其他转步骤(7);(4)接收到缓冲命令包后,将接收到的数据暂存到命令接收缓冲区,当监控主机确认目标机正确接收了缓冲命令后,再将其切换到命令执行缓冲区,并设置命令执行缓冲区状态为命令就绪状态后转步骤(7);(5)接收到数据命令包后,将接收到的数据暂存到数据接收缓冲区,当监控主机确认目标机正确接收了该包数据后,设置数据接收缓冲区状态为数据就绪状态后转步骤(7);(6)接收到立即命令包后,根据命令包类型执行不同的功能命令,同时给监控主机回送一个应答包,并转步骤(7);如果接收的是执行缓冲区中命令的命令,则执行命令缓冲区中存储的缓冲命令,执行完毕后转步骤(7);(7)结束本次通信命令解析过程,转步骤(2)
3.2V8_Loader的实现
V8_Loader软件在监控主机上运行,采用Vis-ualC++6.0进行开发.V8_Loader完成通信接口选择、文件管理、数据打包等功能,并按照通信协议与V8_Agent进行通信,完成数据上下传.考虑到未来扩展应用功能方面的需求,远程监控系统在实现时不仅需要提供如前面应用说明中的完整功能,还需要为未来的嵌入式应用提供其它方面的支持.因此V8_Loader在实现时,采用了如图5所示的多层次结构进一步细化了软件的层次结构,增强软件的可扩展性,提高软件的广泛适应性.界面管理层直接向用户提供文件上传、数据下载等用户界面管理,完成对文件的管理操作.文件上传是要将指定数据文件或程序文件的内容上传到目标机指定区域,而数据下载则是从目标机指定区域下载的指定长度二进制数据保存到主机的文件中.此外界面管理层还向用户提供了转移执行、FLASH擦除等功能.线程处理层完成基于文件和控制界面的监控功能处理.它将上传文件、下载数据区分成若干个包,通过调用功能处理层的上、下传支持函数来完成文件数据的上传和数据下载功能.线程处理层同时完成对界面上的进度条的实时处理与更新,完成与用户之间的信息交换,完成文件数据的读取与存储功能.功能处理层是真正的上传、下载、转移等功能的处理模块,按照协议规定通过通信管理层与V8_A-gent之间进行协议命令及上下传数据的交互,完成规定大小数据的上传与下载.通信管理层提供各种通信功能到不同总线接口的映射.在总线驱动程序的基础上,完成通信字符到协议包的简单转换工作.总线驱动层可以根据实际的通信端口添加相应的驱动程序,可以很方便的扩展其他通信总线,从而完成对通信端口的底层管理.
免责声明以上文章内容均来源于本站老师原创或网友上传,不代表本站观点,与本站立场无关,仅供学习和参考。本站不是任何杂志的官方网站,直投稿件和出版请联系出版社。