当前位置:文档之家› POP3协议文档

POP3协议文档

POP3 邮局协议-版本3

1. 简介

对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际的。例如,一台工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留,并持续运行。同样的,将一台个人计算机长时间连接在IP 类型网络上的费用也是可观的(结点缺少的资源被称为“联络性”)。

虽然如此,在这样的小结点上允许管理邮件是十分有用的,并且这些结点经常支持一个用户代理来管理邮件。为解决这一问题,能够支持MTS的结点就为这些不能支持的结点提供了邮件存储功能。邮局协议-版本3就是使这样的工作站可以用一种比较实用的方法来访问存储于服务器上的储存邮件。通常,这意味着工作站可以从服务器上取得邮件,而服务器为它暂时保存邮件。

在下文中,客户主机指的是利用POP3服务的主机,而服务器主机指的是提供POP3服务的主机。

2. 简单说明

在此文档中不指明客户主机如何将邮件送入到传送系统中去。但这里有一个说明:当用户代理需要将信息送到传送系统时,它在接力主机上建立SMTP连接(这些接力主机可以是POP3主机,也可以不是)。

3. 基本操作

初始时,服务器通过侦听TCP端口110开始POP3服务。当客户主机需要使用服务时,它将与服务器主机建立TCP连接。当连接建立后,POP3发送确认消息。客户和POP3服务器相互(分别)交换命令和响应,这一过程一直要持续到连接终止。

POP3命令由一个命令和一些参数组成。所有命令以一个CRLF对结束。命令和参数由可打印的ASCII字符组成,它们之间由空格间隔。命令一般是三到四个字母,每个参数却可达40个字符长。

POP3响应由一个状态码和一个可能跟有附加信息的命令组成。所有响应也是由CRLF对结束。现在有两种状态码,“确定” ("+OK")和“失败” ("-ERR")。

对于特定命令的响应是由许多字符组成的。在这些情况中,下面一一表述:在发送第一行响应和一个CRLF之后,任何的附加信息行发送,他们也由CRLF对结束。当所有信息发送结束时,发送最后一行,包括一个结束字符(十进制码46,也就是“.”)和一个CRLF对。如果信息中的任何一行以结束字符开始,此行就是通过在那一行预先装入结束而进行字符填充的。因此,多行响应由五个CRLF.CRLF 结束。当检测多行响应时,客户检测以确认此行是否以结束字符开始。如果是的,而且其后的字符不是CRLF,此行的第一个字符(结束字符)将被抛弃;如果其后紧跟CRLF,从POP服务器来的响应终止,包括.CRLF 的行也不被认为是多行响应的一部分了。

在生命周期中,POP3会话有几个不同的状态。一旦TCP连接被打开,而且POP3服务器发送了确认信息,此过程就进入了“确认”状态。在此状态中,客户必须向POP3服务器确认自己是其的客户。一旦确认成功,服务器就获取与客户邮件相关的资源,此时这一过程进入了“操作”状态。在此状态中,客户提出服务,当客户发出QUIT命令时,此过程进入了“更新”状态。在此状态中,POP3服务器释放在“操作”状态中取得的资源,并发送消息,终止连接。

POP3服务器可以拥有一个自动退出登录的记时器。此记时器必须至少可以记录10分钟。这样从客户发送的消息才可能刷新此记时器。当记时器失效时,POP3会话并不进入“更新”状态,而是关闭TCP连接,而且不删除任何消息,不向客户发送任何响应。

4. “确认”状态

一时TCP连接由POP3客户打开,POP3服务器发送一个单行的确认。这个消息可以是由CRLF结束的任何字符。例如,它可以是:

S: +OK POP3 server ready

注意:这个消息是一个POP3应答。POP3服务器应该给出一个“确定”响应作为确认。

此时POP3会话就进入了“确认”状态。此时,客户必须向服务器证明它的身份。在文档中介绍两种可能的处理机制,一种是USER和PASS命令,另一种是在后面要介绍的APOP命令。

用USER和PASS命令进行确认过程,客户必须首先发送USER命令,如果POP3服务器以“确认”状态码响应,客户就可以发送PASS命令以完成确认,或者

发送QUIT命令终止POP3会话。如果POP3服务器返回“失败”状态码,客户可以再发送确认命令,或者发送QUIT命令。

当客户发送了PASS命令后,服务器根据USER和PASS命令的附加信息决定是否允许访问相应的存储邮件。

一旦服务器通过这些数据决定允许客户访问储存邮件,服务器会在邮件上加上排它锁,以防止在进入“更新”状态前对邮件的改变。如果成功获得了排它锁,服务器返回一个“确认”状态码。会话进入“操作状态”,同时没有任何邮件被标记为删除。如果邮件因为某种原因不能打开(例如,排它锁不能获得,客户不能访问相应的邮件或者邮件不能进行语法分析),服务器将返回“失败”状态码。在返回“失败”状态码后,服务器会关闭连接。如果服务器没有关闭连接,客户可以重新发送确认命令,重新开始,或者发送QUIT命令。

在服务器打开邮件后,它为每个消息指定一个消息号,并以八进制表示每个消息的长度。第一个消息被指定为1,第二个消息被指定为2,以此类推,第N个消息被指定为N。在POP3命令和响应中,所以的消息号和长度以十进制表示。

下面是对上述三条命令的总结:

5. “操作”状态

一旦客户向服务器成功地确认了自己的身份,服务器将锁住并打开相应的邮件,这时POP3会话进入“操作”状态。现在客户可以重复下面的POP3命令,对于每个命令服务器都会返回应答。最后,客户发送QUIT命令,会话进入“更新”状态。

下面是在“操作”状态中可用的命令:

6.“更新”状态

当客户在“操作”状态下发送QUIT命令后,会话进入“更新”状态。(注意:如果客户在“确认”状态下发送QUIT后,会话并不进入“更新”状态。)

如果会话因为QUIT命令以外的原因中断,会话并不进入“更新”状态,也不从服务器中删除任何信件。

7.可选的POP3命令

以上讨论的命令是对POP3服务的最小实现。以下说明的可选命令允许客户更方便地处理信件,这是一个比较一般的POP3服务实现。

8. POP3命令总结

基础的POP3命令:

USER name 在“确认”状态有效PASS string

QUIT

STAT 在“操作”状态有效

LIST [msg]

RETR msg

DELE msg

NOOP

RSET

QUIT 在“更新”状态有效

可选的POP3命令:

APOP name digest 在“确认”状态有效

TOP msg n 在“操作”状态有效

UIDL [msg]

POP3 响应:

+OK

-ERR

注意:除了STAT,LIST和UIDL的响应外,其它命令的响应均为"+OK"和"-ERR"。响应后的所有文本将被客户略去。

9. POP3会话实例

S: <等待连接到TCP端口110>

C: <打开连接>

S: +OK POP3 server ready <1896.697170952@https://www.doczj.com/doc/ab1668803.html,>

C: APOP mrose c4c9334bac560ecc979e58001b3e22fb

S: +OK mrose's maildrop has 2 messages (320 octets)

C: STAT

S: +OK 2 320

C: LIST

S: +OK 2 messages (320 octets)

S: 1 120

S: 2 200

S: .

C: RETR 1

S: +OK 120 octets

S: <服务器发送信件1>

S: .

C: DELE 1

S: +OK message 1 deleted

C: RETR 2

S: +OK 200 octets

S: <服务器发送信件2>

S: .

C: DELE 2

S: +OK message 2 deleted

C: QUIT

S: +OK dewey POP3 server signing off (maildrop empty)

C: <关闭连接>

S: <等待下一次连接>

10. 消息格式

在会话过程中的消息格式都假定与Internet文本消息格式标准一致。应该注意的是,由于各个服务器对于换行符的处理不同,因此计数不一定相同。通常,在“确认”状态中,服务器能够以八进制计算信件的大小。例如,如果在打开储存邮件时服务器内部认定换行符代表一个字符,一般服务器在计算它时作为两个字符计。注意,以终止符开始的消息行不被计数两次,因为客户将在接收到多行响应后删除所有字节填充。

11. 安全性考虑

可以推测,使用APOP命令可以提供会话期间的保护。相应的,同时实现PASS和APOP命令的服务器只允许用户以一种方式访问;也就是说要么使用USER/PASS组合,要么使用APOP命令,不能同时使用两个。

而且,注意随着共享密钥长度的增加,解读的难度也就上升了。服务器要提供用户名时不给出任何响应,不给出任何暗示此用户名是否正确。而口令却在网络上显式传送;使用RETR和TOP命令在网络上显式传送信件。

POP3协议命令原始码及工作原理

POP3协议命令原始码及工作原理 一简介: 1. POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。脱机模型即不能在线操作,不像IMAP4(netscape支持IMAP4) 2. 当客户机与服务器连接并查询新电子邮件时,被该客户机指定的所有将被下载的邮件都将被程序下载到客户机,下载后,电子邮件客户机就可以删除或修改任意邮件,而无需与电子邮件服务器进一步交互。 3. POP3客户向POP3服务器发送命令并等待响应,POP3命令采用命令行形式,用ASCII码表示。 服务器响应是由一个单独的命令行组成,或多个命令行组成,响应第一行以ASCII文本OK或-ERR指出相应的操作状态是成功还是失败 4. 在POP3协议中有三种状态,认可状态,处理状态,和更新状态。 当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态,在完成相应的操作后客户机发出quit命令,则进入更新状态,更新之后最后重返认可状态。如下图 等待连接身份确认quit命令 ——|认可|—————|处理|——————|更新| |__________________________________|

重返认可状态 5. 认可状态的命令语句 一般情况下,大多数现有的POP3客户与服务器执行采用ASCII 明文发送用户名和口令,在认可状态等根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取总结出更多更好的经验! 待客户连接的情况下,客户发出连接,并由命令user/pass对在网络上发送明文用户名和口令给服务器 进行身份确认。一旦确认成功,便转入处理状态。 为了避免发送明文口令的问题,有一种新的认证方法,命令为APOP,使用APOP,口令在传输之前被加密。 当第一次与服务器连接时,POP3服务器向客户机发送一个ASCII 码问候,这个问候由一串字符组成对每个客户机是唯一的,与当时的时间有关,然后,客户机把它的纯文本口令附加到从服务器接收到的字符串之后,然后计算出结果字符串的MD5单出函数消息摘要,客户机把用户名与MD5消息摘要作为APOP命令的参数一起发送出去。 目前,大多数windows上的邮件客户软件不支持APOP命令,qpopper支持。 6. POP3命令码如下: 命令参数状态描述 ------------------------------------------

pop3-imap-exchange协议

Internet的基本协议是TCP/IP协议,然而在TCP/IP模型最上层的是应用层(Applicationlayer),它包含所有高层的协议。高层协议有:文件传输协议FTP、电子邮件传输协议SMTP、域名系统服务DNS、网络新闻传输协议NNTP和HTTP协议等。 HTTP协议(Hypertext Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。这就是你为什么在浏览器中看到的网页地址都是以“http://”开头的原因。 POP3(Post Office Protocol 3) POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。 IMAP(Internet消息访问协议)是与POP3对应的另一种协议,为美国斯坦福大学在1986年开始研发的多重邮箱电子邮件系统。它能够从邮件服务器上获取有关E-mail的信息或直接收取邮件,具有高性能和可扩展性的优点。IMAP 为很多客户端电子邮件软件所采纳,如OutlookExpress、NetscapeMessenger 等,支持IMAP的服务器端的软件也越来越多,如CriticalPath、Eudora、iPlanet、Sendmail等。 POP3 和IMAP4 功能概述 这两个协议具有下列优点和局限性: ?POP3 POP3 用于支持脱机邮件处理。使用 POP3 时,如果未将客户端设置为在服务器上保留邮件,电子邮件将从服务器中删除并存储在本地POP3 客户端上。这会使数据管理和安全责任都转由用户负责。POP3 不提供高级协作功能,例如日历、联系人和任务。 ?IMAP4 IMAP4 可提供脱机和联机访问功能,但与POP3 一样,IMAP4 不提供高级协作功能,例如日历、联系人和任务。 POP3 和IMAP4 无法用于将邮件从客户端应用程序发送到电子邮件服务器。使用 POP3 和IMAP4 发送邮件的电子邮件应用程序依赖SMTP 协议来发送邮件。会在每个中心传输服务器上自动创建用于从使用POP3 或IMAP4 的客户端应用程序接收电子邮件提交的连接器。有关连接器的详细信息,请参阅了解接收连接器。

RFC1939-POP3协议中文版

1. 简介 对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际 的。例如,一台工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留,并持续运行。同样的,将一台个人计算机长时间连接在IP类型网络上的费用也是可观的(结点缺少的资源被称为"联络性")。 虽然如此,在这样的小结点上允许管理邮件是十分有用的,并且这些结点经常支持一个用户代理来管理邮件。为解决这一问题,能够支持MTS的结点就为这些不能支持的结点提供了邮件存储功能。邮局协议-版本3就是使这样的工作站可以用一种比较实用的方法来访问存储于服务器上的储存邮件。通常,这意味着工作站可以从服务器上取得邮件,而服务器为它暂时保存邮件。 在下文中,客户主机指的是利用POP3服务的主机,而服务器主机指的是提供POP3服务的主机。 2. 简单说明 在此文档中不指明客户主机如何将邮件送入到传送系统中去。但这里有一个说明:当用户代理需要将信息送到传送系统时,它在接力主机上建立SMTP连接(这些接力主机可以是POP3主机,也可以不是)。 3. 基本操作 初始时,服务器通过侦听TCP端口110开始POP3服务。当客户主机需要使用服务时,它将与服务器主机建立TCP连接。当连接建立后,POP3发送确认消息。客户和POP3服务器相互(分别)交换命令和响应,这一过程一直要持续到连接终止。 POP3命令由一个命令和一些参数组成。所有命令以一个CRLF对结束。命令和参数由可打印的ASCII 字符组成,它们之间由空格间隔。命令一般是三到四个字母,每个参数却可达40个字符长。 POP3响应由一个状态码和一个可能跟有附加信息的命令组成。所有响应也是由CRLF对结束。现在有两种状态码,"确定" ("+OK")和"失败" ("-ERR")。 对于特定命令的响应是由许多字符组成的。在这些情况中,下面一一表述:在发送第一行响应和一个CRLF之后,任何的附加信息行发送,他们也由CRLF对结束。当所有信息发送结束时,发送最后一行,包括一个结束字符(十进制码46,也就是".")和一个CRLF对。如果信息中的任何一行以结束字符开始,此行就是通过在那一行预先装入结束而进行字符填充的。因此,多行响应由五个CRLF.CRLF 结束。当检测多行响应时,客户检测以确认此行是否以结束字符开始。如果是的,而且其后的字符不是CRLF,此行的第一个字符(结束字符)将被抛弃;如果其后紧跟CRLF,从POP服务器来的响应终止,包括.CRLF 的行也不被认为是多行响应的一部分了。 在生命周期中,POP3会话有几个不同的状态。一旦TCP连接被打开,而且POP3服务器发送了确认信息,此过程就进入了"确认"状态。在此状态中,客户必须向POP3服务器确认自己是其的客户。一旦确认成功,服务器就获取与客户邮件相关的资源,此时这一过程进入了"操作"状态。在此状态中,客户提出服务,当客户发出QUIT命令时,此过程进入了"更新"状态。在此状态中,POP3服务器释放在"操作"状态中取得的资源,并发送消息,终止连接。 POP3服务器可以拥有一个自动退出登录的记时器。此记时器必须至少可以记录10分钟。这样从客户发送的消息才可能刷新此记时器。当记时器失效时,POP3会话并不进入"更新"状态,而是关闭TCP连接,而且不删除任何消息,不向客户发送任何响应。 4. "确认"状态 一时TCP连接由POP3客户打开,POP3服务器发送一个单行的确认。这个消息可以是由CRLF结束

POP3协议详解

POP3协议分析 第1章POP3概述 POP3全称为Post Office Protocol version3,即邮局协议第3版。它被用户代理用来邮件服务器取得邮件。POP3采用的也是C/S通信模型,对应的RFC 文档为RFC1939。该协议非常简单,所以我们只重点介绍其通信过程,而相关的一些概念和术语请参考RFC文档或另外一篇文章《SMTP协议分析》 第2章.POP3详解 2.1通信过程 用户从邮件服务器上接收邮件的典型通信过程如下。 1)用户运行用户代理(如Foxmail, Outlook Express)。 2)用户代理(以下简称客户端)与邮件服务器(以下简称服务器端) 的110端口建立TCP连接。 3)客户端向服务器端发出各种命令,来请求各种服务(如查询邮箱 信息,下载某封邮件等)。 4)服务端解析用户的命令,做出相应动作并返回给客户端一个响 应。 5)3)和4)交替进行,直到接收完所有邮件转到步骤6),或两者的 连接被意外中断而直接退出。 6)用户代理解析从服务器端获得的邮件,以适当地形式(如可读) 的形式呈现给用户。 其中2)、3)和4)用POP3协议通信。可以看出命令和响应是POP3通信的重点,我们将予以重点讲述。 2.2命令和响应 2.2.1.格式 POP3的命令不多,它的一般形式是:COMMAND [Parameter] 。其中COMMAND是ASCII形式的命令名,Parameter是相应的命令参数,是回车换行符(0DH, 0AH)。 服务器响应是由一个单独的命令行组成,或多个命令行组成,响应第一行“+OK”或“-ERR”开头,然后再加上一些ASCII文本。“+OK”和“-ERR”分别指出相应的操作状态是成功的还是失败的。 2.2.2.三个状态 POP3协议中有三种状态,认正状态,处理状态,和更新状态。命令的执行可以改变协议的状态,而对于具体的某命令,它只能在具体的某状态下使用,这些请参看表1和RFC193。

基于STMP与POP3协议的邮件发送与接收

网络编程实训报告 题目:基于STMP与POP3协议的邮件发送与接收 姓名: 学院: 专业: 班级: 学号: 指导教师: 完成日期:年月日

原创性声明 本人郑重声明:上交的设计报告,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 作者签名: 日期:年月日

前言 电子邮件指用电子手段传送信件、单据、资料等信息的通信方法。电子邮件综合了电话通信和邮政信件的特点,它传送信息的速度和电话一样快,又能象信件一样使收信者在接收端收到文字记录。电子邮件系统又称基于计算机的邮件报文系统。它承担从邮件进入系统到邮件到达目的地为止的全部处理过程。电子邮件不仅可利用电话网络,而且可利用任何通信网传送。在利用电话网络时,还可利用其非高峰期间传送信息,这对于商业邮件具有特殊价值。由中央计算机和小型计算机控制的面向有限用户的电子系统可以看作是一种计算机会议系统。 SMTP 是一种提供可靠且有效电子邮件传输的协议。SMTP 是建模在FTP 文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。 POP 协议允许工作站动态访问服务器上的邮件,目前已发展到第三版,称为POP3。POP3 允许工作站检索邮件服务器上的邮件。POP3 传输的是数据消息,这些消息可以是指令,也可以是应答。 本实践是在SMTP和POP协议下设计的一个电子邮箱,能够实现发送,接收邮件等功能。

基于POP3与SMTP协议的邮件收发程序的开发

一、设计思想 电子邮件指用电子手段传送信件、单据、资料等信息的通信方法。电子邮件综合了电话通信和邮政信件的特点,它传送信息的速度和电话一样快,又能象信件一样使收信者在接收端收到文字记录。电子邮件系统又称基于计算机的邮件报文系统。它承担从邮件进入系统到邮件到达目的地为止的全部处理过程。电子邮件不仅可利用电话网络, 而且可利用任何通信网传送。在利用电话网络时, 还可利用其非高峰期间传送信息,这对于商业邮件具有特殊价值。由中央计算机和小型计算机控制的面向有限用户的电子系统可以看作是一种计算机会议系统。 电子邮件的工作过程遵循客户- 服务器模式。每份电子邮件的发送都要涉及到发送方与接收方,发送方式构成客户端,而接收方构成服务器,服务器含有众多用户的电子信箱。发送方通过邮件客户程序,将编辑好的电子邮件向邮局服务器(SMTP服务器)发送。邮局服 务器识别接收者的地址,并向管理该地址的邮件服务器(POP3服务器)发送消息。 一个邮件系统的传输包含用户代理User Agent 传输代理TransferAgent 及接受代理DeliveryAgent 三大部分。 用户代理是一个用户发信和收信的程序, 负责将电子邮件按照一定的标准包装,然后送至邮件服务器, 或由邮件服务器收回。传输代理负责信件的交换和传输。将信件传送至适当的邮件主机, 再由接受代理将信件分发至不同的邮件信箱。传输代理必须要能够接受用户邮件程序送来的信件,解读收信人的地址,根据SMTP协议将它正确无误地传递到目的地。现在一般的传输代理已采用Sendmail 程序完成工作。电子邮件到达邮件主机后, 在经接收代理POP协议被用户读取至自己的主机。 电子邮件在发送与接收过程中都要遵循SMTP POP3等协议,这些协议确保了电子邮件 在各种不同系统之间的传输。其中,SMTP负责电子邮件的发送,而POP3则用于接收In ternet 上的电子邮件。 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/ IP协议族, 它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器, 我们就可以把E—mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP!务器则是遵循SMTP 协议的发送邮件服务器,用来发送或中转你发出的电子邮件。 POP3(Post Office Protocol 3)即邮局协议,目前已发展到第三版,称POP3它规 定怎样将个人计算机连接到Internet 的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议 的接收邮件服务器,用来接收电子邮件的。总的来说POP3协议是让用户把服务器上的信收 到本地来所需要的一种协议。 本程序为一个基于SMTP和POP3协议的小型EMAIL收发程序,简单的实现了邮件的收发功能。

SMTP及POP3协议分析

网络协议分析与设计实验报告 实验名称:实验六SMTP及POP3协议分析 班级:姓名:学号: 实验地点:日期:2012年10 月20 日 一、实验目的: 1.掌握SMTP协议和POP协议的工作原理和工作过程 2.掌握SMTP协议和POP协议的常用命令 二、实验环境: 1.联网并运行SimpleNPTS软件的PC机 2.已配置好的SMTP和POP3服务器 3.安装了邮件客户端程序(如Outlook Express)的工作站 三、实验内容和要求: 1、捕获并分析SMTP协议工作过程中发送和接收的报文 2、捕获并分析POP3协议工作过程中发送和接收的报文 3、在与邮件服务器建立的TCP连接上发送SMTP和POP3命令,实现邮件的发送和接收 4、构造并发送SMTP报文 5、构造并发送POP3报文 四、实验步骤: 1、开启网络协议分析软件,设置过滤器为只捕获SMTP和POP3协议报文。 2、在一个支持SMTP发送邮件、POP3接收邮件的邮件服务器上申请一个邮箱,然后按照已 申请的邮箱信息对邮件客户端软件进行配置。 3、使用邮件客户软件创建并发送一封邮件,利用网络协议软件捕获并分析SMTP报文和 SMTP服务器的响应报文。 4、使用邮件客户软件从自己的邮箱中接收邮件,利用网络协议软件捕获并分析POP报文和 POP3服务器的响应报文。 5、利用TCP连接工具与SMTP服务器建立TCP连接,然后在该连接上使用SMTP命令来发 送邮件。捕获并分析该过程中发送和接收的SMTP报文。 6、利用TCP连接工具与POP3服务器建立TCP连接,然后在该连接上使用POP3命令来接 收邮件。捕获并分析该过程中发送和接收到的POP3报文。 7、编辑并发送POP3报文,以实现登录到POP3服务器。

POP3与SMTP协议

POP3协议 POP3,全名为“Post Office Protocol - Version 3”,即“邮局协议版本3”。是TCP/IP协议族中的一员,由RFC 1939 定义(见 Reference/rfc1939 pop3.html)。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S。 使用telnet 连接pop3 最直观的了解什么是POP3,我觉得采用telnet的方式用pop3连接到邮件服务器,进行邮件的接收是最有效的。 打开终端,(C:client, S:Server) C: telnet https://www.doczj.com/doc/ab1668803.html, 110 (用telnet方式连接163的pop3服务器,pop3协定端口为110) S: Trying 202.108.5.100... Connected to https://www.doczj.com/doc/ab1668803.html,. Escape character is '^]'. +OK Welcome to coremail Mail Pop3 Server (163coms[3d8c1fa079729fb6acc588e66d30360es]) (服务器通常开头返回+OK表示正确的回应,+ERR表示所发命令有误) C: USER ***** (***处输入你的邮件用户名) S: +OK core mail (表示接受) C: PASS ***** (***处输入密码,这里都是明文显示) S: +OK 5 message(s) [9782 byte(s)] (这里表示服务器接受该帐户,服务器上对应有5封邮件,总大小9782个字节) C:LIST (LIST 命令列出每一封邮件的信息,己每封邮件对应的ID 号和大小) S: +OK 5 9782 1 1298 2 1311 3 1224 4 1312 5 4637 . C: TOP 1 0 (格式 TOP num 0, num代表邮件ID号,返回该邮件的头部信息) S:+OK 1298 octets (服务器接受) Received: from https://www.doczj.com/doc/ab1668803.html, (unknown [221.10.25.6])

SMTP及POP3协议分析报告

网络协议分析与设计实验报告

五、实验结果与分析(含程序、数据记录及分析和实验总结等): 1、SMTP报文是如何封装的?客户端软件在发送时,向SMTP服务器发送了哪些SMTP报文?SMTP 服务器的响应信息是什么?请列出上述SMTP报文和SMTP服务器的响应信息。 依次封装在tcp报文的数据区域,ip数据包的数据区域,以太网帧的数据区域。 三次握手建立连接 00 0F E2 45 B9 C2 00 E5 7C 07 DF 45 08 00 45 00 00 40 CE F2 40 00 40 06 79 87 0A 84 FE 9F DC B5 0C 65 08 B7 00 6E 93 9D 52 22 00 00 00 00 B0 02 FF FF 54 DB 00 00 02 04 05 B4 01 03 03 03 01 01 08 0A 00 00 00 00 00 00 00 00 01 01 04 02 0C 2、POP3报文是如何封装的?在使用客户端软件接收时,向POP3服务器发送了哪些POP报文?POP3服务器的响应信息是什么?请列出上述POP3报文和POP3服务器的响应信息。 依次封装在tcp报文的数据区域,ip数据包的数据区域,以太网帧的数据区域。 三次握手建立连接 00 E5 7C 07 DF 45 00 0F E2 45 B9 C2 08 00 45 00 00 34 00 00 40 00 35 06 53 86 DC B5 0C 65 0A 84 FE 9F 00 6E 08 B7 6B 9C 45 4F 93 9D 52 23 80 12 16 D0 C6 21 00 00 02 04 05 B4 01 01 04 02 01 03 03 07 00 3、给出利用TCP连接工具与SMTP/POP3服务器建立TCP连接后,利用SMTP/POP3命令发送和

SMTP、POP3协议以及邮件服务器之间的通信过程

SMTP、POP3协议及台邮件服务器之间的通信过程 POP3(Post Office Protocol 3)即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议, 是一种提供可靠且有效电子邮件传输的协议。SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供与来信有关的通知。它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,我们就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转你发出的电子邮件。SMTP目前已是事实上的在Internet传输 e-mail的标准,是一个相对简单的基于文本的协议。在其之上指定了一条消息的一个 或多个接收者(在大多数情况下被确定是存在的),然后消息文本就传输了。可以很简 单地通过Telnet程序来测试一个SMTP服务器,SMTP使用TCP端口25。要为一个给定的域名决定一个SMTP服务器,需要使用MX(Mail eXchange)DNS。 SMTP协议的邮件路由过程 SMTP服务器基于域名服务DNS中计划收件人的域名来路由电子邮件。SMTP服务器基于DNS中的MX记录来路由电子邮件,MX记录注册了域名和相关的SMTP中继主机,属于该域的电子邮件都应向该主机发送。若SMTP服务器 https://www.doczj.com/doc/ab1668803.html, 收到一封信要 发到shuer@https://www.doczj.com/doc/ab1668803.html,,则执行以下过程: 1、Sendmail 请求DNS给出主机https://www.doczj.com/doc/ab1668803.html,的CNAME 记录,如有,假若CNAME (别名记录)到https://www.doczj.com/doc/ab1668803.html,,则再次请求https://www.doczj.com/doc/ab1668803.html,的CNAME记录, 直到没有为止。 2、假定被CNAME到https://www.doczj.com/doc/ab1668803.html,,然后sendmail请求@https://www.doczj.com/doc/ab1668803.html, 域的DNS给 出https://www.doczj.com/doc/ab1668803.html,的MX记录(邮件路由及记录),shmail MX 5 https://www.doczj.com/doc/ab1668803.html, 10 https://www.doczj.com/doc/ab1668803.html,。 3、Sendmail组合请求DNS给出https://www.doczj.com/doc/ab1668803.html,的A记录(主机名(或域名)对 应的IP地址记录),即IP地址,若返回值为1.2.3.4(假设值)。 4、 Sendmail与1.2.3.4连接,传送这封给shuser@https://www.doczj.com/doc/ab1668803.html, 的信到1.2.3.4 邮件的收发过程 1、发信人在用户代理处编辑邮件,包挌收信人地址、发信人地址及主题等等 2、用户代理提取发件人编辑的信息,生成一封符合邮件格式标准的邮件 3、用户代理用SMTP发送到发件端服务器(即发件人邮箱所对应的服务器) 4、发件端服务器使用SMTP把邮件发送到接收端服务器(即收件人所对应的服务器) 5、收件人调用用户代理,用户代理使用POP3接收邮件 6、用户代理解释邮件并呈现给用户 服务器之间的通讯过程 1、发送端服务器(以下简称客户端)与接收端服务器(以下简称服务器)的25号端

POP3 邮局协议-版本3

POP3 邮局协议-版本3 1. 简介 对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际的。例如,一台工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留,并持续运行。同样的,将一台个人计算机长时间连接在IP类型网络上的费用也是可观的(结点缺少的资源被称为“联络性”)。 虽然如此,在这样的小结点上允许管理邮件是十分有用的,并且这些结点经常支持一个用户代理来管理邮件。为解决这一问题,能够支持MTS的结点就为这些不能支持的结点提供了邮件存储功能。邮局协议-版本3就是使这样的工作站可以用一种比较实用的方法来访问存储于服务器上的储存邮件。通常,这意味着工作站可以从服务器上取得邮件,而服务器为它暂时保存邮件。 在下文中,客户主机指的是利用POP3服务的主机,而服务器主机指的是提供POP3服务的主机。 2. 简单说明 在此文档中不指明客户主机如何将邮件送入到传送系统中去。但这里有一个说明:当用户代理需要将信息送到传送系统时,它在接力主机上建立SMTP连接(这些接力主机可以是POP3主机,也可以不是)。 3. 基本操作 初始时,服务器通过侦听TCP端口110开始POP3服务。当客户主机需要使用服务时,它将与服务器主机建立TCP连接。当连接建立后,POP3发送确认消息。 客户和POP3服务器相互(分别)交换命令和响应,这一过程一直要持续到连接终止。 POP3命令由一个命令和一些参数组成。所有命令以一个CRLF对结束。命令和参数由可打印的ASCII字符组成,它们之间由空格间隔。命令一般是三到四个字母,每个参数却可达40个字符长。

POP3响应由一个状态码和一个可能跟有附加信息的命令组成。所有响应也是由CRLF对结束。现在有两种状态码,“确定” ("+OK")和“失败” ("-ERR")。 对于特定命令的响应是由许多字符组成的。在这些情况中,下面一一表述:在发送第一行响应和一个CRLF之后,任何的附加信息行发送,他们也由CRLF对结束。当所有信息发送结束时,发送最后一行,包括一个结束字符(十进制码46,也就是“.”)和一个CRLF对。如果信息中的任何一行以结束字符开始,此行就是通过在那一行预先装入结束而进行字符填充的。因此,多行响应由五个 CRLF.CRLF 结束。当检测多行响应时,客户检测以确认此行是否以结束字符开始。如果是的,而且其后的字符不是CRLF,此行的第一个字符(结束字符)将被抛弃;如果其后紧跟CRLF,从POP服务器来的响应终止,包括.CRLF 的行也不被认为是多行响应的一部分了。 在生命周期中,POP3会话有几个不同的状态。一旦TCP连接被打开,而且POP3服务器发送了确认信息,此过程就进入了“确认”状态。在此状态中,客户必须向POP3服务器确认自己是其的客户。一旦确认成功,服务器就获取与客户邮件相关的资源,此时这一过程进入了“操作”状态。在此状态中,客户提出服务,当客户发出QUIT命令时,此过程进入了“更新”状态。在此状态中,POP3服务器释放在“操作”状态中取得的资源,并发送消息,终止连接。 POP3服务器可以拥有一个自动退出登录的记时器。此记时器必须至少可以记录10分钟。这样从客户发送的消息才可能刷新此记时器。当记时器失效时,POP3会话并不进入“更新”状态,而是关闭TCP连接,而且不删除任何消息,不向客户发送任何响应。 4. “确认”状态 一时TCP连接由POP3客户打开,POP3服务器发送一个单行的确认。这个消息可以是由CRLF结束的任何字符。例如,它可以是: S: +OK POP3 server ready

FTP协议、SMTP协议、POP3协议、HTTP协议、SNMP协议、NNTP协议

FTP协议、SMTP协议、POP3协议、HTTP协议、SNMP协议、NNTP协议 1.FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP 协议的服务器相连,访问服务器上的大量程序和信息。 2.SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转发出的电子邮件。 3.POP3(Post Office Protocol 3)即邮局协议的第3个版本,它是规定个人计算机如何连接到互联网上的邮件服务器进行收发邮件的协议。它是因特网电子邮件的第一个离线协议标准,POP3协议允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时根据客户端的操作删除或保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。POP3协议是TCP/IP协议族中的一员,,由RFC 1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件. 4.超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP 最初的目的是为了提供一种发布和接收HTML页面的方法。在Internet上的Web 服务器上存放的都是超文本信息,客户机需要通过HTTP协议传输所要访问的超文本信息。HTTP包含命令和传输信息,不仅可用于Web访问,也可以用于其他因特网/内联网应用系统之间的通信,从而实现各类应用资源超媒体访问的集成。 5.SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。SNMP的体系结构是围绕着以下四个概念和目标进行设计的:保持管理代理(agent)的软件成本尽可能低;最大限度地保持远程管理的功能,以便充分SNMP工作原理利用Internet 的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP体系本身安全性的目标。 6.NNTP即Network News Transport Protocol的缩写,中文释义:(RFC-977)网络新闻传输协议.这是一个主要用于阅读和张贴新闻文章(俗称为“帖子”,比较正式的是“新闻组邮件”)到Usenet上的Internet应用协议,这个协议也负责新闻在服务器间的传送.NNTP协议是由加州大学圣迭戈分校的Brian Kantor和加州大学伯克利分校的Phil Lapsley发明的.其他为此协议贡献过的人包贝勒医学院的

SMTP POP3协议整理

邮件协议整理 写在前面 最开始的邮件传输是根据SMTP实现的,但由于历史原因,Internet上的很多网关不能正确传输8 bit内码的字符,比如汉字等。所以出现了对邮件内容编码的需要。这样,在邮件协议中除了smtp、pop外,又增加了与编码相关的MIME。 概括地说,smtp、pop与邮件的接收、发送过程相关,这两者负责邮件的传输;而MIME 与邮件内容(这里,邮件内容包括发件人信息、收件人/抄送人信息、邮件正文、附件)相关,约定了被传输邮件的格式。可以这样理解,smtp、pop完成了邮差的工作,mime解决了信件(包括信封)格式的问题。没有mime之前,邮差只能给美国人送邮件;有了mime 之后,邮差可以提供国际快递业务了。 1.Smtp SMTP(Simple Mail Transfer Protocol):简单邮件传输协议,是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。 关于SMTP的详细介绍参考rfc821,https://www.doczj.com/doc/ab1668803.html,/html/rfc821 Rfc2821,https://www.doczj.com/doc/ab1668803.html,/html/rfc2821 验证过程 >:auth login ---进行用户身份认证 <:334 VXNlcm5hbWU6 ---BASE64编码“Username:” >:Y29zdGFAYW1heGl0Lm5ldA== ----发送BASE64编码的用户名 <:334 UGFzc3dvcmQ6 ---BASE64编码"Password:" >:MTk4MjIxNA== ---客户端发送BASE64编码的密码 <:235 auth successfully ---成功 客户端命令: HELO/EHLO 向服务器发出请求 AUTH LOGIN 用户身份认证 MAIL FROM: 发件人信息, RCPT TO: 收件人信息,告诉服务器邮件发送给谁, 可重复多次,发送给多个收件人 DA TA 邮件内容 QUIT 本次请求结束 服务器返回值: 220 Service ready 221 Service closing transmission channel

pop3协议分析

POP3协议分析 分类:protocol 2012-08-20 14:25 206人阅读评论(0) 收藏举报服务器邮件服务器文档commandexpressuser 目录(?)[+] POP3协议分析 第1章.POP3概述 POP3全称为Post Office Protocol version3,即邮局协议第3版。它被用户代理用来邮件服务器取得邮件。POP3采用的也是C/S通信模型,对应的RFC文档为RFC1939。该协议非常简单,所以我们只重点介绍其通信过程,而相关的一些概念和术语请参考RFC文档或另外一篇文章《SMTP协议分析》 第2章.POP3详解 2.1.通信过程 用户从邮件服务器上接收邮件的典型通信过程如下。 1)用户运行用户代理(如Foxmail, Outlook Express)。 2)用户代理(以下简称客户端)与邮件服务器(以下简称服务器端)的110端口建立TCP连接。 3)客户端向服务器端发出各种命令,来请求各种服务(如查询邮箱信息,下载某封邮件等)。 4)服务端解析用户的命令,做出相应动作并返回给客户端一个响应。 5)3)和4)交替进行,直到接收完所有邮件转到步骤6),或两者的连接被意外中断而直接退出。 6)用户代理解析从服务器端获得的邮件,以适当地形式(如可读)的形式呈现给用户。其中2)、3)和4)用POP3协议通信。可以看出命令和响应是POP3通信的重点,我们将予以重点讲述。 2.2.命令和响应 2.2.1.格式 POP3的命令不多,它的一般形式是:COMMAND [Parameter] 。其中COMMAND是ASCII 形式的命令名,Parameter是相应的命令参数,是回车换行符(0DH, 0AH)。 服务器响应是由一个单独的命令行组成,或多个命令行组成,响应第一行“+OK”或“-ERR”开头,然后再加上一些ASCII文本。“+OK”和“-ERR”分别指出相应的操作状态是成功的还是失败的。

Wireshark抓包分析POP3和SMTP协议

Wireshark抓包分析POP3和SMTP协议 一、实验目的 1.初步掌握Wireshark的使用方法,熟悉抓包流程; 2.通过对Wireshark抓包实例进行分析,加强对POP3协议和 SMTP协议的理解; 3.培养动手实践能力和自主学习自主探究的精神。 二、实验要求 利用Wireshark软件抓包,得到邮箱登录的信息和发送邮件的信息,并根据所抓包对POP3协议和SMTP协议进行分析。 三、实验环境 1.系统环境:Windows 8专业版 2.邮件接收:Foxmail 6正式版 3.Wireshark:V1. 4.9 四、实验过程 (一)邮箱登录及邮件接收过程(POP3协议) 1.POP3协议简介[1] POP3(Post Office Protocol 3)即邮局协议的第3个版本,它是规定个人计算机如何连接到互联网上的邮箱服务器进行收 发邮件的协议。它是因特网电子邮件的第一个离线协议标准, POP3协议允许用户从服务器上把邮件存储到本机主机上,同时根据客户端的操作删除或保存在邮箱服务器上的邮件。而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮

件的。POP3协议是TCP/IP协议族中的一员,由RFC 1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。 2.实验过程 (1)准备工作 ●申请一个126邮箱 ●安装并配置Foxmail,将接收和发送邮件的服务器分别 设置为POP3服务器和SMTP服务器 ●在安装好的Foxmail上添加申请到的126邮箱账户 添加后的邮箱信息 (2)打开Wireshark软件,选择正在联网的网卡,开始抓包。

POP3邮件接收协议命令使用详解

POP3 (Post Office Protocol 3) 即邮局协议的第3 个版本,它规定怎样将个人计算机连接到Internet 的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准, POP3 允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3 协议的接收邮件服务器,用来接收电子邮件的。 POP3 命令包括: USER username 认证用户名 PASS password 认证密码认证,认证通过则状态转换 APOP name,digest 认可一种安全传输口令的办法,执行成功导致状态转换,请参见RFC 1321 。 STAT 处理请求server 回送邮箱统计资料,如邮件数、邮件总字节数 UIDL n 处理server 返回用于该指定邮件的唯一标识,如果没有指定,返回所有的。 LIST n 处理server 返回指定邮件的大小等 RETR n 处理server 返回邮件的全部文本 DELE n 处理server 标记删除,QUIT 命令执行时才真正删除 RSET 处理撤消所有的DELE 命令 TOP n,m 处理返回n 号邮件的前m 行内容,m 必须是自然数 NOOP 处理server 返回一个肯定的响应 QUIT 希望结束会话。如果server 处于”处理” 状态,则现在进入”更新”状态,删除那些标记成删除的邮件。如果server 处于”认可”状态,则结束会话时server 不进入”更新”状态。 使用telnet 连接本地pop服务器收信 例如:安装邮件服务器IP 是127.0.0.1(蓝色字体内容由客户端输入,红色字体内容是服务返回的,黑色为说明内容) telnet 127.0.0.1 110 —————————–使用telnet 命令连接服务器110 端口 Trying 127.0.0.1… ——————————正在连接服务器110 端口 Connected to 127.0.0.1. ————————–连接服务器110 端口成功 +OK Mail Server POP3 ready user username ——————————————输入用户名, username 为具体的用户名 +OK —————————————————- 执行命令成功 pass password ——————————————输入用户密码,password 为具体的密码 +OK 2 messages —————————————–密码认证通过 (-ERR authorization failed —————————–密码认证失败) stat —————————————————邮箱状态 +OK 2 6415 ——————————————— 2 为该信箱总邮件数,6415 为总字节数 list —————————————————列出每封邮件的字节数 +OK —————————————————- 执行命令成功,开始显示,左边为邮件的序号,右边为该邮件的大小 1 537 ————————————————–第1 封邮件,大小为537 字节 2 5878 ————————————————- 第2 封邮件,大小为5878 字节 . top 1 ————————————————–接收第1 封邮件 +OK —————————————————- 接收成功, 返回第1 封邮件头

POP3协议详细分析

1.简介 对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际的。例如,一台 工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留, 并持续运行。同样的,将一台个人计算机长时间连接在IP类型网络上的费用也是可观的 (结点缺少的资源被称为"联络性")。 虽然如此,在这样的小结点上允许管理邮件是十分有用的,并且这些结点经常支持一 个用户代理来管理邮件。为解决这一问题,能够支持MTS的结点就为这些不能支持的结点提 供了邮件存储功能。邮局协议-版本3就是使这样的工作站可以用一种比较实用的方法来访问 存储于服务器上的储存邮件。通常,这意味着工作站可以从服务器上取得邮件,而服务器为 它暂时保存邮件。 在下文中,客户主机指的是利用POP3服务的主机,而服务器主机指的是提供POP3服务的 主机。 2.简单说明 在此文档中不指明客户主机如何将邮件送入到传送系统中去。但这里有一个说明:当用 户代理需要将信息送到传送系统时,它在接力主机上建立SMTP连接(这些接力主机可以是 POP3主机,也可以不是)。 3.基本操作 初始时,服务器通过侦听TCP端口110开始POP3服务。当客户主机需要使用服务时,它将 与服务器主机建立TCP连接。当连接建立后,POP3发送确认消息。客户和POP3服务器相互(分别)交换命令和响应,这一过程一直要持续到连接终止。 POP3命令由一个命令和一些参数组成。所有命令以一个CRLF对结束。命令和参数由可打 印的ASCII字符组成,它们之间由空格间隔。命令一般是三到四个字母,每个参数却可达40个 字符长。 POP3响应由一个状态码和一个可能跟有附加信息的命令组成。所有响应也是由CRLF对结 束。现在有两种状态码,"确定"("+OK")和"失败"("-ERR")。 对于特定命令的响应是由许多字符组成的。在这些情况中,下面一一表述:在发送第一 行响应和一个CRLF之后,任何的附加信息行发送,他们也由CRLF对结束。当所有信息发送结束时,发送最后一行,包括一个结束字符(十进制码46,也就是".")和一个CRLF对。如果信息 中的任何一行以结束字符开始,此行就是通过在那一行预先装入结束而进行字符填充的。因此, 多行响应由五个CRLF.CRLF结束。当检测多行响应时,客户检测以确认此行是否以结束字符开 始。如果是的,而且其后的字符不是CRLF,此行的第一个字符(结束字符)将被抛弃;如果其 后紧跟CRLF,从POP服务器来的响应终止,包括.CRLF的行也不被认为是多行响应的一部分了。 在生命周期中,POP3会话有几个不同的状态。一旦TCP连接被打开,而且POP3服务器发送了确认信息,此过程就进入了"确认"状态。在此状态中,客户必须向POP3服务器确认自己是其的 客户。一旦确认成功,服务器就获取与客户邮件相关的资源,此时这一过程进入了"操作"状态。 在此状态中,客户提出服务,当客户发出QUIT命令时,此过程进入了"更新"状态。在此状态中,POP3服务器释放在"操作"状态中取得的资源,并发送消息,终止连接。 POP3服务器可以拥有一个自动退出登录的记时器。此记时器必须至少可以记录10分钟。这样从客户发送的消息才可能刷新此记时器。当记时器失效时,POP3会话并不进入"更新"状态,而是

相关主题
文本预览
相关文档 最新文档