文件传输协议(File Transfer Protocol,FTP)是因特网上使用得最广泛的文件传输协议。FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限。它屏蔽了各计算机系统的细节,因而适合于在异构网络中的任意计算机之间传送文件。
① 提供不同种类主机系统(硬、软件体系等都可以不同)之间的文件传输能力。
②以用户权限管理的方式提供用户对远程FTP服务器上的文件管理能力。
③ 以匿名 FTP 的方式——TFTP提供公用文件共享的能力。
FTP 采用客户/服务器的工作方式,它使用 TCP 可靠的传输服务。一个 FTP 服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:一个主进程,负责接收新的请求;另外有若干从属进程,负责处理单个请求。其工作步骤如下:
①打开熟知端口21(控制端口),使客户进程能够连接上。
② 等待客户进程发连接请求。
③启动从属进程来处理客户进程发来的请求。主进程与从属进程并发执行,从属进程对客户进程的请求处理完毕后即终止。
④回到等待状态,继续接收其他客户进程的请求。
FTP 服务器必须在整个会话期间保留用户的状态信息。特别是服务器必须把指定的用户账户与控制连接联系起来,服务器必须追踪用户在远程目录树上的当前位置。
在TFTP(Trivial File Transfer Protocol)中,C/S模式指的是客户端/服务器模式。在这种模式下,客户端向服务器发送请求,服务器响应请求并返回数据。
在C/S模式下,客户端和服务器之间的交互通常包括以下几个步骤:
- 客户端向服务器发送读取文件请求(RRQ)。
- 服务器收到请求后,验证客户端的权限,然后准备文件数据。
- 服务器向客户端发送文件数据。
- 客户端收到数据后,向服务器发送确认收到的消息。
- 如果客户端在传输过程中发现错误,可以请求重新发送数据。
- 服务器和客户端之间重复传输数据,直到整个文件传输完成。
以下是更详细的描述:
场景:一家公司的网络管理员想要从服务器上下载一个配置文件,以便在本地机器上配置网络。
管理员在本地机器上打开命令行界面,输入命令 "tftp get <服务器地址> <文件名>",启动了TFTP客户端。
客户端向服务器发送了一个RRQ请求,请求读取名为 "config.txt" 的文件。
服务器收到请求后,验证了管理员的权限,并准备读取文件。服务器使用一个名为 "tftp_server" 的进程来处理客户端请求。该进程首先检查管理员的IP地址和用户名是否有效。如果管理员没有权限访问该文件或IP地址被拒绝,服务器会返回一个错误消息,并结束进程。
如果管理员有权访问文件,服务器将打开文件并准备发送数据。服务器使用UDP协议向客户端发送数据包,每个数据包包含一部分文件内容。
FTP 在工作时使用两个并行的 TCP 连接:一个是控制连接(端口号 21),一个是数据连接(端口号20),使用两个不同的端口号可使协议更加简单和更容易实现。
服务器监听21号端口,等待客户连接,建立在这个端口上的连接称为控制连接,控制连接用来传输控制信息(如连接请求、传送请求等),并且控制信息都以7位ASCI格式传送。FTP客户发出的传送请求,通过控制连接发送给服务器端的控制进程,但控制连接并不用来传送文件。在传输文件时还可以使用控制连接(如客户在传输中途发一个中止传输的命令),因此控制连接在整个会话期间一直保持打开状态。
服务器端的控制进程在接收到FTP客户发来的文件传输请求后,就创建“数据传送进程”和
“数据连接”,数据连接用来连接客户端和服务器端的数据传送进程,数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。
数据连接有两种传输模式:主动模式PORT和被动模式PASV.——客户端
PORT模式的工作原理:
客户端连接到服务器的21端口,登录成功后要读取数据时,
客户端随机开放一个端口,并发送命令告知服务器,
服务器收到PORT命令和端口号后,通过20端口和客户端开放的端口连接,
发送数据。
PASV 模式的不同点是,
客户端要读取数据时,发送 PASV 命令到服务器,
服务器在本地随机开放一个端口,并告知客户端,
客户端再连接到服务器开放的端口进行数据传输。
可见,是用PORT模式还是PASV模式,选择权在客户端。简单概括为,
主动模式传送数据是"服务器”连接到“客户端”的端口;被动模式传送数据是“客户端”连接到“服务器”的端口。
因为 FTP 使用了一个分离的控制连接,所以也称FTP 的控制信息是带外(Out-of-band)传送的。使用 FTP时,若要修改服务器上的文件,则需要先将此文件传送到本地主机,然后再将修改后的文件副本传送到原服务器,来回传送耗费很多时间。网络文件系统(NFS)采用另一种思路,它允许进程打开一个远程文件,并能在该文件的某个特定位置开始读写数据。这样,NFS可使用户复制一个大文件中的一个很小的片段,而不需要复制整个大文件。
学习时间为不运动的时候,作者咕咕了是去运动(无氧运动和有氧运动都做最好)了,请饶恕。
画工
??计算机网络第1章:计算机网络的概念、组成与功能;计算机网络的分类、标准化工作及相关组织
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?http://t.csdnimg.cn/uZOAM
计算机网络第一章:性能指标:带宽、时延、时延带宽积、RTT、吞吐量、速率、信道利用率
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?http://t.csdnimg.cn/avNeb
计算机网络体系结构——PDU、SDU、PCI、协议、访问、接口、SAP
?计算机网络分层结构——OSI/ISO、TCP/IP? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? http://t.csdnimg.cn/hLrqY
?1章选择? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??http://t.csdnimg.cn/cnmdJ
2章选择、解答? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??http://t.csdnimg.cn/ONrER
???通信基本概念:数据、信号、码元、信源、信道、信宿、速率、波特、带宽? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? http://t.csdnimg.cn/TKnyM
?数据、信号、码元、信源、信道、信宿、速率、波特、带宽-通信基本概念
应用层:C/S、P2P、peer? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? http://t.csdnimg.cn/4i4Og
C/S、P2P、peer的选择? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?http://t.csdnimg.cn/4a11f ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?DNS层次域名空间、域名服务器、域名解析的原理? ? ? ? ? ? ? ? ? ? ? ??http://t.csdnimg.cn/yeWd6
HCIA——23DNS层次域名空间、域名服务器、域名解析的原理的选择、解答? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?http://t.csdnimg.cn/RXPNV