13.网络协议-FTP协议

简介: 13.网络协议-FTP协议

FTP需求背景

为了提高文件的共享性,在本地主机和远程主机之间高效传送数据。FTP协议被广泛使用在互联网上的文件传输。
客户端/服务器模式,基于TCP
FTP采用双TCP连接方式
   控制连接使用TCP端口号
21

   数据连接使用TCP端口号20

FTP有两种文件传输模式
         ASCII模式
        二进制流模式
FTP采用两种数据传输方式
      主动方式
     被动方式

FTP协议简

FTP双TCP连接方式

• 控制连接
用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。控制连接在整个FTP会话期间一直保持打开
• 数据连接
用于传输数据,包括数据上传、下载、文件列表发送等。数据传输结束后数据连接将终止

FTP文件传输模式

• ASCII模式是默认的文件传输模式,主要特点是:

        本地文件转换成标准的ASCII码再传输

        适用于传输文本文件

• 二进制流模式也称为图像文件传输模式,主要特点是:

         文件按照比特流的方式进行传输

         适用于传送程序文件

FTP主动模式工作过程

• 在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式

• 主动方式也称为PORT方式,是FTP协议最初定义的数据传输连接方式,主要特点是:

    FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号

    当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数       据传输。

FTP被动方式工作过程

• 在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。

• 被动方式也称为PASV方式,被动方式的主要特点是:

• FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端

• 当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输。

主被动模式总结

为什么FTP要有主动和被动模式呢?
• 主动模式对FTP服务器的管理有利,但对客户端的管理不利。
• 因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。
• 被动模式对FTP客户端的管理有利,但对服务器端的管理不利。
• 因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。

重点检测

1、FTP主动被动模式是指什么?

在建立连接的过程中,服务器是主动发起连接还是被动接收请求,若服务器主动发起连接,则称为是主动模式,若是被动接收,则称为被动模式
2、主动、被动是谁来决定?

是由服务器端来决定的
3、主动被动模式会有哪些网络要求?


相关文章
|
7天前
|
机器学习/深度学习 网络协议 网络性能优化
[计算机网络]深度学习传输层TCP协议
[计算机网络]深度学习传输层TCP协议
21 1
|
11天前
|
监控 网络协议 安全
Verilog代码在上网行为管理软件中的网络设备控制与协议分析
**Verilog摘要:** Verilog是硬件描述语言,用于数字电路设计和网络设备控制。它在上网行为管理软件中用于控制路由器、交换机等,例如通过简单模块控制端口状态。此外,Verilog还支持协议分析,如解析以太网帧提取MAC地址。监控数据可结合Verilog实现自动化提交,例如通过HTTP发送请求到服务器,实现实时监控和响应。这些示例展示了Verilog在网络安全和性能优化中的应用潜力。
56 1
|
21天前
|
网络协议 C语言 网络架构
计算机网络——数据链路层-点对点协议(组成部分、PPP帧格式、透明传输、差错检测、工作状态)
计算机网络——数据链路层-点对点协议(组成部分、PPP帧格式、透明传输、差错检测、工作状态)
59 7
|
21天前
|
缓存
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)
15 0
计算机网络——数据链路层-可靠传输的实现机制:回退N帧协议GBN(无差错情况、累积确认、有差错情况、发送窗口尺寸)
|
7天前
用UDP协议实现发送接收的网络聊天室
用UDP协议实现发送接收的网络聊天室
9 0
|
7天前
|
机器学习/深度学习 安全 数据安全/隐私保护
【计算机网络】深度学习HTTPS协议
【计算机网络】深度学习HTTPS协议
18 0
|
7天前
|
机器学习/深度学习 前端开发 JavaScript
【计算机网络】深度学习使用应用层的HTTP协议
【计算机网络】深度学习使用应用层的HTTP协议
30 0
|
14天前
|
缓存 网络协议 Unix
网络常用协议
网络常用协议
|
14天前
|
网络协议 Unix Linux
网络层协议及IP编址
网络层协议及IP编址
|
21天前
|
缓存
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
21 0

热门文章

最新文章