Ⅰ FTP是什麼
FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一。FTP協議包括兩個組成部分,其一為FTP伺服器,其二為FTP客戶端。
其中FTP伺服器用來存儲文件,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP伺服器上的資源。在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web伺服器上。此外,由於FTP傳輸效率非常高,在網路上傳輸大的文件時,一般也採用該協議。
(1)為什麼ftp帶外帶傳送擴展閱讀:
同大多數Internet服務一樣,FTP也是一個客戶/伺服器系統。用戶通過一個客戶機程序連接至在遠程計算機上運行的伺服器程序。依照 FTP 協議提供服務,進行文件傳送的計算機就是 FTP伺服器,而連接FTP伺服器,遵循FTP協議與伺服器傳送文件的電腦就是FTP客戶端。
用戶要連上FTP 伺服器,就要用到 FTP 的客戶端軟體,通常 Windows自帶「ftp」命令,這是一個命令行的 FTP客戶程序,另外常用的 FTP 客戶程序還有FileZilla、 CuteFTP、Ws_FTP、Flashfxp、LeapFTP、流星雨-貓眼等。
Ⅱ 為什麼說ftp在帶外發送控制信息
我們
Ⅲ 為什麼說ftp是帶外傳送控制信息
FTP 的伺服器進程由兩大部分組成:一個主進程,負責接受新的請求;另外有若干個從屬進程,負責處理單個請求。
主進程的工作步驟:
1、打開熟知埠(埠號為 21),使客戶進程能夠連接上。
2、等待客戶進程發出連接請求。
3、啟動從屬進程來處理客戶進程發來的請求。從屬進程對客戶進程的請求處理完畢後即終止,但從屬進程在運行期間根據需要還可能創建其他一些子進程。
4、回到等待狀態,繼續接受其他客戶進程發來的請求。主進程與從屬進程的處理是並發地進行。
FTP使用兩個TCP連接。
控制連接在整個會話期間一直保持打開,FTP 客戶發出的傳送請求通過控制連接發送給伺服器端的控制進程,但控制連接不用來傳送文件。
實際用於傳輸文件的是「數據連接」。伺服器端的控制進程在接收到 FTP 客戶發送來的文件傳輸請求後就創建「數據傳送進程」和「數據連接」,用來連接客戶端和伺服器端的數據傳送進程。
數據傳送進程實際完成文件的傳送,在傳送完畢後關閉「數據傳送連接」並結束運行。
Ⅳ 為什麼說ftp是帶外傳送控制信息
FTP
的伺服器進程由兩大部分組成:一個主進程,負責接受新的請求;另外有若干個從屬進程,負責處理單個請求。
主進程的工作步驟:
1、打開熟知埠(埠號為
21),使客戶進程能夠連接上。
2、等待客戶進程發出連接請求。
3、啟動從屬進程來處理客戶進程發來的請求。從屬進程對客戶進程的請求處理完畢後即終止,但從屬進程在運行期間根據需要還可能創建其他一些子進程。
4、回到等待狀態,繼續接受其他客戶進程發來的請求。主進程與從屬進程的處理是並發地進行。
FTP使用兩個TCP連接。
控制連接在整個會話期間一直保持打開,FTP
客戶發出的傳送請求通過控制連接發送給伺服器端的控制進程,但控制連接不用來傳送文件。
實際用於傳輸文件的是「數據連接」。伺服器端的控制進程在接收到
FTP
客戶發送來的文件傳輸請求後就創建「數據傳送進程」和「數據連接」,用來連接客戶端和伺服器端的數據傳送進程。
數據傳送進程實際完成文件的傳送,在傳送完畢後關閉「數據傳送連接」並結束運行。
Ⅳ 為什麼說ftp是帶外傳送控制信息
由於FTP使用了一個分離的控制連接,因此FTP的控制信息是帶外傳送的。
Ⅵ 簡述FTP的工作原理
FTP的工作原理:FTP 採用 Internet 標准文件傳輸協議 FTP 的用戶界面, 向用戶提供了一組用來管理計算機之間文件傳輸的應用程序。
開發任何基於 FTP 的客戶端軟體都必須遵循 FTP 的工作原理,FTP 的獨特的優勢同時也是與其它客戶伺服器程序最大的不同點就在於它在兩台通信的主機之間使用了兩條 TCP 連接,一條是數據連接,用於數據傳送;
另一條是控制連接,用於傳送控制信息(命令和響應),這種將命令和數據分開傳送的思想大大提高了 FTP 的效率,而其它客戶伺服器應用程序只有一條 TCP 連接。
(6)為什麼ftp帶外帶傳送擴展閱讀:
FTP 的目標是提高文件的共享性,提供非直接使用遠程計算機,使存儲介質對用戶透明和可靠高效地傳送數據。它能操作任何類型的文件而不需要進一步處理,就像MIME或Unicode一樣。
但是,FTP有著極高的延時,這意味著,從開始請求到第一次接收需求數據之間的時間,會非常長;並且不時的必須執行一些冗長的登錄進程。
FTP 在網際網路網路上歷史是最悠久的網路工具,從 1971 年由 A KBHUSHAN 提出第一個 FTP 的RFC(RFC114),FTP 憑借其獨特的優勢一直都是網際網路中最重要、最廣泛的服務之一。
Ⅶ 大家好 我問一個問題 就是什麼是FTP 他們告訴我的話是『FTP地址...........』 這個FTP是什麼意思
FTP文件傳送協議(File Transfer Protocol,簡稱FTP),是一個用於從一台主機到另送文件的協議。該協議的歷史可追溯到1971年(當時網際網路尚處於實驗之中),不過至今仍然極為流行。FTP在RFC 959中具體說明。下圖是它提供的服務的概貌。
圖1 FTP在本地和遠程文件系統之間傳輸文件
在一個典型的FTP會話中,用戶坐在本地主機前,想把文件傳送到一台遠程主機或把它們從一台遠程主機傳送來。該用戶必須提供一個用戶名—口令對才能訪問遠程賬號。給出這些身份認證信息後,它就可以在本地文件系統和遠程文件系統之間傳送文件了。如圖中所示,用戶通過一個FTP用戶代理與FTP交互。他首先提供一個遠程主機的主機名,這使得本地主機中的FTP客戶進程建立一個與遠程主機中的FTP伺服器進程之間的連接。用戶接著提供用戶名和口令,這些信息將作為FTP命令參數經由TCP連接傳送到伺服器。伺服器批准之後,該用戶就在本地文件系統和遠程文件系統之間拷貝文件。
HTTP和FTP都是文件傳送協議,它們有許多共同的特徵,譬如說都運行在TCP之上。不過這兩個應用層協議之間存在重要的差別。最重要的差別是FTP使用兩個並行的TCP連接來傳送文下一節件,一個是控制連接,一個是數據連接。控制連接用於在客戶主機和伺服器主機之間發送控制信息,例如用戶名和口令、改變遠程目錄的命令、取來或放迴文件的命令。數據連接用於真正發送文件。既然TCP使用一個獨立的控制連接,我們說FTP在帶外(out-of-band)發送控制信息的。另外,用於控制音頻和視頻等持續媒體數據之傳送的RTSP協議也是在帶外發送控制信息的。HTTP中,同一個TCP連接既用於承載請求和響應頭部,也用於承裁所傳送的文件,因此我們說HTTP在帶內(in-band)發送控制信息。下一篇文章將討論的用於電子郵件的主要協議SMTP也在帶內發送控制信息。圖2展示了FTP的控制連接和數據連接。
圖2
當用戶啟動與遠程主機間的一個FTP會話時,FTP客戶首先發起建立一個與FTP伺服器埠號21之間的控制TCP連接,然後經由該控制連接把用戶名和口令發送給伺服器。客戶還經由該控制連接把本地臨時分配的數據埠告知伺服器,以便伺服器發起建立一個從伺服器埠號20到客戶指定埠之間的數據TCP連接;為便於繞過防火牆,較新的FTP版本允許客戶告知伺服器改由客戶來發起建立到伺服器埠號20的數據TCP連接。用戶執行的一些命令也由客戶經由控制連接發送給伺服器,例如改變遠程目錄的命令。當用戶每次請求傳送文件時(不論哪個方向),FTP將在伺服器埠號20上打開一個數據TCP連接(其發起端既可能是伺服器,也可能是客戶)。在數據連接上傳送完本次請求需傳送的文件之後,有可能關閉數據連接,到再有文件傳送請求時重新打開。因此在FTP中,控制連接在整個用戶會話期間一直打開著,而數據連接則有可能為每次文件傳送請求重新打開一次(即數據連接是非持久的)。
在整個會話期間,FTP伺服器必須維護關於用戶的狀態。具體地說,伺服器必須把控制連接與特定的用戶關聯起來,必須隨用戶在遠程目錄樹中的游動跟蹤其當前目錄。為每個活躍的用戶會話保持這些狀態信息極大地限制了FTP能夠同時維護的會話數。無狀態的HTTP卻不必維護任何用戶狀態信息。
FTP命令和應答
現在討論幾個較為常用的FTP命令。從客戶到伺服器的命令和從伺服器到客戶的應答都是以7位ASCII碼格式經由控制連接傳送的,因此跟HTTP請求消息一樣.FTP命令也是直觀可讀的。用於分割相繼的命令或應答的是一個回車符和一個換行符。每個命令由4個大寫的ASCB字元構成,有些命令帶有可選的參數。下面給出的是一些較為常見的命令;●USER username:用於向伺服器發送用戶名。
●PASS passwod:用於伺服器發送口令。
●LIST:用於請求伺服器發回當前遠程目錄下所有文件的一個清單。該清單是通過數據連接而不是控制連接發送過來的。
●RETR filename:用於獲取遠程主機當前目錄下的一個文件,與用戶代理中的get命令相對應。
●STOR filename:用於存放遠程主機當前目錄下的一個文件,與用戶代理中的put命令相對應。
從客戶經由控制連接發送到伺服器的FTP命令和用戶向用戶代理發出的命令之間一般存在一一對應關系。每個命令之後跟隨的是從伺服器發送到客戶的應答。FTP應答是一個3位數值,可能後跟一個可選的消息。這與HTTP響應消息中的狀態碼和原因短語在結構上是類似的;HTTP的發明者們有意在HTTP響應消息中引入了這個類似性。下面列出了一些典型的應答以及可能後跟的消息。
●331 Username OK,password required
●125 Data connection already open,tranfer starting
●425 Car't open data connection
●452 Error writing
有興趣更多地了解FD命令和應答的讀者可以閱讀RFC 959。
下面是採用LEAPFTP客戶端登錄一個FTP伺服器的對話實錄,從中可以看到FTP客戶端和伺服器端的會話過程。
Connecting to xxx.xxx.xxx.xxx, Port 21 (#1)
Connected. Waiting for response.
220 Microsoft FTP Service
USER username
331 Password required for username.
PASS xxxxxx
230 User 9878cn logged in.
SYST
215 Windows_NT
PWD
257 "/mydir" is current directory.
TYPE A
200 Type set to A.
PORT 192,168,xxx,xx,9,198
200 PORT command successful.
LIST
150 Opening ASCII mode data connection for /bin/ls.
226 Transfer complete.
Transfer done: 125 bytes in 0.016 secs (7.81 k/sec)
QUIT
Ⅷ (FTP文件傳送服務)是什麼意思
文件傳輸協議FTP(File Transfer Protocol)是Internet傳統的服務之一。FTP使用戶能在兩個聯網的計算機之間傳輸文件,它是Internet傳遞文件最主要的方法。
ftp的功能包括上傳和下載兩部分:
下載:登錄遠程ftp伺服器後,將伺服器提供的文件通過網路傳輸到本地計算機的過程;
上傳:登錄遠程ftp伺服器後,將本地計算機上的文件通過網路傳輸到遠程伺服器進行存儲的過程。
Ⅸ FTP的傳輸有兩種方式
FTP的傳輸有兩種方式:ASCII傳輸模式和二進制數據傳輸模式。
1.ASCII傳輸方式:假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。
但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,資料庫,字處理文件或者壓縮文件(盡管字處理文件包含的大部分是文本,其中也包含有指示頁尺寸,字型檔等信息的非列印字元)。在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝,不要對這些文件進行處理,這也是下面要講的二進制傳輸。
2.二進制傳輸模式:在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。
如果你在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會使傳輸稍微變慢 ,也會損壞數據,使文件變得不能用。(在大多數計算機上,ASCII方式一般假設每一字元的第一有效位無意義,因為ASCII字元組合不使用它。如果你傳輸二進制文件,所有的位都是重要的。)如果你知道這兩台機器是同樣的,則二進制方式對文本文件和數據文件都是有效的。
5. FTP的工作方式
FTP支持兩種模式,一種方式叫做Standard (也就是 PORT方式,主動方式),一種是 Passive (也就是PASV,被動方式)。 Standard模式 FTP的客戶端發送 PORT 命令到FTP伺服器。Passive模式FTP的客戶端發送 PASV命令到 FTP Server。
下面介紹一個這兩種方式的工作原理:
Port模式FTP 客戶端首先和FTP伺服器的TCP 21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠接收數據。在傳送數據的時候,伺服器端通過自己的TCP 20埠連接至客戶端的指定埠發送數據。 FTP server必須和客戶端建立一個新的連接用來傳送數據。
Passive模式在建立控制通道的時候和Standard模式類似,但建立連接後發送的不是Port命令,而是Pasv命令。FTP伺服器收到Pasv命令後,隨機打開一個高端埠(埠號大於1024)並且通知客戶端在這個埠上傳送數據的請求,客戶端連接FTP伺服器此埠,然後FTP伺服器將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。
很多防火牆在設置的時候都是不允許接受外部發起的連接的,所以許多位於防火牆後或內網的FTP伺服器不支持PASV模式,因為客戶端無法穿過防火牆打開FTP伺服器的高端埠;而許多內網的客戶端不能用PORT模式登陸FTP伺服器,因為從伺服器的TCP 20無法和內部網路的客戶端建立一個新的連接,造成無法工作。
Ⅹ 為什麼說ftp在"帶外"發送控制信息
其實ftp使用tcp的兩個埠20/21分別跑數據和控制消息