- 论坛徽章:
- 2
|
本文档的状态:
本文档提出了一个实现工作站从邮件服务器动态收取邮件的简单
协议
。本文档提出了一个用于ARPA(Advanced Research Projects Agency (美国国防部)高级研究计划)的Internet社区的
协议
。它需要进一步进行讨论和建议,以进行进一步的改进。
1. 介绍:
Post Office Protocol (POP)的目的是允许工作站用户从邮件服务器中收取邮件。而工作站发送邮件到邮件服务器预期经由Simple Mail Transfer Protocol(
SMTP
)
协议
实现。了解更进一步的信息,请参阅
RFC
-821,
RFC
-822。
本文档处于测试阶段,并且本
协议
是基于
TCP
实现的。
2.
协议
:
本
协议
为:邮件服务器开始侦听连接。当连接被打开时,服务器发送一个问候信息并且等待命令。当命令接收到时,服务器执行并且返回一个回应。
客户端打开一个连接。等待问候信息。然后发送USER 和 PASS 命令以确认到达邮箱的权限。客户端发送RDEL命令(从邮箱中阅读并且删除所有的消息)或者RETR 命令(仅仅简单地从邮箱中阅读消息)开始一个邮件阅读处理。服务器打开邮箱,加锁。然后向客户端返回邮箱中所有消息的字符数。客户端发送RCEV命令来请求邮件数据。服务器返回相应的邮件数据。当所有的邮件全部接收到时,客户端发送RCVD命令。如果处理开始是客户端发送的事RDEL命令,那么服务器将在此时删除所有的邮件。不论在那种情况,服务器将关闭邮箱并且解锁。客户端发送QUIT命令来终止会话。
一般情况:
客户端 服务器
---------- ------------
侦听连接
打开连接 -->
* +OK
等待命令
USER Fred -->
* +OK
等待命令
PASS password -->
* +OK
等待命令
(打开并且对邮箱加锁)
RDEL mailbox -->
* #xxx
等待命令
RCEV -->
* 发送一个邮件的拷贝
等待命令
RCVD --> (从邮箱中删除邮件,解锁并关闭邮箱)
* +OK
等待命令
QUIT -->
* +OK
关闭连接 --> | S |--+-->| C |------>| S |------>| C |------>| S |---->+
| | ^ | | USER | | | | PASS | | |
+---+ | +---+ +---+ +---+ +---+ |
| | -ERR | -ERR |
| V V |
+| | QUIT | | +OK |
| C |------>| S |----->Close |
+----->| | | | |
^ +---+ +---+ |
| V
+| C |---->| S |----->| C |---->| S |---->| C |---->| S |--->+
| | | Or | | | | | | | | | | ^
| +---+ RDEL+---+ +---+ +---+ +---+ +---+ |
| | -ERR | | | | -ERR |
| V | V | | |
++
| V
| +---+ +---+
| | | RSET | | +OK
+----->| C |------>| S |----->+
| | | | | |
| +---+ +---+ |
| V
+| C |------>| S |----->+
| | | |
+---+ +---+
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/4206/showart_506551.html |
|