FTP 原理

              1.  什麼是FTP協議?File Transfer Protocolhtml

        2.  有什麼做用?目標是提升文件的共享性,提供非直接使用遠程計算機,使存儲介質對用戶透明和可靠高效地傳送數據。通俗的說是,不一樣host 之間的文件上傳、下載。服務器

    注:文件傳輸過程是明文的,不加密的。併發

             3.  FTP服務端和客戶端,FTPC/S模式ide


          4.  傳輸時候文件的類型:ASCII or BIN
post

   ASCII傳輸效率低;BIN二進制傳輸效率比較高。加密

   在比較新一點host中,傳輸的文件類型是在控制鏈接創建時候,客戶端會發送一個傳輸文件類型爲二進制文件的命令。spa


5.  FTP 登錄:
debug

    1)須要密碼的登錄htm

                      ftp://用戶名:密碼@FTP服務器IP或域名:FTP命令端口/路徑/文件名blog

    2)匿名 FTP 登錄:

          輸入關鍵詞:anonymous  有時候後面還要輸入e-mail 地址。

              6.  FTP支持兩種工做方式:

         1standard方式  在創建數據鏈接時,客戶端先發送PORT 指令,而後服務端主動請求創建數據鏈接。(數據鏈接客戶端的TCP_Port經過PORT計算,

              a × 256+b 其中a,bPORT中)

         2passive 方式   在創建數據鏈接時,客戶端不發送PORT 指令,而是發送Passv命令,這樣作的結果是服務器會開啓一個任意的非特權端口(P > 1024),併發送PORT P命令給客戶端。而後客戶端發起從本地端口N+1到服務器的端口P的鏈接用來傳送數據。(passive方式與TCP so_reuseaddr選項有關);該方式比較耗時(2MSL);

       注意:由於控制鏈接時客戶端發起的,而數據鏈接是服務器發起的。因此在防火牆中應該特備警戒。

                  數據鏈接的斷開通常都是服務端主動發起的,除非客戶端用戶主動執行中斷命令,在中斷請求期間,客戶端還會接收數據併發送ack給服務器。

                  服務器給客戶端的response 有三個數字開頭

                             image.png

            -d debug模式;  --- > 是客戶端發給服務端的; 三位數字 ****是服務端發送給客戶端的;

    > 是用戶()須要進行輸入。


參考連接

相關文章
相關標籤/搜索