计算机网络——10FTP

FTP

FTP:文件传输协议

  • 向远程主机上传输文件或从远程主机接收文件
  • 客户/服务器模式
    • 客户端:发起传输的一方
    • 服务器:远程主机
  • ftp:RFC 959
  • ftp服务器:端口号为21

在这里插入图片描述

FTP:控制连接与数据连接分开

控制连接

  • FTP客户端与FTP服务器通过端口 21 联系,并使用TCP为传输协议
  • 客户端通过控制连接获得身份确认
  • 客户端通过控制连接发送命令浏览远程目录

数据连接

  • 收到一个文件传输命令时,服务器打开一个到客户端的数据连接
  • 一个文件传输完成后,服务器关闭连接

继续控制连接

  • 客户端继续通过控制连接发送命令:下载文件

重新开启数据连接

  • 服务器打开 第二个TCP 数据连接用来传输另一个文件(服务器主动)
  • 然后又关闭连接

控制连接: 带外( “out of band” )传送 ,就是服务端可以向客户端发送请求建立连接

FTP服务器维护用户的状态信息: 当前路径、用户帐户与控制连接对应

FTP是有状态的协议

FTP命令、响应

命令样例

  • 在控制连接上以ASCII文本方式传送
命令 说明
USER username 发送用户名
PASS password 发送命令
LIST 请服务器返回远程主机当前目录的文件列表
RETR filename 从远程主机的当前目录检索文件 (gets)
STOR filename 向远程主机的当前目录存放文件 (puts)

返回码示例

状态码 状态信息
331 Username OK, password required
125 data connection already open; transfer starting
425 Can’t open data connection
452 Error writing file

相关推荐

  1. 计算机网络——应用层(2)FTP,DNS

    2024-02-14 20:52:01       18 阅读
  2. 计算机网络-H3C 交换机FTP与TFTP

    2024-02-14 20:52:01       22 阅读
  3. <span style='color:red;'>13</span>.<span style='color:red;'>FTP</span>

    13.FTP

    2024-02-14 20:52:01      37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-14 20:52:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-14 20:52:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-14 20:52:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-14 20:52:01       20 阅读

热门阅读

  1. re:从0开始的CSS之旅 13. 文档流

    2024-02-14 20:52:01       27 阅读
  2. Linux命令-break命令(结束for,while或until循环。)

    2024-02-14 20:52:01       28 阅读
  3. 【算法】字符串匹配算法

    2024-02-14 20:52:01       38 阅读
  4. 记录 | python pyinstaller相对路径问题

    2024-02-14 20:52:01       24 阅读
  5. linux 生成 ca 证书

    2024-02-14 20:52:01       27 阅读
  6. 【C语言】简易英语词典

    2024-02-14 20:52:01       22 阅读
  7. LLM大模型相关问题汇总---答案(ChatGLM4生成)

    2024-02-14 20:52:01       26 阅读
  8. 线程安全问题的原因和解决方案

    2024-02-14 20:52:01       28 阅读