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协议