DATA
This is the message to be sent to the company
? QUIT命令:结束报文。例如
QUIT
? RSET命令:该命令使当前的邮件事务异常中止,所存储的关于发信人收信人
的信息都被删除,连接将被复位。例如 RSET
? VRFY命令:该命令用来验证收信人的地址,它作为变量发送出去。发送端可
以请接收端证实一个名字是否标识一个有效的收信人。例如 VRFY:wangqm@bjut.edu.cn
? NOOP命令:该命令由客户使用,用来检查收信人的状态,它需要收信人的回
答。例如
NOOP
对于这些命令的顺序有一定的限制。对话的第一个命令必须是HELLO命令,此命令在此后的会话中也可以使用。如果HELLO命令的参数不可接受,必须由返回一个501失败应答,同时接收到的SMTP必须保持在与刚才一致的状态下。
(2) SMTP响应
对SMTP命令的响应是多样的,它确定了在邮件传输过程中请求和处理的同步,也保证了发送SMTP知道接收SMTP的状态。每个命令必须有且只有一个响应。
SMTP响应由三位数字组成,其后跟一些文本。数字帮助决定下一个应该进入的状态,而文本对人是有意义的。三位的响应已经包括了足够的信息,不用再阅读文本,文本可以直接抛弃或者传递给用户。特别的是,文本是与接收和环境相关的,所以每次接收到的文本可能不同。在附录E中可以看到全部的响应码。正规的情况下,响应由下面序列构成:三位的数字,
响应是从服务器发送到客户端的。响应是一个3位十进制数字,后面可以跟着附加的文本信息。第一位数字的意义如下:
? 2yx(正面完成回答):第一位数字是2(数字1现在已不使用),就表示所请
求的命令已经成功地完成了,一个新的命令可以开通始。 ? 3yx(正面中间回答):第一位数字是3,就表示所请求的命令已经被接受,但在完成请求的命令之前,收信人需要更多的信息。 ? 4yx(过渡负面完成回答):第一位数字是4,就表示所请求的命令已经被拒
绝,但差错条件是暂时的。命令可以重新发送。
第 8 页 共 15 页
? 5yx(永久负面完成回答):第一位数字是5,就表示所请求的命令已经被拒
绝。命令不能重新发送。
第2位和第3位数字提供关于响应的更详细的内容,如表1所示
类别 代码 221 214 正面完成回答 220 221 250 251 正面中间回答 354 421 过渡负面完成回答 450 451 452 邮箱不可用 命令异常中止;本地差错 命令异常中止;存储器不足 表1 响应信息表
说明 系统状态或求助回答 求助报文 服务就绪 服务关闭传输信道 请求命令完成 用户不是本地的;报文将被转发 开始邮件传输 服务不可用 类别 代码 500 501 502 503 504 说明 语法差错;不能识别的命令 语法的参数或变量差错 命令未实现 命令序列不正确 命令暂时未实现 命令未执行;邮箱不可用 用户非本地的 所请求的动作异常中止;存储器位置超过 所请求的动作未发生;邮箱名不 允许用 事务失败 永久负面完成回答 550 551 552 553 554 (3) SMTP数据分析
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
表明服务器准备就绪。
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
第 9 页 共 15 页
此命令是标识自己的
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
此命令是表明是发件人的地址Mail From
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
此命令是表明服务器的响应
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
此命令是表明接收人的地址RCPT TO
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
此命令是服务器的响应
从上图箭头所指向的数据开始就是SMTP的数据,其所代表的内容为:
此命令是表明要传数据包了
第 10 页 共 15 页
2.2 介绍POP3 协议
POP3(Post Office Protocol Version 3)是电子邮件接收方向电子邮件服务器发出接收邮件请求时使用的单向传输协议,TCP/IP专门设计了一个提供对电子邮件信箱进行远程存取的协议,它允许用户的邮箱安置在某个运行邮件服务器程序的计算机(邮件服务器)上,并允许用户从起个人计算机对邮箱的内容进行存取。默认使用TCP端口号为110。其作用是:当用户计算机与支持POP协议的电子邮件服务器连接时,把存储在该服务器的电子邮箱中的邮件准确无误地下载到用户的计算机中。
POP3属于离线式协议,即不能对邮件进行在线操作,必须下载到本地才能进行处理。离线工作方式适合于那些从固定计算机上接收邮件的用户使用,因为邮件必须从服务器上删除。
POP3很简单,但是功能有限。客户POP3软件安装在收信人的计算机上,服务器POP3软件安装在邮件服务器上。当客户要从邮件服务器的邮箱中下载电子邮件时,客户就开始读取邮件。客户在TCP端口110打开到服务器的连接。然后发送用户名和口令,访问邮箱。
(1) POP3 协议命令
POP3与SMTP一样都是请求响应协议,命令与响应也都是用NVT ASCII格式的文本表示。
POP3规定每条命令均由命令和参数两部分组成,每条命令都以回车(CR)换行(LF)结束。命令和参数之间由空格间隔。
POP3服务器回送的响应信息由状态码和附加信息(可选)组成。所有响应也以回车(CR)换行(LF)结束POP3响应由一个状态码和其后的附加信息组成,只有两种状态码:“+OK”(正确)和“-ERR”(失败)
在POP3中,客户端与服务器连接时有三种处理状态:身份验证状态、事务处理状态、更新状态。
当客户端连接到服务器的110端口,并建立起TCP连接后,即进入身份验证状态,需要使用USER和PASS命令将用户名和密码提供给服务器。
通过身份验证之后,即转入事务处理状态,这时客户端可以发送POP3命令进行相应操作,服务器会接收命令并做出响应。
操作完成之后,客户端发出QUIT命令,则进入更新状态,服务器确认用户的操作,更新邮件存储区,同时关闭客户端与服务器之间的连接。
第 11 页 共 15 页
相关推荐: