`
megocdy
  • 浏览: 25863 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ftp协议的工作原理

    博客分类:
  • java
 
阅读更多
FTP Transfer Protocol 件传输协议的缩写,在RFC 959中具体说明。
  FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。
  控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的。
  数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。
  FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式

  PORT模式(主动方式)
  FTP 客户端首先和FTP Server的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口(一个大于1024的端口)接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
  PASV模式(被动方式)
  在建立控制通道的时候和PORT模式类似,当客户端通过这个通道发送PASV 命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server 将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接传送数据。
  如果从C/S模型这个角度来说,PORT对于服务器来说是OUTBOUND,而PASV模式对于服务器是INBOUND,这一点请特别注意,尤其是在使用防火墙的企业里,这一点非常关键,如果设置错了,那么客户将无法连接。
分享到:
评论

相关推荐

    【协议分析】【FTP 协议分析】

    在本文中,我们将深入探讨FTP协议的工作原理、主要组成部分以及相关知识点。 1. **FTP协议工作原理**: FTP协议使用两个并发的TCP连接:控制连接和数据连接。控制连接用于发送命令和接收响应,如登录、目录浏览、...

    FTP协议实现源代码

    这个源代码是学习FTP协议工作原理和网络编程的一个很好的实践案例。通过阅读和理解代码,你可以深入理解FTP协议的实现细节,并掌握网络编程的基本技能。同时,这也是一个很好的机会来提升你的C语言编程能力,特别是...

    理解TCP 和FTP协议实验报告

    【FTP协议工作原理】 FTP(File Transfer Protocol,文件传输协议)用于在互联网上传输文件。FTP协议基于TCP,提供了一种可靠的文件传输机制。FTP有两类用户模式:主动模式和被动模式。实验中使用的是默认的主动...

    计算机网络(FTP协议分析)

    ### FTP协议工作原理 FTP协议的工作流程分为以下几个步骤: 1. **建立连接**:客户端通过TCP连接到服务器的21号端口,建立控制连接。一旦连接建立,服务器会发送一个欢迎消息给客户端。 2. **用户认证**:客户端...

    FTP协议分析

    实验的目的是理解FTP协议的工作原理,了解常用命令,以及了解应用层协议与传输层协议的关系。 在FTP协议的实验中,会涉及到多个方面,包括但不限于: 1. FTP协议的基本工作原理,包括文件的上传、下载、目录切换等...

    FTP 协议的实现

    2) 了解 FTP 协议的工作原理。 3) 掌握用 MFC 编写 FTP 协议的实现程序(也可自选工具)。 【设计任务】: 在 Visual C++6. 0 的环境下实现 FTP 下载工具(实现工具可以自选)。 【设计要求】: 1) 了解 FTP 协议...

    ftp协议及原理介绍

    ftp协议介绍,网络编程方面的,详细介绍了ftp协议原理及实现机制

    ftp 客户端实现,及tcpdump 抓包过程

    在这个过程中,理解FTP协议的工作原理以及TCP/IP网络模型是至关重要的。 FTP协议基于TCP,使用两个并行的连接:控制连接和数据连接。控制连接用于发送命令和接收响应,数据连接则用于实际的数据传输。在FTP客户端...

    FTP协议实现程序

    FTP(File Transfer Protocol)协议是Internet上用于文件传输的标准协议,它允许用户在两台计算机之间上传、下载文件。...对于初学者,理解FTP协议的工作原理和实现方法,是进入网络编程领域的良好起点。

    c语言ftp客户端源代码

    C语言FTP客户端源代码是实现FTP协议的程序,可以帮助开发者理解FTP的工作原理,学习网络编程和C语言编程技巧。 在FTP客户端中,主要有以下几个关键组件: 1. **cmds.c**:这个文件通常包含了客户端执行的各种FTP...

    FTP服务概念与原理.pdf

    FTP 服务概念与原理主要包括 FTP 的基本概念、FTP 的工作原理、FTP 用户授权、FTP 地址格式、匿名 FTP、FTP 的传输模式等。 FTP 的基本概念 FTP 是一个客户/服务器系统,用户通过客户机程序连接至远程计算机上运行...

    FTP协议RFC文档

    FTP协议的历史非常悠久,早在1971年就有关于FTP机制的提案,这些提案是为麻省理工学院(M.I.T.)的主机实施而开发的。后来,FTP历经多次修订和改进,逐渐形成更为成熟的协议标准。 根据RFC文档的描述,FTP的协议...

    类似linux的ftp命令,短小精悍的ftp工具,可直接移植到嵌入式系统下面

    对于初学者来说,它的源代码提供了一个了解FTP协议工作原理的好起点。通过阅读和分析代码,可以学习到如何建立TCP连接、解析FTP命令、处理数据传输以及实现会话管理等核心概念。 在嵌入式系统中,由于资源限制,...

    FTP上传客户端【源码】

    在这个FTP上传客户端的源码中,我们关注的核心知识点主要包括FTP协议的工作原理、客户端实现、目录扫描、保持目录结构、配置路径以及实时文件上传状态显示。 1. FTP协议工作原理:FTP基于TCP/IP协议族,提供双向...

    FTP软件下载

    FTP(File Transfer Protocol)是...综上所述,FTP软件下载是为了更便捷地利用FTP协议进行文件交换,理解其工作原理、选择合适的FTP软件以及熟悉其功能配置,对于日常工作和生活中的文件管理和数据传输具有重要意义。

    FTP 客户端 功能很强大

    2. **FTP协议工作原理**:FTP协议包括命令通道和数据通道。命令通道用于发送FTP命令,如“USER”(登录)、“PASS”(密码)、“CWD”(改变工作目录)、“LIST”(列出目录)等;数据通道则用于实际的数据传输,如...

    理解TCP和FTP协议

    下面我们将深入了解TCP协议的连接建立和释放的工作原理和通信过程,以及FTP协议的工作过程。 TCP协议的连接建立和释放的工作原理和通信过程: TCP协议是面向连接的协议,在数据传输之前,需要先建立连接。连接的...

    vb编写的一个FTP程序

    1. FTP协议工作原理:理解FTP如何建立连接、登录、传输数据、断开连接等基本过程。 2. VB中的网络编程:使用VB内置的Winsock控件或System.Net命名空间进行网络通信。 3. 文件操作:读取、写入和处理煤矿监控系统的...

    网络协议实验报告.doc

    在实验过程中,学生们通过实际操作深入理解FTP协议的连接过程和工作原理。 1. **FTP协议连接过程**: FTP协议的连接包括两个主要端口,即21端口(控制端口)和20端口(数据端口)。控制端口用于客户端与服务器之间...

Global site tag (gtag.js) - Google Analytics