當前位置:學問谷 >

生活範例 >生活範例常識 >

關於ftp是什麼

關於ftp是什麼

FTP就是完成兩台計算機之間的拷貝,從遠程計算機拷貝文件至自己的計算機上,稱之為“下載(download)”文件。若將文件從自己計算機中拷貝至遠程計算機上,則稱之為“上載(upload)”文件。在TCP/IP協議中,FTP標準命令TCP端口號為21,Port方式數據端口為20。

關於ftp是什麼
關於ftp是什麼

文件傳輸是Internet提供的一項基本服務,通過Internet,可以把文件從一台計算機傳送到另一台計算機,文件傳輸服務必須遵循文件傳輸協議(File Transfer Protocol,FTP)。通過FTP從遠程計算機上獲取文件稱為下載(Download);將本地計算機上的文件複製到遠程計算機上稱為上傳(Upload),文件的“上傳”和“下載”功能是用户上網經常要使用到的,許多用户都要從網上“下載”一些文件和資料,那些擁有個人博客(Blog)或者要進行網站管理的用户,經常需要“上傳”自己的文件。

當啟動FTP從遠程計算機拷貝文件時,事實上啟動了兩個程序:一個本地機上的FTP客户程序:它向FTP服務器提出拷貝文件的請求。另一個是啟動在遠程計算機的上的FTP服務器程序,它響應你的請求把你指定的文件傳送到你的計算機中。FTP採用“客户機/服務器”方式,用户端要在自己的本地計算機上安裝FTP客户程序。FTP客户程序有字符界面和圖形界面兩種。字符界面的FTP的命令複雜、繁多。圖形界面的FTP客户程序,操作上要簡潔方便的多。

支持FTP協議的服務器就是FTP服務器,下面介紹一下什麼是FTP協議。用户聯網的首要目的就是實現信息共享,文件傳輸是信息共享非常重要的一個內容之一。Internet上早期實現傳輸文件,並不是一件容易的事,Internet是一個非常複雜的計算機環境,有PC,有工作站,有MAC,有大型機,據統計連接在Internet上的計算機已有上千萬台,而這些計算機可能運行不同的操作系統,有運行Unix的服務器,也有運行Dos、Windows的PC機和運行MacOS的蘋果機等等,而各種操作系統之間的文件交流問題,需要建立一個統一的文件傳輸協議,這就是所謂的FTP。基於不同的操作系統有不同的FTP應用程序,而所有這些應用程序都遵守同一種協議,這樣用户就可以把自己的文件傳送給別人,或者從其它的用户環境中獲得文件。

FTP傳輸模式

FTP協議的任務是從一台計算機將文件傳送到另一台計算機,它與這兩台計算機所處的位置、聯接的方式、甚至是是否使用相同的操作系統無關。假設兩台計算機通過ftp協議對話,並且能訪問Internet,

你可以用ftp命令來傳輸文件。每種操作系統使用上有某一些細微差別,但是每種協議基本的命令結構是相同的。

FTP的傳輸有兩種方式:ASCII傳輸模式和二進制數據傳輸模式。

ASCII傳輸模式

假定用户正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的是不同的操作系統,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。但是常常有這樣的情況,用户正在傳輸的文件包含的不是文本文件,它們可能是程序,數據庫,字處理文件或者壓縮文件(儘管字處理文件包含的大部分是文本,其中也包含有指示頁尺寸,字庫等信息的非打印字符)。

在拷貝任何非文本文件之前,用binary命令告訴ftp逐字拷貝,不要對這些文件進行處理,這也是下面要講的二進制傳輸。

二進制傳輸模式

在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。

如果你在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會使傳輸稍微變慢,也會損壞數據,使文件變得不能用。(在大多數計算機上,ASCII方式一般假設每一字符的第一有效位無意義,因為ASCII字符組合不使用它。如果你傳輸二進制文件,所有的位都是重要的。)如果你知道這兩台機器是同樣的,則二進制方式對文本文件和數據文件都是有效的。

FTP工作原理

與大多數Internet服務一樣,FTP也是一個客户機/服務器系統。用户通過一個支持FTP協議的客户機程序,連接到在遠程主機上的FTP服務器程序。用户通過客户機程序向服務器程序發出命令,服務器程序執行用户所發出的命令,並將執行的結果返回到客户機。比如説,用户發出一條命令,要求服務器向用户傳送某一個文件的一份拷貝,服務器會響應這條命令,將指定文件送至用户的機器上。客户機程序代表用户接收到這個文件,將其存放在用户目錄中。

在FTP的使用當中,用户經常“下載”(Download)和“上載”(Upload)。“下載”文件就是從遠程主機拷貝文件至自己的計算機上;“上載”文件就是將文件從自己的計算機中拷貝至遠程主機上。用Internet語言來説,用户可通過客户機程序向(從)遠程主機上載(下載)文件。

使用FTP時必須首先登錄,在遠程主機上獲得相應的權限以後,方可上載或下載文件。也就是説,要想同哪一台計算機傳送文件,就必須具有哪一台計算機的適當授權。換言之,除非有用户ID和口令,否則便無法傳送文件。這種情況違背了Internet的開放性,Internet上的FTP主機何止千萬,不可能要求每個用户在每一台主機上都擁有帳號。匿名FTP就是為解決這個問題而產生的。

匿名FTP是這樣一種機制,用户可通過它連接到遠程主機上,並從其下載文件,而無需成為其註冊用户。系統管理員建立了一個特殊的用户ID,名為anonymous,Internet上的任何人在任何地方都可使用該用户ID。

通過FTP程序連接匿名FTP主機的方式同連接普通FTP主機的方式差不多,只是在要求提供用户標識ID時必須輸入anonymous,該用户ID的口令可以是任意的字符串。習慣上,用自己的'E-mail地址作為口令,使系統維護程序能夠記錄下來誰在存取這些文件。匿名FTP不適用於所有Internet主機,它只適用於那些提供了這項服務的主機。

當遠程主機提供匿名FTP服務時,會指定某些目錄向公眾開放,允許匿名存取。系統中的其餘目錄則處於隱匿狀態。作為一種安全措施,大多數匿名FTP主機都允許用户從其下載文件,而不允許用户向其上載文件,也就是説,用户可將匿名FTP主機上的所有文件全部拷貝到自己的機器上,但不能將自己機器上的任何一個文件拷貝至匿名FTP主機上。即使有些匿名FTP主機確實允許用户上載文件,用户也只能將文件上載至某一指定上載目錄中。隨後,系統管理員會去檢查這些文件,他會將這些文件移至另一個公共下載目錄中,供其他用户下載,利用這種方式,遠程主機的用户得到了保護,避免了有人上載有問題的文件,如帶病毒的文件。

作為一個Internet用户,可通過FTP在任何兩台Internet主機之間拷貝文件。但是,實際上大多數人只有一個Internet帳户,FTP主要用於下載公共文件,例如共享軟件、各公司技術支持文件等。Internet上有成千上萬台匿名FTP主機,這些主機上存放着數不清的文件,供用户免費拷貝。實際上,幾乎所有類型的信息,所有類型的計算機程序都可以在Internet上找到。這是Internet吸引重要原因之一。

匿名FTP使用户有機會存取到世界上最大的信息庫,這個信息庫是日積月累起來的,並且還在不斷增長,永不關閉,涉及到幾乎所有主題。而且,這一切是免費的。

匿名FTP是Internet網上發佈軟件的常用方法。Internet之所以能延續到今天,是因為人們使用通過標準協議提供標準服務的程序。像這樣的程序,有許多就是通過匿名FTP發佈的,任何人都可以存取它們。

Internet中的有數目巨大的匿名FTP主機以及更多的文件,那麼到底怎樣才能知道某一特定文件位於哪個匿名FTP主機上的那個目錄中。這正是Archie服務器所要完成的工作。Archie將自動在FTP主機中進行搜索,構造一個包含全部文件目錄信息的數據庫,使你可以直接找到所需文件的位置信息。

標籤: ftp
  • 文章版權屬於文章作者所有,轉載請註明 https://xuewengu.com/flsh/changshi/2o7qp.html