Email应用与SMTP协议
Email应用层的构成
客户端+服务器+协议
用户代理
用于读写邮件消息;与服务器交互,收发邮件消息
常见的客户端:Outlook,Foxmail(这两个是需要下载的客户端),Web客户端(在网页上使用,十分方便)
服务器
为每一个用户分配一个邮箱。邮箱里存储发给该用户的邮件。
消息队列:存储等待发送的邮件
为什么需要服务器进行中转?——因为邮件是异步的。
传输协议
SMTP(RFC 2821)
依赖TCP协议
,可靠传输,端口25。
模式:命令-响应模式
。推送式。命令和响应都以ASCII码表示,即人可读。
Email消息只能包含7位
ASCII码,因为古老,早时没有多媒体。附件怎么办?——MIME(后讲)。
持久性连接。
回车换行 点号 回车换行
表示消息结束。
多个对象封装在一个消息中(一个消息可以有多个部分)。
Email消息的格式(RFC 822 文本消息格式标准)
头部行
(header,包括To,From, Subject)和消息体
(body,消息本身,只能是ASCII字符)之间用一个空行分隔开。
多媒体扩展MIME(RFC 2045,2056)
需在header中增加额外声明,来使用MIME。
邮件存取协议:pop3、http
上传和下载是相对于客户端的,推送和拉取也是相对于客户端说的。