6.1.1 专有名词
本节将从与电子邮件系统有关的名词开始介绍,之后再讨论整个电子邮件传递的流程,希望能帮助读者建立清楚和正确的概念。
电子邮件电子邮件(Electronic Mail,E-mail)是通过网络连接来相互传递的信息,也是目前Internet中最常用的服务之一,它的主要优点有:
ナ快速:电子邮件寄出后,收件人能在短时间内得到这份邮件。
ナ经济:它不需要使用信封和信纸,也不需邮资。
ナ多样性:除了文本之外,电子邮件还可传送图片、声音、影像和其他类型的数据。
基本上E-mail包含两个部分:邮件信封与邮件内容。邮件信封是指保留给邮件服务器的信息,它并不提供用户浏览之用,其中包括Received、Message ID、From、Subject、Date等。
而邮件内容又包含报头与邮件体两个部分,如果有附件也会出现于此。
邮件传输代理邮件传输代理(Mail Transfer Agent,MTA)是一种在服务器端执行的软件,也就是邮件服务器,它可在服务器间传送电子邮件。一般而言,每个系统只有一个MTA保持在运行状态,而在UNIX系统中使用最为广泛的MTA程序有Sendmail、Postfix、Qmail与Fetchmail等,本章将以Sendmail的内容介绍为主。
邮件用户代理邮件用户代理(Mail User Agent,MUA)是一种客户端软件,它可提供用户读信、回信、写信及处理邮件等功能,但和MTA不同的是,一个系统中可以同时存在多个MUA程序。一般常见的MUA程序包括Linux平台上的mail、mailx、elm和mh等,以及Windows操作系统中的Outlook Express或Netscape Messenger。
邮件传递代理邮件传递代理(Mail Delivery Agent,MDA)通常与MTA一同运行,将MTA接收的邮件,按照目的位置做出判断,以决定将该邮件放在本机账户下的邮箱,或是再经过MTA将此邮件转发到下个MTA,而MDA一般都在后台执行。
如果此封邮件的目的地为本机用户邮箱,则MDA除了将邮件放在正确的邮箱外,同时还具有邮件过滤的功能,例如丢弃某些特定主题的广告或色情邮件,或者自动回复发件人等。
邮件传递系统
由MTA和MUA组合而成的系统称为邮件传递系统(Mail Transfer System,MTS),如图6-1所示。例如目前Internet就是一个大型的MTS。
 |
| 图6-1 简单的邮件传递系统 |
邮局协议邮局协议(Post Office Protocol,POP)是MTS上负责“接收”电子邮件的通信协议,也就是说,POP不具有传送邮件到用户或其他邮件主机的功能。
在提供此项服务的主机中,当邮件发送时会先保存在服务器上,然后在POP客户端连接到服务器时,POP服务器会将用户邮箱中的邮件下载到客户端计算机,并由服务器上删除这些信件。
所以用户可以在不连接服务器的情形下进行脱机阅读,因此特别适用于拨号连接的用户,这也是POP主要的优点。
但如果用户邮箱中存在大量的邮件,在下载时可能会引起网络流量的增加,特别是在带宽不足的情形下更为严重,所以在使用POP服务器前,需先考虑目前企业的现况以及用户的需求。
注意:所谓脱机阅读是指用户在登录邮件服务器后,将属于他的邮件利用下载的方式保存在本机硬盘中,然后即可中断连接,待空闲时再进行阅读。
因为POP是采用“拉”邮件的方式,所以当使用支持POP的MUA读取电子邮件时,就可执行用户命令或是固定时间间隔的方式,将MTA上的新邮件“拉”到客户端的计算机上并加以保存。这种脱机读信的工作,很显然都是由MUA主动完成而非MTA,所以客户端拥有主动权,可以弹性决定取信的时间。
两种POP最普遍的版本是:POP2以及POP3,但两者之间彼此不兼容,POP2在连接端口109执行,而POP3则在连接端口110执行。在Fedora Core 5中同时支持二者,目前POP3的使用率较高,可由/etc/services文件中查看以下的内容:
pop2 109/tcp pop-2 postoffice # POP version 2 pop2 109/udp pop-2 pop3 110/tcp pop-3 # POP version 3 pop3 110/udp pop-3 |
Internet信息访问协议Internet信息访问协议(Internet Message Access Protocol,IMAP)是Internet上一项常见的通信协议,它符合RFC的标准,其中包含连接方式、客户端验证以及Client/Server的会话等定义,因此可支持所有兼容RFC 2060的IMAP客户端。
与POP一样,IMAP主要用来读取服务器上的电子邮件(并非是传递),但客户端需先登录服务器,然后才可进行资源的访问。用户在登录后可根据授予的权限来读取或修改信件内容,并不是将服务器中的邮件直接下载到客户端计算机(与POP最大的不同),这样可避免重要数据在下载过程中遗失。
由于IMAP没有将邮件实际下载到客户端,因此用户必须确定和服务器间存在网络连接才可读取信件内容,所以通常在局域网中才使用IMAP来进行信件的接收。
IMAP是一个逐渐崭露头角的邮件通信协议,因为它比POP更具弹性,两者在访问邮件方式上的差别如图6-2所示。但目前仍然有较多人使用POP作为电子邮件接收的通信协议。IMAP支持的操作模式有:
 |
| 图6-2 POP与IMAP访问邮件的方式 |
脱机模式(Offline)
MUA会先将电子邮件从服务器下载到客户端计算机,之后删除主机上的信件。
在线模式(Online)
MUA在远程执行服务器上的邮件处理,例如删除和修改,并把这些邮件保留在服务器上。只要一接收新邮件,客户端可以立即得到最新的E-mail邮箱情况。
中断连接模式(Disconnected)
MUA先连接到服务器选择所要处理的邮件,然后复制一份缓存到计算机中,接着就中断连接。稍后如果再次恢复连接时,客户端可将缓存邮件与服务器执行同步化。
目前在Fedora Core 5中支持IMAP第二版的IMAP2与IMAP3(当前最新版为IMAP4),可由/etc/services文件中查看以下的内容:
imap 143/tcp imap2 #Interim Mail Access Proto v2 imap 143/udp imap2 imap3 220/tcp # Interactive Mail Access imap3 220/udp # Protocol v3 imaps 993/tcp # IMAP over SSL imaps 993/udp # IMAP over SSL |
表6-1中是有关POP与IMAP两种通信协议的比较。
表6-1 两种通信协议的比较通 信 协 议 优 点 缺 点
POP ?适合脱机阅读可节省拨号连接费用 ?设置较为繁琐
不需保持网络的持续连接 ?信件下载到客户端计算机上保密性差
IMAP ?不用设置服务器等相关信息 ?服务器的负担较重
可通过浏览器收发E-mall ?需要限制用户邮箱容量
信件保存于服务器上保密性高 ?需要连接才能访问邮件
简单邮件通信协议简单邮件通信协议(Simple Mail Transfer Protocol,SMTP)是一种在Internet中“传递”电子邮件的通信协议,它和POP与IMAP一样都是用来控制信息或邮件的传输与接收。最重要的一点是,SMTP只负责电子邮件的传递,而POP与IMAP则是负责接收信件。
它取代了传统RPC(Remote Procedure Call)和X.400的传输机制,而且可以在Internet上和不同的邮件系统交换信息。许多管理员习惯将SMTP与POP或IMAP服务建立在同一台机器内,但也可利用不同的主机来处理SMTP与POP或IMAP邮件。
当MUA或MTA要将E-mail传送出去时,就是使用SMTP来彼此通信,才能使E-mail在Internet上流通并送达目的地。而SMTP是一种“推”方式的E-mail通信协议,它会将不属于本身网络的E-mail传送到远程网络,让此信息离目的地主机越来越近,如图6-3所示。
 |
| 图6-3 电子邮件的传送与接收 |
注意:目前有一种叫“ESMTP”的标准,它是“Extended SMTP”的缩写,属于SMTP的扩展格式,许多邮件服务器也支持这一通信协议。
【责任编辑:
雪花 TEL:(010)68476606-8007】