邮件系统
目录
前言:
二.电子邮件系统的协议
三.发送电子邮件的具体过程
四.SMTP和POP3工作过程
SMTP
POP3
五.基于万维网的电子邮件
前言:
电子邮件系统可以说是因特网上最早流行的一种应用,并且至今仍有重要的地位。
原因主要是实时通信存在着两大缺陷:
1.通信双方必须同时在场。
2.一些不是很重要的实时通信会不必要的打扰人们正常的工作或休息。
而电子邮件就像寄信一样,既可以传达信息又不至于打扰人们正常或休息,而且如今的电子邮件还可以附上声音和图像等等,功能十分强大。
那么电子邮件系统从应用层的角度来看是一种什么体系结构呢?一封邮件的收发经历了哪些过程?
一.电子邮件系统采用 客户/服务器体系结构。
客户,粗糙的理解就是我们的发送邮件的软件客户端(严谨可以说是发送邮件的客户进程),发送电子邮件的客户端软件专业术语叫做客户代理。
邮件服务器就是电子邮件系统的基础设施,邮件服务器的功能就是发送和接收邮件,同时还要负责维护用户的邮箱。
有人可能会产生疑问了。
为什么发件方不直接将邮件发送给收件方?为什么非要弄出一个邮件服务器?
原因就是用户代理所在的计算机不可能每天24小时在线(就像你在给一个没电池的手机打电话)。
而将发送、接受和缓存邮件的功能交给24小时开机的邮件服务器,当用户方便时候从邮件服务器的用户信箱中读取邮件是一种比较合理的方法。
总结以上的内容,电子邮件系统的体系结构粗糙一画是这样子的:
A用户<------>邮件服务器<------>B用户
二.电子邮件系统的协议
电子邮件属于计算机网络里面应用层的一种应用,自然需要用到相应的协议。
对协议不太理解的同学可以这么想,协议就是就是一套规定,通信双方如何进行通信除了需要物理设施外还需要商量好
以什么样的格式去发送信息,如何进行解读,这一系列的规定就是协议。
电子邮件系统有两种协议:
1.邮件发送协议SMTP(Simple Mail Transfer Protocol),又叫做简单邮件传送协议。
2.邮件读取协议POP3(Post Office Protocol,POP),POP3是邮局协议的第三个版本。
三.发送电子邮件的具体过程
有了上面的知识介绍,让我们以下面的图来详细理解一下收发邮件的过程:(图取自谢希仁版《计算机与网络教程》)
(1)发邮件的人调用自己主机中的用户代理撰写和编辑要发送的邮件。
(2)发件人点击发送按钮邮件开始发送:
- 用户代理的 SMTP客户 把邮件发送给 发送邮件服务器 的 STMP服务器。
- 发送方邮件服务器的STMP客户把邮件发给 接收方邮件服务器的smtp服务器。
(3)由图中可以看出,每一段的邮件发送都是在一对SMTP客户和SMTP服务器之间进行的。
SMTP客户负责发邮件,而SMTP服务器接收邮件。
(4)接收方的邮件服务器中的SMTP服务器进程收到邮件以后,就把邮件放入收件人的用户邮箱中,
等待收件人在他方便的时候进行读取。
(5)收件人开机上网准备接收邮件时候,打开主机中的用户代理,使用pop3协议读取发送给自己的邮件。具体就是:
- 用户代理中的POP3客户程序发起通信,即与 接收方邮件服务器中的POP3服务器程序进行通信,如果有邮件则请求把邮件取回。
- 在上图中POP3服务器和POP3客户之间的箭头表示邮件传送的方向,但它们之间的通信是POP3客户发起的。
(6)请注意这里两种通信方式。
- 推:SMTP客户把邮件推给SMTP服务器。
- 拉:POP3客户(通信发起者)把邮件从POP3服务器拉过来。
四.SMTP和POP3工作过程
SMTP
1.建立连接
发件人把邮件发送到发送方邮件服务器的邮件缓存后,SMTP客户就每隔一段时间(如30min)对邮件进行一次扫描。
如果发现有邮件,就与接收方服务器建立可靠传输TCP连接。
如果在一定时间内发送不了邮件,邮件服务器会把这个情况告诉发件人。
2.邮件发送
邮件传送从MAIL命令开始,MAIL命令后面有发件人地址。
如:MAIL<[email protected]>。若SMTP服务器已经做好了接受邮件准备,则回答“250OK”。
否则返回一个代码,指出原因:如451(处理时出错),452(存储空间不够),500(命令无法识别)等等。
3.连接释放
上面这些所有过程电子邮件的用户是看不见的,所有这些复杂过程都被电子邮件的用户代理屏蔽了。
POP3
邮局协议POP是一种非常简单、但是功能有限的邮件读取协议。(有一种IMAP协议功能更强大)
当用户需要从邮件服务器中下载电子邮件时候,客户就开始读取邮件。
客户代理在TCP端口110打开到服务器的连接,然后发送用户名和口令,访问邮箱服务器。
用户可以列出邮箱中的邮件清单,并逐个读取邮件文件。
五.基于万维网的电子邮件
随着动态网页技术的发展和应用,越来越多公司和大学提供了基于万维网的电子邮件。
不管在什么地方只要我们能够上网,通过浏览器登陆邮件服务器万维网网站就可以撰写和收发邮件。
采用这种方式的好处就是不用安装专门的客户端软件,用普通的万维网浏览器访问邮件服务器的万维网网站即可。
所以这种方式收发邮件采用的是http协议,而不是前面提到的SMTP和POP3协议(使用同一个邮件服务器时)。
但当发信人和收信人使用不同的邮件服务器时,情况就变了,服务器和服务器之间仍然采用SMTP协议传送: