版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、FTP協(xié)議規(guī)范(中文版)文件傳輸協(xié)議(FileTransferProtocolFTP)1.介紹FTP的目標是提高文件的共享性,提供非直接使用遠程計算機,使存儲介質(zhì)對用戶透明和可靠高效地傳送數(shù)據(jù)。雖然我們也可以手工使用它,但是它的主要作用是供程序使用的。在閱讀本文之前最好能夠閱讀TCP協(xié)議標準規(guī)范和Tel協(xié)議標準規(guī)范。2.概覽在本節(jié)中我們將討論一些表面上的問題,有些名詞的定義請參閱TCP和Tel參考文獻。我們先介紹一下(1)字節(jié)大小,在F
2、TP中字節(jié)大小有兩個:邏輯字節(jié)大小和用于傳輸?shù)淖止?jié)大小。后者通常是8位,而前者可不一定是多少了。傳輸字節(jié)不必等于邏輯字節(jié)大小,也不必對數(shù)據(jù)結(jié)構(gòu)進行解釋。(2)控制連接是建立在USERPIT和SERVERPI之間用于交換命令與應(yīng)答的通信鏈路。(3)數(shù)據(jù)連接是傳輸數(shù)據(jù)的全雙工連接。傳輸數(shù)據(jù)可以發(fā)生在服務(wù)器DTP和用戶DTP之間也可以發(fā)生在兩個服務(wù)器DTP之間。(4)DTP:數(shù)據(jù)傳輸過程(DTP)建立和管理數(shù)據(jù)連接,DTP可以是主動的也可以是
3、被動的。(5)E代表記錄尾。(6)NTV代表網(wǎng)絡(luò)虛擬終端,它的定義與在Tel協(xié)議中的定義一致。(7)NVFS代表網(wǎng)絡(luò)虛擬文件系統(tǒng)。(8)FTP可以傳輸非連續(xù)的文件,這些文件的一部分稱為頁。(9)PI代表協(xié)議解釋器。(10)服務(wù)器DTP代表一種傳輸過程,它通常處于“主動”狀態(tài),它和偵聽端口建立數(shù)據(jù)連接,它還可以為傳輸和存儲設(shè)置參數(shù),并根據(jù)PI的指令傳輸數(shù)據(jù)。當然,DTP也可以轉(zhuǎn)入“被動”狀態(tài)。(11)服務(wù)器FTP進程,它是和用戶FTP進程
4、一起工作的,它由PI和DTP組成。至于用戶FTP進程則是由PI,DTP和用戶接口組成的。下圖是FTP服務(wù)示意圖:注意:數(shù)據(jù)連接是雙向的,它不用整個時間都存在。上圖中用戶PI開始控制連接,控制連接與Tel協(xié)議很象。在開始階段,標準FTP命令由用戶PI產(chǎn)生并通過控制連接傳送到服務(wù)器進程。服務(wù)器PI向用戶PI返回標準應(yīng)答。FTP命令指定數(shù)據(jù)連接參數(shù)和文件系統(tǒng)操作。用戶DTP在特定數(shù)據(jù)端口偵聽,服務(wù)器開始數(shù)據(jù)連接并以指定的參數(shù)開始數(shù)據(jù)傳輸。數(shù)據(jù)
5、端口不必在開始FTP命令的機器上,但用戶或用戶FTP進程必須確定它在指定的數(shù)據(jù)端口上偵聽。這個數(shù)據(jù)連接是全雙工的。在另外一種情況下,用戶或許希望在兩個主機間傳送文件,不是兩個本地主機。用戶在兩臺主機間建立控制連接,然后規(guī)劃數(shù)據(jù)連接。用這種方式,控制信息由用戶PI獲得,但是數(shù)據(jù)在服務(wù)器DTP之間傳送。下面就是一個例子:協(xié)議要求數(shù)據(jù)傳輸在處理時打開控制連接。在完成FTP服務(wù)后由用戶中止控制連接,而服務(wù)器具體操作。如果在未接收命令時關(guān)閉了控制
6、連接,服務(wù)器也會關(guān)閉數(shù)據(jù)傳輸。FTP和Tel很有聯(lián)系,F(xiàn)TP使用Tel協(xié)議進行控制連接,可有兩種方法達到目的:用戶PI或服務(wù)器PI可以在自己的過程中實現(xiàn)Tel協(xié)議的功能;第二種方法是利用系統(tǒng)中現(xiàn)有的Tel模塊。實現(xiàn)上,F(xiàn)TP對Tel協(xié)議的依賴也不多,即使重新實現(xiàn),代碼量也不大。3.數(shù)據(jù)傳輸功能數(shù)據(jù)連接只傳輸數(shù)據(jù),控制連接傳送命令和響應(yīng)。幾個命令是關(guān)于在主機間傳輸數(shù)據(jù)的,數(shù)據(jù)傳輸基本上獨立于物理結(jié)構(gòu)的,但是如果在壓縮傳輸模式下流式傳輸與文
7、件結(jié)構(gòu)有關(guān),文件的屬性與表示類型有關(guān)。3.1.數(shù)據(jù)表示與保存數(shù)據(jù)是在主機間的存儲設(shè)置間傳送的。因為兩個系統(tǒng)的數(shù)據(jù)存儲方式不同,因此需要對它進行轉(zhuǎn)換,在傳送文本時會有對II表示的問題,在進行二進制傳送的時候,會有不同系統(tǒng)對字節(jié)長度規(guī)定不同的問題,有的系統(tǒng)是7位,有的系統(tǒng)可能是32位,這也需要進行轉(zhuǎn)換。需要提供數(shù)據(jù)表示與傳輸模型函數(shù),但是FTP提供這方面的功能不多,超過FTP提示。文件本來的屬性和保存它的主機有關(guān),不同的機器會以自己的方式保
8、存文件。在不同主機間傳送文件時必須使主機能夠識別相互的表示。有些主機上的文件是面向字節(jié)的,有些是面向記錄的,在傳送時就會出現(xiàn)問題。那就要在接收方進行內(nèi)部轉(zhuǎn)換。在進行轉(zhuǎn)換的時候,需要區(qū)別記錄的邊界,在II中使用,在EBCDIC中使用作為分隔符。采用這種實現(xiàn)方法的必須保證轉(zhuǎn)換是可逆的。3.1.2.1.文件結(jié)構(gòu)如果未使用STRU命令,文件結(jié)構(gòu)是默認值。文件結(jié)構(gòu)中沒有默認值,文件被看作是連續(xù)的字節(jié)串。3.1.2.2.記錄結(jié)構(gòu)對于文本文件,記錄結(jié)
9、構(gòu)必須是所有FTP實現(xiàn)必須有的。記錄結(jié)構(gòu)文件是由連續(xù)的記錄構(gòu)成的。3.1.2.3.頁結(jié)構(gòu)文件是非連續(xù)時使用頁結(jié)構(gòu)。這種文件稱為隨機訪問文件。這些文件中有時會的和文件整體或部分相關(guān)的信息出現(xiàn)。在FTP中,文件的一個部分稱為頁。為了提供不同的頁大小和相關(guān)信息,每頁都帶頁頭發(fā)送。頁頭中有如下域:頭長度包括此字節(jié)的頁頭長度,單位為字節(jié),最小長度為4頁索引指出此部分在原文件中的位置,它和傳輸編號不是一回事數(shù)據(jù)長度頁數(shù)據(jù)中的邏輯字節(jié)數(shù),最小值為0頁
10、類型頁的類型有以下幾種:0=未頁,指示傳輸結(jié)構(gòu),包頭必須為4,數(shù)據(jù)長度必須為0;1=通常頁,沒有控制信息的通常頁文件的普通類型;2=描述子頁,用于傳送整體文件的描述信息;3=訪問控制頁,包括頁級訪問控制信息的頁文件頭域,包頭長度必須為5可選域提供每頁的控制信息所有域均以1個邏輯字節(jié)長度為大小,邏輯字節(jié)長度由TYPE命令指定。如果讀取版本與和開始版本號一致,文件訪問時必須以相同的參數(shù)進行。如果參數(shù)相同,F(xiàn)TP實現(xiàn)要保證取得的文件內(nèi)容是相同
11、的。3.2.建立數(shù)據(jù)連接傳送數(shù)據(jù)機制包括建立連接選擇數(shù)據(jù)參數(shù)。用戶和服務(wù)器DTP有默認數(shù)據(jù)端口。用戶進程默認數(shù)據(jù)端口和控制連接端口相同。服務(wù)器進程默認數(shù)據(jù)端口和控制連接端口相鄰。傳輸字節(jié)大小是8位字節(jié)。此字節(jié)是實際傳輸字節(jié),但不代表主機內(nèi)的數(shù)據(jù)表示。被動數(shù)據(jù)傳輸進程在數(shù)據(jù)端口接收數(shù)據(jù),F(xiàn)TP請求命令決定數(shù)據(jù)傳輸?shù)姆较?。服?wù)器在接收到請求以后,將初始化端口的數(shù)據(jù)連接。當連接建立后,傳輸在DTP之間傳送,服務(wù)器PI對用戶PI返回應(yīng)答。FTP
12、實現(xiàn)運行一個默認數(shù)據(jù)端口,用戶PI才能改變默認端口。通過PT命令可能改變端口,用戶可能希望數(shù)據(jù)在第三方主機上進行其它操作,用戶PI需要在兩個服務(wù)器PI上建立連接。一個服務(wù)器被告知偵聽另一服務(wù)器的請求。用戶PI通過PT命令通知另一服務(wù)器的數(shù)據(jù)端口。最后雙方發(fā)送相應(yīng)的傳送命令。通常,服務(wù)器負責支持數(shù)據(jù)連接,初始化并關(guān)閉它,除非用戶DTP在傳輸模式下要求關(guān)閉連接。服務(wù)器在下面情況下關(guān)閉數(shù)據(jù)連接:1.服務(wù)器結(jié)束發(fā)送數(shù)據(jù),通過EOF要求中止傳送;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論