FTP论文ppt课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
13
FTP服务器端实现的的命令 3
• 14).TOUCH:请求在服务器上新建一个文件,这 条命令带一个参数指明要建立的文件名。
• 使用格式:TOUCH filename • 15).PWD:在服务器上显示当前工作目录。 • 16).MV:请求在服务器上为某一个指定的文件或
文件夹重命名。 • 17).CP:请求在服务器上拷贝一个目录或文件。 • 使用格式:CP spathname dpathname
是TCP/IP网络上两台计算机传送文件的协
议,FTP是在TCP/IP网络和INTERNET上
最早使用的协议之一,它属于网络协议组
的应用层。FTP客户机可以给服务器发出命
令来下载文件,上载文件,创建或改变服
务器上的目录等功能 。英文File Transfer
Protocol的缩写 ,FTP协议译名文件传输控
18
Server-Client模型
• 服务器,使用ServerSocket监听指定的端口, 端口可以随意指定(由于1024以下的端口通常属 于保留端口,在一些操作系统中不可以随意使用, 所以建议使用大于1024的端口),等待客户连接 请求,客户连接后,会话产生;在完成会话后, 关闭连接。
• 客户端,使用Socket对网络上某一个服务器的 某一个端口发出连接请求,一旦连接成功,打开 会话;会话完成后,关闭Socket。客户端不需要 指定打开的端口,通常临时的、动态的分配一个 1024以上的端口。
序与它们出发时的顺序一样。
15
套接字socket连接的三个步骤

1.服务器监听:是服务器端套接字并不定位具体的客
户端套接字,而是处于等待连接的状态,实时监控网络状
态。

2.客户端请求:是指由客户端的套接字提出连接请求,
要连接的目标是服务器端的套接字。为此,客户端的套接
字必须首先描述它要连接的服务器的套接字,指出服务器
模式,由FTP客户端和FTP服务器端程序组成。
通常服务器端是远程端点,用户可以通过Internet
网络连接到远程的FTP服务器站点。服务器的功
能是主要的。只有当FTP服务器支持各种协议和
指令时,才能够开发相应的客户端程序。下面就
是整个ftp项目的设置思路。
3
什么是FTP?

FTP(File Transfer Protocol, FTP)
送PORT命令。PORT命令包含了客户端用
什么端口接收数据。在传送数据的时候,
服务器端通过自己的TCP20端口连接至客
户端的指定端口发送数据。FTP server必须
和客户端建立一个新的连接用来传送数据。
7
FTP被动方式工作过程
• Passive模式在建立控制通道的时候和 Standard模式类似,但建立连接后发送的 不是Port命令,而是Pasv命令。FTP服务器 收到Pasv命令后,随机打开一个高端端口 (端口号大于1024)并且通知客户端在这 个端口上传送数据的请求,客户端连接FTP 服务器此端口,然后FTP服务器将通过这个 端口进行数据的传送,这个时候FTP server 不再需要建立一个新的和客户端之间的连 接。
12
FTP服务器端实现的的命令 2
• 6).UPDATE:存放文件。 • 7).WYWT:请求服务器返回系统类型。 • 8).TYPE:表示文件类型,共有四种,所带参数也有四
种,A,E ,I ,L 分别对应ASCII,EBCDIC,IMAGB和 LOCAL类型。 • 9).CMD:请求更改服务器的当前目录这各命令带一个参 数,参数表示要更改的目录名。 • 10).DELE:请求删除服务器上的文件。 • 11).MKO:请求在服务器上新建一个目录,这条命令带一 个参数指明要建立的目录名。 • 12). PORT:指明数据连接的端口号,带六个参数。 • 13).CAT:命令显示某一个文件的内容。
19
Server-Client模型图
20
编辑开发环境简介
• Source Insight是如今最好用的语言编辑器, 支持几乎所有的语言, 如C、C++、ASM、 PAS、ASP、HTML等常见的,还支持自己 定义关键字,如果您 是一个程序员或者网 页制作人,这个软件对您都是有帮助的! Source Insight为您提供了可快速访问源代 码和源信息的功能 。
8
FTP中有关防火墙的问题

很多防火墙在设置的时候都是不允许
接受外部发起的连接的,所以许多位于防
火墙后或内网的FTP服务器不支持PASV模
式,因为客户端无法穿过防火墙打开FTP服
务器的高端端口;而许多内网的客户端不
能用PORT模式登陆FTP服务器,因为从服
务器的TCP 20无法和内部网络的客户端建
序和FTP服务器端程序组成 。使用时,先启动FTP客户端
程序与远程主机建立连接,然后向远程主机发出传输命令,
远程主机在收到命令后就给予响应,并执行正确的命令 。
5
FTP协议的两种模式

FTP支持两种模式,一种方式叫做
Standard(也就是 PORT方式,主动方式),
一种是Passive(也就是PASV,被动方式)。
• Guest用户 :这个账户只能够访问自己的主目录
• Anonymous(匿名)用户 :这类用户是指在FTP 服务器中没有指定帐户,但是其仍然可以进行匿 名访问某些公开的资源。
10
FTP的传输有两种方式
• 1.ASCII传输方式:假定用户正在拷贝的文件包含 的简单ASCII码文本,如果在远程机器上运行的不 是UNIX,当文件传输时ftp通常会自动地调整文件 的内容以便于把文件解释成另外那台计算机存储 文本文件的格式。
• 2.二进制传输模式:在二进制传输中,保存文件 的位序,以便原始和拷贝的是逐位一一对应的。 即使目的地机器上包含位序列的文件是没意义的。 例如,macintosh以二进制方式传送可执行文件到 Windows系统,在对方系统上,此文件不能执行。
11
FTP服务器端实现的的命令 1
• 1).USER:指用户名,它带一个参数。 格式为:USER username在登录ftp服务器的时候先用此命令告诉服务器那个用
远程计算机上,则称之为“上载(upload)”文件。在
TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式
数据端口为20。从根本上说,FTP协议就是在网络中各种
不同的计算机之间按照TCP/IP协议来传输文件。FTP协议
采用客户机/服务器 (Client/Sever)模式,由FTP客户端程
论文题目 一个基于linux 的FTP系统
专业:嵌入式
指导老师:苏锡锋
姓名:杨根涛 学号:2009100408
1
TCP/IP
Internet Host
Windows for Workgroups
IBM Mainframe
VMS System
Apple Macintosh System
Windows 95 & 98
套接字的连接请求。
16
Socket接口

Socket接口是TCP/IP网络的API,Socket接
口定义了许多函数或例程,程序员可以用它们来
开发TCP/IP网络上的应用程序。要学Internet上的
ຫໍສະໝຸດ BaiduTCP/IP网络编程,必须理解Socket接口。Socket
接口设计者最先是将接口放在Unix操作系统里面
Windows NT
Network Printer
Windows 2000
UNIX System
2
为什么会有ftp呢?

由于网络的带宽及各种服务的限制,单纯从
页面上下载显得又慢又不可靠,所以就有许多
FTP工具提供出来。从根本上说,FTP就是在网
络中各种不同的计算机之间按照TCP/IP协议来传
输文件。FTP采用的是现在流行的Client/Server
17
Socket接口类型
• 1、流式(stream) 这些套接口提供了可靠的双向顺序数据流连接。它们可以保证数据传输
中的完整性、正确性和单一性。I N E T寻址族中的T C P协议支持这种类型的 套接口。 • 2、数据报(Datagram) 这种类型的套接口也可以像流式套接口一样提供双向的数据传输,但它们不能保 证传输的数据一定能够到达目的节点。即使数据能够到达,也无法保证数据 以正确的顺序到达以及数据的单一性、正确性。UDP协议支持这种类型的套 接口。 • 3、原始(Raw) 这种类型的套接口允许进程直接存取下层的协议。 • 4、可靠递送消息(Reliable Delivered Messages) 这种套接口和数据报套接口一样,只能保证数据的到达。 • 5、顺序数据包(Sequenced Packets) 这种套接口和流式套接口相同,除了数据包的大小是固定的。 • 6、数据包(Packet)
立一个新的连接,造成无法工作。
9
FTP 权限管理

在考虑FTP服务器安全性工作的时候,第一
步要考虑的就是谁可以访问FTP服务器。在
Vsftpd服务器软件中,默认提供了三类用户。不
同的用户对应着不同的权限与操作方式。
• Real帐户:这类用户是指在FTP服务上拥有帐号。 当这类用户登录FTP服务器的时候,其默认的主 目录就是其帐号命名的目录。但是,其还可以变 更到其他目录中去 。
制协议。
4
FTP 工作原理

FTP协议是Internet文件传送的基础,它由一系列规
格说明文档组成,目标是提高文件的共享性,提供非直接
使用远程计算机,使存储介质对用户透明和可靠高效地传
送数据。简单的说,FTP就是完成两台计算机之间的拷贝,
从远程计算机拷贝文件至自己的计算机上,称之为“下载
(download)”文件。若将文件从自己计算机中拷贝至
户要 • 2).PASS:指明与用户名对应的密码,带一个参数。 格式为:PASS password当服务器收到来自客户端的USER命令后,检查其合法
后就像客户端发提示信息要求输入密码,客户端这是就可以向服务器发送 PASS命令加上root用户的密码。服务器检查密码的正确后,客户端就与服务 器连接起来了。 • 3)LIST: [pathname] 参数表示要列文件的目录路径名,若不带参数,刚使用当前目录。此命令会把 pathname 路径下的文件或目录按照一定的格式发送给客户端让客户端显示 出来。 • 4).QUIT:由于要求传输文件时有登陆的过程,断开连接到应有相应的注销 过程。这个命令就是从服务器上注销的过程,如果服务器收到该命令时,没 有文件正在传达室输,刚断开控制,连接如果有文件正在传输,刚控制连接 仍然保持,直到收到有关传输结果的应答时,服务器才断开连接。 • 5).LOAD:取得文件这条命令是FTP事务是用得最多的命令,在请求下载 文件时都有会用到。
的。如果了解Unix系统的输入和输出的话,就很
容易了解Socket了。网络的Socket数据传输是一
种特殊的I/O,Socket也是一种文件描述符。
Socket也具有一个类似于打开文件的函数调用
Socket(),该函数返回一个整型的Socket描述
符,随后的连接建立、数据传输等操作都是通过
该Socket实现的。
Standard模式FTP的客户端发送PORT命令
到FTP服务器。Passive模式FTP的客户端
发送PASV命令到FTP Server。
6
FTP主动方式工作过程

主动方式的FTP工作过程:Port模式
FTP客户端首先和FTP服务器的TCP 21端
口建立连接,通过这个通道发送命令,客
户端需要接收数据的时候在这个通道上发
的两个端点,一个程序将一段信息写入一个Socket中,该
Socket将这段信息发送给另外一个Socket,以便使这段信
息能传达到其他程序中。Socket有两种主要的工作方式:
有连接的和无连接的。有连接方式如流通讯;无连接方式
如数据包方式。有连接的Socket操作就像一部电话。它们
必须建立一个连接和一个呼叫。所有的事情在到达时的顺
端套接字的地址和端口号,然后就向服务器端套接字提出
连接请求。

3.连接确认:是指当服务器端套接字监听到或者说接
收到客户端套接字的连接请求,它就响应客户端套接字的
请求,建立一个新的线程,把服务器端套接字的描述发给
客户端,一旦客户端确认了此描述,连接就建立好了。而
服务器端套接字继续处于监听状态,继续接收其他客户端
14
FTP 关键技术之socket机制

Socket 通讯机制是一种较原始的通讯机制,通过
Socket的数据表现出来的形式是原始字节流信息,通讯双
方只要在此基础上按照双方约定方式进行数据的格式化和
解析处理工作,这样才能完成具体的应用,即实现某种协
议的过程。Socket可以看成是在两个程序间进行通讯连接
相关文档
最新文档