❶ 文件傳輸協議ftp的主要工作過程是怎樣的
FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一。FTP協議包括兩個組成部分,其一為FTP伺服器,其二為FTP客戶端。其中FTP伺服器用來存儲文件,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP伺服器上的資源。在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web伺服器上。此外,由於FTP傳輸效率非常高,在網路上傳輸大的文件時,一般也採用該協議。
FTP簡要工作過程。1. 主進程2.從屬進程主進程工作步驟如下a,打開熟知埠,使客戶進程能夠鏈接上b,等待客戶進程發送鏈接請求c,啟動從屬進程來處理客戶進程發來的請求,從屬進程在運行期間還會創建一些子程序d,回到等待狀態 從屬進程包括a,控制進程 不用來傳輸文件b,數據傳輸進程 數據鏈接用來傳輸文件
❷ ftp伺服器的工作原理
FTP並不是應用於IP網路上的協議,而是ARPANEt網路中計算機間的文件傳輸協議, ARPANET是美國國防部組建的老網路,於1960-1980年使用。在那時, FTP的主要功能是在主機間高速可靠地傳輸文件。目前FTP仍然保持其可靠性,即使在今天,它還允許文件遠程存取。這使得用戶可以在某個系統上工作,而將文件存貯在別的系統。例如,如果某用戶運行Web伺服器,需要從遠程主機上取得HTML文件和CGI程序在本機上工作,他需要從遠程存儲站點獲取文件(遠程站點也需安裝Web伺服器)。當用戶完成工作後,可使用FTP將文件傳回到Web伺服器。採用這種方法,用戶無需使用Telnet登錄到遠程主機進行工作,這樣就使Web伺服器的更新工作變得如此的輕松。
FTP是TCP/IP的一種具體應用,它工作在OSI模型的第七層,TCP模型的第四層上,即應用層,使用TCP傳輸而不是UDP,這樣FTP客戶在和伺服器建立連接前就要經過一個被廣為熟知的"三次握手"的過程,它帶來的意義在於客戶與伺服器之間的連接是可靠的,而且是面向連接,為數據的傳輸提供了可靠的保證。
其次,FTP的連接模式有兩種,PORT和PASV。PORT模式是一個主動模式,PASV是被動模式,這里都是相對於伺服器而言的。為了讓大家清楚的認識這兩種模式,朗月繁星分別舉例說明。
PASV模式
然而,當FTP客戶以PASV模式連接伺服器時,情況就有些不同了。在初始化連接這個過程即連接伺服器這個過程和PORT模式是一樣的,不同的是,當FTP客戶發送ls、dir、get等這些要求數據返回的命令時,他不向伺服器發送PORT指令而是發送PASV指令,在這個指令中,用戶告訴伺服器自己要連接伺服器的某一個埠,如果這個伺服器上的這個埠是空閑的可用的,那麼伺服器會返回ACK的確認信息,之後數據傳輸通道被建立並返回用戶所要的信息(根據用戶發送的指令,如ls、dir、get等);如果伺服器的這個埠被另一個資源所使用,那麼伺服器返回UNACK的信息,那麼這時,FTP客戶會再次發送PASV命令,這也就是所謂的連接建立的協商過程。為了驗證這個過程我們不得不藉助CUTEFTP Pro這個大家經常使用的FTP客戶端軟體,因為微軟自帶的FTP命令客戶端,不支持PASV模式。雖然你可以使用QUOTE PASV這個命令強制使用PASV模式,但是當你用ls命令列出伺服器目錄列表,你會發現它還是使用PORT方式來連接伺服器的。現在我們使用CUTEFTP Pro以PASV模式連接伺服器
PORT模式
當FTP客戶以PORT模式連接伺服器時,他動態的選擇一個埠號(本次試驗是6015)連接伺服器的21埠,注意這個埠號一定是1024以上的,因為1024以前的埠都已經預先被定義好,被一些典型的服務使用,當然有的還沒使用,保留給以後會用到這些埠的資源服務。當經過TCP的三次握手後,連接(控制信道)被建立
❸ 簡述文件傳輸協議FTP的工作原理及一般使用步驟。
1、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無法和內部網路的客戶端建立一個新的連接,造成無法工作。
2、使用步驟
(1)FTP伺服器運行FTPd守護進程,等待用戶的FTP請求。
(2)用戶運行FTP命令,請求FTP伺服器為其服務。
例:FTP 202.119.2.197
(3)FTPd守護進程收到用戶的FTP請求後,派生出子進程FTP與用戶進程FTP交互,建立文件傳輸控制連接,使用TCP埠21。
(4)用戶輸入FTP子命令,伺服器接收子命令,如果命令正確,雙方各派生一個數據傳輸進程FTP-DATA,建立數據連接,使用TCP埠20,進行數據傳輸。
(5)本次子命令的數據傳輸完,拆除數據連接,結束FTP-DATA進程。
(6)用戶繼續輸入FTP子命令,重復(4)、(5)的過程,直至用戶輸入quit命令,雙方拆除控制連接,結束文件傳輸,結束FTP進程。
❹ FTP的主要工作過程是怎樣的主進程和從屬進程各起什麼作用
(1)FTP 使用客戶伺服器方式。一個FTP 伺服器進程可同時為多個客戶進程提供服
務。
FTP 的伺服器進程由兩大部分組成:一個主進程,負責接受新的請求;另外有若干
個從屬進程,負責處理單個請求。
主進程的工作步驟:
1、打開熟知埠(埠號為21),使客戶進程能夠連接上。
2、等待客戶進程發出連接請求。
3、啟動從屬進程來處理客戶進程發來的請求。從屬進程對客戶進程的請求處理完畢
後即終止,但從屬進程在運行期間根據需要還可能創建其他一些子進程。
4、回到等待狀態,繼續接受其他客戶進程發來的請求。主進程與從屬進程的處理是
並發地進行。
(2)作用:控制連接在整個會話期間一直保持打開,FTP 客戶發出的傳送請求通過控制連接發
送給伺服器端的控制進程,但控制連接不用來傳送文件。
實際用於傳輸文件的是「數據連接」。伺服器端的控制進程在接收到FTP 客戶發送來
的文件傳輸請求後就創建「數據傳送進程」和「數據連接」,用來連接客戶端和伺服器端
的數據傳送進程。
數據傳送進程實際完成文件的傳送,在傳送完畢後關閉「數據傳送連接」並結束運行。
❺ 傳輸協議FTP的工作原理和使用步驟
1、 簡介
在絕大多數的LINUX發行版本中都選用的是WashingtonUniversity FTP,它是一個著名的FTP伺服器軟體,一般簡稱為wu-ftp。它功能強大,能夠很好地運行於眾多的UNIX操作系統,例如:IBM AIX、FreeBSD、HP-UX、NeXTstep、Dynix、SunOS、Solaris等。所以Internet上的FTP伺服器,一大半以上採用了它。wu-ftp擁有許多強大的功能,很適於吞吐量較大的FTP伺服器的管理要求:
❻ FTP的工作原理是怎樣的
FTP會話時包含了兩個通道,一個叫控制通道,一個叫數據通道。控制通道:控制通道是和FTP伺服器進行溝通的通道,連接FTP,發送FTP指令都是通過控制通道來完成的。數據通道:數據通道是和FTP伺服器進行文件傳輸或者列表的通道。FTP協議中,控制連接均有客戶端發起,而數據連接有兩種工作方式:PORT方式和PASV方式PORT模式(主動方式) FTP 客戶端首先和FTP Server的TCP 21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠(一個大於1024的埠)接收數據。在傳送數據的時候,伺服器端通過自己的TCP 20埠發送數據。 FTP server必須和客戶端建立一個新的連接用來傳送數據。PASV模式(被動方式) 在建立控制通道的時候和PORT模式類似,當客戶端通過這個通道發送PASV 命令的時候,FTP server打開一個位於1024和5000之間的隨機埠並且通知客戶端在這個埠上傳送數據的請求,然後FTP server 將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接傳送數據。如果從C/S模型這個角度來說,PORT對於伺服器來說是OUTBOUND,而PASV模式對於伺服器是INBOUND,這一點請特別注意,尤其是在使用防火牆的企業里,這一點非常關鍵,如果設置錯了,那麼客戶將無法連接。參考: http://www.linuxdiyf.com/viewarticle.php?id=20118 →Nebula№☆ 2008-08-18 15:44 檢舉您覺得這個答案好不好?好(0)不好(0) 相關問題 FTP工作原理是怎樣的? FTP工作原理是什麼 ftp伺服器的工作原理其他答案拿下傳文件為例,當你啟動FTP從遠程計算機拷貝文件時,它向FTP伺服器提出拷貝文件的請求。啟動在遠程計算機的上的FTP伺服器程序,它響應你的請求把你指定的文件傳送到你的計算機中。 網站: http://www.skyhosting.com.cn 總想。。。 2008-08-18 15:41 檢舉上下傳 上頁,下頁. 2008-08-18 15:44 檢舉雖然我沒用過它,但大多數的lonux發行版本中都選用的是Washington University FTP,它是一個著名的FTP伺服器軟體,一般簡稱為wu-ftp. 它是一個很好的服委務軟體, 原理呀,網上有得查呀。下次我去看看有關那個的原理再告訴你吧。你自己也要去看看那方面有關的書呀, : 起做曖 2008-08-18 15:50 檢舉我來告訴你FTP伺服器工作流程: 建立Socket 偵聽 21 埠 收到連接請求後建立新埠與客戶端連接 繼續偵聽 21 埠 負責與客戶端連接的模塊要解釋處理大概10多條標準的FTP命令 根據不同命令為客戶返回不同的信息或做不同的事 關於這些標准FTP命令如 USER PASS REST PWD CWD PASV SIZE TYPE LIST RETR 等等的我不全知道 你要自己去查資料。拿下傳文件為例,當你啟動FTP從遠程計算機拷貝文件時,你事實上啟動了兩個程序:一個本地機上的FTP客戶程序:它向FTP伺服器提出拷貝文件的請求。另一個是啟動在遠程計算機的上的FTP伺服器程序,它響應你的請求把你指定的文件傳送到你的計算機中。FTP採用「客戶機/伺服器」方式,用戶端要在自己的本地計算機上安裝FTP客戶程序。FTP客戶程序有字元界面和圖形界面兩種。字元界面的FTP的命令復雜、繁多。圖形界面的FTP客戶程序,操作上要簡潔方便的多。
❼ 什麼是ftp伺服器,其主要工作原理是什麼
ftp是file
transfer
protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於http,ftp協議要復雜得多。復雜的原因,是因為ftp協議要用到兩個tcp連接,一個是命令鏈路,用來在ftp客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。
ftp協議有兩種工作方式:port方式和pasv方式,中文意思為主動式和被動式。
port(主動)方式的連接過程是:客戶端向伺服器的ftp埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用port命令告訴伺服器:「我打開了xxxx埠,你過來連接我」。於是伺服器從20埠向客戶端的xxxx埠發送連接請求,建立一條數據鏈路來傳送數據。
pasv(被動)方式的連接過程是:客戶端向伺服器的ftp埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器在命令鏈路上用pasv命令告訴客戶端:「我打開了xxxx埠,你過來連接我」。於是客戶端向伺服器的xxxx埠發送連接請求,建立一條數據鏈路來傳送數據。
❽ 簡述FTP的工作過程
)FTP伺服器運行FTPd守護進程,等待用戶的FTP請求。
(2)用戶運行FTP命令,請求FTP伺服器為其服務。
例:FTP 202.119.2.197
(3)FTPd守護進程收到用戶的FTP請求後,派生出子進程FTP與用戶進程FTP交互,建立文件傳輸控制連接,使用TCP埠21。
(4)用戶輸入FTP子命令,伺服器接收子命令,如果命令正確,雙方各派生一個數據傳輸進程FTP-DATA,建立數據連接,使用TCP埠20,進行數據傳輸。
(5)本次子命令的數據傳輸完,拆除數據連接,結束FTP-DATA進程。
(6)用戶繼續輸入FTP子命令,重復(4)、(5)的過程,直至用戶輸入quit命令,雙方拆除控制連接,結束文件傳輸,結束FTP進程。