HTTP 在哪些方面不适合电子邮件?IMAP 的状态性如何(例如)有利于客户开发?
除了历史和向后兼容性原因之外,将它们分开的真正理由是什么?
SMTP、IMAP 和 HTTP 是专门的应用程序级协议。如果有一个通用的应用程序级协议,所有这些都可以继承,你可以有用地重构一些东西,但由于情况并非如此,将其他协议嵌入现有协议之一是不值得的,而且几乎不会简化事情。
就像现在一样,历史和向后兼容性不仅仅是一种文化遗产,它也是为每个协议定义应用程序特定功能的一个漫长而复杂的过程。SMTP 是存储转发的,它引入了对审计标头的需求(Received:
等人)。IMAP 是为并发访问数据存储而设计的,因此有必要引入状态(您是谁,您在哪里被授权连接,您连接到哪个文件夹,您已经看到、阅读或删除了什么) . HTTP 从根本上说是一个拉协议(下拉网页),该POST
工具带有许多特定于 CGI 协议和 HTTP 整体内容模型的功能。
SMTP 是一种识别发件人和收件人以发送单个邮件消息的协议,每个邮件服务器都接受(或不接受)要转发的邮件,最终到达目的地。HTTP 意味着任何人都可以连接到服务器并查看(大部分相同的)内容。它们有着根本的不同,因此使用不同的协议很有意义。