2-4因特网中的电子邮件
2.4因特网中的电子邮件
因特网电子邮件系统和它的关键组件:
-
用户代理
-
邮件服务器
-
简单邮件传输协议
过程如下:
-
发送方写好邮件,交付给本地用户代理
-
用户代理传送给发送方的邮件服务器
-
再传送到接收方的邮件服务器
-
最后分发到接收方的邮箱中
电子邮件使用SMTP协议,建立在TCP协议之上,从发送方的邮件服务器向接收方的邮件服务器。
SMTP有两部分:
-
运行在发送方邮件服务器上的客户端
-
运行在接收方邮件服务器的服务器端
注意:每台服务器上这两部分都同时运行
2.4.1SMTP
SMTP是因特网电子邮件应用的核心,用于从发送方的邮件服务器发送报文到接收方的邮件服务器
执行过程:
-
客户SMTP在25号端口建立一个到服务器的TCP连接
-
连接建立,服务器与客户执行应用层的握手(向服务器提供双方的邮件地址)
-
客户发送报文
-
关闭TCP连接
**注意:**SMTP是持续连接的,所有报文都是在同一个TCP上发送
2.4.2与HTTP的对比
-
HTTP是一个拉协议(pull protocol),SMTP是一个推协议(push protocol)
-
SMTP要求每个报文都以7比特ASCII格式,如果包含其他字符或者二进制数据,必须按照该格式进行编码,HTTP无限制
-
HTTP将对象封装到每一个响应报文中,而SMTP则将所有对象放在一个报文中
2.4.3邮件报文格式与MIME
格式:
-
首部行
- 必须有一个From:首部行
- 必须有一个To:首部行
- 也许包含一个Subject:首部行
- 也许包含其他首部行
-
空白行(一行)
-
报文体(ASCII格式)
2.4.4邮件访问协议
SMTP用于将邮件从发送方服务器传输到接收方服务器;从用户代理传输到发送方的邮件服务器;POP3用来将邮件从接收方的邮件服务器传送到接收方的用户代理(这是一个用户代理发起的拉协议);
1.POP3
一个简单的邮件访问协议
过程:
-
用户代理打开一个到邮件服务器端口110上的TCP连接,POP3开始工作
-
第一阶段:特许
- 用户代理发送用户名和口令鉴别用户
-
第二阶段:事物处理
- 用户代理取回报文
- 可选
- 对报文做删除标记
- 取消报文删除标记
- 获取邮件的统计信息
-
第三阶段:更新阶段
- 结束POP3会话
- 邮件服务器删除被标记为删除的报文
注意:标记删除还会区分设备
2.IMAP
为了解决POP3能在远程创建邮件文件夹并为报文指派文件夹的方法,IMAP出现了
IMAP服务器把每个报文与一个文件夹联系起来
过程:
-
报文到达服务器,与收件人INBOX文件夹相关联
-
用户能
- 创建文件夹
- 移动邮件到另一个文件夹
- 查询邮件
注意:
IMAP服务器维护了IMAP会话的用户状态信息
用户能自主选择接收报文的一部分
3.基于Web的电子邮件
-
用户代理是浏览器
-
邮件服务器与浏览器之间使用HTTP协议
-
邮件服务器之间使用SMTP协议