為使使用者能夠訪問遠端主機的賬戶,使用者必須提供乙個使用者標識和口令。驗證授權資訊後,使用者就能從本地檔案系統向遠端主機檔案系統傳送檔案。
使用者通過乙個ftp使用者**,與ftp互動。該戶首先提供遠端主機的主機名,建立乙個tcp的連線,然後該使用者提供使用者標識和口令,作為ftp命令這一部分在該tcp連線上傳送,該控制資訊的傳輸使用的是21號埠。一旦伺服器授權,使用者就可以向遠端檔案系統拷貝存放在本地檔案系統的檔案。使用的是另乙個tcp的資料連線,埠號20。當資料傳輸完畢後會關閉該連線。如果使用者還想再傳送乙個檔案,那麼該資料連線的tcp需要再次建立。也就是說每乙個連線只傳送乙個檔案。
同時ftp伺服器必須在整個會話期間,保留使用者的狀態資訊。但是http是無狀態的,也就是不會對使用者的狀態進行追蹤
如圖:
ftp使用的是兩個 並行的tcp連線:控制連線(埠21)。資料連線(埠20)。
控制連線用於兩個主機之間傳輸控制資訊:比如使用者標識、口令。
資料連線用於實際傳輸乙個檔案。
ftp協議使用乙個分離的控制連線,因此稱之為帶外傳送。
但是http協議是在傳輸檔案的tcp連線中傳送請求和響應的首部行,因此稱之為帶內傳送控制資訊。
nb:其區分的核心為控制資訊或者請求 是否和傳輸檔案使用同乙個tcp連線。 同乙個則為帶內,否則為帶外。
每個命令由4個大寫字母組成
user username:用於向伺服器傳送使用者標識。ftp的回答是3位數pass password: 用於向伺服器傳送使用者口令。
list 用於請求伺服器返回遠端主機當前目錄的所有檔案列表。
retr filename get 檔案
stor filename put檔案
331 username ok, password required125 data connection already open; transfer starting
425 can not open data connection
452 error writing file
計算機網路 應用層
運輸層為應用程序提供了端到端的通訊服務。但不同的網路應用程序之間,還需要有不同的通訊規則。因此在運輸層協議之上,還需要有應用層協議。應用程序之間的通訊必須遵守嚴格的規則。應用層的協議應當定義 1 網域名稱系統dns 網域名稱到ip位址的解析是由分布在網際網路上的許多網域名稱伺服器程式共同完成的。網域...
計算機網路 應用層
計算機網路分層 應用層是網路應用程式和及應用層協議存留的地方。應用層協議分布在多個端系統上,乙個端系統中的應用程式使用協議與另乙個端系統中的應用程式交換資訊的分組。該層資訊被稱為報文。常用的應用層協議有 http,smtp,ftp,dns 1.基本概念 執行在不同端系統的程式的通訊是通過程序完成的。...
計算機網路 應用層
我們現在已經了解了運輸層為應用程式提供了端到端的通訊服務,但是不同的應用程序之間,還需要不同的通訊協議,因此在運輸層協議上方還有應用層協議,這是因為每個應用層協議都是為了解決一類問題,而問題的解決又要通過不同主機的多個應用程序之間通訊和協同工作來完成,應用程序之間的通訊需要遵守嚴格的規則,應用層的具...