今天在做题的时候,发现有道题是这样写的:

FTP客户上传文件时,通过服务器20端口建立的连接是(),FTP客户端应用进程的端口可以为()。

A. 建立在TCP之上的控制连接        B. 建立在TCP之上的数据连接

A. 建立在UDP之上的控制连接        B. 建立在UDP之上的数据连接

A.20 B.21 C.80 D.4155

答案是B D

正好通过此题再了解一下FTP的知识点:

ftp端口号20和21的区别是:一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定。

一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定

        FTP Port模式和FTP Passive模式

  当你对一个FTP问题进行排错时候,你首先要问的一个问题是使用的是port模式的还是passive 模式。因为这两种行为迥异,所以这两种模式引起的问题也不同;在过去,客户端缺省为active(port)模式;近来,由于Port模式的安全问题,许多客户端的FTP应用缺省为Passive模式。

>> FTP Port模式

  Port模式的FTP步骤如下:

1、 客户端发送一个TCP SYN(TCP同步)包给服务器段众所周知的FTP控制端口21,客户端使用暂时的端口作为它的源端口;

2、 服务器端发送SYN ACK(同步确认)包给客户端,源端口为21,目的端口为客户端上使用的暂时端口;

3、 客户端发送一个ACK(确认)包;客户端使用这个连接来发送FTP命令,服务器端使用这个连接来发送FTP应答;

4、 当用户请求一个列表(List)请求或者发起一个要求发送或者接受文件的请求,客户端软件使用PORT命令,这个命令包含了一个暂时的端口,客户端希望服务器在打开一个数据连接时候使用这个暂时端口;PORT命令也包含了一个IP地址,这个IP地址通常是客户自己的IP地址,而且FTP也支持第三方(third-party)模式,第三方模式是客户端告诉服务器端打开与另台主机的连接;

5、 服务器端发送一个SYN包给客户端的暂时端口,源端口为20,暂时端口为客户端在PORT命令中发送给服务器端的暂时端口号;

6、 客户端以源端口为暂时端口,目的端口为20发送一个SYN ACK包;

7、 服务器端发送一个ACK包;

8、 发送数据的主机以这个连接来发送数据,数据以TCP段(注:segment,第4层的PDU)形式发送(一些命令,如STOR表示客户端要发送数据,RETR表示服务器段发送数据),这些TCP段都需要对方进行ACK确认(注:因为TCP协议是一个面向连接的协议)

9、 当数据传输完成以后,发送数据的主机以一个FIN命令来结束数据连接,这个FIN命令需要另一台主机以ACK确认,另一台主机也发送一个FIN命令,这个FIN命令同样需要发送数据的主机以ACK确认;

10、 客户端能在控制连接上发送更多的命令,这可以打开和关闭另外的数据连接;有时候客户端结束后,客户端以FIN命令来关闭一个控制连接,服务器端以ACK包来确认客户端的FIN,服务器同样也发送它的FIN,客户端用ACK来确认。

ftp端口号20和21的区别是什么?相关推荐

  1. 什么是FTP?FTP端口号是多少?FTP的端口号能改吗?ftp的端口号20、21有何区别?ftp命令?...

    什么是FTP? FTP就是文件传输协议 File Transfer Protocol 的缩写. FTP端口号是多少? 21 FTP的端口号能改吗? 能 ftp的端口号20.21有何区别? 一个是数据端 ...

  2. ftp的端口号20、21有何区别

    原文章: http://blog.sina.com.cn/s/blog_4fc68b7f0100g5r0.html           一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不 ...

  3. FTP的20、21端口,工作模式

    什么是FTP? FTP就是文件传输协议 File Transfer Protocol 的缩写. FTP端口号是多少? 21 FTP的端口号能改吗? 能 ftp的端口号20.21有何区别? 一个是数据端 ...

  4. HTTP/HTTPS协议中常用的默认端口号

    以下是在互联网上搜集到的关于HTTP/HTTPS协议中常用的默认端口号,以便后续方便使用: 1.HTTP协议代理服务器常用端口号:80/8080/3128/8081/9098 2.SOCKS代理协议服 ...

  5. 使用域名访问远程jupyter_如何设置远程访问的Jupyter Notebook服务器-01(之预备知识:什么是端口号?)...

    (这是一篇面向零基础读者的教程) 0.前言 毋容置疑,Jupyter Notebook是统计.数据分析和机器学习的利器,使用起来非常方便和高效. 在上一讲中,我们讨论了如何安装和使用Jupyter N ...

  6. linux 影院 ftp客户端20端口号,Linux下的ftp客户端说明文档

    Linux下的ftp客户端说明文档 发布时间:2006-09-24 00:20:41来源:红联作者:userhq l 软件功能: 本程序基于linux下的socket函数,利用ftp 协议,实现lin ...

  7. FTP上传下载端口号

    FTP上传下载端口号,上传下载分两种模式,主动式,被动式,主动式就是FTP服务器主动打开端口,把数据给客户端,被动式就是客服端自己从服务器的某个端口号取数据.  端口有两个,控制端口,数据传输端口,主 ...

  8. ftp服务器的端口20和21的具体作用,FTP协议中21端口和20端口的详解

    FTP(File Transfer Protocol)文件传输协议,是 TCP/IP 协议组中的协议之一. FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端.其中FTP服务器用来存储 ...

  9. socket如连接linux上的端口号_Linux| |对于UDP的学习

    UDP # 前序 UDP(用户数据报协议)没有连接的,是面向数据报的,是不可靠 # 套接字 就是IP地址+端口号 IP地址:4字节 端口号:2字节,也就是说范围是0~65536 端口号分为 知名端口号 ...

最新文章

  1. PHP几个快速读取大文件例子
  2. Yii的gii-modules
  3. 深度模拟java动态代理实现机制系类之三
  4. ValueError: do_handshake_on_connect should not be specified for non-blocking sockets
  5. SAP Cloud Platform创建Destination时Additional properties属性的维护
  6. Azure PowerShell (1) PowerShell整理
  7. python浅蓝色对应的代码_浅蓝色Python模块不在m上工作
  8. java画笔覆盖在界面_Java画笔的简单实用方法
  9. CTO 离职、研发变动,百度外卖与饿了么组织架构融合公布
  10. SVM原理以及Tensorflow 实现SVM分类(附代码)
  11. python super().__init__()
  12. Excel进行描述性统计分析
  13. 80端口未被占用,却依然提示已被占用
  14. 关于vue、js连接打印机
  15. 肖特基二极管在防止电源反接的作用
  16. 推荐几个我收藏且星标的嵌入式技术公众号
  17. 学习笔记-《python程序员面试宝典》-基础知识-数据结构-编程思维(一)
  18. 史上最强吃鸡电脑配件更新!这张显卡都能买一套房子了
  19. How to evaluate and motivate a speech
  20. 网上商城系统面试时怎么说的思路

热门文章

  1. .net framework3.5无法安装解决办法
  2. 蒙版原理以及Python简单实现
  3. 标题:蚂蚁感冒 长100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。 每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。 当两只蚂蚁碰面时,它们会同时掉头
  4. 科氏质量流量计的工作原理及维护
  5. 关于flask入门教程-ajax+echarts简单实现一
  6. 选题的背景与意义计算机网络在继续教育中的应用,计算机网络在继续教育中应用...
  7. 给你的博客添加百度收录查询(附Serverless API搭建
  8. 理财实践之港股和美股的投资办法、下篇
  9. ubuntu安装显卡和TensorFlow和PyTorch
  10. txt格式转换成prg_持批量转换的转换器-dbf converter(dbf文件格式转换器) 官方版 v5.75 - 未来软件园...