计算机网络:应用层 - 文件传输协议 FTP & 电子邮件
- 文件传输协议 FTP
- 电子邮件
文件传输协议 FTP
文件传送协议 FTP
(File Transfer Protocol),曾是互联网祝频讲解上使用得最广泛的文件传送协议。
其特点是:若要存取一个文件,就必须先获得一个本地的文件副本。如果要修改文件,只能对文件的副本进行修改,然后再将修改后的文件副本传回到原节点。
FTP
一项基本应用就是将文件从一台计算机中复制到另一台可能相距很远的计算机中。看起来在两台主机之间传送文件是很简单的事情。其实这往往非常困难。原因是众多的计算机厂商研制出的文件系统多达数百种,且差别很大。经常遇到的问题是:
- 计算机存储数据的格式不同
- 文件的目录结构和文件命名的规定不同
- 对于相同的文件存取功能,操作系统使用的命令不同
FTP
只提供文件传输的一些基本服务,它使用TCP
可靠的运输服务。主要功能是减少或者消除再不同操作系统下文件的不兼容性。
一个FTP
服务器可以同时为多个客户提供服务,FTP
服务器进程主要由两部分组成:一个主进程
和多个从属进程
。
主进程的工作如下:
- 打开熟知端口
21
,客户通过该端口连接服务器 - 等待客户进程发出连接请求
- 启动从属进程处理客户发来的请求,从属进程处理完任务后就终止
- 继续等待其它客户进程发来的请求
如下图所示:
本例中控制进程
和数据传送进程
都是从属进程
。
控制进程
:使用21
端口,整个会话期间都会保持打开,客户端发送的请求,通过控制连接发送给控制进程
,但是该进程并不用于传输文件数据传送进程
:使用20
端口,实际用于传输文件的进程,当控制进程
收到文件传输请求,就会创建数据传输进程
,传输完毕后再关闭该进程
使用两个独立的连接的好处在于更加简单和容易实现。
电子邮件
实时通信的电话固然使用方便,但有两个严重缺点。第一电话通信的主叫和被叫双方必须同时在场。第二,有些电话常常不必要地打断被叫者的工作或休息。
电子邮件是互联网上使用最多的和最受用户欢迎的一种应用。电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可在自己方便时上网到自己使用的邮件服务器进行读取。
这相当于互联网为用户设立了存放邮件的信箱,电子邮件不仅使用方便,而且还具有传递迅速和费用低廉的优点。现在电子邮件不仅可传送文字信息,而且还可附上声音和图像。
电子邮件系统由三个主要构件组成:用户代理
,邮件服务器
,以及邮件发送协议和邮件读取协议
。
如图:
用户代理
是用户与电子邮件系统的接口,大部分情况下它是运行在用户计算机中的一个程序,因此又被称为电子邮件客户端软件。用户代理其实就是向用户提供一个方便操作的接口(页面),来发送和接收邮件。
用户代理至少要包含以下功能:
攥写
:给用户提供编辑信件的环境显示
:可以在计算机屏幕上显示信件处理
:发送邮件和接收邮件,删除邮件等等,也就是对邮件的各种处理方式通信
:可以把邮件发送到服务器,也可以从服务器读取邮件到本地
邮件服务器主要用来发送和接收邮件,同时还要向发件人报告邮件传送的结果。
如图所示:
SMTP
是邮件发送协议,POP3
是邮件读取协议。
用户代理
要先通过SMTP
协议,将自己攥写的邮件发送到SMTP服务器
上。随后该服务器再作为SMTP客户
,利用SMTP
协议将邮件发送到接收方的SMTP
服务器上。
而用户想要接收邮件时,与服务器
使用的是POP3
协议,此时就可以把邮件读取到本地了。