本文最后更新于:2020年9月18日 下午

计算机网络系列(九)-应用层(五)-Email应用

本篇主要围绕以下内容:

  • 1、Email应用的构成组件
  • 2、SMTP协议特点
  • 3、Email应用的执行过程图
  • 4、SMTP与HTTP对比
  • 5、Email消息格式
  • 6、Email消息格式:多媒体扩展
  • 7、Email消息格式:多媒体扩展格式
  • 8、邮件访问协议
    • 8.1、邮件访问协议的作用
    • 8.2、邮件访问协议的分类
    • 8.3、POP协议
      • 8.3.1、POP协议认证过程
      • 8.3.2、POP协议事务阶段
      • 8.3.3、POP协议模式
    • 8.4、IMAP协议
      • 8.4.1、IMAP协议的特点

1、Email应用的构成组件

  • 邮件客户端

    作用:读写Email消息,与服务器交互、收发消息。
  • 邮件服务器

    作用:
    
        1.邮箱:为每一个用户分配一个邮箱,存储发送给该用户的Email。
    
        2.消息队列:存储等待发送的Email。
  • SMTP协议

    SMTP协议是邮件服务器之间传递消息所使用的协议(email消息的传输/交换协议)。

2、SMTP协议特点

1.使用TCP持久性连接,进行email消息的可靠传输

2.端口:25

3.传输过程的三个阶段

    - 握手
    - 消息的传输
    - 关闭

4.采取模式:命令/响应交互模式

    - 命令:ASCII文本
    - 响应:状态代码和语句

5.Email消息只能包含7位ASCII码构成

6.SMTP服务器利用CRLF.CRLF确定消息的结束

3、Email应用的执行过程图

4、SMTP与HTTP对比

1.请求形式:
    HTTP:拉式   SMTP:推式

2.交互方式:
    都是使用命令/响应交互模式

3.命令和状态代码都是ASCII码

4.响应消息封装形式:
    HTTP:每个对象封装在独立的响应消息中。

    SMTP:多个对象在由多个部分构成的消息中发送。

5、Email消息格式

文本消息格式标准:RFC 822

头部行(header):

    - To
    - From
    - Subject(邮件标题)

消息体(Body)

    - 消息本身
    - 只能是ASCII字符

6、Email消息格式:多媒体扩展

MIME:多媒体邮件扩展 RFC2045,2056

过程:

    通过在邮件头部增加额外的行,以声明MIME的内容类型。

7、Email消息格式:多媒体扩展格式

8、邮件访问协议

邮件收件人从服务器上收件使用的不是SMTP协议。

8.1、邮件访问协议的作用

让收件人能从服务器上获取邮件。

8.2、邮件访问协议的分类

  • POP:Post Office Protocol[RFC 1939]

    认证/授权(客户端<->服务器)和下载
  • IMAP:Internet Mail Access Protocol[RFC 1730]

    - 更多功能
    - 更加复杂
    - 能够操纵服务器上存储的消息
  • HTTP:163,QQ Mail

8.3、POP协议

8.3.1、POP协议认证过程

- 客户端命令
    · User:声明用户名
    · Pass:声明密码

- 服务器响应
    · +OK
    · -ERR

8.3.2、POP协议事务阶段

- List:列出消息数量
- Retr:用编号获取消息
- Dele:删除消息
- Quit

8.3.3、POP协议模式

  • 下载并删除模式

    问题:用户如果更换了客户端软件,无法重读该邮件。
  • 下载并保持模式

    特点:不同客户端可以保留消息的拷贝

8.3.4、POP3协议特点

无状态

8.4、IMAP协议

8.4.1、IMAP协议的特点

  • 所有消息统一保存在服务器上。
  • 允许用户利用文件夹组织消息
  • 支持【跨会话】(所有的客户端对服务器上的文件组织都是一致的)的用户状态:
    · 文件夹的名字
    · 文件夹与消息ID之间的映射等

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!博客中转载文章会注明出处,若有版权问题,请及时与我联系!谢谢!

Java并发系列(十七)-队列同步器AQS(一) 上一篇
计算机网络系列(九)-应用层(四) 下一篇