当前位置:网站首页>File transfer protocol --ftp
File transfer protocol --ftp
2022-06-28 02:26:00 【ZhuMou】
One .FTP Model

FTP client On the client side, a user interface, This is what users use FTP System interface for file operation . stay user interface Next , Users can use user command File operations .user command and Linux command Very much like . It will be introduced later .
Client PI Full name Client Protocol Interpreter, The function is to carry out user command and FTP command The transformation of ( The difference between the two can be seen as source code and mechanical code 、ASCII Form domain name and binary form IP The difference in address )( User user command I'll give it to you client PI, Turn into FTP command; and client PI Will get FTP command Turn it into a form that users can understand and give it to user interface), And will FTP command Transferred to the Server PI and Client DTP. One Client only one PI.
Server PI The role of is to accept Client PI Of FTP command, control Server DTP. One Server only one PI.
DTP Its full name is Data Transfer Process. It is a process established for data transmission ,Client and Server Each end needs to establish a , For data transfer of a file . Once the transfer is complete, it will be PI To release. . So it can be seen that DTP stay Server and Client Is the corresponding occurrence , And more than one pair .

FTP The model is characterized by , It establishes two connection channels .Control Connection Each pair of client PI and server PI Only one , be used for FTP command The transmission of . because FTP command need FTP The client side and the server side cooperate to complete , So build Control Connection It makes sense .Control connection Due to the use ASCII code , So in line with Telnet Protocol. Data Connection It's every pair client DTP and server DTP Connection channel between , Used for data transmission between the two .server The establishment of a data connection be called active,client The establishment is called passive.
FTP server Is a process on the server , Its use 21 Number port Listen to the client control connection Connection request .control connection After the foundation of ,server Accept client Of commands, return reply.
FTP client It's direct and user Dealing with , It is responsible for opening control connection. Be careful control connection Is jointly established by both parties , But only by FTP client open . however data connection Both sides can open , It depends on the actual situation . FTP client Coding method of ( Transmitted commands ) and telnet equally , Use 8 Bit ASCII.
Two .User command&FTP command
It should be noted that control connection Transmitted in FTP command(ASCII In the form of ), What the user actually uses is User command. Both need client PI To transform .


3、 ... and . Example :downloading in Active Mode

This is a FTP An example of file transfer . So it's called active mode Because data connection By server End open( Application for establishment ) Of .
We can see from the top control connection and data connection The difference between
1.control connection Identify a pair of server and client, For both PI Between FTP Exchange of commands ; and data connection It identifies the data transmission process of a file , For both DTP Data transmission between .
2.control connection Only by client End open. After establishment , You need a client quit Command will be released . and data connection It is dynamically established , For one file transfer only , It will be released after the transmission is completed .
3.control connection Use 21 Port no. ; however data connection But not necessarily , The port it uses requires server and client adopt control connection Negotiate .
边栏推荐
- Locust performance test - parameterization, no repetition of concurrent cyclic data sampling
- Prometeus 2.35.0 new features
- Take n multiple table names of a database as the values of a column in another table (the range can be a table in another database)
- Jenkins - email notification plug-in
- 《低代码解决方案》——覆盖工单、维修和财务全流程的数字化售后服务低代码解决方案
- To understand what is synchronous, asynchronous, serial, parallel, concurrent, process, thread, and coroutine
- JS random number (random number decimal)
- Machine learning notes - time series as features
- pytorch_ lightning. utilities. exceptions. MisconfigurationException: You requested GPUs: [1] But...
- Appium自动化测试基础— 补充:App的包名(appPackage)和启动名(appActivity)
猜你喜欢
![[elt.zip] openharmony paper Club - memory compression for data intensive applications](/img/54/8248c1d95b04498d44a00ea94a6c85.png)
[elt.zip] openharmony paper Club - memory compression for data intensive applications

SQL injection Bypass (2)

如何以数据驱动「客户全生命周期管理」,提高线索转化率及客户满意度?

Appium automation test foundation - Supplement: app package name and appactivity

类的初始化与回调的用法

fiddle如何使用代理

Jenkins - 内置变量访问
![pytorch_ lightning. utilities. exceptions. MisconfigurationException: You requested GPUs: [1] But...](/img/b4/8921c3ca5cd5a547768489d4a79202.png)
pytorch_ lightning. utilities. exceptions. MisconfigurationException: You requested GPUs: [1] But...

系统管理员设置了系统策略,禁止进行此安装。解决方案

Numpy----np. meshgrid()
随机推荐
【sylixos】NEW_ Example of type 1 character drive
Voice network VQA: make the user's subjective experience of unknown video quality in real-time interaction known
MySQL十种锁,一篇文章带你全解析
[sylixos] I2C device driver creation and use
Hi, you have a code review strategy to check!
Numpy----np.tile()函数解析
Cesium 获取屏幕所在经纬度范围
[Yocto RM]3 - Yocto Project Releases and the Stable Release Process
Use code binding DataGridView control to display tables in program interface
嵌入式必学,硬件资源接口详解——基于ARM AM335X开发板 (上)
yarn下载报错There appears to be trouble with your network connection. Retrying.
Numpy----np.reshape()
SQL injection bypass (2)
投资同业存单基金是靠谱吗,同业存单基金安全吗
Centos8 operation record command version Yum redis MySQL Nacos JDK
Dynamic Host Configuration Protocol
Cesium 点击获取经纬度(二维坐标)
如何以数据驱动「客户全生命周期管理」,提高线索转化率及客户满意度?
Adding text labels to cesium polygons the problem of polygon center point offset is solved
Cesium 多边形(polygon)extrudedHeight 和 height 的区别