『壹』 FTP採用的是什麼工作模式,可以實現的文件傳輸方式有哪兩種
FTP可以採用2種工作模式,分別是Port模式、Passive模式;
FTP的傳輸有兩種方式:ASCII、二進制:
1、ASCII傳輸方式:
假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式
2、二進制傳輸模式:
在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。
(1)ftp的形式擴展閱讀:
FTP文件傳輸協議的特點介紹:
FTP工作在TCP/IP模型的應用層,基於的傳輸協議是TCP,FTP客戶端和伺服器之間的連接是可靠的,面向連接的,為數據的傳輸提供了可靠的保證。
FTP的主要特徵:
1、控制連接是建立在客戶協議解釋器和伺服器協議解釋器之間用於交換命令與應答的通信鏈路
2、數據連接是傳輸數據的全雙工連接。傳輸數據可以發生在伺服器數據傳輸過程DTP和客戶DTP之間,也可以發生在兩個伺服器的DTP之間。
『貳』 FTP協議有兩種工作方式是什麼
FTP的傳輸有兩種方式:ASCII傳輸模式和二進制數據傳輸模式。 1.ASCII傳輸方式:假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是 UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。 但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,資料庫,字處理文件 或者壓縮文件(盡管字處理文件包含的大部分是文本,其中也包含有指示頁尺寸,字型檔等信息的非列印字元)。 在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝,不要對這些文件進行處理,這也是下面要講的二 進制傳輸。 2.二進制傳輸模式:在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目 的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統, 在對方系統上,此文件不能執行。 如果你在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會使傳輸稍微變慢 ,也會損壞數據, 使文件變得不能用。(在大多數計算機上,ASCII方式一般假設每一字元的第一有效位無意義,因為ASCII字 符組合不使用它。如果你傳輸二進制文件,所有的位都是重要的。)如果你知道這兩台機器是同樣的,則二 進制方式對文本文件和數據文件都是有效的。
『叄』 java實現ftp的幾種方式
有二個種FTP方式:ftp和sftp
ftp的包:commons-net-3.3.jar
sftp包:com.jcraft.jsch_0.1.31.jar
『肆』 FTP方式是什麼
FTP,文件傳輸協議,提供主機間相互交換文件的服務。
『伍』 ftp的三種埠模式都是哪些如何工作的
FTP是File Transfer Protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。
FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
1. PORT(主動)方式的連接過程是:
客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴伺服器:「我打開了XXXX埠,你過來連接我」。於是伺服器從20埠向客戶端的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
2. PASV(被動)方式的連接過程是:
客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX埠,你過來連接我」。於是客戶端向伺服器的XXXX埠發送連接請求,建立一條數據鏈路來傳送數據。
概括:
--------------------------------------------------------------------------------
主動模式:伺服器向客戶端敲門,然後客戶端開門
被動模式:客戶端向伺服器敲門,然後伺服器開門
所以,如果你是如果通過代理上網的話,就不能用主動模式,因為伺服器敲的是上網代理伺服器的門,而不是敲客戶端的門
而且有時候,客戶端也不是輕易就開門的,因為有防火牆阻擋,除非客戶端開放大於1024的高端埠
--------------------------------------------------------------------------------
3.單埠模式
除上述兩種模式之外,還有一種單埠模式。該模式的數據連接請求由FTP伺服器發起。使用該傳輸模式時,客戶端的控制連接埠和數據連接埠一致。因為這種模式無法在短時間連續輸入數據、傳輸命令,因此並不常用。
『陸』 FTP分為ASCII碼和什麼模式
ftp模式中ASCII傳送與Binary模式
ftp模式中ASCII傳送與Binary傳送有什麼不同
ftp模式中ASCII傳送與Binary傳送有什麼不同
1)ftp中如果選中ASCII形式傳送可執行文件或者壓縮文件(本來應該選擇Binary形式的),會有什麼後
果?
2)
好像ASCII傳送需要發方將本地文本文件轉換成NVT ASCII碼形式,而收方則將NVT ASCII碼再還原
成本地文本文件。而NVT ASCII只有7位,那麼傳送二進制文件時大於#128的byte不是無法傳輸嗎?
但是我平時下載文件(包括可執行文件)都是默認的ASCII形式get下來的,都使用很正常呀,
後來專門用兩種方式下載同一個exe,用fc比較兩個文件,沒有發現任何區別。
3)不過上述下載時c/s都是windows系統,不知道其他OS是否兩種形式有所不同。
那位朋友跟我講講兩者的區別。
FTP 可用多種格式傳輸文件,通常由系統決定,大多數系統(包括UNIX系統)只有兩種模式:文本模式和二進制模式。文本傳輸 器使用ASCII字元,並由回車鍵和換行符分開,而二進制不用轉換或格式化就可傳字元,二進制模式比文本模式更快,並且可以傳輸所有ASCII值,所以系統管理員一般將FTP設置成二進制模式。
一般來說:
如果你用錯誤的模式傳輸你的圖片,你將會無法看到圖片,看到的會是亂碼。
如果你用錯誤模式上傳CGI腳本,那麼就將無法運行你的腳本,會看到類似Server 500 Error的出錯信息。
所以你必須使用正確的模式,圖片和執行文件必須用BINARY模式,CGI腳本和普通HTML文件用ASCII模式上傳.
ASCII和BINARY模式區別:
用HTML 和文本編寫的文件必須用ASCII模式上傳,用BINARY模式上傳會破壞文件,導致文件執行出錯。
BINARY模式用來傳送可執行文件,壓縮文件,和圖片文件。
如果你用ASCII模式傳,會顯示一堆亂碼,你必須重新用BINARY模式傳。
對於第二種情況,是因為有很多ftp伺服器和客戶端軟體能自動識別文件類型,並採取相應的傳輸方式。
ftp是應用層協議,和具體操作系統無關 .
ASCII模式和BINARY模式的區別是回車換行的處理,binary模式不對數據進行任何處理,asci模式將回車換行轉換為本機的回車字元,比如Unix下是\n,Windows下是\r\n,Mac下是\r
ascii模式下會轉換文件
不能說是不同系統對回車換行解釋不同
而是不同的系統有不同的行結束符
unix系統下行結束符是一個位元組,即十六進制的0A
而ms的系統是兩個位元組,即十六進制的0D0A
所以當你用ascii方式從unix的ftp server下載文件時(不管是二進制或者文本文件),每檢測到一個
位元組是0A,就會自動插入一個0D,所以如果你的文件是二進制文件比如可執行文件、壓縮包什麼的,就肯
定不能用了。如果你的文件就是unix下的文本文件,你用ascii模式是正確的,要是誤用了binary模式,
你在windows上看這個文件是沒有換行的,裡面是一個個的黑方塊。
一般來說,我們最好都用binary方式,這樣可以保證不出錯。如果有文本格式轉換的問題,即unix格式
的文本和dos格式的文本之間的轉換,有很多工具可以做的,不要在ftp傳輸的時候冒險,尤其是你如果對
這些東西不是非常清楚的話。
可以使用MIME,把所有的字元,轉換成0~128之間的字元,然後傳送,在接受方再將接收到的字元MIME反向轉換。通常我們發送郵件,就是使用這樣的字元轉換方式。
『柒』 FTP的傳輸有幾種方式
只有兩種
ASCLL和二進制
WIN系統兩個都支持
linux最好使用二進制,不然有時候會出錯
『捌』 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無法和內部網路的客戶端建立一個新的連接,造成無法工作。
『玖』 什麼FTPFTP客戶端有哪幾種方式
FTP是一種文件的傳輸方式,有極高的效率和超高的安全性,能夠保障文件的正常傳輸!
IIS7伺服器管理工具就是一款很不錯的FTP客戶端,它可以對FTP進行批量操作,大大提高了工作效率!
同時,它也可以作為VNC的客戶端進行VNC操作,還可以連接Windows或Linux系統下的伺服器!