邮件协议基础知识

SMTP协议

Simple Mail Transfer Protocal 【简单邮件传输协议】,定义了邮件客户端软件与SMTP服务器之间及两台SMTP服务器之间的通信规则。

发送电子邮件的协议。使用TCP的25号端口。

SMTP建立一个TCP连接后,在这个连接上控制和应答以及数据的发送。客户端以文本的形式发出请求,服务端返回一个3位数字的应答。

image

image

image

image

image

image

说明:SMTP以“.”作为邮件正文的结束符,即使正文本身含有这个字符,也能做出识别。具体处理方法为:如果邮件正文的行首为“.”字符时,会在其后面紧接着再追加一个“.”字符。接收邮件时如果行首出现两个“.”字符,则删除其中一个。

POP3协议

Post Office Protocol 【邮局协议】,定义了邮件客户端软件与POP3服务器的通信规则。

用于接收邮件的协议。发送端的邮件根据SMTP协议将被撞发给一直处于插电状态的POP服务器。客户端再根据POP协议从POP服务器接收对方发来的邮件。在这个过程中,为了防止他人盗用邮件内容,还要进行用户验证。

POP与SMTP一样,也是客户端与服务器之间建立一个TCP连接完成相应操作。

image

image

image

image

IMAP协议

Internet Message Access Protocal【Internet消息访问协议】,IMAP是对POP3协议的一种扩展。

在POP中邮件由客户端进行管理,而在IMAP中邮件则由服务器进行管理。

使用IMAP时,可以不必从服务器上下载所有的邮件也可以阅读。由于IMAP是在服务器端处理MIME信息,所以它可以实现当某一封邮件含有10个附件时,“只下载其中的7个附件”的功能。这在带宽较窄的线路上起着非常重要的作用。而且IMAP在服务器上对“已读/未读”信息和邮件分类进行管理,因此,即使在不同的计算机上打开邮箱,也能保持同步,使用非常方便。如此一来,使用IMAP,在服务器上保持和管理邮件信息,就如同在本地客户端中管理自己的信息一样简单。

有了IMAP人们可以通过各种电脑和移动智能设备连接到IMAP服务器后同步的收发邮件。

本文参考书籍:《图解TCP/IP》、《Java邮件开发详解》

原文地址:https://www.cnblogs.com/shijiaqi1066/p/3344915.html