西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁(yè)編程開(kāi)發(fā)其它知識(shí) → FTP文件傳輸協(xié)議介紹 FTP協(xié)議走過(guò)了40年

FTP文件傳輸協(xié)議介紹 FTP協(xié)議走過(guò)了40年

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:西西整理時(shí)間:2011/4/18 14:15:24字體大。A-A+

作者:西西點(diǎn)擊:130次評(píng)論:0次標(biāo)簽: FTP

  • 類型:服務(wù)器區(qū)大小:34KB語(yǔ)言:中文 評(píng)分:3.7
  • 標(biāo)簽:
立即下載

文件傳輸協(xié)議(英文:File Transfer Protocol,簡(jiǎn)稱為FTP)是用于在網(wǎng)絡(luò)上進(jìn)行文件傳輸?shù)囊惶讟?biāo)準(zhǔn)協(xié)議。它屬于網(wǎng)絡(luò)傳輸協(xié)議的應(yīng)用層。

FTP是一個(gè)8位的客戶端-服務(wù)器協(xié)議,能操作任何類型的文件而不需要進(jìn)一步處理,就像MIME或Unicode一樣。但是,F(xiàn)TP有著極高的延時(shí),這意味著,從開(kāi)始請(qǐng)求到第一次接收需求數(shù)據(jù)之間的時(shí)間,會(huì)非常長(zhǎng);并且不時(shí)的必須執(zhí)行一些冗長(zhǎng)的登陸進(jìn)程。

概述

FTP服務(wù)一般運(yùn)行在20和21兩個(gè)端口。端口20用于在客戶端和服務(wù)器之間傳輸數(shù)據(jù)流,而端口21用于傳輸控制流,并且是命令通向ftp服務(wù)器的進(jìn)口。當(dāng)數(shù)據(jù)通過(guò)數(shù)據(jù)流傳輸時(shí),控制流處于空閑狀態(tài)。而當(dāng)控制流,空閑很長(zhǎng)時(shí)間后,客戶端的防火墻,會(huì)將其會(huì)話置為超時(shí),這樣當(dāng)大量數(shù)據(jù)通過(guò)防火墻時(shí),會(huì)產(chǎn)生一些問(wèn)題。此時(shí),雖然文件可以成功的傳輸,但因?yàn)榭刂茣?huì)話,會(huì)被防火墻斷開(kāi);傳輸會(huì)產(chǎn)生一些錯(cuò)誤。

FTP實(shí)現(xiàn)的目標(biāo):

促進(jìn)文件的共享(計(jì)算機(jī)程序或數(shù)據(jù))

鼓勵(lì)間接或者隱式的使用遠(yuǎn)程計(jì)算機(jī)

向用戶屏蔽不同主機(jī)中各種文件存儲(chǔ)系統(tǒng)(File system)的細(xì)節(jié)

可靠和高效的傳輸數(shù)據(jù)

缺點(diǎn):

密碼和文件內(nèi)容都使用明文傳輸,可能產(chǎn)生不希望發(fā)生的竊聽(tīng)。

因?yàn)楸仨氶_(kāi)放一個(gè)隨機(jī)的端口以創(chuàng)建連接,當(dāng)防火墻存在時(shí),客戶端很難過(guò)濾處于主動(dòng)模式下的FTP流量。這個(gè)問(wèn)題,通過(guò)使用被動(dòng)模式的FTP,得到了很大解決。

服務(wù)器可能會(huì)被告知連接一個(gè)第三方計(jì)算機(jī)的保留端口。

此方式在需要傳輸文件數(shù)量很多的小文件時(shí),效能不好

FTP雖然可以被終端用戶直接使用,但是它是設(shè)計(jì)成被FTP客戶端程序所控制。

運(yùn)行FTP服務(wù)的許多站點(diǎn)都開(kāi)放匿名服務(wù),在這種設(shè)置下,用戶不需要帳號(hào)就可以登錄服務(wù)器,默認(rèn)情況下,匿名用戶的用戶名是:“anonymous”。這個(gè)帳號(hào)不需要密碼,雖然通常要求輸入用戶的郵件地址作為認(rèn)證密碼,但這只是一些細(xì)節(jié)或者此郵件地址根本不被確定,而是依賴于FTP服務(wù)器的配置情況。

[編輯]主動(dòng)和被動(dòng)模式

FTP有兩種使用模式:主動(dòng)和被動(dòng)。主動(dòng)模式要求客戶端和服務(wù)器端同時(shí)打開(kāi)并且監(jiān)聽(tīng)一個(gè)端口以創(chuàng)建連接。在這種情況下,客戶端由于安裝了防火墻會(huì)產(chǎn)生一些問(wèn)題。所以,創(chuàng)立了被動(dòng)模式。被動(dòng)模式只要求服務(wù)器端產(chǎn)生一個(gè)監(jiān)聽(tīng)相應(yīng)端口的進(jìn)程,這樣就可以繞過(guò)客戶端安裝了防火墻的問(wèn)題。

一個(gè)主動(dòng)模式的FTP連接創(chuàng)建要遵循以下步驟:

客戶端打開(kāi)一個(gè)隨機(jī)的端口(端口號(hào)大于1024,在這里,我們稱它為x),同時(shí)一個(gè)FTP進(jìn)程連接至服務(wù)器的21號(hào)命令端口。此時(shí),該tcp連接的來(lái)源地端口為客戶端指定的隨機(jī)端口x,目的地端口(遠(yuǎn)程端口)為服務(wù)器上的21號(hào)端口。

客戶端開(kāi)始監(jiān)聽(tīng)端口(x+1),同時(shí)向服務(wù)器發(fā)送一個(gè)端口命令(通過(guò)服務(wù)器的21號(hào)命令端口),此命令告訴服務(wù)器客戶端正在監(jiān)聽(tīng)的端口號(hào)并且已準(zhǔn)備好從此端口接收數(shù)據(jù)。這個(gè)端口就是我們所知的數(shù)據(jù)端口。

服務(wù)器打開(kāi)20號(hào)源端口并且創(chuàng)建和客戶端數(shù)據(jù)端口的連接。此時(shí),來(lái)源地的端口為20,遠(yuǎn)程數(shù)據(jù)(目的地)端口為(x+1)。

客戶端通過(guò)本地的數(shù)據(jù)端口創(chuàng)建一個(gè)和服務(wù)器20號(hào)端口的連接,然后向服務(wù)器發(fā)送一個(gè)應(yīng)答,告訴服務(wù)器它已經(jīng)創(chuàng)建好了一個(gè)連接。

[編輯]FTP和網(wǎng)頁(yè)瀏覽器

大多數(shù)最新的網(wǎng)頁(yè)瀏覽器和文件管理器都能和FTP服務(wù)器創(chuàng)建連接。這使得在FTP上通過(guò)一個(gè)接口就可以操控遠(yuǎn)程文件,如同操控本地文件一樣。這個(gè)功能通過(guò)給定一個(gè)FTP的URL實(shí)現(xiàn),形如ftp://<服務(wù)器地址>(例如,ftp://ftp.gimp.org )。是否提供密碼是可選擇的,如果有密碼,則形如ftp://<login>:<password>@<ftpserveraddress>。大部分網(wǎng)頁(yè)瀏覽器要求使用被動(dòng)FTP模式,然而并不是所有的FTP服務(wù)器都支持被動(dòng)模式。

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過(guò)難過(guò)
    • 5 囧
    • 3 圍觀圍觀
    • 2 無(wú)聊無(wú)聊

    熱門評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)