Ch6.应用层(二)

本文涉及的产品
数据传输服务DTS,同步至DuckDB 3个月
简介: 应用层也称为应用实体(AE),它由若干个特定应用服务元素(SASE)和一个或多个公用应用服务元素(CASE)组成。每个SASE提供特定的应用服务,例如文件运输访问和管理(FTAM)、电子文电处理(MHS)、虚拟终端协议(VAP)等。CASE提供一组公用的应用服务,例如联系控制服务元素(ACSE)、可靠运输服务元素(RTSE)和远程操作服务元素(ROSE)等。

三.文件传输协议FTP

1.FTP

文件传送协议FTP(File Transfer Protocol.)提供不同种类主机系统(硬、软件体系等都可以不同)之间的文件传输能力。简单文件传送协议TFTP(Trivial File Transfer Protocol)

网络异常,图片无法展示
|

2.FTP服务器和用户端

FTP是基于客户/服务器(C/S)的协议。用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端

网络异常,图片无法展示
|

3.工作原理

网络异常,图片无法展示
|

网络异常,图片无法展示
|

网络异常,图片无法展示
|

1.控制连接服务器监听21号端口,等待客户连接,建立在这个端口上的连接称为控制连接,控制连接用来传输控制信息(如连接请求、传送请求等),并且控制信息都以7位ASCⅡ格式传送。FTP客户发出的传送请求,通过控制连接发送给服务器端的控制进程,但控制连接并不用来传送文件。在传输文件时还可以使用控制连接(如客户在传输中途发,一个中止传输的命令),因此控制连接在整个会话期间一直保持打开状态。2.数据连接服务器端的控制进程在接收到FTP客户发来的文件传输请求后,就创建“数据传送进程”和“数据连接”。数据连接用来连接客户端和服务器端的数据传送进程,数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。数据连接有两种传输模式:主动模式PORT和被动模式PASV。PORT模式的工作原理:客户端连接到服务器的21端口,登录成功后要读取数据时,客户端随机开放一个端口,并发送命令告知服务器,服务器收到PORT命令和端口号后,通过20端口和客户端开放的端口连接,发送数据。PASV模式的不同点是,客户端要读取数据时,发送PASV命令到服务器,服务器在本地随机开放一个端口,并告知客户端,客户端再连接到服务器开放的端口进行数据传输。可见,是用PORT模式还是PASV模式,选择权在客户端。简单概括为,主动模式传送数据是“服务器”连接到“客户端”的端口;被动模式传送数据是“客户端”连接到“服务器”的端口。因为FTP使用了一个分离的控制连接,所以也称FTP的控制信息是带外(Out-of-band)传送的。使用FTP时,若要修改服务器上的文件,则需要先将此文件传送到本地主机,然后再将修改后的文件副本传送到原服务器,来回传送耗费很多时间。网络文件系统(NFS)采用另一种思路,它允许进程打开一个远程文件,并能在该文件的某个特定位置开始读写数据。这样,NFS可使用户复制一个大文件中的一个很小的片段,而不需要复制整个大文件。

FTP传输模式文本模式:ASCI模式,以文本序列传输数据:二进制模式:Binary模式,以二进制序列传输数据。

习题:

1.文件传输协议(FTP)的一个主要特征是(C).A.允许客户指明文件的类型但不允许指明文件的格式B.不允许客户指明文件的类型但允许指明文件的格式C.允许客户指明文件的类型与格式D.不允许客户指明文件的类型与格式

   FTP提供交互式访问,允许客户指明文件的类型与格式,并允许文件具有存取权限。所以选项C为正确答案。

2.以下关于FTP工作模型的描述中,错误的是(C).A.FTP使用控制连接、数据连接来完成文件的传输B.用于控制连接的TCP连接在服务器端使用的熟知端口号为21C.用与控制连接的TCP连接在客户端使用的端口号为20D.服务器端由控制进程、数据进程两部分组成

   在服务器端,控制连接使用TCP的21号端口,数据连接使用TCP的20号端口;而在客户端,控制连接和数据连接的TCP端口号都是由客户端系统自动分配的。需要注意的是,当我们说FTP使用20、21号端口,HTTP使用80号端口,SMTP使用25号端口时,都是指相应协议的服务器端所使用的端口号,而客户端使用这个自动分配的端口号向这些服务的熟知端口发起连接。

3.拉制信息是带外传送的协议是(C)A.HTTPB.SMTPC.FTPD.POP

   由于FTP传输控制信息使用的是数据连接外的控制连接,因此FTP的控制信息是带外传送的。

4.下列关于TP连接的叙述中,正确的是(C)A.控制连接先于数据连接被建立,并先于数据连接被释放B.数据连接先于控制连接被建立,并先于控制连接被释放C.控制连接先于数据连接被建立,并晚于数据连接被释放D.数据连接先于控制连接被建立,并晚于控制连接被释放

   FTP客户首先连接服务器的21号端口,建立控制连接(控制连接在整个会话期间一直保持打开),然后建立数据连接,在数据传送完毕后,,数据连接最先释放,控制连接最后释放。

5.【2009统考真题】FTP客户和服务器间传递FTP命令时,使用的连接是(A),A.建立在TCP之上的控制连接B.建立在TCP之上的数据连接C.建立在UDP之上的控制连接D.建立在UDP之上的数据连接

   对于FTP文件传输,为了保证可靠性,选择TCP,排除C、D。FTP的控制信息是带外传送的,即FTP使用了一个分离的控制连接来传送命令,因此选A。

6.FTP客户发起对TP服务器连接的第一阶段是建立(D).A.传输连接B.数据连接C.会话连接D.控制连接

   FTP工作时使用两个连接:控制连接和数据连接。FTP客户对FTP服务器发起连接时,首先建立控制连接,即向服务器的21号TCP端口发起连接;然后再建立数据连接(20号TCP端口)。FTP并没有传输连接和会话连接的说法。

7.一个FTP用户发送了一个LIST命令来获取服务器的文件列表,这时服务器应该通过(B)端口来传输该列表。A.21B.20C.22D.19

   FTP中数据连接的端口是20,而文件的列表是通过数据连接来传输的。

8.下列关于FTP的叙述中,错误的是(D)。A.FTP可以在不同类型的操作系统之间传送文件B.FTP并不适合用在两个计算机之间共享读写文件C.控制连接在整个FTP会话期间一直保持D.客户端默认使用端口20与服务器建立数据传输连接

   控制连接建立后,服务器进程用自己传送数据的熟知端口20与客户进程所提供的端口号建立数据传输连接,即客户进程的端口号是客户进程自己提世的。

9.【2017统考真题】下列关于FTP的叙述中,错误的是(C)。A.数据连接在每次数据传输完毕后就关闭B.控制连接在整个会话期间保持打开状态C.服务器与客户端的TCP20端口建立数据连接D.客户端与服务器的TCP21端口建立控制连接

   FTP使用控制连接和数据连接,控制连接存在于整个FTP会话过程中,数据连接在每次文件传输时才建立,传输结束就关闭,A和B正确。默认情况下FTP服务器使用TCP 20端口进行数据连接,使用TCP 21端口进行控制连接,这里的端口号是指FTP服务器的端口号,C错误,D正确。此外还需要注意的是,FTP服务器是否使用TCP 20端口建立数据连接与传输模式有关,主动方式使用TCP 20端口,被动方式由服务器和客户端自行协商决定。

10.当一台计算机从FTP服务器下载文件时,在该FTP服务器上对数据进行封装的5个转换步骤是(B)A.比特,数据帧,数据报,数据段,数据B.数据,数据段,数据报,数据帧,比特C.数据报,数据段,数据,比特、数据帧D.数据段,数据报,数据帧,比特,数据

   FTP服务器的数据要经过应用层、传输层、网络层、数据链路层及物理层。因此,对应的封装是数据、数据段、数据报、数据帧,最后是比特。

11.匿名FTP访问通常使用(C)作为用户名。A.guestB.E-mail地址C.anonymousD.主机id

   针对文件传输FTP,系统管理员建立了一个特殊的用户ID,名为anonymous,即匿名用户。Internet上的任何人在任何地方都可以使用该用户ID,只是在要求提供用户ID时必须输入anonymous,该用户ID的密码可以是任何字符串。

简答

1.文件传输协议的主要工作过程是怎样的?主进程和从属进程各起什么作用?

   FTP的主要工作过程如下:在进行文件传输时,FTP客户所发出的传送请求通过控制连接发送给服务器端的控制进程,并在整个会话期间一直保持打开,但控制连接不用来传送文件。服务器端的控制进程在接收到FTP客户发送来的文件传输请求后,就创建数据传送进程和数据连接,数据连接用来连接到客户端和服务器端的数据传输进程,数据传送进程实际完成对文件的传送,在传送完毕后关闭“数据传送连接”,并结束运行。

   FTP的服务器进程由两大部分组成:一个主进程,负贵接收新的请求;若干从属进程,负贵处理单个请求。

2.为什么FTP要使用两个独立的连接,即控制连接和数据连接?

   在FTP的实现中,客户与服务器之间采用了两条传输连接,其中控制连接用于传输各种FTP命令,而数据连接用于文件的传送。之所以这样设计,是因为使用两条独立的连接可使FTP变得更加简单、更容易实现、更有效率。同时在文件传输过程中,还可以利用控制连接控制传输过程,如客户可以请求终止、暂停传输等。

3.主机A想下载文件ftp://fp.abc.edu.cn/fle,大致描述下戟过程中主机和服务器的交互过程.

大致过程如下:

①建立一个TCP连接到服务器ftp.abc.edu.cn的21号端口,然后发送登录账号和密码。

②服务器返回登录成功信息后,主机A打开一个随机端口,并将该端口号发送给服务器。

③主机A发送读取文件命令,内容为get file,服务器使用20号端口建立一个TCP连接到主机A的随机打开的端口。

④服务器把文件内容通过第二个连接发送给主机A,传输完毕后连接关闭。

四.电子邮件

1.电子邮件系统概述

网络异常,图片无法展示
|

2.电子邮件的信息格式

网络异常,图片无法展示
|

3.组成结构

网络异常,图片无法展示
|

网络异常,图片无法展示
|


相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
目录
相关文章
|
域名解析 存储 Web App开发
Ch6.应用层(三)
应用层也称为应用实体(AE),它由若干个特定应用服务元素(SASE)和一个或多个公用应用服务元素(CASE)组成。每个SASE提供特定的应用服务,例如文件运输访问和管理(FTAM)、电子文电处理(MHS)、虚拟终端协议(VAP)等。CASE提供一组公用的应用服务,例如联系控制服务元素(ACSE)、可靠运输服务元素(RTSE)和远程操作服务元素(ROSE)等。
390 0
|
域名解析 存储 缓存
Ch6.应用层(一)
应用层也称为应用实体(AE),它由若干个特定应用服务元素(SASE)和一个或多个公用应用服务元素(CASE)组成。每个SASE提供特定的应用服务,例如文件运输访问和管理(FTAM)、电子文电处理(MHS)、虚拟终端协议(VAP)等。CASE提供一组公用的应用服务,例如联系控制服务元素(ACSE)、可靠运输服务元素(RTSE)和远程操作服务元素(ROSE)等。
424 0
|
2月前
|
存储 监控 大数据
探究ClickHouse数据库的Mutation机制
ClickHouse的Mutation机制提供了一种高效的方式来处理大数据集上的修改操作。然而,需要注意的是,由于其异步和资源密集的特性,应当谨慎地进行规划和优化,以确保系统的整体性能。通过合理地使用Mutation操作,可以在保证数据一致性的同时,有效地管理和分析大规模数据集。
196 18
|
5月前
|
存储 监控 分布式数据库
ClickHouse分布式数据库动态伸缩(弹性扩缩容)的实现
实现ClickHouse数据库的动态伸缩需要持续的维护和精细的操作。从集群配置到数据迁移,再到监控和自动化,每一步都要仔细管理以确保服务的可靠性和性能。这些活动可以显著提高应用的响应性和成本效率,帮助业务根据实际需求灵活调整资源分配。
364 10
|
7月前
|
关系型数据库 MySQL 定位技术
MySQL与Clickhouse数据库:探讨日期和时间的加法运算。
这一次的冒险就到这儿,期待你的再次加入,我们一起在数据库的世界中找寻下一个宝藏。
348 9
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
SQL Unix OLAP
ClickHouse安装教程:开启你的列式数据库之旅
ClickHouse 是一个高性能的列式数据库管理系统,适用于在线分析处理(OLAP)。本文介绍了 ClickHouse 的基本使用步骤,包括下载二进制文件、安装应用、启动服务器和客户端、创建表、插入数据以及查询新表。还提到了图形客户端 DBeaver 的使用,使操作更加直观。通过这些步骤,用户可以快速上手并利用 ClickHouse 的强大性能进行数据分析。
1386 4
|
存储 SQL 缓存
数据库测试|Elasticsearch和ClickHouse的对决
由于目前市场上主流的数据库有许多,这次我们选择其中一个比较典型的Elasticsearch来和ClickHouse做一次实战测试,让大家更直观地看到真实的比对数据,从而对这两个数据库有更深入的了解,也就能理解为什么我们会选择ClickHouse。
数据库测试|Elasticsearch和ClickHouse的对决
|
存储 分布式计算 数据库
阿里云国际版设置数据库云分析工作负载的 ClickHouse 版
阿里云国际版设置数据库云分析工作负载的 ClickHouse 版
|
存储 关系型数据库 MySQL
四种数据库对比MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
四种数据库对比 MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景

推荐镜像

更多