|
|
 |
 
|
“文件傳輸協議”由
妞妞建站
創建于 2009/10/23 12:18:35 |
|
文件傳輸協議(File Transfer Protocol, FTP)是一個用于在兩臺裝有不同操作系統的機器中傳輸計算機文件的軟件標準。它屬于網絡協議組的應用層。
FTP是一個8位的客戶端-服務器協議,能操作任何類型的文件而不需要進一步處理,就像MIME或Unencode一樣。但是,FTP有著極高的延時,這意味著,從開始請求到第一次接收需求數據之間的時間會非常長,并且不時的必需執行一些冗長的登陸進程。
概述
FTP服務一般運行在20和21兩個端口。端口20用于在客戶端和服務器之間傳輸數據流,而端口21用于傳輸控制流,并且是命令通向ftp服務器的進口。當數據通過數據流傳輸時,控制流處于空閑狀態。而當控制流空閑很長時間后,客戶端的防火墻會將其會話置為超時,這樣當大量數據通過防火墻時,會產生一些問題。此時,雖然文件可以成功的傳輸,但因為控制會話會被防火墻斷開,傳輸會產生一些錯誤。
FTP實現的目標:
1.促進文件的共享(計算機程序或數據)
2.鼓勵間接或者隱式的使用遠程計算機
3.向用戶屏蔽不同主機中各種文件存儲系統的細節
4.可靠和高效的傳輸數據
缺點:
1.密碼和文件內容都使用明文傳輸,可能產生不希望發生的竊聽。
2.因為必需開放一個隨機的端口以建立連接,當防火墻存在時,客戶端很難過濾處于主動模式下的FTP流量。這個問題3.通過使用被動模式的FTP得到了很大解決。
服務器可能會被告知連接一個第三方計算機的保留端口。
FTP雖然可以被終端用戶直接使用,但是它是設計成被FTP客戶端程序所控制。
運行FTP服務的許多站點都開放匿名服務,在這種設置下,用戶不需要帳號就可以登錄服務器,默認情況下,匿名用戶的用戶名是:“anonymous”。這個帳號不需要密碼,雖然通常要求輸入用戶的郵件地址作為認證密碼,但這只是一些細節或者此郵件地址根本不被確定,而是依賴于FTP服務器的配置情況。
主動和被動模式
FTP有兩種使用模式:主動和被動。主動模式要求客戶端和服務器端同時打開并且監聽一個端口以建立連接。在這種情況下,客戶端由于安裝了防火墻會產生一些問題。所以,創立了被動模式。被動模式只要求服務器端產生一個監聽相應端口的進程,這樣就可以繞過客戶端安裝了防火墻的問題。
一個主動模式的FTP連接建立要遵循以下步驟:
1.客戶端打開一個隨機的端口(端口號大于1024,在這里,我們稱它為x),同時一個FTP進程連接至服務器的21號命令端口。此時,源端口為隨機端口x,在客戶端,遠程端口為21,在服務器。
2.客戶端開始監聽端口(x+1),同時向服務器發送一個端口命令(通過服務器的21號命令端口),此命令告訴服務器客戶端正在監聽的端口號并且已準備好從此端口接收數據。這個端口就是我們所知的數據端口。
3.服務器打開20號源端口并且建立和客戶端數據端口的連接。此時,源端口為20,遠程數據端口為(x+1)。
4.客戶端通過本地的數據端口建立一個和服務器20號端口的連接,然后向服務器發送一個應答,告訴服務器它已經建立好了一個連接。
FTP和網頁瀏覽器
大多數最新的網頁瀏覽器和文件管理器都能和FTP服務器建立連接。這使得在FTP上通過一個接口就可以操控遠程文件,如同操控本地文件一樣。這個功能通過給定一個FTP的URL實現,形如ftp://<服務器地址>(例如,ftp://ftp.gimp.org )。是否提供密碼是可選擇的,如果有密碼,則形如ftp://<login>:<password>@<ftpserveraddress>。大部分網頁瀏覽器要求使用被動FTP模式,然而并不是所有的FTP服務器都支持被動模式。
網絡協議
應用層 DNS, FTP, ENRP,HTTP, IMAP, IIRC, NNTP, POP3, SIP, SMTP, SNMP, SSH, Telnet, BitTorrent, DHCP ...
傳輸層 DCCP, SCTP, TCP, RTP, UDP, IL, RUDP, ...
網絡層 IPv4, IPv6...
數據鏈路層 以太網, Wi-Fi, 令牌環, MPLS, PPP ...
物理層 RS-232, EIA-422, RS-449, EIA-485, 10BASE2, 10BASE-T ...
|
由
妞妞建站
發表于 2009/10/23 12:19:28,已有[1]人推薦
|
|
|
|
|
|
 |
|
|
|
|
|
 |
|