<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 6,comments - 0,trackbacks - 0
    對于FTP標準的一個整理,以便以后方便查找
    摘自
    http://topic.csdn.net/t/20020111/10/471113.htmlbaobao(天下草木皆能當劍)的回答

    ——————————————————————————————————————————————————————————————————


      FTP標準是在RFC959說明的。該協(xié)議定義了一個從遠程計算機系統(tǒng)和本地計算機系統(tǒng)之間傳輸文件的一個標準。一般來說,傳輸文件的用戶需要先經過認證以后才能登錄網站,然后方能訪問在遠程服務器的文件。而大多數(shù)的FTP服務器往往提供一個GUEST的公共帳戶來允許沒有遠程服務器的用戶可以訪問該FTP服務器。       
      一個FTP會話通常包括五個軟件元素的交互。     
        
      用戶接口   提供了一個用戶接口并使用客戶端協(xié)議解釋器的服務       
      客戶   PI   客戶協(xié)議解釋器,其項遠程服務器協(xié)議機發(fā)送命令并且驅動客戶數(shù)據(jù)傳輸過程       
      服務器PI   服務器協(xié)議解釋器,響應客戶協(xié)議機發(fā)出的命令并驅動服務器端數(shù)據(jù)傳輸過程       
      客戶   DTP   客戶數(shù)據(jù)傳輸過程,其負責完成和服務器數(shù)據(jù)傳輸過程及客戶端本地文件系統(tǒng)的通信       
      服務DTP   服務器數(shù)據(jù)傳輸過程,其負責完成和客戶數(shù)據(jù)傳輸過程及服務器端文件系統(tǒng)的通信       
        
      在RFC   959中,一般使用用戶這個名詞來指代客戶。RFC   959定義了客戶PI和服務器PI交互的方式和規(guī)范。用戶接口與PI和DTP交互的機理都并不是協(xié)議標準的一部分。PI和DTP往往通常是在同一個程序模塊中實現(xiàn)的。       
        
      在FTP會話中,一共會存在有兩個獨立的網絡連接,一個是由兩端的PI使用的,另一個是由兩端的DTP使用的。PI之間的連接一般被稱作控制連接(control   connection),DTP之間的連接被稱做數(shù)據(jù)連接(data   connection)     
        
      使用TCP服務的控制和數(shù)據(jù)連接     
        
      通常情況下,F(xiàn)TO服務器監(jiān)聽端口號21來等待控制連接建立請求。而數(shù)據(jù)連接端口號的選擇依賴于控制連接上命令。通常是客戶發(fā)送一個控制消息來指定客戶監(jiān)聽并等待服務器端發(fā)送數(shù)據(jù)連接建立請求的端口號。       
        
      對數(shù)據(jù)傳輸和控制命令傳輸來使用不同的獨立連接有如下優(yōu)點:兩個連接可以選擇不同的合適服務質量,如:對控制連接來說高需要更小的延遲時間,對數(shù)據(jù)連接來說需要更大的數(shù)據(jù)吞吐量;而且可以避免實現(xiàn)數(shù)據(jù)流中的命令的通明性及逃逸。     
        
      當傳輸建立時,總是由客戶端首先發(fā)起。然而客戶和服務器都可能是數(shù)據(jù)發(fā)送者。除了傳輸用戶請求下載文件,數(shù)據(jù)傳輸過程同樣在客戶端請求列服務器端目錄結構時建立。     
        
      1.命令選擇     
        
      當一個傳輸建立時,一般通常需要指定四個方面的屬性:       
        
      文件類型       
      該屬性指定如何將文件的數(shù)據(jù)匹配成適于傳輸?shù)母袷剑还灿兴姆N可能的選擇:       
        
      ASCII文件類型       
      在發(fā)送端,文件從本地文本文件格式轉換為   NVT   ASCII格式,每行結束有一個CR/LF對來標識。   在接收端,再被轉換為本地的文本格式。   這說明了為什么Unix主機之間傳輸文本文件為何傳輸?shù)臄?shù)據(jù)量要大于文件的實際大小。若傳輸一段端或傳輸兩端都不使用ASCII文本編碼,則是應該由數(shù)據(jù)傳輸過程來實現(xiàn)本地編碼和NVT   ASCII   編碼之間的轉換。       
        
      EBCDIC文件類型       
      類似于ASCII,區(qū)別僅僅上使用EBCDIC字符編碼     
        
      圖象   (或二進制)文件類型       
      文件以本地傳輸內容傳輸,在遠端以同本地完全相同的內容存儲。       
        
      本地文件系統(tǒng)       
      用在字節(jié)大小不是8位的環(huán)境下。沒字節(jié)位數(shù)由發(fā)送者指定。       
        
      在實際應用中,只有ASCII和圖象格式使用的較多。     
        
      格式控制       
      該屬性是和將文本文件最后傳送到打印設備相關的,其中有多種方式來實現(xiàn)將垂直格式信息編碼到文件中,包括指示一個新頁開始的方式。有如下方式可供選擇:       
        
      無須打印格式控制,這是缺省值       
      Telnet打印控制,在telnet協(xié)議中定義的控制字符包含在數(shù)據(jù)流中。.       
        
      Fortran打印控制,       
      該屬性在實際中很少使用。     
      結構       
      文件可以擁有內部結構,在傳輸中該結構被保留。由數(shù)據(jù)傳輸過程來負責在傳輸中的結構及本地結構之間相互匹配,有三種可能性:       
        
      文件結構       
      這實際上意味著文件被看作沒有內部結構的連續(xù)的字節(jié)流。       
        
      記錄結構       
      文件是有一系列記錄組成的結構。這只適用于文本文件。       
        
      頁面結構       
      也可以稱做塊結構。每一頁都伴隨一個頁號來傳輸,從而以順序的方式來完成傳輸。     
        
      頁面結構很少在實際中遇到。記錄結構也不是很常見。對于文本文件使用ASCII文件類型可以獲得相同的效果。     
        
      傳輸模式       
      該屬性可以取三個不同的值:       
        
      流模式       
      文件的以字節(jié)流的方式傳輸。     
        
      塊模式       
      文件以一個塊連接一個塊的方式傳輸,每個塊的開頭都有一個頭。       
        
      壓縮模式       
      一個簡單的運程長度壓縮編碼被應用,來壓縮連續(xù)的相同的字節(jié)。       
        
      實際中,一般只有流模式被使用。而壓縮一般通過使用各種其他的工具程序來獲得。     
        
      當一次傳輸被建立,客戶端一般指定一個或多個前面說明的屬性。若服務器端不能支持某個選項,服務器將用一個錯誤信息來響應客戶端,并不具有協(xié)商機制。     
        
      FTP提供了充足的命令來使用戶和遠程建立連接并訪問遠程文件系統(tǒng)。     
        
      2.命令格式     
        
      命令以NVT   ASCII串的格式被傳輸。每個命令以三個或四個大寫的NVT   ASCII字符開始,后面帶有選項參數(shù)和一個CR/LF對來標識命令結束     
        
      應答由三個NVT   ASCII數(shù)字及一個選項消息組成。     
        
      一個長的應答也許會有多個消息組成,第一個消息的三個數(shù)字后帶有一個破折號,最后的消息不帶有破折號。中間的消息無須攜帶三個數(shù)字,但是如果帶了三個數(shù)字,則也需要破折號。       
        
      下面是所有的命令的列表。帶有星號的命令一般很少使用,所以往往在具體實現(xiàn)中不支持。     
        
      String   Meaning       
      ABOR   放棄傳輸       
      *ACCT   某些系統(tǒng)將帳號和用戶與文件系統(tǒng)相關聯(lián)       
      *ALLO   為即將傳送的文件分配空間。后面攜帶的參數(shù)來確定字節(jié)數(shù)       
      *APPE   將文件附加到已經存在的文件后面       
      CDUP   在遠程系統(tǒng)上將當前目錄切換到上級父目錄       
      CWD   改變遠程系統(tǒng)的工作目錄       
      DELE   刪除遠程系統(tǒng)的文件       
      HELP   讀取服務器的幫助信息,如:支持的命令的列表       
      LIST   在一個新建立的數(shù)據(jù)連接上發(fā)送當前工作目錄下的文件名列表       
      MKD   創(chuàng)建目錄       
      MODE   指定傳輸模式,可攜帶的參數(shù)是:S、B或   C.       
      NLST   在一個新建立的數(shù)據(jù)連接上發(fā)送一個當前目錄下的"完全"的目錄列表       
      NOOP   空操作,防止連接斷掉       
      PASS   提供一個用戶登錄密碼,必須立即跟隨在USER命令后       
      *PASV   指定服務器數(shù)據(jù)傳輸過程監(jiān)聽等待客戶端的數(shù)據(jù)連接連接建立請求       
      PORT   指定客戶端監(jiān)聽等待服務器端建立的連接的端口號       
      PWD   顯示服務器端的當前工作目錄名       
      QUIT   退出登錄并終止連接       
      *REIN   重新初始化,退出登錄但是并不斷開連接,后面必須隨后發(fā)出一個新的USER命令       
      *REST   從服務器的一個標識處重新開始傳輸       
      RETR   從遠程系統(tǒng)取回一個文件       
      RMD   刪除一個目錄       
      *RNFR   指定要被命名的文件的老的路徑名,隨后必須是一個RNTO命令       
      *RNTO   指定要被命名的文件的新的路徑名       
      *SITE   站點特有的服務器提供的服務       
      *SMNT   結構加載,提供一個文件系統(tǒng)結構的遠程系統(tǒng)路徑名       
      *STAT   狀態(tài)信息       
      STOR   上載一個文件到服務器上,若文件已經存在則覆蓋       
      *STOU   上載一個文件到服務器上,不覆蓋已經存在的文件       
      STRU   指定文件結構,參數(shù)可以是F、R或P.       
      *SYST   報告遠程系統(tǒng)的操作系統(tǒng)類型       
      TYPE   指定文件類型,參數(shù)可以是A、E、I、L只有TYPE   A和TYPE   I常用       
        
      控制連接命令應答有如下形式:     
        
      Type   Description       
      1yz   主動初步應答,在發(fā)送另一個命令以前等待另一個應答       
      2yz   主動最后應答,最后一個命令成功結束       
      3yz   主動中間應答,必須再發(fā)送一個命令       
      4yz   暫時被動應答,要求的動作當時不能完成,但可以重試       
      5yz   永久被動應答,要求的動作不能完成,不應該重試       
        
      "y"數(shù)字編碼進一步的信息     
        
      Digit   Meaning       
      0   語法錯誤       
      1   信息       
      2   連接狀態(tài)       
      3   認證和記帳       
      4   保留       
      5   File   s文件系統(tǒng)狀態(tài)       
        
      下面是一些典型的消息:     
        
      Number   Meaning       
      125   數(shù)據(jù)連接打開,傳輸開始       
      200   命令OK       
      331   用戶名OK   需要輸入密碼       
      425   不能打開數(shù)據(jù)連接       
      452   錯誤寫文件       
      500   語法錯誤-不可識別的命令
    posted on 2010-02-25 11:25 myProMark 閱讀(442) 評論(0)  編輯  收藏 所屬分類: 資料

    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产成人不卡亚洲精品91| 亚洲男人天堂av| 亚洲成av人片在线天堂无| 一个人看的www在线观看免费| 亚洲视频2020| 十八禁无码免费网站| 亚洲精品日韩中文字幕久久久| 久久国产乱子伦精品免费不卡| 亚洲国产精品无码久久SM| 久久国产精品免费网站| 亚洲综合精品香蕉久久网97| 免费人成毛片动漫在线播放 | 国产精品久久免费| 久久久亚洲AV波多野结衣| 国产成人aaa在线视频免费观看 | 亚洲一卡一卡二新区无人区| 18禁止观看免费私人影院| 亚洲一区二区三区国产精品无码| 无人在线观看免费高清视频| 亚洲成av人在线观看网站| 国产大片91精品免费看3| 国产精品亚洲色图| 国产AV无码专区亚洲AV漫画| 久久久久成人精品免费播放动漫| 亚洲酒色1314狠狠做| 成人A级毛片免费观看AV网站| 日韩精品亚洲专区在线影视| 国产亚洲精品久久久久秋霞| 久久国产乱子免费精品| 亚洲无mate20pro麻豆| 亚洲第一成人影院| ww在线观视频免费观看| 亚洲AV无码成人精品区狼人影院| 亚洲一区二区高清| 亚洲国产精品18久久久久久| 亚洲?V乱码久久精品蜜桃 | 久久精品国产免费观看| 亚洲精品一卡2卡3卡四卡乱码| 久久久青草青青国产亚洲免观| 免费女人高潮流视频在线观看| 亚洲综合中文字幕无线码|