文件傳輸協議


文件傳輸協議 (简体)

Free Web Hosting with Website Builder
網路協議
5. 應用層

DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTSP · TLS · SDP · SOAP · GTP · STUN · NTP · 更多

4. 傳輸層
TCP · UDP · DCCP · SCTP · RTP · RSVP · PPTP · 更多
3. 網路層
IP (IPv4 · IPv6) · ARP · RARP · ICMP · ICMPv6 · IGMP · RIP · OSPF · BGP · IS-IS · IPsec · 更多
2. 資料鏈結層
802.11 · 802.16 · Wi-Fi · WiMAX · ATM · DTM · 令牌環 · 乙太網 · FDDI · 幀中繼 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN · 更多
1. 實體層
乙太網路實體層 · 數據機 · PLC · SONET/SDH · G.709 · 光導纖維 · 同軸電纜 · 雙絞線 · 更多
本模板: 檢視  討論  編輯  歷史

文件傳輸協議英文File Transfer Protocol,簡稱為FTP)是用於在網路上進行文件傳輸的一套標準協議。它屬於網路協議組的應用層

FTP是一個8位的客戶端-伺服器協議,能操作任何類型的文件而不需要進一步處理,就像MIME或Unicode一樣。但是,FTP有著極高的延時,這意味著,從開始請求到第一次接收需求數據之間的時間,會非常長;並且不時的必須執行一些冗長的登陸進程。

目錄

概述

FTP服務一般運行在20和21兩個埠。埠20用於在客戶端和伺服器之間傳輸數據流,而埠21用於傳輸控制流,並且是命令通向ftp伺服器的進口。當數據通過數據流傳輸時,控制流處於空閒狀態。而當控制流,空閒很長時間後,客戶端的防火牆,會將其會話置為超時,這樣當大量數據通過防火牆時,會產生一些問題。此時,雖然文件可以成功的傳輸,但因為控制會話,會被防火牆斷開;傳輸會產生一些錯誤。

FTP實現的目標:

  1. 促進文件的共享(計算機程序或數據)
  2. 鼓勵間接或者隱式的使用遠程計算機
  3. 向用戶屏蔽不同主機中各種文件存儲系統(File system)的細節
  4. 可靠和高效的傳輸數據

缺點:

  1. 密碼和文件內容都使用明文傳輸,可能產生不希望發生的竊聽。
  2. 因為必需開放一個隨機的埠以建立連接,當防火牆存在時,客戶端很難過濾處於主動模式下的FTP流量。這個問題,通過使用被動模式的FTP,得到了很大解決。
  3. 伺服器可能會被告知連接一個第三方計算機的保留埠。

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伺服器都支持被動模式。

參考文獻

參見

外部連結







Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History