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

📄 rfcrfc937.txt

📁 本程序为在linux下实现FTP传输文件的实现
💻 TXT
📖 第 1 页 / 共 3 页
字号:
        READ  +<---+-------+                             
                    ^     |                              
                    |     |  =CCC                        
              data  |     |  ----                        
              ----  |     |  RETR                        
              ack   |     |                              
                    |     V                              
                   +-------+                             
                   | XFER  |                             
                   +-------+                             
   


3. 服务器流程图


   
                       +<----------------------+  Close  
                       |                       |  -----  
               Listen  |                       |  Close  
                       V                       |         
                   +-------+                  +-------+  
                   | LSTN  |                  | DONE  |  
                   +-------+                  +-------+  
                       |                          ^      
                       |  Open                    |      
                       |  -----                   |      
                       |  Greet                   |      
                       |                          |      
                       |           QUIT           |      
                       V           -----          |      
                   +-------+       + BYE          |      
                   | AUTH  |--------------------->+      
                   +-------+                      ^      
                       |                          |      
                       |  HELO                    |      
                       |  ----                    |      
                       |  #NNN                    |      
                       |                          |      
                       |           QUIT           |      
                       V           -----          |      
        FOLD  +--->+-------+       + BYE          |      
        ----  ^    | MBOX  |--------------------->+      
        #NNN  +<---+-------+                      ^      
                    ^     |                       |      
                    |     |  READ                 |      
              FOLD  |     |  ----                 |      
              ----  |     |  =CCC                 |      
              #NNN  |     |        QUIT           |      
                    |     V        -----          |      
        READ  +--->+-------+       + BYE          |      
        ----  ^    | ITEM  |--------------------->+      
        =CCC  +<---+-------+                             
                    ^     |                              
                    |     |  RETR                        
              ack   |     |  ----                        
              ----  |     |  data                        
              =CCC  |     |                              
                    |     V                              
                   +-------+                             
                   | NEXT  |                             
                   +-------+                             
4. 通信流程图

   
   +----+                                                              
   |CALL|<------------------------------------------------------------+
   |LSTN|                                                             ^
   +----+                                                             |
    | Greet                                                           |
    |                                                                 |
    |  +----------------------------------------------------->+       |
    |  ^ QUIT                                                 |       |
    V  |                                                      V       |
   +----+        +----+                                      +----+   |
   |CALL| HELO   |NMBR|                                      |EXIT|   |
   |AUTH|------->|AUTH|                                      |AUTH|   |
   +----+        +----+                                      +----+   |
                  | #NNN                                   + Bye |    |
                  |                                              |    |
                  |  +------------------------------------>+     |    |
                  |  ^ QUIT                                |     |    |
                  V  |                                     V     |    |
            +--->+----+        +----+                     +----+ |    |
       FOLD ^    |NMBR| READ   |SIZE|                     |EXIT| |    |
       ---- |    |MBOX|------->|MBOX|                     |MBOX| |    |
       #NNN +<---+----+        +----+                     +----+ |    |
                     ^           | =CCC                 + Bye |  |    |
                     |           |                            |  |    |
                FOLD +<--------+ | +------------------->+     |  |    |
                ----           ^ | ^ QUIT               |     |  |    |
                #NNN           | V |                    V     |  |    |
                         +--->+-----+        +----+    +----+ |  |    |
                    READ ^    |SIZE | RETR   |XFER|    |EXIT| |  |    |
                    ---- |    | ITEM|------->|ITEM|    |ITEM| |  |    |
                    =CCC +<---+-----+        +----+    +----+ |  |    |
                                 ^             | data      |  |  |    |
                                 |             |           |  |  |    |
                            =CCC |             V     + Bye |  |  |    |
                               +----+        +----+        |  |  |    |
                               |SIZE|    Ack |XFER|        |  |  |    |
                               |NEXT|<-------|NEXT|        |  |  |    |
                               +----+        +----+        |  |  |    |
                                                           |  |  |    |
                                                           |  |  |    |
                                                           V  V  V    |
                                                          +-------+   |
                                                          | EXIT  |-->+
                                                          | DONE  |    
                                                          +-------+    


5. 用户策略表

   
          |            STATE                 |
   -------+----------------------------------|
   INPUT  | CALL | NMBR | SIZE | XFER | EXIT |
   -------+----------------------------------|
   Greet  |  2   |  1   |  1   |  1   |  6   |
   -------+----------------------------------|
   #NNN   |  1   |  3   |  1   |  1   |  6   |
   -------+----------------------------------|
   =CCC   |  1   |  1   |  4   |  1   |  6   |
   -------+----------------------------------|
   data   |  1   |  1   |  1   |  5   |  6   |
   -------+----------------------------------|
   + Bye  |  1   |  1   |  1   |  1   |  6   |
   -------+----------------------------------|
   Close  |  1   |  1   |  1   |  1   |  6   |
   -------+----------------------------------|
   other  |  1   |  1   |  1   |  1   |  6   |
   -------+----------------------------------|
   Timeout|  1   |  1   |  1   |  1   |  6   |
   -------+----------------------------------|
   
   用户行为
1.	这是一个无用信息.发送"QUIT"命令,进入EXIT状态.
2.	(a)如果greeting成功,发送"HELO",进入NMBR状态.
(b)否则,发送"QUIT",进入EXIT状态.
3.	如果用户选定文件夹且NNN>0,发送"READ",并进入SIZE状态..
   如果用户选定文件夹且NNN=0,发送"QUIT",并进入EXIT状态.
   如果用户重新选定文件夹,发送"FOLD",并返回NMBR状态.
4.	如果用户选定邮件且CCC>0,发送"RETR",并进入XFER状态.
如果用户选定邮件且CCC=0,发送"QUIT",并进入EXIT状态.
如果用户重新选定邮件,发送"READ",并进入SIZE状态.
5.	如果用户想保存邮件,发送"ACKS",并进入SIZE状态.
如果用户想删除邮件,发送"ACKD",并进入SIZE状态.
如果用户想重发邮件,发送"NACK",并进入SIZE状态.           
         6. 关闭连接. 
      
6. 服务器策略表
              |              STATE                       
   -------+----------------------------------------- 
   INPUT  | LSTN | AUTH | MBOX | ITEM | NEXT | DONE |
   -------+-----------------------------------------|
   Open   |  2   |  1   |  1   |  1   |  1   |  1   |
   -------+-----------------------------------------|
   HELO   |  1   |  3   |  1   |  1   |  1   |  1   |
-------+-----------------------------------------|
   FOLD   |  1   |  1   |  5   |  5   |  1   |  1   |
   -------+-----------------------------------------|
   READ   |  1   |  1   |  6   |  6   |  1   |  1   |
   -------+-----------------------------------------|
   RETR   |  1   |  1   |  1   |  7   |  1   |  1   |
   -------+-----------------------------------------|
ACKS   |  1   |  1   |  1   |  1   |  8   |  1   |
   -------+-----------------------------------------|
   ACKD   |  1   |  1   |  1   |  1   |  8   |  1   |
   -------+-----------------------------------------|
   NACK   |  1   |  1   |  1   |  1   |  8   |  1   |
   -------+-----------------------------------------|
   QUIT   |  1   |  4   |  4   |  4   |  1   |  1   |
-------+-----------------------------------------|
   Close  |  1   |  1   |  1   |  1   |  1   |  9   |
   -------+-----------------------------------------|
   other  |  1   |  1   |  1   |  1   |  1   |  1   |
   -------+-----------------------------------------|
   Timeout|      |  1   |  1   |  1   |  1   |  1   |
   -------+-----------------------------------------|
服务器行为
1.	这是一个无用信息.发送"-error",并断开连接.
2.	发送greeting ,进入AUTH状态.
3.	如果是认证用户,发送"#nnn",进入MBOX状态.
否则,发送"-error",并断开连接.
4.发送“+Bye”,进入DONE状态.
5.发送"+NNN",进入MBOX状态.
6.	发送"=CCC",进入ITEM状态.
7.	如果邮件存在,传输数据,进入NEXT状态.否则,断开连接.
8.	回答命令ACKS/ACKD/NACK,进入ITEM状态.
9.	断开连接.
七: 感谢
   非常感谢RFC 918的邮局协议的第一版和兴趣小组提供的POP2协议的草案.
八: 参考文献:
[1]  Postel, J., "Simple Mail Transfer Protocol", RFC 821,
   USC/Information Sciences Institute, August 1982.

   [2]  Crocker, D., "Standard for the Format of ARPA-Internet Text
   Messages", RFC 822, University of Delaware, August 1982.
[3]  Reynolds, J.K., "Post Office Protocol", RFC 918, USC/Information
   Sciences Institute, October 1984.

   [4]  Reynolds, J.K., and J. Postel, "Assigned Numbers", RFC 923,
   USC/Information Sciences Institute, October 1984.

RFC 937  POST OFFICE PROTOCOL - VERSION 2         邮局协议 (版本2)


1
RFC文档中文翻译计划

⌨️ 快捷键说明

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