电子邮件应用层在此做一个简单介绍。电子邮件主要的三个概念就是用户代理(user agent),邮件服务器(mail server)和协议(SMTP,POP3,IMAP)。用户代理指我们手机上的应用app等等,邮件服务器用于储存邮件。
当用户A发邮件给用户B时,最简单的情况是直接发到B用户代理(不经邮件服务器),但是其中没有物理媒介所以就先执行SMTP发送邮件给自己的邮件服务器,也有个优点就是用户B代理不用为了接收邮件一直打开。后A邮件服务器执行SMTP协议发送到B邮件服务器。此时B用户代理不能执行SMTP协议,因为SMTP协议只能用于发送信息(push protocol )不能从服务端获得信息。因而POP3协议出现,B用户代理可以执行POP3协议,获取,删除服务器上的邮件。POP3极其简单,因而功能有限。当很多邮件存在时,进行分类很有必要。为了多端协同,我们必须能够对服务器的邮件进行管理而不是下载到本地。IMAP协议因此诞生。
问题,邮件服务器有多少应用层?
今天在Mac上装了telnet,在此用telnet调戏一下mail服务器,具体细节如下所示:
在命令行输入telnet mailserver portnumber
结果如下,有些部分是我输的用来和服务器交流