Email
Email应用的构成
- 构成组件
- 邮件客户端(User Agent)
- 读写Email消息
- 与服务器交互,收发Email消息
- Outlook,Foxmail,Thunderbird
- Web客户端
- 邮件服务器
- 储存发给该用户的Email
- 消息队列:储存等待发送的E-mail
- SMTP协议
- 邮件服务器之间传递消息所使用的协议
4.5.2. SMTP协议-RFC 2821
- 端口为25
- 使用TCP进行Email消息的可靠性传输
- 传输过程的三个阶段,握手,消息传输,关闭
- 命令/响应交互模式
- 协议特点
- 使用持久性连接
- 要求消息为7位ASCII码构成
- SMTP服务器利用CRLF(确定消息的结束)
- 与HTTP对比
- HTTP:拉式(pull)
- SMTP:退式(push)
- 都使用命令/响应交互模式
- HTTP:每个对象封装在独立的响应消息中
- SMTP:多个对象在由多个部分构成的消息中发送
4.5.3. Email消息格式:多媒体扩展
- SMTP:Email消息的传输/交换协议
- RFC 822:文本消息格式标准
- 头部行header: To, From, Subject
- 消息体body: 消息本身,只能说ASCII字符
- MIME:多媒体邮件扩展 RFC 2045,2056
- 通过在邮件头部增加额外的行以声明MIME的内容类型
邮件访问协议--从服务器获取邮件
- POP: Post Office Protocol
- 认证/授权
- 认证过程:客户端命令,服务器响应
- 事务阶段:List,Retr,Dele,Quit
- 下载并删除模式/下载并保持模式
- POP3是无状态的
- IMAP:Internet Mail Access Protocol
- 所有消息统一保存在一个地方:服务器
- 允许用户利用文件夹组织消息
- IMAP支持跨绘话的用户状态:
- HTTP:163,QQ mail等