文件传输协议范文

时间:2023-03-26 18:49:55

导语:如何才能写好一篇文件传输协议,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。

文件传输协议

篇1

1延迟NAK模式

在CFDP中,文件传输被称为一个“事务”,发送端为每一个文件传输操作分配了一个事务ID号。事务ID号与源ID和其他信息一起包含在每一个PDU的报头里。发送端通过发送元数据PDU来通知接收端文件传输的开始。发送端不必等待接收端的ACK应答才开始文件PDUs的传输,也就是说,在初始化“事务”时没有握手过程[9]。在延迟NAK模式中,接收端直到正确收到发送端的EOFPDU后才发出NAKs重传请求。在此过程中接收端统计直至EOFPDU成功接收时所有丢失的PDUs。在收到EOFPDU后,接收端发出ACK(EOF)并发出一个包含所有丢失PDUs的重传请求NAK(如果需要的话)。一旦收到一个NAK,发送端立即重传NAK所要求的PDUs。在接收端发出NAK后,立即启动一个定时器,当NAK定时器溢出时,接收端再次检查丢失PDUs的记录。如果仍有未收到的PDUs,接收端发出另一个NAK并再次启动一个定时器。这种过程一直持续到所有PDUs都被成功接收,包含全部的文件内容PDUs和元数据PDU。在收到所有的PDUs后,接收端发出一个FINPDU,且发送端一旦收到FINPDU就回复一个ACK(FIN),并关闭事务。接收端在成功接收ACK(FIN)后也随之关闭事务[10]。

2平均文件传输时间的数学分析

首先定义“文件传输时间”为从元数据PDU的第一比特开始直到当所有文件数据、元数据和EOFPDU被接收端成功接收的时刻。“EOF传输时间”定义为发送端发送最后一个文件数据PDU后的时刻与接收端接收到无错误的EOFPDU的最后一比特时刻间的时间间隔,“NAK重传时间”定义为从接收端发出第一个NAK的第一比特开始到所有重传的PDUs被成功接收到的时刻为止,如图1所示,其次定义N为携带文件数据的PDUs加上一个元数据PDU的总和。可见,整个文件的传输时间包含四部分:单向传播时间、N个文件PDU的传输时间、EOF传输时间和NAK重传时间。为了分析方便,假设如下:第一,N个PDUs等长、具有相同的传输时间且发送失败概率相等;第二,所有的重传NAKs等长且具有相同的发送失败概率(虽然NAK的长度取决于所要求重传PDU的个数,但是这种差异很小且NAKs的长度很小,所以这种假设对性能影响很小);第三,在前向和反向链路中的PDU错误事件是统计独立的;第四,由于EOF,ACK(EOF)和NAK的长度相对于文件数据PDUs来说很小,所以忽略这些PDUs的传输时间。文中分析用到的记号规定见表1。由于深空探测器具有功率有限及传输带宽极其严格的特点,为了保证链路最大吞吐率,应该尽量避免同一PDU不必要的复制重传。在此限定条件下,EOF定时器的最小设定值为2Tprop,NAK定时器的最小设定值为2Tprop+RTi,其中RTi表示第i次NAK重传请求PDU的发送时间。现在重点考虑重传阶段,定义随机变量Hi为第i个PDU直到接收端成功接收所需的重传次数。在这种假设条件下,Hi具有几何分布特性。再定义一个随机变量HM表示直至所有PDU成功被接收端接收所需的重传次数,易知,HM=max{H1,H2,H3,…,HN}。

3性能仿真与结果分析

利用Matlab工具进行仿真分析,传输时间单位为天文单位a.u.(astronomicalunit,1a.u.=480s)。图2~图4仿真出平均文件传输时间随PDU错误概率、PDU数目、单向传播时间等不同条件下的变化情况。由图2可知,在单向传播时间及PDU数目确定的情况下,单个PDU传输时间越多,在相同PDU错误概率情况下所需的传输时间越多。由图3不难看出,在PDU错误概率及单向传播时间固定的条件下,平均文件传输时间随PDU数目的增加而不断增加,且单个PDU传输时间越多,在相同PDU数目的情况下所需的传输时间越多。由图4易知,在PDU错误概率及单个PDU传输时间固定的情况下,平均文件传输时间随单向传播时间及PDU数目的增加而不断增加。图5为平均文件传输时间对PDU错误概率的Montecarlo仿真与数值分析曲线。可以看出,仿真曲线与数值分析曲线非常匹配。这里,PDU错误概率为0.01~0.5,单向传播时间为1a.u.,双向传输速率为20kbps,PDU数目为1000,且单个PDU传输时间为0.8s(PDU长度2KB,文件大小2MB)。

篇2

调试也是软件开发不可或缺的一个环节。在常见软件开发中,调试器与被调试的程序往往运行在同一台机器上,通过操作系统的调试接口来控制被调试的进程。而在嵌入式软件开发中,采用的是交叉调试,即调试器运行在宿主机上,但被调试的程序运行在基于特定平台的目标机上,调试器与被调试进程通过串口或网络进行通信。不管是交叉编译还是交叉调试,都需要把文件从宿主机传送到目标机。如果考虑团队合作开发、开发环境不完全一致等因素,开发者经常也需要把文件在不同系统之间或通过网络进行传输。所以在嵌入式软件开发中搭建一个良好的文件传输环境是提高嵌入式软件开发效率的一个关键因素。

2文件传输环境的搭建

在嵌入式软件开发中,必须结合开发的具体项目和具体开发环境来选择搭建一个好的文件传输系统。虽然各类传输技术可以在不同平台(Windows、Linux等)上实现,但在嵌入式软件开发中更适合搭建基于Linux的文件传输系统,下面就嵌入式Linux环境下文件传输技术方法进行讨论。

2.1FTP(文件传输协议)服务设计与实现

FTP是网络传输文件的一种常见服务。在嵌入式Linux中,vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,是一款完全免费的软件。它的最大的特点是安全性非常高,但嵌入式系统一般是在局域网内进行合作开发,所以在搭建为嵌入式开发服务的FTP时一般不需要太多地考虑文件传输的安全性,搭建一个用户登录访问的FTP服务器就可以。下文是Ubuntu12.04下实现用户登录访问FTP配置文件(/etc/vs-ftpd.conf)的主要内容:

2.2TFTP(简单文件传输协议)服务设计与实现

TFTP是一个传输文件的简单协议,它基于UDP协议而实现,适合于小文件传输。嵌入式系统开发的代码文件一般不会很大,同时对文件传输的安全性要求也不高,所以在嵌入式软件开发中也经常使用TFTP服务来传输文件。下文是Ubuntu12.04下实现TFTP配置文件(/etc/default/tftpd-hpa)的主要内容:2.3NFS(网络文件系统)服务设计与实现嵌入式系统开发时,还可以使用NFS实现宿主机和开发板共享文件,这样也可以免去文件上传或下载的麻烦,直接把存放文件的目录挂载在目标机上或其他系统中,用户可以像访问本地文件一样访问远端系统上的文件。下文是Ubuntu12.04下实现NFS配置文件(/etc/exports)的主要内容:其中,*:允许所有的网段访问,也可以设置成某一个ip段,如192.168.0.*;rw:读写权限;sync:资料同步写入内存和硬盘;no_root_squash:允许客户端共享目录所有者权限。用户可以根据自己需要设置相关参数,还有一些参数说明没列出来,需要时可查阅相关资料。

2.4Samba服务设计与实现

在嵌入式系统开发过程中,宿主机上一般会安装Windows系统,同时安装虚拟机软件,在虚拟机上安装Linux,这样就存在Windows系统和Linux系统共享文件的问题。通过Linux提供的Samba服务可以轻松实现文件共享,可以有两种方法加以实现:一是由Windows系统访问Linux系统中的共享文件夹;二是由Linux系统访问Windows系统中的共享文件夹。(1)Windows系统访问Linux系统中的共享文件夹。由于嵌入式系统开发一般在局域网内或单机上进行,对网络安全性要求不高,这里就以配置一最易实现的Samba服务(来宾都可访问)为例来加以说明。主要是通过修改/etc/samba/smb.conf配置文件:上面用户名是所访问的Windows计算机中的用户账户,验证口令是Windows计算机中的用户账户的口令。

2.5使用串口软件传输文件

在一些应急场合,没能很好地配置好上述服务的情况下,如果需要传输一些文件到目标板,可以选择使用串口软件传输文件。用串口电缆把宿主机和目标机连好,然后运行串口软件,最常用的是Windows自带的超级终端。超级终端程序通常位于“开始”“程序”“附件”“通讯”中,运行超级终端一般要求用户为新的连接取一个名字,然后选择所使用的串口,最重要的一步是设置串口属性,一般针对开发板设置的属性如下图2所示。连接上目标板后,使用超级终端上的“传送”“传送文件”菜单实现文件传输。在ubuntu操作系统下,需要使用minicom来连接开发板,本文不再赘述。

3结束语

篇3

软件使用技巧:1、在手机迅雷6.06.2版本中可以设置同时下载任务数,打开软件,进入个人主页,点击设置图标,点击下载设置,选择“同时下载任务数”,根据需要设置即可。

2、在手机迅雷6.06.2版本中,软件会自动检测下载链接,复制下载链接后,直接点击“立即下载”即可。

3、软件可以选择下载存储路径,打开软件,进入个人主页,点击“选择存储路径”,可以设置为外部存储。

4、在手机迅雷6.06.2版本中,可以使用“边下载边看”功能。

5、软件无法使用,可能是需要升级。

篇4

关键词 Teradata数据仓库;ETL;模型设计;流程实施

中图分类号TP392 文献标识码A 文章编号 1674-6708(2014)111-0208-02

电信行业领导决策者要想第一时间得到竞争对手行业的实际情况,就必须在企业中构建匹配的体系结构,以对多样化格式与形式的外部数据加以全面收集。ETL是数据加载至数据仓库必不可少的一个重要流程,该流程的科学合理与否对数据仓库接收数据质量的高低起到了决定性的作用。尽管我国在ETL方面的研究取得了较好的效果,但是目前还缺乏统一的ETL 设计模型,所进行的ETL模型的设计与开发仅仅围绕了各电信行业系统特点而实施的,只可以在此系统环境下有效运行,具有一定的局限性。

1 Teradata数据仓库的ETL模型设计

1.1结合电信行业特征,对ETL框架进行设计

具体设计ETL 模型过程中,必须对此模型涉及的应用领域特点予以全面的了解,结合实况构建相应的模型。切实根据电信行业ETL 框架的流程特性,首先对数据进行合理的转换,接下来获取相应的数据,最后等待数据成功下载,使用这样的步骤流程,与电信行业中实行的ETL 流程结构相符。具体的设计步骤是:首先,所有类型的业务平台的源数据实际都会按照具体的抽取规范标准来抽取,在形成一个统一的文件格式后,具体储存于要求的FTP 服务器目录中;其次,开启FTP 调度进程,及时有效转换储存于要求的文件传输协议(FTP )中的接口文件,除此之外,还要通过文件传输协议(FTP)将接口文件传送至数据的抽取、清洗、转换、装载(ETL服务器)规定的目录中,此目录属于一种分发目录,接口文件经过一番转换后会变成一体化的 AVL/ CHK 格式。实际当接口文件进入到数据的抽取、清洗、转换、装载(ETL 服务器)后,这个时候系统会启动某一数据分发的调度进程,以此准确及时的分发ETL 服务器内的所有接口文件,让其进入到其它的加载目录中,在接口文件送至加载目录中之后,ETL Automat on 会将一个装载进程全面开启,把存于此目录中的接口文件加载到数据仓库中。这与电信行业下的ETL 框架流程特征相一致。

1.2传统行业中的ETL 框架

以往中,行业实施的ETL设计流程太过简单化。常常在一台服务器上实施全部ETL 流程,实施的顺序是:先抽取源数据,把实际抽取的数据做数据加载,产生临时表1,然后将临时表1中的数据予以一番清洗,产生临时表2,最后把临时表2中的数据进行转换,再加载至数据仓库中。

1.3电信行业和传统行业ETL比较

在电信行业特的ETL 框架模型的优势具体体现在:首先,根据所有平台中需进行加载的数据有着统一格式的文件形式,保证了调度抽取的统一性。其次,在接口文件还没加载到数据仓库前,将其划分成了抽取、分发、加载这几个流程步骤。由于这三个流程步骤有着各自的控制程序,所以,能够对整体的ETL过程一目了然,而且还能够及时发现存在的问题并采取有效措施加以改进与准确定位。最后,把所有的ETL 机制放置于各服务器中来调度处理,使得诸多的原本繁琐的步骤实现了流程化,对所有中间环节均一目了然。

2 Teradata数据仓库的ETL具体实施流程

2.1 ETL Automat on 的无故障处理机制

1)抽取、转换接口文件;将各业务平台中的接口文件放置于各类FTP的服务器目录中,各接口文件在抽取结束后,凡是其涉及的数据信息都要通过两种不同后缀名的文件来表示,比如,* . AVL、* . CHK。* . AVL文件对此接口文件中涉及的全部信息进行了详细的记录,但* . CHK文件仅仅记录下了* . AVL内的数据条数和数据大小情况,主要是检查数据信息是否是精确无误的,这样有利于保证ETL 分发加载流程循序渐进发展。在ETL Automat on 机制中,从数据源内抽取的数据具有命令的脚本Interface_Extract . Pl会把源系统服务器中满足抽取要求的接口文件提取出来,放入文件传输协议(FTP )服务器目录中,在对接口文件提取时,会先将文件传输协议(FTP) 服务器IP 和用户名及密码与相配套的源系统服务器全部综合在一起,然后在接口文件的基础上对配置表InterfaceF leconf g进行合理提取,再把与抽取规则相符的接口文件通过二进制传输模式抽取到FTP 服务器内一些匹配的目录中,同时在抽取完所有接口文件后,系统会及时把此接口文件最后产生的抽取结果详细的记录在一个接口文件抽取日志表,即Interface F le Extract log中;

2)ETL Automat on 机制中接口文件的分发;系统将接口分发进程全面开启,这种进程主要职责是分发和调度实际已转换好的. AVL 和. CHK 的接口文件。在此进程中主要围绕接口文件分发配置表InterfaceF leconf g 对ETL 服务器中分发目录内的接口文件进行扫描,若发现了满足于相关提取要求的接口文件,程序会及时按照. CHK 文件对此接口文件需不需要分发操作进行准确判断,同时在数据仓库中的两张表中分别登记分发记录、分发状态。所有接口文件不管分发成功还是分发失败,系统都会把具体的分发状态输送至分发日志In terface D spatch log中。在结束分发操作后,会将接口文件移送至ETL 服务器内的装载目录中,进行装载。将此分发环节添入到ETL Automat on 机制中的主要目的是使数据装载到数据仓库后数据具有较高的质量。具备数据分发环节后,能够及时的获悉存在的问题,从而采取措施及时处理。

2.2 ETL Automat on 的异常处理机制

从ETL 流程角度上分析,因源系统或者ETL 流程自身问题的存在,运行中往往会引起ETL 过程的中断。对于这种情况,应做好异常处理,此中断现象在ETL任何环节中都会发生。在检查处理整个ETL 流程环节时,应从以下几方面进行:首先,结合ETL 状态记录表的信息获悉出现问题的环节。其次,按照具体定位的某一环节,及时收集记录此环节的系统详细日志,并定位找出导致此类问题发生的主要原因。

3结论

综上所述可知,设计了一台与电信行业特点相一致的ETL 模型, 此模型能够把之前较为复杂的ETL划分为诸多的较为独立的处理单元,对ETL 过程一目了然。同时,把本来要在数据仓库中实施的所有数据操作步骤全部拆分,通过多台服务器来相应操作,减轻了数据仓库的压力,推动了数据仓库的有效执行,数据得到及时传输。

篇5

网络编程基于TCP协议的网络编程,按照是否有帧听端口,通常分为两种模式,一种是服务器模式(侦听端口),另外一种为客户端模式。本仪器采用的是客户端模式。关于Linux网络通信中客户端编程的初始化代码,由于资料较多,这里不再累述。本文仅仅给出接收数据或发送数据的部分代码,因为仪器除了要处理网络信息外,还要进行检测数据的采集以及按键信息的处理,因此网络数据的传送或接收,不可以是阻塞的模式,必须是能够立即返回的非阻塞模式。本仪器采用传统的Linux操作系统下API函数select,来实现对网络端口状态的监控,进而实现数据传输的非阻塞功能。以下是实现功能的部分代码。发送数据的代码段,其中m_tv变量保存的是超时返回的时间设置。接收数据的代码段,m_tv的定义同上。如检测到网络口有数据上送的时候才进行数据的接收。

通信模块的详细介绍

通信协议介绍发生通信的两端(仪器和上位机),按照事先对数据传送的同步方式、数据结构、底层通信协议进行相互的约定,共同的遵守,这些约定就称为通信规约。基于网络接口的通信协议工作在应用层。通信协议制定的好坏直接影响仪器传输数据的速率,以及通信质量的可靠程度。按照通信协议的传输类型一般分为三类:(1)循环上送类型。仪器在进行正常的设置之后,不经过上位机的干预,主动将数据发送到上位机。(2)事件驱动类型。在正常工作模式下不向上位机发送数据,当有特殊事件发生的时候才向上位机发送数据。(3)被动召调类型。正常工作的时候,仪器不向上位机传送数据,直到上位机向仪器发送召调报文的时候才进行数据上送。考虑到仪器的工作模式,需要实时的向上位机发送数据,所以排除事件驱动类型的通信规约。由于检测手段的限制,要求仪器软件采样率较高,通常为10kHz以上,故对于数据传输的实时性要求较高,也不采用召调类型的传输协议。最终,仪器采用的是循环上送类型传输协议。协议内容仪器与上位机进行通信,包括两个方面的内容:(1)从上位机接收报文,例如开始采集数据、停止采集、发送参数等;(2)将采集到的数据发送给上位机,以供上位机进行显示或分析。的是三组0xD70x09共6个字节作为同步字,该报文头参照“部颁CDT循环远动规约”中的报文规定。数据帧长度:表示该帧报文的长度,由两个字节的长度表示,低字节在前,高字节在后。报文的长度不包括同步字的六个字节。命令控制字:指示该帧报文的作用,由两个字节的长度表示,低字节在前,高字节在后。数据区域:包含需要上传或是下载数据的内容。数据的内容都是两个字节组成一个数据元素,低字节在前,高字节在后。在原协议中,在数据区域后还存在一个校验码域,是用来检验该帧报文的数据是否完整。但由于仪器的底层采用的是基于流套接字的TCP报文协议,是可靠性连接,并且考虑到数据传送的实时性,在实际的工程使用中将校验码域进行删除。因篇幅有限,仅给出部分实际报文例子,其他报文类似推导即可:(1)开始采集数据0xD70x090xD70x090xD70x090x040x000x010x00(2)发送心跳包0xD70x090xD70x090xD70x090x040x000x050x00(3)循环上送数据0xD70x090xD70x090xD70x090x140x000x080x000x110x000x220x000x330x000x440x000x550x000x660x000x770x000x880x00其中,0x110x00~0x880x00表示的是八个物理采样通道的检测数值。协议分析流程图任何数据通信协议都必须依靠软件实现,因此软件对通信协议实现的好坏情况,直接影响仪器的系统稳定性和其他性能指标。系统的稳定性是指仪器能否经受得住长时间,大数据量传输的考验而不出现死机或数据传输不稳定的情况。其他性能指标是指实时性以及均匀性,实时性指仪器能否将数据实时的传输给上位机或对于上位机给出的报警信息是否及时响应,均匀性指数据的传输是否节奏一致,不能时快时慢。详细的程序处理流程协议分析流程图。当协议解析程序段分析出上位机给出的命令控制字后,就可以很方便地根据命令来进行相关的动作,例如设置参数、应答数据、设置报警等。

仪器软件自动更新的实现

篇6

由于多种协议的并存,同时也使网络变得越来越复杂,而且,厂商之间的网络设备大部分都不能兼容,很难进行通信。为了解决网络之间的兼容性问题,帮助各个厂商生产出可兼容的网络设备,国际标准化组织ISO与1984年提出了OSI RM (Open System Interconnection Reference Model,开放系统互连参考模型)。OSI 参考模型很快成为计算机网络通信的基础模型。因此,在设计OSI参考模型时,主要遵循了以下几点原则:

1.各个层之间有清晰的边界,便于理解;

2.每层实现特定功能;

3.层次的划分有利于国际标准协议的制定;

4 层的数目应该足够多,以避免个层功能的重复;

OSI参考模型主要划分为七层:

1.物理层(physical Layer)

2.数据链路层(Data Link Layer)

3.网络层(Network Layer)

4.传输层(Transport Layer)

5.会话层(Session Layer)

6.表示层(Presentation Layer)

7.应用层(Application Layer)

下图是OSI七层模型示意图

OSI模型的划分也是为了使网络的不同功能模块(不同层次)分担起不同的职责,具有以下优点:

1.简化了相关的网络操作

2.在各层分别定义标准接口,使具备相同对等层的不同网络设备能实现互操作,各层之间则相对独立,一种高层协议可放在多种低层协议上运行;

3.减轻问题的复杂程度,一旦网络发生故障,可迅速定位故障所处层次,便于查找和纠错;

4.防止一个区域网络的变化影响另一个区域的网络,因此,每一个区域的网络都能单独快速升级。

5.能有效刺激网络技术革新,因为每次更新都可以在小范围内进行,不需对整个网络动大手术;

6.便于研究和教学。

下面主要介绍OSI模型各层的定义和功能:

物理层

Physical Layer,是OSI参考模型的最低层或第一层。该层包括物理连网媒介,如电缆连线连接器。物理层的协议产生并检测电压以便发送和接收携带数据的信号。在你的PC上插入网络接口卡,你就建立了计算机连网的基础。换言之,你提供了一个物理层。尽管物理层不提供纠错服务,但它能够设定数据传输速率并监测数据出错率。网络物理问题,如电线断开,将影响物理层。

Xerox公司制定的以太网和IEEE802.3标准定义了以太网物理层常用的线缆标准。其中常用的接口线标准有:10Base-T 100Base-T 100Base-TX/FX 1000Base-T 1000Base-SX/LX

物理层常用的设备有中继器,集线器,路由器,终端主机等,数据信号传输介质主要有同轴电缆,双绞线,光纤,无线等。

数据链路层

Datalink Layer,OSI参考模型的第二层,它控制网络层与物理层之间的通信。[3]它的主要功能是如何在不可靠的物理线路上进行数据的可靠传递。为了保证传输,从网络层接收到的数据被分割成特定的可被物理层传输的帧。帧是用来移动数据的结构包,它不仅包括原始数据,还包括发送方和接收方的物理地址以及检错和控制信息。其中的地址确定了帧将发送到何处,而纠错和控制信息则确保帧无差错到达。 如果在传送数据时,接收点检测到所传数据中有差错,就要通知发送方重发这一帧。

数据链路层分为两个子层:逻辑链路控制子层(LLC,Logic Link Control),介质访问控制子层(MAC,Media Access Control)

逻辑链路控制子层提供面向连接与面向无连接的网络服务环境的需要。该层用于管理通过单一链路连接的两个系统间的通讯,它允许多个高层网络协议共享一条链路。

LLC子层位于网络层和MAC子层之间,是上层和下层的管理层,负责流量控制,同步等。LLC子层通过SSAP和DSAP负责底层协议与网络层协议的通信。

MAC子层负责把物理层的0,1 比特流组建成帧,并且通过帧尾部的CRC字段进行错误检测。总之,MAC子层定义了网络对共享介质的访问。

数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等

网络层

Network Layer,OSI参考模型的第三层。[4]其主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。

网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A 到另一个网络中节点B 的最佳路径。由于网络层处理,并智能指导数据传送,路由器连接网络各段,所以路由器属于网络层。在网络中,"路由"是基于编址方案、使用模式以及可达性来指引数据的发送。

网络层负责在源机器和目标机器之间建立它们所使用的路由。这一层本身没有任何错误检测和修正机制,因此,网络层必须依赖于端端之间的由DLL提供的可靠传输服务。

网络层用于本地LAN网段之上的计算机系统建立通信,它之所以可以这样做,是因为它有自己的路由地址结构,这种结构与第二层机器地址是分开的、独立的。这种协议称为路由或可路由协议。路由协议包括IP、Novell公司的IPX以及AppleTalk协议。

网络层是可选的,它只用于当两个计算机系统处于不同的由路由器分割开的网段这种情况,或者当通信应用要求某种网络层或传输层提供的服务、特性或者能力时。例如,当两台主机处于同一个LAN网段的直接相连这种情况,它们之间的通信只使用LAN的通信机制就可以了(即OSI 参考模型的一二层)。

网络层的一些主要标准如下:

ISO.DIS8208:称为"DTE用的X.25分组级协议"

ISO.DIS8348:称为"CO 网络服务定义"(面向连接)

ISO.DIS8349:称为"CL 网络服务定义"(面向无连接)

ISO.DIS8473:称为"CL 网络协议"

ISO.DIS8348:称为"网络层寻址"

除上述标准外,还有许多标准。这些标准都只是解决网络层的部分功能,所以往往需要在网络层中同时使用几个标准才能完成整个网络层的功能.由于面对的网络不同,网络层将会采用不同的标准组合.

传输层

Transport Layer,位于OSI参考模型第四层,最终目标是向用户一般指应用层的进程,提供可靠的服务。传输层主要定义了主机应该程序间端到端的连通性,它包含以下四项基本功能:

1.将应用层发往网络层的数据分段或将网络层发往应用层的数据段合并。

2.建立端到端的连接,主要是建立逻辑连接以传送数据流。

3.将数据段从一台主机发往另外一台主机。在传输过程中通过计算校验和以及通过流控制的方式保证数据的正确性,流控制可以避免缓冲区溢出。

4.部分传输层协议保证数据传输正确性。主要是在数据传输过程中确保同一数据不多次传送也不丢失。同时还要保证数据包的接受顺序与发送顺序一致。

传输层协议主要有TCP/IP协议栈的TCP协议和UDP协议,IPX/SPX协议栈的SPX协议等。其中,TCP协议和SPX协议为应用程序提供可靠的,面向连接的服务;UDP协议提供不可靠的,无连接服务。

会话层

Session Layer,是OSI模型的第五层,通过执行多种机制在应用程序间建立,维持和终止对话。会话层机制包括计费,话路控制,会话参数协商等。你可能常常听到有人把会话层称作网络通信的"交通警察"。当通过拨号向你的ISP(因特网服务提供商)请求连接到因特网时,ISP 服务器上的会话层向你与你的 PC 客户机上的会话层进行协商连接。若你的电话线偶然从墙上插孔脱落时,你终端机上的会话层将检测到连接中断并重新发起连接。会话层通过决定节点通信的优先级和通信时间的长短来设置通信期限。

为给两个对等会话服务用户建立一个会话连接,应该做以下几点工作:

1.将会话地址映射为运输地址。

2.选择需要的运输服务质量参数(QOS)。

3.对会话参数进行协商。

4.识别各个会话连接

5.传送有限的透明用户数据

6.数据传输阶段

这个阶段是在两个会话用户之间实现有组织的,同步的数据传输.用户数据单元为SSDU,而协议数据单元为SPDU.会话用户之间的数据传送过程是将SSDU转变成SPDU进行的.

7 连接释放

连接释放是通过"有序释放","废弃","有限量透明用户数据传送"等功能单元来释放会话连接的.会话层标准为了使会话连接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元.各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集.会话层的主要标准有"DIS8236:会话服务定义"和"DIS8237:会话协议规范".

表示层

Presentation Layer,表示层保证源端数据能够被目的端表示层理解和识别,对应用程序透明。表示层提供数据格式转换服务,数据加密,数据表示标准等服务。表示层确定了数据传输时数据的组织方式。

应用层

Application Layer,OSI参考模型中的最高层,即第七层。应用层也称为应用实体(AE),是模型中最接近用户的一层,应该层支持应用程序,它由若干个特定应用服务元素(SASE)和一个或多个公共应用服务元素(CASE)组成。每个SASE提供特定的应用服务,例如文件运输访问和管理(FTAM)、电子文电处理(MHS)、虚拟终端协议(VAP)等。CASE提供一组公共的应用服务,例如联系控制服务元素(ACSE)、可靠运输服务元素(RTSE)和远程操作服务元素(ROSE)等。主要负责对软件提供接口以使程序能使用网络服务。术语"应用层"并不是指运行在网络上的某个特别应用程序 ,应用层提供的服务包括文件传输、文件管理以及电子邮件的信息处理。

以下是几种常用的应用层协议

1.FTP:文件传输协议,File Transfer Protocol.是用于文件传输的Internet标准。FTP提供可靠的面向连接服务,适合与远距离,可靠性较差线路上的文件传输。

2.TFTP:简单文件传输协议,Trivial File Transfer Protocol.也是用于文件传输,但TFTP使用UDP提供服务,被认为是不可靠的,无连接的。TFTP通常用于可靠的局域网内部的文件传输。

3.SMPT:简单邮件传输协议,Simple Mail Transfer Protocol.支持文本邮件的Internet传输。

4.POP3:Post Office Protocol,是一个流行的Internet邮件标准。

5.SNMP:简单网络管理协议,Simple Network Management Protocol.负责网络设备监控和维护,支持安全管理,性能管理等。

6.TELNET:是客户机使用的与远端服务器建立连接的标准终端仿真协议。

7.Ping:是一个诊断网络设备是否正确连接的有效工具。

8.Tracert命令:和Ping命令类似,Tracert命令可以显示数据包经过的每一台网络设备信息,是一个很好的诊断命令。

9.HTTP:支持WWW和内部网信息交互,支持包括视频在内的多种文件类型。是当今最流行的Internet标准。

10.DNS:Domain Name System 域名系统。把网络节点的易于记忆的名字转化为网络地址。

11.WINS:Windows internet Name server 命名服务器,此服务可以将NetBIOS名称注册并解析为网络上使用的IP地址。

12.BootP:Bootstrap Protocol 引导协议。是使用传输层UDP协议动态获得IP地址的协议。

在OSI参考模型中,计算机传送信息的问题分为7个较小且更容易管理和解决的小问题。每一个小问题都由模型中的一层来解决。之所以划分为7个小问题,是因为它们之中的任何一个都囊括了问题的本身,不需要额外太多的信息就能解决。

篇7

关键词:物联网 石油测井 数据传输

中图分类号:TE94 文献标识码:A 文章编号:1672-3791(2015)05(a)-0093-01

油田日常维护工作的顺利开展,需要掌握油井的实际生产情况,因此需要通过仪器对油井的层数进行检测。我国油井分布比较松散,因此对监测的数据进行传递存在交的困难。基于此,该文对物联网石油测井数据的传输与控制系统的设计中的重要内容进行了介绍,希望对相关工作人员能够有所帮助。

1 物联网

物联网主要指的是末端设施和设备,主要包括工业系统、传感器以及贴在射频识别器上各种设备、携带无线终端的车辆和个人等。通过各种无线、有线,长距离或短距离的相互连通实现对数据传输。物联网就是利用传感器,实时对需要的数据进行采集、互动、连接,采集的信息的类型可以是电信号、光信号、化学信号等,利用各种可能存在的网络接入,实现物与人、物与物之间的连接,从而实现对物品的智能化管理和识别。因此,可以简单的将物联网描述为,利用传感器获取物理环境信息,然后利用通信网络对信息进行传递,再利用云计算平台,实现对复杂信息的处理。

2 系统的设计与实现

2.1 设计方案

系统的具体实现方案:在测井现场利用传感器获取待测油井的数据,将数据利用专用的电量将测得护具传送给计算机,然后利用计算机对数据进行处理后,利用GPRS将传递到企业内部,数据最终将会被送到测控中心,从而实现对数据的远程传输

2.2 网络传输协议

利用GPRS对数据进行传输面临协议选择,TCP和UDP是目前应用最广泛的两种协议,对协议的选择需要依据系统运行的实际情况而定。TCP协议数据的传递面向连接具有较高的可靠性,比较适合应用在顺序不重复、大批量的数据传递。但需要注意,TCP提供的数据传输不会对数据的便捷进行记录,因此如果数据传递过程中采用的方式是数据包,需要对包的同步问题加以考虑。测井在数据传递过程中对数据量的要求较大,同时网络环境十分复杂。此外,从目前的情况来看,在实际测试过程中,如果对TCP协议进行利用,数据在吞吐率上完全可以满足使用要求。UDP协议与TCP相比更加简单,灵活度高,建立连接较为容易,会对数据的边界进行保留。其最大的不足它提供的数据包通信的方式并不可靠,在复杂的网络环境下的应用要十分谨慎,如果程序对出现的问题处理不当,可能会造成协议崩溃,从而导致系统无法正常运行。

2.3 测试通讯方案

为了对系统的可行性进行验证,在中国联通和中国移动两种网络的支持下对数据的传输效果进行验证。在数据验证过程中,利用自行编程的通讯程序对油田实地进行测试。测试过程中主要涉及到的性能有:RTK、吞吐量、时延、误帧率的平均值。根据测试结果对公众移动网络是否满足传输需求进行确定。同时,可以通过现场测试了解用户要求,使其为通讯协议设计提供参考。

2.4 设计通讯协议

(1)双发送队列。

石油测井数据传输系统,不仅要能够实现对测井中数据的传递,同时还应当实现文件的传输。测井数据传输在实时性上具有较高的要求,在文件的传输上实时性要求相对则较低,一般来说能够在规定的一段时间内完成文件传输即可。因此,在实际工作中,如果传输数据的宽带有限,为了确保测数据传递的实时性,应当对测井数据和文件传输两者制定相应的优先级机制。方案如下:将发送队列分为两列,一列为测井数据,另一列则为文件传输队列,同时应当在文件传送队列上安置一个标志,对发送权限进行限制,该标志只有则测井数据发送结束后,才会生效,标志生效后,文件传送队列发送数据,然后安置的标志将会再一次回到原位置,依次循环。

(2)后退N帧协议。

在数据传输过程中,如果采用简单的协议,RTT的时延一般约为500ms,这对数据传输的实时性产生了一定影响,为了提高通讯协议效率,可以对后退N帧协议进行应用,这种协议处于非受限协议和等停协议之间,对其进行应用可以缓解因为传输距离过大,导致等停协议效率低问题的发生。后退N帧协议一般只在测井数据中使用,并不在文件传输中使用,对于文件传输的维护有更高层的ZMOG协议完成,在线程发送上只是简单进行发送,并不会进行等待和确认。测井数据传输系统在通讯上需要是双向的,因此在实际工程中,必须是由接收线程和发送线程两者相互系统工作,接收线程和发送线程两者之间的信息要能相互传递,其中最重要的一点就是,接收线程应当能够将ARQ应当信号传送给发送线程,从而确保发送线程在运行过程中能够顺利完成发送任务,确保整个系统的安全运行。

3 结语

计算机技术的高速发展,使测井数据的数据的实时性得到进一步提高。在石油测井数据的传输与控制系统的设计过程中,要对不同的问题进行针对性研究,并且要通过大量的数据来对系统的功能进行确定,确保系统在日后的使用过程中能够达到理想的效果。

参考文献

[1] 任哲.嵌入式实时操作系统μC/OS-II 原理及应用[M].北京:北京航空航天大学出版社,2019.

[2] 孙昊,曹玉强,杜玉芳.ARM处理器启动代码分析与编程[J].工业控制计算机,2005(11):54-55.

篇8

【关键词】Android 视频监控 系统设计 H.264编码 应用

近年来,智能手机的快速发展推动了Android手机操作系统的开发和利用,该系统的优势在于便于携带、系统小巧、功能全面,因此也使得基于Android平台的视频监控技术得研发和应用。传统的视频监控系统由于受线缆或光纤的带宽限制,无法实现实时的视频信号传输,而Android平台在无线网络的支持下成功的解决了一这问题,从而进一步促进了远程监控、可视电话、电视会议等远程视频实时监控技术的广泛应用。

1 视频监控技术概述

视频监控技术的应用时间比较久远,以往在安防领域发挥了非常大的作用,是公安部门维持社会稳定、打击犯罪的重要技术手段。经过多年的发展,视频监控技术经历了模拟监控系统、数字视频监控系统、网络视频监控系统等三个重要发展阶段,随着移动网络的快速发展,视频监控技术开始朝向以移动流媒体技术为代表的移动视频监控方向发展,手机等移动设备开始具备实时监看远程动态画面的功能,由此也将视频监控技术的应用范围拓展到了教育、政府、娱乐、医疗、酒店、运动等多个领域,实现了“随时随地,自由掌控”的监控,为人们的生产、生活提供了更简单、便利、及时的监控解决方案。

2 视频监控系统的结构设计及应用

目前,基于Android平台的视频监控系统主要由采集模块、编码模块、视频传输模块、解码模块、显示模块等五大模块共同构成,相关设计也是围绕这五大模块进行的。

2.1 视频采集模块

基于Android平台的视频信号采集工作是由采集模块完成的,通过手机摄像头可以获得YUV420格式的视频流,而相关模块则可通过对Android应用层的代码编写实现。

2.2 编码模块

目前,Android平台视频监控系统的数字视频编码标准主要有两种,一种是由MPEG制定的MPEG-1、MPEG-2、MPEG-4编码标准;而另一种则是由ITU一T制定的H.261、H.263视频编码标准。为进一步促进视频监控系统在多媒体通信方面的应用,MPEG和VCEG联手共同开发了当今最先进的视频编码标准――H.264。

虽然该标准依然采用了以往的压缩标准架构,但是H.264在此基础上增加了更多新的特性。比如,H.264标准包含了网络抽象层(NAL)和视频编码层(VCL)两层结构,网络抽象层的功能是打包、传输数据,而视频编码层的功能是压缩视频编码,这样的分层结构对信号的传输和编码工作进行了分离,使得H.264标准在面对复杂的通信环境时,依然可以利用不同的网络进行视频信号的传输工作并保证良好的视频数据质量。

2.3 传输模块

视频数据传输的应用主要受HTTP、RTSP、RTP、RTCP协议的约束。TCP和UDP协议主要作用于传输层,HTTP则是基于TCP(传输控制协议)的超文本传输协议。在一对一或一对多的情况下,RTP可以保证流媒体数据流与时间信息的同步正常工作。一般情况下,RTP需要使用UDP进行数据传输,因此UDP是建立RTP的基础。另外,RTP还需要供助RTCP(实时传输协议)弥补自身没有可靠的传送机制的弱点,因此只有让RTP和RTCP共同协作才能实现流量和拥塞的有效控制。同时,RTCP作为应用层协议,其位置处于RTP和RTCP协议层之上,多媒体数据的传输则是通过IP网络利用传输机制的TCP和RTP实现数据传输。RTSP则用于实时数据发送时对音视频流的远程控制,如对流媒体的播放、暂停、记录等相关操作。SDP则用来描述RTSP的会话描述协议,用于说明会话的基本属性。结合这些协议在视频监控系统中起到的作用,本文设计的Android平台视频监控系统主要采用RTP、RTSP、RTCP、HTTP等四个协议构建系统的传输模块。

视频监控系统中的流媒体系统需要由编码器、流媒体服务器、客户端播放器三个基本部件构成。编码器的作用在于将采集到的原始视频数据转换成流媒体格式文件,而这些编码后的文件则由流媒体服务器进行接收和转发,客户端播放器则将接收到的文件进行解码、播放。流媒体传输的方式可分为两种:

(1)顺序流式传输。这种方式是基于HTTP或FTP服务器进行文件传输的方式,可以保证完全无损的数据下载,可以有效保证视频的质量,也便于管理和用户使用。但这种方式对于网络传输速率的要求较高,通常需要等待较长时间,不适用于实时性的随机访问。

(2)实时流式传输。这种方式是基于传输网络协议和专用的流媒体服务器进行文件传输的,由于匹配了带宽和无线网络,可以支持实时性的现场直播,适用于用户的随机访问和后退操作。传输网络协议需要与防火墙进行配置,在管理方面存在一定的复杂性。同时该方式必须与带宽和无线网络匹配,一旦网络拥塞或设备出现低速连接状态时,就会出现包括丢帧在内的视频质量下降现象。

2.4 解码模块

解码模块的作用就是对编码的过程进行逆操作,因此解码采用的标准也是编码采用的H.264。解码器一般由视频数据的解码部分和视频的显示部分两个部分构成。解码部分主要是采用Android NDK+C机制进行实现,显示部分则利用Android SDK+Java机制由Android提供的组件实现。两个部分的通信则由java提供的jni机制实现。解码的整体流程主要由前段码流处理、H.264解码和后段视频显示三个功能模块实现:前段码流处理负责读取文件,在分隔出NAL后将文件效由底层解码;H.264解码则负责图像的重建工作,是解码过程的核心部分;后端视频显示则将解码后的文件通过客户端进行显示。

2.5 显示模块

利用Android系统自带的显示器将解码后的数据流进行实时视频显示,并保证视频显示的效果。

3 结语

本文基于Android平台的特点,利用移动流媒体技术对移动视频监控系统采取了五个模块的系统设计,充分考虑到了视频监控系统的安全性、稳定性和实时性。

参考文献

[1]魏崇毓,张菲菲.基于Android平台的视频监控系统设计[J].计算机工程,2012(14):214-216.

[2]郭永清.基于Android平台的视频监控系统的设计研究[D].西安科技大学,2012.

[3]张贺.基于Android的智能视频监控系统设计[D].成都理工大学,2015.

作者单位

篇9

【关键词】机房管理;FTP;IIS Serv-U

计算机机房是职业院校里最重要的实验室之一,是各专业计算机类课程的主要实践场所,机房维护的好坏从一定程度上影响着计算机类课程实验、实习和设计等实践教学环节的顺利进行。

一、机房管理的任务及面临的问题

机房管理的主要任务是完成基本的教学功能以及访问互联网功能。但现实情况是一个机房一学期内要承担多门课程的实验需求,相应的教学软件必须安装齐全。对于验证型实验,要提供满足试验要求的基本环境;对于开发型实验,试验结果可以通过网络提交到服务器,方便教师及时检阅指导。学生机只是一个试验的平台。

在机房的日常管理中,存在以下问题:

1.系统保护与数据存储的矛盾

在机房管理中为了增强稳定性,减少维护工作量,一般都选购带有还原保护系统的品牌机,或者安装还原软件。学生在使用时保存在计算机硬盘的资料会随着计算机的重新启动而被还原掉。学生下载的软件或所做的作业不能在机房的电脑里保存。另外,对于公共机房来说,可能存在的问题是,今天学生在这个机房上课,而下次学生可能在另一个机房上课。因此,学生大都采用自带U盘或其他存储设备的方式,但允许使用U盘也容易带来病毒传播的问题。

2.数据共享问题

教师上课时所需素材等文档资料可以通过多媒体教学软件分发给学生,或者通过文件夹共享让学生自己获取。在学生完成作业后,教师需逐台机器检查学生作业,这样效率非常低。当然可以通过多媒体教学软件来在线提交。但不同老师使用的教室里,作业如何区别保存也是个问题。

在使用共享文件夹方式的时候,需要使用SERVER版的操作系统如Windows Server2003来解决连接数的问题,且设置本身也是一个较大的工程,另外在这种情况下也容易发生学生抄袭作业或恶意删除其他同学的文件等问题。

3.资料存档问题

从规范实践教学管理的角度出发,实践教学的实验结果、实验数据,也需要进行存档。那么如何建立起实践环节的教学档案是一个迫切需要解决的问题。

二、几种解决方法

1.使用教学软件

现在学校机房一般都安装有多媒体电子教室软件,该软件虽说有“文件传输”和“远程命令”功能,但是使用中发现“文件传输”功能不尽如人意,传输大一些的文件或图片时往往出现问题,造成文件丢失或损坏。尤其是给学生机作业要求及素材、学生上交作业文件或者教师机接收作业文件这些文件传输环节往往也遇到困难。

2.使用“网上邻居”

“网上邻居”作为局域网内计算机之间传输文件的桥梁,在实际应用中发挥过重要的作用。但从WindowsXP以后,“网上邻居”的设置不再像以前那么方便了,需要启用GUEST账户,启用Microsoft网络上的文件与打印机共享,还要安装“网络客户”选项,最重要的是要检查计算机上是否已正确安装启动了“计算机浏览器服务(ComputerBrowserService)”等。另外,经常会出现计算机之间无法互访的问题。

WindowsXP“网上邻居”在使用时系统会搜索自己的共享目录和可作为网络共享的打印机以及计划任务中和网络相关的计划任务,然后才显示出来,这样速度显然会慢很多,而且在传输文件时对系统资源的消耗较大。

另外,学生机上的“网上邻居”功能容易出现问题,往往是设置或者是病毒感染的问题,再加上学生机都有还原卡或还原精灵,因此出现问题不好解决,寻找新的方法实现学校机房的文件传输成为摆在我们面前的迫切任务。

3.使用FTP

FTP是FileTransferProtocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。FTP服务作为Internet最古老的服务之一,无论在过去还是现在都有着不可替代的作用。在企业中,对于一些大文件的共享,通常采用FTP这种形式来完成,并且由于FTP能消除操作系统之间的差异,对于不同的操作系统之间共享文件的作用就显得尤为突出。FTP传输性能稳定,占用系统资源小,而且传输速度快、效率高,安全性好。这些方面都是网上邻居比不上的。

FTP在机房管理中的应用已越来越广泛,包括软件资源、课件资源的,学生随堂作业、课后作业的上交等,非常适合内部资源共享。使用FTP服务器还可以带来其他好处:FTP服务器的日志文件里记录着提交作业的时间、提交作业的机器的IP地址,还可以设置权限,例如只能上传不能下载,这样就可以防止学生复制别人的作业。也可以在网页上制作出FTP服务器的网址的超级链接,学生只需要点击该链接就可以直接打开FTP服务器,然后把作业文件粘贴到这里或者拖拽到这里就完成了上交;同样,素材的下载也很简单。

三、常用的FTP软件

传统地,在采用Windows操作系统的服务器上,会利用系统自带的IIS来架设FTP服务器。这种方法实施简单,能实现的功能也很简单,在访问权限管理方面较为欠缺,仅仅有读取和写入两种权限;用户管理依赖于Windows系统内建的用户,使用起来不方便。

目前市面上的FTP服务器软件有很多种,Serv-U是目前众多的FTP服务器软件之一。使用Serv-U,能够将任何一台PC设置成一个FTP服务器。这样,用户或其他使用者就能够使用FTP协议,通过在同一网络上的任何一台PC与FTP服务器连接,进行文件或文件夹的创建、复制、移动和删除等。虽然目前FTP服务器端的软件种类繁多,相互之间各有优势,但是Serv-U凭借其独特的功能倍受欢迎。

四、建立FTP服务器

(一)利用IIS来构建FTP服务器

在架设FTP网站时,对于仅仅作为共享文件这种服务而没有其他特殊要求的,可通过Windows2000/2003操作系统的IIS组件来完成。步骤如下:

(1)IIS安装,可按照“开始”“设置”“控制面板”“添加/删除程序”,打开“添加/删除程序”对话框,选中“添加/删除Windows组件”。

(2)选中“Internet信息服务(IIS)”,查看其详细信息。

(3)选中“文件传输协议(FTP)服务器”项后,单击确定,接下来按照向导至安装完成。

(4)打开“开始”“程序”“管理工具”“Internet信息服务”,打开IIS控制台。

(5)单击“默认FTP站点”,在右键快捷菜单中选中“属性”,打开“默认FTP站点属性”对话框。

(6)在“FTP站点”选项卡中,需要修改“说明”为容易识别的标识,IP地址修改为当前主机的某个IP地址。如本机修改为私有地址“192.168.1.1”,“TCP端口”为默认的FTP端口“21”。

(7)在“安全帐号”中选中“允许匿名连接”,如果对于客户端登陆时需要进行身份验证,则可通过“浏览”来选中服务器的Windows用户。

(8)在“消息”选项卡中添加FTP服务器的登陆欢迎信息和退出信息。

(9)在“主目录”选项卡中选择FTP服务器向外提供服务的主目录,此处可选择“此计算机上的目录”,通过浏览进行选择,或者选择“另一计算机上的共享位置”,这是FTP服务器向外提供服务的主目录在其他主机上,格式为“\\{服务器}\{共享名}”,在FTP站点目录下的“读取”、“写入”、“日志访问”对FTP站点的权限进行配置,在此处出于安全考虑只为匿名anonymous用户分配“读取”权限而不分配“写入”权限。

(10)在“目录安全性”选项卡中对FTP服务器的访问控制权限进行分配,可通过此处将FTP服务器的访问权限授权给某部分IP用户或者拒绝来自某些IP用户的访问。注意当选择了“授权访问”后,在列表中的IP地址将被拒绝,如选择“拒绝访问”,列表中的IP地址用户将被授权。

至此,FTP服务器架设成功。

(二)利用Serv-U构建FTP服务器

Serv-U设置简单,功能强大,性能稳定,现已成为绝大多数用户建立FTP服务器的首选软件。用Serv—U建立FTP服务器的步骤:

首先,在服务器上安装Serv—U软件。

第二步,运行Serv—U,在“安装向导”的指引下,对FTP服务器进行基本的配置。

第三步,设置服务器的“访问最大速度”和“允许的最大用户访问量”,以保证服务器的最佳运行状态,使服务器正常无故障运行。如果不设置“最大访问速度”,服务器将会利用所有可能的带宽为客户提供服务,而过多的用户可能会占用一切可能的带宽,从而影响其他的网络应用。

第四步,为用户设置登陆名和密码。并设置用户权限。Serv—U支持匿名访问,但是作为专业的FTP站点,一般只允许授权用户访问,所以用户登陆FTP服务器时需要有一个帐号和相应的密码,服务器的管理人员在Serv—U中为用户设定其帐号和密码。通过规定每个用户在访问该FTP服务器时的权限,决定了用户可以访问哪些文件、不能访问哪些文件、以何种方式访问,从而确保了网络信息的安全。

第五步,服务器其他属性的设置。

通过以上操作,即建好了内网FTP服务器。

Serv-U可以做到一站多用户,不同用户登录可以绑定不同的工作目录。针对作业区别保存的问题,我们在Serv-U中建立两个帐号,分别为:CAD和PS,用户CAD登录后对应工作根目录为D:\CAD,用户PS登录后对应工作根目录为D:\PHOTOSHOP;然后,分别在各自目录下再建立用于上交作业的子目录D:\CAD\作业,D:\PHOTOSHOP\作业;最后在Serv-U中,设置用户CAD对工作根目录D:\CAD仅有读取权限、对目录D:\CAD\作业具有写入和追加权限,不具备读取和删除权限,以防止同学误删和抄作业;用户PS的设置类似。

这样一来,不同班级不同课程的学生,打开同一IP的FTP站点,输入不同的用户名就会进入各自对应的工作目录,利用Serv-U细腻的权限管理,使学生误删和抄作业现象得到较好控制。

参考文献:

[1]李卫东,徐景波.学校机房文件传输方法探讨[J].开封大学学报,2007年9月第21卷第3期

[2]王宏.教学资源库的FTP设计与实现[J].昌吉学院学报,2010年第6期

篇10

关键词:FTP;备份还原系统;烟草工业

引言

随着工业自动化技术的发展,烟草机械行业中客户对产品的用户体验要求日益提高,同时,与国际同行相比,国内烟草机械行业也由起初的望尘莫及、望其项背进入同台竞技的新阶段,而随着“中国制造2050”战略的提出,国内烟草机械行业的最终目标必然是与国际同行实现并驾齐驱。在此大背景下,控制系统作为烟草机械的一大优势,登上竞技台与国外巨头进行竞争。PLC、伺服运动控制及人机界面(HMI)作为烟草机械工控系统中最重要的三个子系统,在实际工程应用中经常需要对其不同版本进行备份,再根据实时要求进行还原操作,然而三个子系统相对独立,必须分别进行备份还原并添置硬件,不便于用户的实际操作。为了解决上述问题,提高机器智能化水平,更好的为用户服务,特别开发了一套基于VisualStudio2010的备份还原系统,一次性完成PLC、伺服运动控制系统及人机界面三个子系统的备份还原任务。

一、备份还原系统的原理

整个工业控制系统主要包括主PLC、上位机HMI、ELAU运动控制系统以及后续用户添加的专用系统如数据采集系统,如图1所示。备份还原系统在上位机HMI上运行,通过FTP协议实现与主PLC、ELAU运动控制器及后续用户添加的专用系统控制器实现数据传输,完成PLC系统的控制数据、HMI运行数据、上位机桌面信息、ELAU运动控制数据以及用户的专用系统数据的备份还原。整个系统所用的FTP通讯协议全称是FileTransferProtocol[1],基于此协议可以实现文件在处于同一局域网中不同电脑间的传输[2],并可以保证整个传输过程的可靠稳定性[3],因此在互联网领域被广泛应用[4]。FTP协议属于典型的C/S模式[1],文件传输过程如图2所示,其中提供FTP服务的计算机为FTP服务器,用户的本地计算机为FTP客户端;将文件从FTP服务器传输到客户端的过程为下载,将文件从客户端传输至FTP服务器的过程为上传。FTP服务的实时属性要求用户在访问FTP服务器之前必须登录,只有登录成功的用户才能访问、查询、读写该服务器上的资源[1]。但是,这种登录方式在某种程度上会制约某些公共资源的共享,因此,大部分FTP服务器还会提供匿名(anonymous)FTP服务。匿名FTP服务的实质是:提供服务的机构在它的FTP服务器上建立一个公开账户(通常为Anonymous),并赋予该账户访问公共目录的权限,以提供免费服务。然后,当用户访问此FTP服务器时,则不需要输入用户名和密码;如果需要,则是输入系统默认的公开账户即用户名为“anonymous”,密码为空。

二、备份还原系统的功能模块

VisualStudio2010通过其命名空间下的NetWorkCredential类、FtpWebRequest类和FtpWebResponse类提供对FTP的全面支持。其中,NetWorkCredential类用于验证客户端身份,当需要验证访问权限时,可使用这个类提供FTP服务器所需的用户名及密码;FtpWebRequest类用于实现FTP客户端所有请求;FtpWebResponse类用于封装FTP服务器对客户端请求的响应。FtpWebResponse对象提供操作的状态及从服务器下载的所有数据,获取FTP响应时,需调用FtpWebRequest对象的GetResponse方法获取。2.1FTP服务器连接模块。实现FTP服务器之间的文件传输,必须要运用服务器的正确用户名和密码成功登录服务器,同时赋予某项操作权限,否则FTP命令将不能成功执行,下列语句即为验证客户端身份的示范。上述语句中的NetWorkCredential类非常重要,在后续的FTP各项操作中如读取、写入及删除等都需要调用它。2.2FTP读取写入模块。依照实际需求,对FTP服务器的数据处理方法有很多比如读取、写入、删除、复制、创建及重命名文件等等,其中被广泛应用的主要有读取写入两种。除读取操作以外,后续几种操作之前都需要首先在客户端显示服务器的文件详细信息,即通过FtpWebResponse对象获取响应,再通过一系列的处理转换成文件名、目录名及文件大小等信息。获取以上信息之后,客户端即可对服务器中文件进行读取写入操作,这两种操作数据传输方式类似。读取操作利用WebRequestMethods.Ftp.DownloadFile类,写入操作利用WebRequestMethods.Ftp.UploadFile类,然后打开responseStream数据通道,进行数据传输。2.3文件及文件夹的遍历模块。在实际工程应用中,FTP服务需要传输的文件类型不仅仅是单一的文件,有时会有文件夹嵌套文件、文件夹嵌套文件及文件夹等等情况,为保证数据传递的准确性及完整性,必须将以上种种情况考虑进文件及文件夹遍历模块设计中。

三、备份还原系统界面

选择需要保存或恢复的选项以及文件所在位置,点击“保存”或是“恢复”按钮,然后点击“开始”,即可开启保存或恢复进程;点击“退出”,即关闭备份还原系统。

四、结语

通过实验室测试可证,备份还原系统可成功将PLC、HMI以及伺服控制系统一次性备份到存储设备中,并且还可以存储时间为依据存储不同的版本,用户根据需要对各个子系统进行还原,大大提高了备份还原操作的效率以及自由度。

参考文献

[1]郑阿奇.VisualC#网络编程[J].北京:电子工业出版社,2011:237-251.

[2]顾煜炯,林庆乙,贺徙.基于UDP与FTP协议的远程振动监测与故障诊断系统网络通信方法[J].仪器仪表学报,2007(06):413-414.

[3]耿强,黄雪琴.基于IRIS软件的FTP协议分析[J].科技信息,2012(19):107.

[4]张艳,华东.基于FTP的考试文件传输系统的研究[J].南京审计学院学报,2005(2):66-70.