文件传输协议Word格式.docx
- 文档编号:17507182
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:9
- 大小:22.72KB
文件传输协议Word格式.docx
《文件传输协议Word格式.docx》由会员分享,可在线阅读,更多相关《文件传输协议Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
在此类型下传送的数据被看作连续的位,发送方将数据打包到8位传输字节中传送因为结构的需要要对传送数据进行填充,填充字节全部为0,填充必须在文件结构时使用,而且要标记出以便接收方过滤掉它用于传送二进制数据和有效地传送和存储文件,因此所有也必须实现本地类型
也可以以十进制指定逻辑字节大小如果物理字节大小和逻辑字节大小不同,直接将物理数据打包为逻辑字节,不用什么填充接收方根据逻辑字节大小进行和本机的存储特点进行转换传输必须是可重复的,也就是说,相同的文件相同的参数,那内容必须是一样的格式控制
和有一个可选参数,它说明文件垂直格式控制,下面的数据表示类型在中有定义字符文件可能有三种用途,打印,存储或留待以后处理如果是用于打印,那主机必须知道垂直格式控制的表示,如果存储或等以后处理,也需要保留文件格式如果在远程主机上处理完后传输回本地主机,要保证远程主机处理时没有麻烦这都需要在和格式上加入新的参数
未指定第二个参数是它是默认值它必须为所有接受如果传输的文件是用于打印的,则使用边界和间隔的默认值通常它不用于打印目的,而用于保存文件或执行文件格式控制
文件包括/垂直格式控制,这些控制字符可以使打印正常进行()
文件包含()垂直格式控制字符在以标准形成的行中,第一个字符不打印,它用于决定打印前的走纸量下面是定义了的字符:
:
向下移动1行;
0:
向下移动2行;
1:
移动至下一页;
+:
不移动
打印机必须能够决定结构体的结束如果文件本身有记录结构就没有问题,如果没有,<
用于区别打印行,但这些格式标记已经由控制字符使用了数据结构
除了有不同的数据类型外,还允许有不同的文件结构,下面是三种文件结构:
文件式结构:
文件中没有内部结构,文件被看作是二进制流;
记录结构:
文件是由一系列记录组成的;
页结构:
文件是由不同的索引页组成的
如果未使用命令,文件结构是默认值文件的结构会影响传输模型,存储和数据表示文件本来的属性和保存它的主机有关,不同的机器会以自己的方式保存文件在不同主机间传送文件时必须使主机能够识别相互的表示有些主机上的文件是面向字节的,有些是面向记录的,在传送时就会出现问题那就要在接收方进行内部转换在进行转换的时候,需要区别记录的边界,在中使用<
,在中使用<
NL>
作为分隔符采用这种实现方法的必须保证转换是可逆的文件结构
如果未使用命令,文件结构是默认值文件结构中没有默认值,文件被看作是连续的字节串记录结构
对于文本文件,记录结构必须是所有实现必须有的记录结构文件是由连续的记录构成的页结构
文件是非连续时使用页结构这种文件称为随机访问文件这些文件中有时会的和文件整体或部分相关的信息出现在中,文件的一个部分称为页为了提供不同的页大小和相关信息,每页都带页头发送页头中有如下域:
头长度页索引数据长度
包括此字节的页头长度,单位为字节,最小长度为4指出此部分在原文件中的位置,它和传输编号不是一回事页数据中的逻辑字节数,最小值为0
页的类型有以下几种:
0=未页,指示传输结构,包头必须为4,数据长度必须为0;
1=通常页,没有控制信息的通常页文件的普通类型;
2=描述子页,用于传送整体文件的描述信息;
3=访问控制页,包括页级访问控制信息的页文件头域,包头长度必须为5
页类型
可选域提供每页的控制信息
所有域均以1个逻辑字节长度为大小,逻辑字节长度由命令指定如果读取版本与和开始版本号一致,文件访问时必须以相同的参数进行如果参数相同,实现要保证取得的文件内容是相同的建立数据连接
通过命令可能改变端口,用户可能希望数据在第三方主机上进行其它操作,用户PI需要在两个服务器PI上建立连接一个服务器被告知侦听另一服务器的请求用户PI通过命令通知另一服务器的数据端口最后双方发送相应的传送命令通常,服务器负责支持数据连接,初始化并关闭它,除非用户在传输模式下要求关闭连接服务器在下面情况下关闭数据连接:
1服务器结束发送数据,通过要求中止传送;
2用户发送命令;
3用户改变端口;
4控制连接关闭;
5发生不可恢复错误传输模式
有三种传输模式:
一种将数据格式化并考虑重新开始过程;
一种压缩数据;
一种是不经过处理传送所有数据传输必须以一个结束,它可以显式给出,也可以通过关闭连接隐式给出对于记录文件,所有是显式的,包括最后一个记录对于以页结构传送的文件,使用“最后一页”表示结束从这里开始,下文中我们提到的字节指的是“传输字节”
为了进行标准化传送,传送主机必须把行结束或记录结束的内部表示转化为传输模式和文件结构指定的形式传送,接收方则进行相反的工作大型机的记录计数域可能不能为其它主机识别,所以记录结束标记在流模式下以双字节控制码传送,在块或压缩模式下以标记位传送而或的行结束
则则<
或<
指示这样的转换需要时间,所以相同的系统在传送文本文件时采用二进制或流表示比较合适下面是定义的传输模式:
流模式
数据以字节流的形式传送使用的表示类型没有限制,允许记录结构在记录结构文件和表示为双字节控制码第一字节全为0,后一字节为转义字符当第二位值为1时表示,为2时表示,如果要同时表示和,值为3全1字节作为数据发送时必须使用双字节传送,其中数据保存在第二个字节内如果是文件结构,通过发送方关闭连接表示,接收到的所有数据就是文件内容块模式
文件以块形式传送,块带有自己的头部分头字节包括计数域和描述子代码计数域说明了数据块的字节数,描述子代码定义了以下内容:
,重新开始标记或怀疑错误数据怀疑错误数据不是为了进行差错控制,它是为了站点间交换特定数据,传送时不管本地错误而只管传送,但是传送时可要指出,这个数据可能有错在此模式下可以使用记录结构,也可以使用相应的数据表示
压缩模式
4文件传输功能
从用户PI到服务器的信道是建立在用户到标记服务器端口间的用户协议解释器负责发送命令和解释接收的应答;
服务器PI解释命令,发送应答,指导建立数据连接并传送数据如果数据传输的第二方是用户,通过用户主机的内部协议对它进行控制;
如果第二方是服务器,它由用户PI发来的命令经过自己的PI控制命令访问控制命令
下列命令指定访问控制标记:
用户名()
参数是标记用户的串用户标记是访问服务器必须的,此命令通常是控制连接后第一个发出的命令,有些主机还会要求口令和帐户服务器可以在任何时间接收新的命令以改变访问控制和帐户信息这可以重新开始登录过程,所以传输参数不变,在进行中的文件传输在过去的访问控制参数下完成
口令()
参数是标记用户口令的串此命令紧跟命令,在某些站点它是完成访问控制不可缺少的一步因此口令是个重要的东西,因此不能显示出来,服务器方没有办法隐藏口令,所以这一任务得由用户进程完成
()
参数是标记用户帐户的串此命令不需要与相关,一些站点可能需要帐户用于登录,另一些可以限制帐户的权限,在后一种情况下,此命令可在任何时候发送应答的不同可以区别不同的情况:
当登录需要帐户信息时,对命令的响应是另外,如果不需要帐户信息,对的响应是,如果需要帐户信息在以后需要,服务器会返回或,这要看它是保存此命令还是拒绝此命令了
改变工作目录()
此命令使用户可以在不同的目录或数据集下工作而不用改变它的登录或帐户信息传输参数也不变参数一般是目录名或与系统相关的文件集合
回到上一层目录()
此命令要求系统实现目录树结构,它的响应和的相同结构加载()
此命令使用户在不改变登录或帐户信息的情况下加载另一个文件系统数据结构传输参数也不变参数是文件目录或与系统相关的文件集合
重新初始化()
此命令终止,将所有I/O和帐户信息写入,但不许进行中的数据传输完成重置所有参数,控制连接打开,可以再次开始命令
退出登录()
此命令终止,如果没有数据传输,服务器关闭控制连接;
如果有数据传输,在得到传输响应后服务器关闭控制连接如果用户进程正在向不同的传输数据,不希望对每个关闭然后再打开,可以使用对控制连接的意外关闭,可以导致服务器运行中止()和退出登录()传输参数命令
所有数据传输参数有默认值服务器必须记录下默认值,在服务请求后,可以以任何顺序发送下面命令传送参数:
数据端口()
参数是要使用的数据连接端口,通常情况下对此不需要命令响应如果使用此命令时,要发送32位的IP地址和16位的端口号上面的信息以8位为一组,逗号间隔十进制传输,如下例:
h1h2h3h4p1p2
其中h1是IP地址的最高8位被动()
此命令要求服务器在指定的数据端口侦听,进入被动接收请求的状态,参数是主机和端口地址表示类型()
参数指定表示类型有些类型需要第二个参数,第一个参数由单个字符定义,第二个参数是十进制整数指定字节大小,参数间以<
SP>
分隔下面是格式:
默认表示类型是非打印字符,如果参数未改变,以后只改变了第一个参数,则使用默认值文件结构()
参数是一个字符代码指定文件结构下面是代码及其意义:
F-文件,它是默认值R-记录结构P-页结构传输模式()
参数是一个字符代码指定传输模式下面是代码及其意义:
S-流B-块C-压缩服务命令
服务命令定义用户请求的文件传输或文件系统功能此命令的参数通常是路径名,其语法要和服务器的规范一致推荐的默认值是最近指定的设备目录或目录命令顺序通常没有限制,只有"
"
命令后面必须是"
,重新启动命令后面必须是中断服务命令服务命令的响应通常在数据连接上传输下面是具体的命令:
获得文件()
此命令使服务器传送指定路径内的文件复本到服务器或用户这边服务器上文件的状态和内容不受影响
保存()
此命令使服务器接收数据连接上传送过来的数据,并将数据保存在服务器的文件中如果文件已存在,原文件将被覆盖如果文件不存在,则新建文件
唯一保存()
此命令和差不多,此命令要求在此目录下的文件名是唯一的,对此命令的响应必须包括产生的用户名
附加()
它和的功能差不多,但是如果文件在指定路径内已存在,则把数据附加到原文件尾部,如果不存在则新建文件
分配()
此命令用于在一些主机上为新传送的文件分配足够的存储空间参数是十进制的逻辑字节数如果是记录或页结构,页或记录的最大大小也需要,这在第二个参数内以十进制指定第二个参数是可选的,如果有它,它和第一个参数以字符<
R<
分隔此命令在或命令后,对于不需要分配存储空间的机器,它的作用等于
重新开始()
参数域代表服务器要重新开始的那一点,此命令并不传送文件,而是略过指定点后的数据,此命令后应该跟其它要求文件传输的命令
重命名()
这个命令和我们在其它操作系统中使用的一样,只不过后面要跟"
指定新的文件名重命名为()
此命令和上面的命令共同完成对文件的重命名放弃()
此命令通知服务中止以前的命令和与之相关的数据传送如果先前的操作已经完成,则没有动作,返回如果没有完成,返回,然后再返回关闭控制连接,数据连接不关闭
删除()
此命令删除指定路径下的文件用户进程负责对删除的提示删除目录()此命令删除目录创建目录()
此命令在指定路径下创建新目录打印工作目录()
在响应是返回当前工作目录列表()
服务器传送列表到被动,如果路径指定一个目录或许多文件,返回指定路径下的文件列表如果路径名指定一个文件,服务器返回文件的当前信息,参数为空表示用户当前的工作目录或默认目录数据传输在或下进行,用户必须确认这一点因为文件信息因系统不同而不同,所以不可能被程序自动利用,但是人类用户却很需要
名字列表()
服务器传送目录表名到用户,路径名应指定目录或其它系统指定的文件群描述子;
空参数指当前目录服务器返回文件名数据流,以或形式传送,并以<
分隔这里返回的信息有时可以供程序进行进一步处理
站点参数()
服务器用来提供服务器系统信息,信息因系统不同而不同,格式在命令应答中给出系统()
用于确定服务器上运行的操作系统状态()
此命令返回控制连接状态,它可以在文件传送过程中发送,服务器返回操作进行的状态也可以在文件传送之间发送,这时命令有参数,参数是路径名,此命令的功能除了数据在控制连接上传送以外和列表命令相似如果指定部分路径,服务器以文件名或与说明相关的属性返回;
如没有参数,服务器返回服务器进程的状态信息,包括传输参数的当前值和连接状态
帮助()
这条命令我们在平常系统中得到的帮助没有什么区别,响应类型是或建议在使用命令前使用此命令
等待()
此命令不产生什么实际动作,它仅使服务器返回
在控制连接上使用通信,因此有机会大家可以看看相关的协议说明对下文的理解会很有好处下面内容将对命令的应答和关于命令的详细信息作以说明命令可分为访问控制标记,数据传
输参数或服务请求,特定的命令可以在数据传输过程中在控制连接上传输有些服务器不能同时监视数据和控制链路,那就要另外采取措施了请注意下面的几点建议:
1用户系统将的"
信息插入流;
2用户系统发送的"
"
信号;
3用户系统将命令插入流;
4服务器PI在接收到IP后,在流中寻找仅有一个的命令应答
命令的响应是为了对数据传输请求和过程进行同步,也是为了让用户了解服务器的状态每个命令必须有最少一个响应,如果是多个,它们要易于区别有些命令是有顺序性的,因此其中任何一个命令的失败会导致从头开始响应由三个数字构成,后面是一些文本数字带有足够的信息命名用户PI不用检查文本就知道发生了什么文本信息与服务器相关,用户可能得到不同的文本信息文本和数字以<
间隔,文本后以行结束符结束文本可能多于一行,这时文本必须在括号内,第一行内要有信息表示文本多于一行,最后一行也要有所标记如果是多行,可以在数字代码后加上"
-"
,最后一行以数字开始,后面是<
,再加上的行结束符就可以了下面是一个例子:
-第一行第二行
以数字开始的一行最后一行
三位数字每位都有一定的意义,第一位确定响应是好的,坏的还是不完全的,通过检查第一位,用户进程通常就能够知道大致要采取什么行动了如果用户程序希望了解出了什么问题,可以检查第二位,第三位留表示其它信息第一位有五个值:
1yz确定预备应答
请求的操作正在被初始化;
在进入下一个命令前等待另外的应答这类响应用于说明命令被接受,在实现中如何同步监视有困难,用户进程现在可以关注数据连接了服务器进程对第个命令几乎都返回1yz响应
2yz确定完成应答
要求的操作已经完成,可以执行新命令3yz确定中间应答
命令已接受,但要求的操作被停止,停止接收更新的信息4yz暂时拒绝完成应答
未接受命令,要求的操作未执行,但错误是临时的,过一会儿可以再次发送消息用户应该返回命令序列的开始这个暂时可是不好确定,此命令的意思就是让用户进程再次尝试使用此命令
5yz永远拒绝完成应答
它与暂时拒绝完成应答的区别就在于错误条件是一时半会不会消失下面我们来看看第二位所代表的意义:
x0z格式错误;
x1z此类应答是为了请求信息的;
x2z此类应答是关于控制和数据连接的;
x3z关于认证和帐户登录过程;
x4z未使用;
x5z此类应答是关于文件系统的;
第三个数字是在第二个数字的基础上对应答内容的进一步细化一般来说,数字代码后要有文本信息实现时应该尽量使用现有的代码,而不要随便添加新的意义不大的代码
有些命令如或,它们的成功不为用户进程提供任务新信息,所以不会有应答返回如果有些命令对于服务器来说不支持,也要返回确定完成应答,这样用户进程才有可能进行下面的命令如果要求的不是可选实现的命令,而这个命令确实没有实现,那就要返回代码下面我们根据数字顺序列出各个应答码及其意义:
重新启动标记应答在这种情况下文本是确定的,它必须是:
=,其中是用户进程数据流标记,是服务器标记服务在分钟内准备好数据连接已打开,准备传送
文件状态良好,打开数据连接命令成功命令未实现
系统状态或系统帮助响应目录状态文件状态
帮助信息,信息仅对人类用户有用名字系统类型对新用户服务准备好
服务关闭控制连接,可以退出登录数据连接打开,无传输正在进行关闭数据连接,请求的文件操作成功进入被动模式用户登录
请求的文件操作完成创建"
用户名正确,需要口令登录时需要帐户信息
请求的文件操作需要进一步命令不能提供服务,关闭控制连接不能打开数据连接关闭连接,中止传输请求的文件操作未执行中止请求的操作:
有本地错误未执行请求的操作:
系统存储空间不足格式错误,命令不可识别参数语法错误命令未实现命令顺序错误
此参数下的命令功能未实现未登录
存储文件需要帐户信息未执行请求的操作请求操作中止:
页类型未知请求的文件操作中止,存储分配溢出未执行请求的操作:
文件名不合法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文件传输 协议