邮件收发过程

假设有计算机A和服务器S1,计算机B和服务器S2,分属两个不同局域网机,其连接状态如图 1‑1。

网络拓扑图

图 1‑1

通过计算机A发送邮件给计算机B,其中可分为三大步骤:计算机A通过SMTP协议把邮件发送到服务器S1,服务器S1再发送到服务器S2,计算机B通过POP3协议接收服务器S2上的邮件。其具体步骤如下。


计算机A到服务器S1

1) 计算机A与服务器S1建立TCP连接。

2) 计算机A向服务器S1发送HELO命令以标识自己的身份,然后发送MAIL命令。

3) 服务器S1以OK作为响应,表示准备接收。

4) 计算机A发送RCPT命令,以标识该电子邮件的计划接收人。

5) 服务器S1表示愿意为收件人接收邮件。

6) 协商结束,发送邮件,用命令DATA发送输入内容。

7) 结束此次发送,用QUIT命令退出。


服务器S1到服务器S2

1) 服务器S1通过DNS中的MX记录找到服务器S2的域名所对应的IP地址。

2) 服务器S1与服务器S2建立连接。

3) 服务器S1向服务器S2发送HELO命令以标识自己的身份,然后发送MAIL命令。

4) 服务器S2以OK作为响应,表示准备接收。

5) 服务器S1发送RCPT命令,以标识该电子邮件的计划接收人。

6) 服务器S2表示愿意为收件人接收邮件。

7) 协商结束,发送邮件,用命令DATA发送输入内容。

8) 结束此次发送,用QUIT命令退出。


从前面的工程可以看出SMTP协议在发送SMTP和接收SMTP之间的会话是靠发送SMTP的SMTP命令和接收SMTP反馈的应答来完成的。在通讯链路建立后,发送SMTP发送MAIL命令指令邮件发送者,若接收SMTP此时可以接收邮件则作出OK的应答,然后发送SMTP继续发出RCPT命令以确认邮件是否收到,如果接收到就作出OK的应答,否则就发出拒绝接收应答,但这并不会对整个邮件操作造成影响。双方如此反复多次,直至邮件处理完毕。


服务器S2到计算机B

POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。脱机模型即不能在线操作,POP不支持对服务器邮件进行扩展操作,此过程需要更高级的IMAP4协议来完成。

本文以POP3为例,简单描述邮件接收过程。

1) 计算机B与服务器S2建立连接。

2) 计算机B向服务器S2发送自己身份(这里指的是账户和密码)。

3) 服务器S2成功确认。

4) 计算机B由认可状态转入处理状态,完成列出未读邮件等相应的操作。

5) 计算机B发出quit命令,退出处理状态进入更新状态。

6) 下载未阅读过的邮件到计算机本地之后重返认证状态。

7) 确认身份后断开与服务器S2的连接。


2014-06-07 11:49
邮件服务器DBMail
邮件服务器DBMail V5.0 (更新2018.05.23)
Download
DBMail产品改良计划
完美的产品体验,需要有您的参与。
在线填写,立即参与
界面/演示
界面美观大方、简单易用。
界面预览
邮件服务器DBMail  |  购买DBMail  |  软件更新  |  网站更新  |  联系遥志  |  站点地图  |  邮件服务器相关  |  代理合作
遥志软件 版权所有(C)2000-2022 湘ICP备13011306号-3 湘公网安备 43010202000264号
Copyright(C) 2000-2022 Youngzsoft Inc. All Rights Reserved.