1. ftp的兩種傳輸模式簡述
當FTP工作在主動模式下時,客戶端首先發起連接請求,與伺服器的21號埠建立控制連接,連接成功後,客戶端方藉此發送命令。若客戶端需要傳輸數據,客戶端會通過已建立的連接通道向伺服器發送信息,告知伺服器客戶端中接收數據的埠,之後伺服器則通過20號埠連接到客戶端指定的埠並傳送數據,在主動模式下,控制連接的發起方是FTP客戶機,而數據連接的發起方為FTP伺服器。
當FTP工作在被動模式下時,客戶端首先發起連接請求,與伺服器的21號埠建立控制連接。之後仍由客戶端發送信息,請求與伺服器建立數據連接,伺服器接收到此請求後,會隨機打開一個高端埠(埠號一般大於1024),並將該埠號告知客戶端,此時客戶端與伺服器的該埠再建立數據連接,通過該通道進行數據傳遞。在被動模式下,控制連接和數據連接的發起方都為客戶機。關於FTP的知識,可以到黑馬程序員學習,這些知識免費學哦!
2. FTP和SFTP的區別,你了解多少
第一、FTP協議
FTP是TCP/IP協議組中的協議之一,TP協議由兩個部分組成:1、FTP伺服器,用來存儲文件;2、FTP客戶端,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP伺服器上的資源。
默認情況下FTP協議使用TCP埠中的20和21這兩個埠。21埠用於傳輸控制信息,而是否使用20作為傳輸數據的埠與FTP使用的傳輸模式有關,如果採用被動模式則具體使用哪個埠要伺服器端和客戶端協商決定。FTP傳輸模式分為兩種:
①主動模式
FTP客戶端首先和FTP伺服器的TCP21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。PROT命令包含了客戶端用什麼埠接收數據。在傳輸數據的時候,伺服器端通過自己的TCP
20埠連接至客戶端的指定埠發送數據。
②被動模式
在建立控制通道與主動模式相似,但建立連接後是Pasv命令。FTP伺服器收到Pasv命令後便隨機打開一個高端埠並且通知客戶端在這個埠上傳送數據的請求,客戶端連接FTP伺服器此埠,通過三次握手建立通道,然後FTP伺服器將通過這個埠進行數據的傳送。
第二、SFTP協議
SFTP是SSH File Transfer
Protocol的縮寫,安全文件傳送協議。SFTP與FTP有著幾乎一樣的語法和功能。SFTP為SSH的其中一部分,是一種傳輸檔案至Blogger伺服器的安全方式。其實在SSH軟體包含中,已經包含了一個叫作SFTP的安全文件信息傳輸子系統,SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程來完成相應的連接和答復操作,所以從某種意義上來說,SFTP並不像一個伺服器程序,而更像是一個客戶端程序。
第三、二者的主要區別
鏈接方式:FTP使用TCP埠21上的控制連接建立連接。而SFTP是在客戶端和伺服器之間通過SSH協議建立的安全連接來傳輸文件。
安全性:SFTP使用加密傳輸認證信息和傳輸的數據,所以使用SFTP相對於FTP是非常安全。
效率:SFTP這種傳輸方式使用了加密解密技術,所以傳輸效率比普通的FTP要低很多。
3. 什麼是FTP
分類: 電腦/網路
解析:
什麼是FTP呢?FTP 是 TCP/IP 協議組中的協議之一,是英文File Transfer Protocol的縮寫。該協議是Inter文件傳送的基礎,它由一系列規格說明文檔組成,目標是提高文件的共享性,提供非直接使用遠程計算機,使仔橘核存儲介質對用戶透明和可靠高效地傳送數據。簡單的說,FTP就是完成兩台計算機之間的拷貝,從遠程計算機拷貝文件至自己的計算機上,稱之為「下載(download)」文件。若將文件從自己計算機中拷貝至遠程計算機上,則稱之為「上載(upload)」文件。在TCP/IP協議中,FTP標准命令TCP埠號為21,Port方式數據埠為20。FTP協議的任務是從一台計算機將文件傳送到另一台計算機,它與這兩台計算機所處的位置、聯接的方式、甚至是是否使用相同的操作系統無關。假設兩台計算機通過ftp協議對話,並且能訪問Inter, 你可以用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無法和內部網路的客戶端建立一個新的連接,造成無法工作。
4. FTP的連接方式有什麼區別啊port,pasv,eprt,epsv
主動連接
PORT
和被動連接
PASV
方式
他們的區別就是在連接上伺服器之後創建數據通道的時候:
PORT
模式是建立從伺服器高埠連到客戶端20埠數據連接
PASV
模式是建立客戶高埠連到伺服器返回的數據埠的數據連接
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器從20埠向客戶端的空閑埠發送連接請求,建立一條數據鏈路來傳送數據。
PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端向伺服器的空閑埠發送連接請求,建立一條數據鏈路來傳送數據。
FTP僅僅提供了建立在IPv4上進行數據通信的能力,它基於網路地址是32位這一假設。但是,當IPv6出現以後,地址就比32位長許多了。原來對FTP進行的擴展在多協議環境中有時會失敗。針對IPv6對FTP再次進行擴展,兩個FTP命令PORT和PASV通過擴展後,我們稱它們為EPRT和EPSV。
5. 簡述FTP的工作原理
FTP有兩個過程:控制連接和數據連接。
控制連接用於傳送請求;而數據連接用於傳輸文件。
FTP的工作原理:
FTP協議不像HTTP協議一樣需要一個埠作為連接(默認時HTTP埠是80,FTP埠是21)。FTP協議需要兩個埠:
①一個埠是作為控制連接埠,也就是FTP的21埠,用於發送傳送請求給伺服器的控制進程以及等待伺服器響應(控制連接並不用來傳送文件);
②另外一個埠用於數據傳輸埠,埠號為20(僅用PORT模式),是用建立數據傳輸通道的,主要作用是從客戶向伺服器發送一個文件,從伺服器向客戶發送一個文件,從伺服器向客戶發送文件或目錄列表,用來連接客戶端和伺服器端的數據傳送進程。
數據傳送進程實際完成文件的傳送,在傳送完畢後關閉「數據傳送連接」並結束運行。
6. ftp原理是什麼
FTP的工作原理是在 OSI 模型的第七層, TCP 模型的第四層, 即應用層, 使用TCP傳輸而不是 UDP, 客戶在和銷念伺服器建立連接前要經過一個「三次握手」的過程, 保證客戶與伺服器之間的連接是可靠的。
在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web伺服器上。此外,由於FTP傳輸效率非常高,在網路上傳輸大的文件時,一般也採用該協議。
默認情況下FTP協議使用TCP埠中的 20和21這兩個埠,其中20用於傳輸數據,21用於傳輸控制信息。
但是,是否使用20作為傳輸數據的埠與FTP使用的傳輸模式有關,如果採用主動模式,那麼數據傳輸埠就是20;如果採用被動模式,則具體最終使用哪個埠要伺服器端和客戶端協商決定。
(6)ftp的通道擴展閱讀
FTP 客戶端首先和FTP伺服器的TCP 21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠接收數據。
在傳送數據的時候,伺服器端通過自己的TCP 20埠連接至客戶端的指定埠發送數據。 FTP server必須和客戶端建立一個新的連接用來傳送數據。
在建立控制通道的時候和Standard模式類似,但建立連接後發送的不是Port命令,而是Pasv命令。FTP伺服器收到Pasv命令後,隨機打開一個高端埠(埠號大於1024)並且通知客戶端在這個埠上傳送數據的請求,客戶端連接FTP伺服器此埠。
很孫彎多防火牆在設置的時候都是不允許接受外部發起的連接的,所以許多位於防火牆後或內網的FTP伺服器不支持PASV模式,因為客戶端無法穿過防火牆打開FTP伺服器的高端埠。
而許多內網的客戶端不能用PORT模式登陸FTP伺服器,因為從伺服器的TCP 20無法和內部網路虧凱困的客戶端建立一個新的連接,造成無法工作。
7. FTP協議有兩種工作方式是什麼
Ftp協議的兩種工作模式:主動模式active和被動模式passive
FTP 是一種數據傳輸協議 (File Transfer Protocol),它的連接模式有兩種: 主動模式( active )和被動模式( passive )。
以下說明FTP的連接是怎樣建立的:
在 active 模式下 (一般預設的模式):
FTP client 開啟一個隨機選擇的TCP port 呼叫 FTP server 的 port 21請求建立連接。當完成 Three-Way Handshake 之後,連接就成功建立,但這僅是命令通道的建立。
當兩端需要傳送數據資料的時候,client 透過命令通道用一個 port command 告訴 server ,client可以用另一個TCP port 做數據通道。
然後 server 用 port 20 和剛才client 所告知的 TCP port 建立數據連接。注意:連接方向是從server 到 client 的,TCP 分組中會有一個 SYN flag。
然後 client 會返回一個帶 ACK flag的確認分組,並完成另一次的 Three-Way Handshake 過程。這時候,數據連接才能成功建立。開始數據傳送。
在 passive 模式下:
FTP client 開啟一個隨機選擇的TCP port 呼叫 FTP server 的 port 21請求建立連接,完成命令通道的建立。
當兩端需要傳送數據的時候,client 通過命令通道發送一個 PASV command 給server,要求進入 passive 傳輸模式。
然後 server 像上述的正常模式之第 2 步驟那樣,挑一個TCP port ,並用命令通道告訴 client。
然後 client 用另一個TCP port 呼叫剛才 server 告知的 TCP port 來建立數據通道。此時分組中帶有 SYN flag。
server 確認後回送一個 ACK 分組。並完成所有握手過程、成功建立數據通道。
開始數據傳送。 在實際使用中, active mode 用來登入一些架設在主機上沒有安裝防火牆的 FTP server,或是架設在 client side 的 FTP server! Passive mode (簡稱 PASV)用來登陸一些架設於防火牆保護下而又是開設於主機上的 FTP server!
8. ftp鏈接無法打開傳輸通道。原因:由於目標計算機積極拒絕,無法連接。
問題是伺服器未啟動Subversion服務,或改變埠所致。多數因為安裝的時候選用了埠,加上埠即可(80、8080、43等)。Windows下通過任務管理器查看svnserve.exe進程是否運行,如有則記錄 PID,然後在命令行中運行netstat -ano,查看對應PID的
9. 如何正確連接FTP
一、工具:ftp客戶端file Zilla、遠程的ip、用戶名、密碼、互聯網
二、操作步驟:
1.首先下載ftp工具,並安裝成功,雙擊打開就行啦
2.ftp現在標注的是個快速鏈接通道,這個只適合第一次添加站點,對應位置填寫對應信息,然後點擊鏈接。
3.連接成功以後就顯示如下圖片,紅框部分為伺服器上文件夾,紅框左側則是本地的文件的文件,然後滑鼠右擊你要上傳的文件,點擊上傳,即可把文件上傳到伺服器了。
4.如果要打開以前已經添加的網站站點的信息的話,那就點擊,文件——站點,然後就出現你以前添加過的站點了。
5.然後選擇要打開的站點,點擊鏈接就可以登錄伺服器了。