⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 简单邮件传输协议.htm

📁 internet协议集
💻 HTM
📖 第 1 页 / 共 5 页
字号:
      &lt;mailbox&gt; "&gt;"</P>
      <P align=justify>&lt;a-d-l&gt; ::= &lt;at-domain&gt; | &lt;at-domain&gt; 
      "," &lt;a-d-l&gt;</P>
      <P align=justify>&lt;at-domain&gt; ::= "@" &lt;domain&gt;</P>
      <P align=justify>&lt;domain&gt; ::= &lt;element&gt; | &lt;element&gt; "." 
      &lt;domain&gt;</P>
      <P align=justify>&lt;element&gt; ::= &lt;name&gt; | "#" &lt;number&gt; | 
      "[" &lt;dotnum&gt; "]"</P>
      <P align=justify>&lt;mailbox&gt; ::= &lt;local-part&gt; "@" 
      &lt;domain&gt;</P>
      <P align=justify>&lt;local-part&gt; ::= &lt;dot-string&gt; | 
      &lt;quoted-string&gt;</P>
      <P align=justify>&lt;name&gt; ::= &lt;a&gt; &lt;ldh-str&gt; 
      &lt;let-dig&gt;</P>
      <P align=justify>&lt;ldh-str&gt; ::= &lt;let-dig-hyp&gt; | 
      &lt;let-dig-hyp&gt; &lt;ldh-str&gt;</P>
      <P align=justify>&lt;let-dig&gt; ::= &lt;a&gt; | &lt;d&gt;</P>
      <P align=justify>&lt;let-dig-hyp&gt; ::= &lt;a&gt; | &lt;d&gt; | "-"</P>
      <P align=justify>&lt;dot-string&gt; ::= &lt;字符串&gt; | &lt;字符串&gt; "." 
      &lt;dot-string&gt;</P>
      <P align=justify>&lt;字符串&gt; ::= &lt;字符&gt; | &lt;字符&gt; &lt;字符串&gt;</P>
      <P align=justify>&lt;quoted-string&gt; ::= """ &lt;qtext&gt; """</P>
      <P align=justify>&lt;qtext&gt; ::= "\" &lt;x&gt; | "\" &lt;x&gt; 
      &lt;qtext&gt; | &lt;q&gt; | &lt;q&gt; &lt;qtext&gt;</P>
      <P align=justify>&lt;字符&gt; ::= &lt;c&gt; | "\" &lt;x&gt;</P>
      <P align=justify>&lt;dotnum&gt; ::= &lt;snum&gt; "." &lt;snum&gt; "." 
      &lt;snum&gt; "." &lt;snum&gt;</P>
      <P align=justify>&lt;number&gt; ::= &lt;d&gt; | &lt;d&gt; 
      &lt;number&gt;</P>
      <P align=justify>&lt;CRLF&gt; ::= &lt;CR&gt; &lt;LF&gt;</P>
      <P align=justify>&lt;CR&gt; ::= 回车符(ASCII码13) &lt;LF&gt; ::= 
(ASCII码10)</P>
      <P align=justify>&lt;SP&gt; ::= 空格(ASCII码32) &lt;snum&gt; 
      ::=由一个,两个或三个数字组成的介于0-255之间的数字</P>
      <P align=justify>&lt;a&gt; ::= 所有A-Z的52个大小写英文字母</P>
      <P align=justify>&lt;c&gt; ::= 128个ASCII字符,但不包括空格和特殊字符</P>
      <P align=justify>&lt;d&gt; ::= 0-9数字</P>
      <P align=justify>&lt;q&gt; ::=不包括&lt;CR&gt;,&lt;LF&gt;,"或\的128个ASCII字符</P>
      <P align=justify>&lt;x&gt; ::=所有128个ASCII字符</P>
      <P align=justify>&lt;special&gt; ::= "&lt;" | "&gt;" | "(" | ")" | "[" | 
      "]" | "\" | "." | "," | ";" | ":" | "@" """ 或控制字符</P>
      <P align=justify> </P>
      <P align=justify>注意: 
      "\"是一个转意字符,它表示在其后的字符代表另外的意义。例如"Joe\,Smith"用于表示单独一个由逗号分隔的用户名。主机通常由转化为地址的名称代表。注意:域的名称元素是正式的名称,不能够使用昵称或假名。</P>
      <P 
      align=justify>有时候名称的转变机制可能不知道主机,这就造成了通信的阻塞。为了解决这个问题,可以采取两种方法:一种方法是:在"#"后加入一个十进制数表示主机地址;另一种方法是在其后加入32位的IP地址,IP地址的形式是由句号分隔的四个介于0-255之间的十进制数。时间戳行和返回路径行的格式通常由下面定义:</P>
      <P align=justify> </P>
      <P align=justify>&lt;return-path-line&gt; ::= "Return-Path:" 
      &lt;SP&gt;&lt;reverse-path&gt;&lt;CRLF&gt;</P>
      <P align=justify>&lt;time-stamp-line&gt; ::= "Received:" &lt;SP&gt; 
      &lt;stamp&gt; &lt;CRLF&gt;</P>
      <P align=justify>&lt;stamp&gt; ::= &lt;from-domain&gt; &lt;by-domain&gt; 
      &lt;opt-info&gt; ";" &lt;daytime&gt;</P>
      <P align=justify>&lt;from-domain&gt; ::= "FROM" &lt;SP&gt; &lt;域&gt; 
      &lt;SP&gt;</P>
      <P align=justify>&lt;by-domain&gt; ::= "BY" &lt;SP&gt; &lt;域&gt; 
      &lt;SP&gt;</P>
      <P align=justify>&lt;opt-info&gt; ::= [&lt;via&gt;] [&lt;with&gt;] 
      [&lt;id&gt;] [&lt;for&gt;]</P>
      <P align=justify>&lt;via&gt; ::= "VIA" &lt;SP&gt; &lt;连接&gt; 
&lt;SP&gt;</P>
      <P align=justify>&lt;with&gt; ::= "WITH" &lt;SP&gt; &lt;协议&gt; 
      &lt;SP&gt;</P>
      <P align=justify>&lt;id&gt; ::= "ID" &lt;SP&gt; &lt;字符串&gt; &lt;SP&gt;</P>
      <P align=justify>&lt;for&gt; ::= "FOR" &lt;SP&gt; &lt;路径&gt; 
&lt;SP&gt;</P>
      <P align=justify>&lt;连接&gt; ::= 在网络信息中心注册的连接的标准名称</P>
      <P align=justify>&lt;协议&gt; ::= 在网络中心注册的协议的名称</P>
      <P align=justify>&lt;daytime&gt; ::= &lt;SP&gt; &lt;日期&gt; &lt;SP&gt; 
      &lt;时间&gt;</P>
      <P align=justify>&lt;日期&gt; ::= &lt;日&gt; &lt;SP&gt; &lt;月&gt; &lt;SP&gt; 
      &lt;年&gt;</P>
      <P align=justify>&lt;时间&gt; ::= &lt;小时&gt; ":" &lt;分&gt; ":" &lt;秒&gt; 
      &lt;SP&gt; &lt;时区&gt;</P>
      <P align=justify>&lt;dd&gt; ::= 由一个或两个数字组成的每月1-31日</P>
      <P align=justify>&lt;月&gt; ::= "JAN" | "FEB" | "MAR" | "APR" | "MAY" | 
      "JUN" | "JUL" | "AUG" | "SEP" | "OCT" | "NOV" | "DEC"</P>
      <P align=justify>&lt;年&gt; ::= 由两位数字表示本世界的年代00-99</P>
      <P align=justify>&lt;小时&gt; ::= 每天的24小时,由0到24</P>
      <P align=justify>&lt;分&gt; ::= 每小时的分钟数0-59</P>
      <P align=justify>&lt;秒&gt; ::= 每分钟的秒数0-59</P>
      <P align=justify>&lt;时区&gt; ::= 全球标准时区</P>
      <P align=justify> </P>
      <P 
      align=justify>-------------------------------------------------------------</P>
      <P align=justify>返回路径例子</P>
      <P align=justify>Return-Path: 
      &lt;@CHARLIE.ARPA,@BAKER.ARPA:JOE@ABLE.ARPA&gt;</P>
      <P 
      align=justify>-------------------------------------------------------------</P>
      <P align=justify> </P>
      <P 
      align=justify>-------------------------------------------------------------</P>
      <P align=justify>时间戳行例子</P>
      <P align=justify>Received: FROM ABC.ARPA BY XYZ.ARPA ; 22 OCT 81 09:23:59 
      PDT</P>
      <P align=justify> </P>
      <P align=justify>Received: from ABC.ARPA by XYZ.ARPA via TELENET with 
      X25</P>
      <P align=justify>id M12345 for Smith@PDQ.ARPA ; 22 OCT 81 09:23:59 PDT</P>
      <P 
      align=justify>-------------------------------------------------------------</P>
      <P align=justify> </P>
      <P align=justify>4.2. SMTP响应</P>
      <P 
      align=justify>对SMTP命令的响应是多样的,它确定了在邮件传输过程中请求和处理的同步,也保证了发送SMTP知道接收SMTP的状态。每个命令必须有且只有一个响应。</P>
      <P 
      align=justify>SMTP响应由三位数字组成,其后跟一些文本。数字帮助决定下一个应该进入的状态,而文本对人是有意义的。三位的响应已经包括了足够的信息,不用再阅读文本,文本可以直接抛弃或者传递给用户。特别的是,文本是与接收和环境相关的,所以每次接收到的文本可能不同。在附录E中可以看到全部的响应码。正规的情况下,响应由下面序列构成:三位的数字,&lt;SP&gt;,一行文本和一个&lt;CRLF&gt;,或者也可以是一个多行响应。只有EXPN和HELP命令可以导致多行应答,然而,对所有命令,多行响应都是允许的。</P>
      <P align=justify> </P>
      <P align=justify>4.2.1. REPLY CODES BY FUNCTION GROUPS 500 
      格式错误,命令不可识别(此错误也包括命令行过长)</P>
      <P align=justify>501 参数格式错误</P>
      <P align=justify>502 命令不可实现</P>
      <P align=justify>503 错误的命令序列</P>
      <P align=justify>504 命令参数不可实现</P>
      <P align=justify>211 系统状态或系统帮助响应</P>
      <P align=justify>214 帮助信息</P>
      <P align=justify>220 &lt;domain&gt; 服务就绪</P>
      <P align=justify>221 &lt;domain&gt; 服务关闭传输信道</P>
      <P align=justify>421 &lt;domain&gt; 
      服务未就绪,关闭传输信道(当必须关闭时,此应答可以作为对任何命令的响应)</P>
      <P align=justify>250 要求的邮件操作完成</P>
      <P align=justify>251 用户非本地,将转发向&lt;forward-path&gt;</P>
      <P align=justify>450 要求的邮件操作未完成,邮箱不可用(例如,邮箱忙)</P>
      <P align=justify>550 要求的邮件操作未完成,邮箱不可用(例如,邮箱未找到,或不可访问)</P>
      <P align=justify>451 放弃要求的操作;处理过程中出错</P>
      <P align=justify>551 用户非本地,请尝试&lt;forward-path&gt;</P>
      <P align=justify>452 系统存储不足,要求的操作未执行</P>
      <P align=justify>552 过量的存储分配,要求的操作未执行</P>
      <P align=justify>553 邮箱名不可用,要求的操作未执行(例如邮箱格式错误)</P>
      <P align=justify>354 开始邮件输入,以&lt;CRLF&gt;.&lt;CRLF&gt;结束</P>
      <P align=justify>554 操作失败</P>
      <P align=justify> </P>
      <P align=justify>4.3. 命令和应答序列</P>
      <P 
      align=justify>发送者和接收者之间的通信是一问一答的交替对话形式,由发送者控制。这样,发送发出一条命令,接收者发出一个响应。接收者在发送下一条指令前必须等应答。一个重要的应答是连接应答。在连接完成时,接收者通常会发送220“服务就绪”。发送者在继续发送指令前会等待此应答。注意:每个连接应答必须拥有服务主机的正式名称作为第一部分,其后跟响应码。例如:</P>
      <P align=justify> </P>
      <P align=justify>220 &lt;SP&gt; USC-ISIF.ARPA &lt;SP&gt; Service ready 
      &lt;CRLF&gt;</P>
      <P align=justify> </P>
      <P 
      align=justify>下面列出了成功和失败应答,这些应答必须遵守严格的次序,接收者可以不理会应答中的文本,但是由数字指定的意义和操作和命令应答序列不能更改。命令响应序列:</P>
      <P 
      align=justify>每个命令列出了它可能的应答。使用在可能应答前的前缀“P”表示预备的(未用在SMTP中),“I”表示中间的,“S”表示成功,“F”表示失败,“E”表示错误。如果STMP接收者必须关闭信道,可以对任何命令作出421(服务不可用,关闭传输信道)响应。此表基于下面要讲述的状态图:</P>
      <P align=justify> </P>
      <P align=justify>CONNECTION ESTABLISHMENT(建立连接)</P>
      <P align=justify>S: 220</P>
      <P align=justify>F: 421</P>
      <P align=justify>HELO</P>
      <P align=justify>S: 250</P>
      <P align=justify>E: 500, 501, 504, 421</P>
      <P align=justify>MAIL</P>
      <P align=justify>S: 250</P>
      <P align=justify>F: 552, 451, 452</P>
      <P align=justify>E: 500, 501, 421</P>
      <P align=justify>RCPT S: 250, 251 F: 550, 551, 552, 553, 450, 451, 452 E: 
      500, 501, 503, 421</P>
      <P align=justify>DATA</P>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -