电子商务网站建设教程,舟山普陀区建设信息网站,江西赣州网站,建设通网站免费注册一、电子邮件系统架构 电子邮件是一个典型的异步通信系统#xff0c;发送方从UA#xff0c;也就是邮件客户端#xff0c;通过应用层SMTP协议#xff0c;传输层tcp协议#xff0c;发送给发送方的邮件服务器#xff0c;比如使用的是163邮箱#xff0c;163提供的SMTP服务器…一、电子邮件系统架构 电子邮件是一个典型的异步通信系统发送方从UA也就是邮件客户端通过应用层SMTP协议传输层tcp协议发送给发送方的邮件服务器比如使用的是163邮箱163提供的SMTP服务器就是smtp.163.com发送方给这个地方发送。 之后这个163 smtp服务器又会作为smtp客户端再次通过应用层SMTP传输层TCP给接收方的邮件服务器发邮件。
最后收件人会通过POP或IMAP协议从他的POP3或IMAP服务器把他的邮件pop出来还是走TCP连接。
注意这里都是客户端和服务器通信走的都是典型的Client-Server架构。
例如发送方邮件服务器在接收发件人发来的邮件的时候是作为服务器然后他在给接收方邮件服务器送信的时候是作为客户端。
这里我们把发送方邮件服务器——接收方邮件服务器这一大块叫做电子邮件系统这里面一定是走SMTP的。这之外比如现在很多邮箱提供网页端那么从发送方到发送方服务器这个过程就有可能走HTTP了接收方服务器到接收方这里也是同理可以走HTTP。 二、SMTPSimple Mail Transfer Protocol
整个过程的大部分应用层协议走的都是SMTP先看看SMTP。
它主要规定了这个客户端和服务器通信的过程不含加密和认证而且SMTP只能传7bit-ASCII码这是上古时代的ASCII码只包含了前128个字符。看下面这个通信的过程。
客户端和服务器通过简单的helo来建立连接然后说这是从谁来的给谁发的。
之后是信息的头和body最后在把连接断掉。 这是一个原来的简单的邮件的格式包括这些很基础的内容。 后来发现我们要传一些别的视频、音频、文件、甚至二进制代码为了遵循开闭原则不对原先的系统修改只添加功能那就需要一种方式把这些东西映射成7bit-ASCII码再走SMTP。 三、MIMEMultipurpose Internet Mail Extension
就有了这个MIME扩展 它通过规定了很多的Content Type来支持不同样式的信息。
来看这样一个例子最上面的是MIME的头接着就是Contenttype是mutipart-alternative里面就是各种格式的信息他还定义了一个boundary来分隔不同的信息。
例如下面第一个content-type是text/html然后用那个boundary分隔然后是mesage/external-body最后是一个音频文件。 四、POP3和IMAP
就是很简单的从邮件服务器pop出来消息到本地。 看这里都是些很简单的消息把邮件都list出来把某个邮件retrieve出来然后删除某个邮件最后退出。
这里就是POP3的局限只能把整个邮件POP出来才能看。
IMAP可以把邮件的一部分POP出来。