應用層協議

應用層協議:
FTP簡介:
FTP功能:
FTP工作原理:

在主動模式下,FTP客戶端隨機開啓一個大於1024的端口N向服務器的21號端口發起連接,然後開放N+1號端口進行監聽,並向服務器發出PORT N+1命令。服務器接收到命令後,會用其本地的FTP數據端口(通常是20)來連接客戶端指定的端口N+1,進行數據傳輸。

在被動模式下,FTP客戶端隨機開啓一個大於1024的端口N向服務器的21號端口發起連接,同時會開啓N+1號端口。然後向服務器發送PASV命令,通知服務器自己處於被動模式。服務器收到命令後,會開放一個大於1024的端口P進行監聽,然後用PORT P命令通知客戶端,自己的數據端口是P。客戶端收到命令後,會通過N+1號端口連接服務器的端口P,然後在兩個端口之間進行數據傳輸。

主動模式的FTP是指服務器主動連接客戶端的數據端口,被動模式的FTP是指服務器被動地等待客戶端連接自己的數據端口。

被動模式的FTP通常用在處於防火牆之後的FTP客戶訪問外界FTP服務器的情況,因爲在這種情況下,防火牆通常配置爲不允許外界訪問防火牆之後主機,而只允許由防火牆之後的主機發起的連接請求通過。因此,在這種情況下不能使用主動模式的FTP傳輸,而被動模式的FTP可以良好的工作。

NOTE:
(1)PORT其實是Standard模式的另一個名字,又稱爲Active模式。中文意思是“主動模式。
(2)PASV也就是Passive的簡寫。中文就是“被動模式。

FTP在工作時使用兩個並行的TCP連接,一個是控制連接(21端口),一個是數據連接(20端口)。使用兩個不同的端口號可使協議更加簡單和容易實現。

當NAT(Network Address Translation)設備以主動模式訪問FTP服務器時,由於NAT設備不會聰明的變更FTP包中的IP地址,從而導致無法訪問服務器。

我的手機 2018/3/17 15:27:33
郵件協議:
電子郵件

簡單介紹下電子郵件的發送過程:
1)發信人調用用戶代理來撰寫和編輯要發送的郵件。用戶代理用SMTP協議吧郵件傳送給發送方郵件服務器。
2)發送方郵件服務器將郵件放入郵件緩存隊列中,等待發送。
3)運行在發送方郵件服務器的SMTP客戶進程,發現在郵件緩存中有待發送的郵件,就向運行在接收方郵件服務器的SMTP服務器進程發起建立TCP連接。
4)TCP連接建立後,SMTP客戶進程開始向遠程的SMTP服務器進程發送郵件。當所有的待發送郵件發完了,SMTP就關閉所建立的TCP連接。
5)運行在接收方郵件服務器中的SMTP服務器進程收到郵件後,將郵件放入收信人的用戶郵箱中,等待收信人在方便時進行讀取。
6)收信人在打算收信時,調用用戶代理,使用POP3協議將自己的郵件從接收方郵件服務器的用戶郵箱中的取回。

SMTP

SMTP,即簡單郵件傳送協議,所對應RFC文檔爲RFC821。同http等多數應用層協議一樣,它工作在C/S模式下,用來實現因特網上的郵件傳送。基於TCP連接,端口號是25.

SMTP通信(如發送端郵件服務器與接收端服務器的通信)的過程如下。
1)發送端郵件服務器(以下簡稱客戶端)與接收端郵件服務器(以下簡稱服務器)的25號端口建立TCP連接。
2)客戶端向服務器發送各種命令,來請求各種服務(如認證、指定發送人和接收人)。
3) 服務器解析用戶的命令,做出相應動作並返回給客戶端一個響應。
4)2)和3)交替進行,直到所有郵件都發送完或兩者的連接被意外中斷。

POP3
基於TCP連接,端口號是110.

用戶從郵件服務器上接收郵件的典型通信過程如下。
1)用戶運行用戶代理(如Foxmail, Outlook Express)。
2)用戶代理(以下簡稱客戶端)與郵件服務器(以下簡稱服務器端)的110端口建立TCP連接。
3)客戶端向服務器端發出各種命令,來請求各種服務(如查詢郵箱信息,下載某封郵件等)。
4)服務端解析用戶的命令,做出相應動作並返回給客戶端一個響應。
5)3)和4)交替進行,直到接收完所有郵件轉到步驟6),或兩者的連接被意外中斷而直接退出。
6)用戶代理解析從服務器端獲得的郵件,以適當地形式(如可讀)的形式呈現給用戶。

發佈了66 篇原創文章 · 獲贊 62 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章