我們前面介紹過 TCP/IP 模型的下三層,分別是網(wǎng)絡接入層、網(wǎng)絡層和傳輸層。它們都是為應用層服務的,傳輸應用層的各種數(shù)據(jù),現(xiàn)在我們就來看看最高層的應用層。
在 TCP/IP 模型中,應用層提供的服務相當于 OSI 模型的應用層、表示層和會話層的服務總和。不僅包含了管理通信連接的會話層功能、數(shù)據(jù)格式轉(zhuǎn)換的表示層功能,還包括主機間交互的應用層功能。
應用層的目的是向應用程序提供網(wǎng)絡接口,直接向用戶提供服務。相比于下層的網(wǎng)絡協(xié)議,應用協(xié)議要常見得多,可能大家都聽過 HTTP 、HTTPS 、SSH 等應用層協(xié)議。
TCP/IP 模型中應用層位于傳輸層之上,傳輸層的端口號用于標識數(shù)據(jù)所對應的應用層協(xié)議。也就是說,有端口號的協(xié)議都是應用層協(xié)議。應用協(xié)議是終端設備之間的應用通信規(guī)則。應用之間交互的信息叫消息,應用協(xié)議定義這些消息的格式以及消息的控制或操作的規(guī)則。
應用協(xié)議的通信方式可分為兩類:
服務器和客戶端模型
P2P 模型
在服務器和客戶端模型中,始終公開固定 IP 地址的主機為其它主機的應用程序提供服務,請求服務的主機之間不會互相通信。這些為其它主機提供服務的終端設備稱為服務器,那些請求服務的主機則稱為客戶端。大多數(shù)應用層協(xié)議,都是這種模型。
在 P2P 模型中,沒有特定的服務器或客戶端,這些設備上安裝的應用程序,可以在主機間建立對等連接,既可以提供服務,也可以接受服務。通常是大流量的應用程序采用 P2P 模型,比如:下載器等。
開發(fā)應用程序時,為了實現(xiàn)相應的功能和目的,可以使用現(xiàn)有的應用協(xié)議,也可以自己定義一個新的應用協(xié)議。同時,應用程序可以直接使用傳輸層以下的網(wǎng)絡傳輸服務,開發(fā)者只需要關心選擇哪種應用協(xié)議、如何開發(fā)即可,而不用考慮數(shù)據(jù)是如何傳輸?shù)侥康牡?。這也是 TCP/IP 分層模型的特點。
應用程序有很多,包括 Web 瀏覽器、電子郵件、遠程登錄、文件傳輸、網(wǎng)絡管理等。這些應用程序都會使用應用協(xié)議進行通信,應用協(xié)議正是為了實現(xiàn)應用程序的功能而設計和創(chuàng)造的。
網(wǎng)絡設備的管理方式,分為本地管理和遠程管理。遠程管理是從本地主機登錄到網(wǎng)絡對端設備,向網(wǎng)絡對端的設備發(fā)送管理數(shù)據(jù),以實現(xiàn)設備管理的操作方式。通過遠程管理,不僅可以直接使用主機上的應用,還可以對主機進行參數(shù)設置。遠程登錄主要使用 Telnet 和 SSH 兩種協(xié)議管理網(wǎng)絡設備。
女神叫大劉去她公司修理網(wǎng)絡,大劉都不用去女神的公司,直接遠程登錄解決問題。
在實際工作中,除了個別無法遠程管理設備外,大多會采用遠程管理的方式,來管理設備的配置文件和系統(tǒng)文件。對比本地管理,遠程管理不受物理位置限制,連上網(wǎng)絡就可以對世界另一端的設備進行操控,更省去了插拔設備線纜、終端設置的過程,可以通過一個遠程應用同時管理大量的網(wǎng)絡設備。
Telnet 協(xié)議定義了一臺設備通過 IP 網(wǎng)絡向遠端設備發(fā)起明文管理連接的通信標準,可以在一臺設備上通過 Telnet 協(xié)議與一臺遠端設備建立管理連接,并對遠端設備實施配置和監(jiān)控,這種方式的體驗與本地登錄設備并無區(qū)別。發(fā)起管理的設備為 Telnet 客戶端,被管理的設備是 Telnet 服務器。因此,Telnet 協(xié)議是一個典型的服務器和客戶端模型的應用層協(xié)議。
Telnet 協(xié)議通過 TCP 協(xié)議建立服務器和客戶端的一條連接,并通過這條連接向服務器發(fā)送用戶名、密碼和命令。Telnet 協(xié)議使用的是 TCP 23 端口,表示客戶端在發(fā)起 Telnet 連接時,默認連接服務器的 TCP 23 號端口。
當 Telnet 客戶端輸入命令后,這些命令通過 TCP 連接發(fā)送到 23 號端口,監(jiān)聽請求的守護進程 Telnetd 收到后,將命令發(fā)送給 Shell ,Shell 為操作系統(tǒng)進行命令解釋,然后操作系統(tǒng)執(zhí)行 Telnet 客戶端發(fā)出的命令。同理,操作系統(tǒng)按照相反的順序,將命令執(zhí)行的結果發(fā)回給 Telnet 客戶端。
Telnet 協(xié)議實現(xiàn)了遠程命令傳輸,但是客戶端和服務器跨越不可靠的公共網(wǎng)絡時,在命令傳輸過程中可以截獲 Telnet 通信的所有數(shù)據(jù),然后使用截獲的用戶名和密碼來通過 Telnet 服務器的身份認證,并登錄到設備上對配置文件進行修改。
Telnet 協(xié)議存在重大安全隱患,不推薦在實驗室之外的環(huán)境使用。
SSH 協(xié)議全程是安全外殼協(xié)議,目的就是為了取代 Telnet ,SSH 是加密的遠程登錄協(xié)議,提供更加安全的遠程登錄服務。使用 SSH 后會加密通信內(nèi)容。即使信息被截獲,由于無法解密,也無法了解數(shù)據(jù)的真正內(nèi)容。
SSH 協(xié)議常用版本是 SSHv2 ,SSH 客戶端通過 SSHv2 協(xié)議與 SSH 服務器建立一條 TCP 的加密信道,建立這條安全信道的方式是讓客戶端使用服務器的 RSA 公鑰來驗證 SSH 服務器的身份。SSH 協(xié)議默認使用 TCP 22 端口。
如果客戶端成功驗證了服務器的身份,它們之間就會創(chuàng)建出一個會話密鑰,并用雙方協(xié)商出來的加密算法和會話密鑰,對這個信道傳輸?shù)臄?shù)據(jù)進行加密。這樣,兩臺設備之間就建立了一條安全的信道,使用這條安全信道發(fā)送密碼,密碼以密文的形式傳輸,通過服務器的身份認證。SSH 就是通過這種方式建立加密信道,確保 SSH 服務器,也就是被管理設備的 Shell 免遭非法用戶操作。
除了遠程登錄,我們還需要從遠端設備傳輸文件,文件傳輸協(xié)議提供的應用服務可以滿足我們的需求。FTP 是網(wǎng)絡上文件傳輸?shù)臉藴蕝f(xié)議,F(xiàn)TP 使用 TCP 作為傳輸協(xié)議,支持用戶的登錄認證和訪問權限的控制。另一種常見的文件傳輸協(xié)議是 TFTP 協(xié)議,TFTP 是一種簡單的文件傳輸協(xié)議,不支持用戶的登錄認證,也沒有復雜的命令。TFTP 使用 UDP 作為傳輸協(xié)議,并有重傳機制。
FTP 用于服務器和客戶端之間傳輸文件,是 IP 網(wǎng)絡上傳輸文件的通用協(xié)議。FTP 采用客戶端和服務器的模式,使用 TCP 協(xié)議提供可靠傳輸。FTP 可以對登錄服務器的用戶名和密碼進行驗證,允許客戶端指定文件的傳輸類型,并且可以設置文件的傳輸權限。
FTP 使用兩條 TCP 連接實現(xiàn)文件傳輸。一條是 FTP 控制連接,用來控制管理;另一條是 FTP 數(shù)據(jù)連接,用于數(shù)據(jù)傳輸。FTP 控制連接用于傳輸 FTP 控制命令和命令執(zhí)行的應答信息,比如登錄用戶名和密碼的驗證、發(fā)送文件的名稱、發(fā)送方式的設置。這條連接在整個 FTP 會話過程中一直保持打開,通過 ASCII 碼字符串發(fā)送請求和接收應答。在控制連接上無法發(fā)送數(shù)據(jù),而 FTP 數(shù)據(jù)連接用于文件和文件列表的傳輸,僅在需要傳輸數(shù)據(jù)時建立數(shù)據(jù)連接,數(shù)據(jù)傳輸完畢后終止。
FTP 控制連接使用的是 TCP 21 號端口,也是 FTP 服務器的偵聽端口,等待客戶端的連接。在 TCP 21 號端口進行文件 GET( RETR )、PUT( STOR ),以及文件表( LIST )等操作時,每次都會建立一個用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)連接。數(shù)據(jù)和文件表的傳輸正式在這個數(shù)據(jù)連接上進行的。
數(shù)據(jù)連接的 TCP 連接通常使用端口 20 。也可以使用 PORT 命令修改為其它值。
相同的一個文件,不同的操作系統(tǒng)可能有不同的存儲方式。為了確保文件能夠準確的傳送給對方,常用 2 中傳輸模式:
ASCII 模式
ASCII 模式是默認的文件傳輸模式。發(fā)送方把本地文件轉(zhuǎn)換成標準的 ASCII 碼,然后在網(wǎng)絡中傳輸;接收方收到文件后,根據(jù)自己的文件存儲方式,把它轉(zhuǎn)換成本地文件。ASCII 文件傳輸模式通常用于傳輸文本文件。
二進制流模式
二進制流模式也稱為圖像文件傳輸模式。發(fā)送方不做任何轉(zhuǎn)換,把文件按照比特流的方式進行傳輸。二進制文件類型通常用于傳送程序文件。
在 FTP 數(shù)據(jù)連接過程中,有兩種數(shù)據(jù)傳輸方式:主動方式和被動方式。
FTP 主動傳輸方式,也稱為 PORT 方式。采用主動方式建立數(shù)據(jù)連接時,F(xiàn)TP 客戶端會通過 FTP 控制連接向 FTP 服務器發(fā)送 PORT 命令,PORT 命令攜帶參數(shù):A1 、A2 、A3 、A4 、P1 、P2 ,其中 A1 、A2 、A3 、A4 表示需要建立數(shù)據(jù)連接的主機 IP 地址,而 P1 和 P2 表示客戶端用于傳輸數(shù)據(jù)的臨時端口號,臨時端口號的數(shù)值為 256*P1+P2 。當需要傳輸數(shù)據(jù)時,服務器通過 TCP 端口號 20 與客戶端提供的臨時端口建立數(shù)據(jù)傳輸通道,完成數(shù)據(jù)傳輸。在整個過程中,由于服務器在建立數(shù)據(jù)連接時主動發(fā)起連接,因此被稱為主動模式。
如果客戶端在防火墻內(nèi)部,主動方式可能會有問題,因為客戶端的端口號是隨機的,防火墻并不知道。默認安全策略,防火墻只會允許外部主機訪問部分內(nèi)部已知端口,阻斷對內(nèi)部隨機端口的訪問,從而無法建立 FTP 數(shù)據(jù)連接。這時,就需要使用 FTP 被動方式來進行文件傳輸。
被動方式也被稱為 PASV 方式。FTP 控制通道建立后,希望通過被動方式建立數(shù)據(jù)傳輸通道的 FTP 客戶端會利用控制通道向 FTP 服務器發(fā)送 PASV 命令,告訴服務器進入被動方式傳輸。服務器選擇臨時端口號并告知客戶端,命令參數(shù)和主動傳輸方式一致。當需要傳輸數(shù)據(jù)時,客戶端主動與服務器的臨時端口建立數(shù)據(jù)傳輸通道,并完成數(shù)據(jù)傳輸。在整個過程中,服務器是被動接收客戶端的數(shù)據(jù)連接,所以被稱為被動模式。
采用被動方式時,兩個連接都由客戶端發(fā)起。一般防火墻不會限制內(nèi)部的客戶端發(fā)起的連接,這樣就解決了主動方式下的問題。
TFTP 也是用于服務器和客戶端之間傳輸文件的,對比 FTP ,TFTP 沒有復雜的交互接口和認證控制,適用于不需要復雜交互的網(wǎng)絡環(huán)境。
TFTP 采用客戶端和服務器的模式,使用 UDP 協(xié)議傳輸,服務器使用端口號 69 偵聽 TFTP 連接。由于 UDP 不能提供可靠的數(shù)據(jù)傳輸,因此 TFTP 使用超時重傳機制確保數(shù)據(jù)正確發(fā)送。TFTP 只能提供簡單的文件傳輸能力,包括文件的上傳和下載。不支持文件目錄功能,也不能對用戶的身份進行驗證和授權。
TFTP 協(xié)議傳輸是由客戶端發(fā)起的。當需要下載文件時,客戶端向 TFTP 服務器發(fā)送一個讀請求,然后從服務器接收數(shù)據(jù),并向服務器發(fā)送確認;當需要上傳文件時,由客戶端向服務器發(fā)送一個寫請求,然后向服務器發(fā)送數(shù)據(jù),并接收服務器的確認。
與 FTP 類似,TFTP 傳輸文件有兩種模式:netascii 模式和 octet 模式。octet 傳輸模式對應 FTP 的二進制流模式,用于傳輸程序文件;netascii 模式對應 FTP 的 ASCII 模式,用于傳輸文本文件。
TFTP 進行文件傳輸時,將傳輸文件看成是由多個連續(xù)的文件塊組成。每一個 TFTP 數(shù)據(jù)報文中包含一個文件塊,同時對應一個文件塊編號。每次發(fā)完一個文件塊后,就等待對方的確認,確認時指明塊編號。發(fā)送方發(fā)完數(shù)據(jù)后,如果在規(guī)定時間內(nèi)沒收到對端的確認,那么發(fā)送方就會重新發(fā)送數(shù)據(jù)。發(fā)送確認的一方如果在規(guī)定時間內(nèi)沒收到下一個文件塊數(shù)據(jù),則重發(fā)確認報文。這種方式可以確保文件的傳送不會因某一個數(shù)據(jù)的丟失而失敗。
每次 TFTP 發(fā)送的數(shù)據(jù)報文中包含的文件塊大小固定為 512
字節(jié),如果文件長度恰好是 512
字節(jié)的整數(shù)倍,那么在文件傳送完畢后,發(fā)送方還必須在最后發(fā)送一個不包含數(shù)據(jù)的報文,用來表示文件傳輸完畢。如果文件長度不是 512
字節(jié)的整數(shù)倍,那么最后傳送的數(shù)據(jù)報文包含的文件塊肯定小于 512
字節(jié),正好作為文件結束的標志。
電子郵件,顧名思義,就是指網(wǎng)絡上的郵政。通過電子郵件,可以發(fā)送文字內(nèi)容、圖片,還可以發(fā)送報表數(shù)據(jù)等所有計算機可以存儲的信息。電子郵件不受距離限制,可以與世界上任一的互聯(lián)網(wǎng)用戶互相聯(lián)系。由于使用簡易、投遞迅速、易于保存、不受距離限制等特點,使得電子郵件已經(jīng)成為人們普遍使用的一種應用。
大劉向女神發(fā)的第一封郵件。
電子郵件在幾十年的發(fā)展過程中出現(xiàn)了明顯的變化,從原始的發(fā)送方電腦直接向接收方電腦發(fā)送電子郵件,演變成收發(fā)雙方都使用郵件服務器代為收發(fā)郵件。通過這種方式,電子郵件通信不再依賴接收方當前是否在線,而電子郵件的通信過程由簡單的發(fā)送方到接收方,演變成發(fā)送方電腦到發(fā)送方郵件服務器,發(fā)送方郵件服務器到接收方郵件服務器,以及接收方郵件服務器到接收方電腦的三個通信過程。并且參與通信的四方都不是直接相連,而是分別獨立連接到互聯(lián)網(wǎng)中。這個架構中,郵件發(fā)送方和接收方使用的電腦稱為用戶代理。
使用電子郵件時,需要擁有一個地址,這個地址叫做郵件地址,也叫郵箱地址。它相當于通信地址和姓名。我的電子郵件如下:
networkfox@qq.com
networkfox 表示用戶的名稱,同一個通信地址內(nèi),名稱必須是唯一的,不能出現(xiàn)重復;@ 表示分隔符;qq.com 是用戶郵箱的郵件接收服務器的域名。
電子郵件的發(fā)送地址由 DNS 管理。DNS 中注冊了郵件地址和對應郵件服務器的域名。這些映射信息被稱為 MX 記錄。比如:qq.com 的 MX 記錄中指定了 mail.qq.com。那么任何發(fā)送給 qq.com 結尾的郵件都被發(fā)送到 mail.qq.com 服務器。就這樣,根據(jù) MX 記錄中指定的郵件服務器,可以管理不同郵件地址與特定郵件服務器之間的映射關系。
提供電子郵件服務的協(xié)議叫做 SMTP 。SMTP 用于收發(fā)雙方的郵件服務器之間,而不是用戶代理和郵件服務器之間的通信方式。在實際使用中,發(fā)送方用戶代理與發(fā)送方服務器之間也常采用 SMTP 協(xié)議。
SMTP 為了實現(xiàn)高效發(fā)送郵件內(nèi)容,在傳輸層使用了 TCP 協(xié)議,端口號是 25 。在一臺郵件服務器向另一臺郵件服務器發(fā)送郵件時,首先向?qū)Ψ降?TCP 25 端口發(fā)起一條連接。然后利用這條 TCP 連接發(fā)送控制消息和數(shù)據(jù)。
盡管 SMTP 協(xié)議的邏輯簡單,也足以順利完成郵件的傳輸工作,但難免存在一些安全缺陷:
SMTP 傳輸?shù)泥]件是明文的形式,沒有提供數(shù)據(jù)加密機制,可以看到郵件傳輸?shù)木唧w內(nèi)容,用戶信息的機密性無法得到保障。
SMTP 沒有提供任何認證機制,即使使用了偽造的發(fā)件人郵件地址也無法識別,會出現(xiàn)冒名頂替的安全問題。
漫天的廣告郵件和包含釣魚鏈接的垃圾郵件成為日益嚴重的問題。為了修正 SMTP 出現(xiàn)的問題,IETF 定義了擴展的 SMTP ,即 ESMTP 。ESMTP 提供的擴展功能中包括認證機制和加密機制等。
在整個郵件傳輸?shù)倪^程中,SMTP/ESMTP 協(xié)議定義了郵件服務器之間的消息傳輸方式。在接收服務器收到電子郵件后,接收方(用戶代理)是如何訪問郵件則需要其它的協(xié)議來處理。
電子郵件通過 SMTP 協(xié)議到達接收方服務器,個人電腦不可能長期處于開機狀態(tài),用戶希望一開機就能收到郵件,然而 SMTP 沒有這種功能。
為了解決這個問題,就引入了 POP3 協(xié)議。POP3 協(xié)議是用于接收電子郵件的協(xié)議。發(fā)送端的郵件使用 SMTP 協(xié)議將電子郵件轉(zhuǎn)發(fā)給一直在線的 POP3 服務器??蛻舳嗽俑鶕?jù) POP3 協(xié)議從 POP3 服務器接收郵件。這個過程中,為了防止別人盜取郵件內(nèi)容,還要進行用戶認證。
POP3 協(xié)議和 SMTP 協(xié)議一樣,是基于 TCP 的應用層協(xié)議,使用 TCP 110 端口連接郵件服務器。接收方的郵件客戶端程序首先使用 TCP 連接到 POP3 服務器的 TCP 端口 110 ;再進行用戶認證、郵件列表查詢、郵件下載、郵件刪除等操作;操作完成后,客戶端與郵件服務器之間再斷開 TCP 連接。
POP3 僅負責郵件的下載,郵件從客戶端上傳到郵件服務器由 SMTP 協(xié)議完成。
POP3 協(xié)議的郵件客戶端能夠在郵件服務器上執(zhí)行的操作很少,而且郵件要下載到客戶端本地,而不保留在郵件服務器,實際使用時很不方便。目前使用更廣泛的接收電子郵件的協(xié)議是 IMAP 。在 IMAP 中郵件則由服務器進行管理。
使用 IMAP 時,不必從服務器上下載所有的郵件也可以查看。由于 IMAP 是在服務器端處理 MIME 信息,它可以實現(xiàn)郵件附件的選擇性下載功能。比如:一封郵件有 5 個附件時,可以只下載其中的 3 個附件。IMAP 還會在服務器上對 “ 已讀/未讀 ” 信息和郵件分類進行管理,所以在不同的電腦上打開郵箱,也能保持同步,使用起來非常方便。
萬維網(wǎng)( WWW )是將互聯(lián)網(wǎng)的信息以超文本形式展現(xiàn)的系統(tǒng),也叫做 Web ??梢燥@示 WWW 信息的客戶端軟件叫做 Web 瀏覽器,有時簡稱為瀏覽器。目前常用的 Web 瀏覽器包括微軟的 Internet Explorer 、谷歌公司的 Google Chrome 、騰訊公司的 QQ 瀏覽器以及 Apple 公司的 Safari 等。
使用瀏覽器,我們不需要關心信息保存在哪個服務器,只需輕輕點擊鼠標,就可以訪問頁面上的鏈接并打開相關信息。
通過瀏覽器進行訪問后,顯示在瀏覽器上的內(nèi)容叫做 Web 頁。訪問一個網(wǎng)站時看到的第一個頁面稱為首頁(又稱為主頁)。很多公司的主頁地址形式如下:
http://www.公司名稱.com.cn
這類主頁中通常有公司概況、產(chǎn)品信息、招聘信息等內(nèi)容。我們可以點擊這些標題的圖標或鏈接,就可以跳轉(zhuǎn)到對應的頁面上。這些頁面上的信息不僅僅是文字內(nèi)容,還有圖片或動畫,甚至是聲音或其它程序等各種各樣的信息。我們不但可以通過 Web 頁獲取信息,還可以自己制作 Web 頁向全世界發(fā)布信息。
WWW 有 3 個重要的概念,它們分別是訪問信息的方式和位置( URI )、信息的表現(xiàn)形式( HTML )以及信息傳輸( HTTP )等操作。
URI 用于標識資源,是一種高效的識別碼,被應用于主頁地址、電子郵件、電話號碼等。
http://www.rfc-editor.org/rfc/rfc4395.txt
http://www.ietf.org:80/index.html
http://localhost:321
通常主頁地址被叫做 URL 。URL 常用來表示網(wǎng)絡資源的具體位置。但是 URI 不限于標識互聯(lián)網(wǎng)資源,可以作為所有資源的標識符。簡單說就是 URL 是 URI 的一個子集。
WWW 主要使用 http 和 https 表示 Web 頁的位置和訪問 Web 頁的方法。http 的具體格式如下:
http://主機名/路徑
http://主機名:端口號/路徑
http://主機名:端口號/路徑?訪問內(nèi)容#部分信息
其中主機名可以用域名或 IP 地址表示,端口號表示傳輸端口號。省略端口號時,表示使用 http 的默認端口 80 。路徑是指主機上信息的位置,訪問內(nèi)容表示要傳給 CGI 的信息,部分信息表示頁面當中的位置等。
這種表示方法可以標識互聯(lián)網(wǎng)中特定的數(shù)據(jù)。由于 http 展現(xiàn)的數(shù)據(jù)隨時都有可能發(fā)生變化,所以記住頁面的 URI( URL ),也不能保證下次能夠訪問到這個頁面。
HTML 是用來描述 Web 頁的一種語言。它可以指定瀏覽器中顯示的文字、文字的大小和顏色,還可以對圖像、動畫或音頻進行設置。
在頁面中 HTML 不僅可以文字或圖片附加鏈接,點擊鏈接時還可以呈現(xiàn)鏈接所指的內(nèi)容?;ヂ?lián)網(wǎng)中任何一個 WWW 服務器中的信息都可以以鏈接的方式展現(xiàn)。
HTML 也可以說是 WWW 的數(shù)據(jù)表現(xiàn)協(xié)議。只要是用 HTML 展現(xiàn)的數(shù)據(jù),即使是在不同的計算機上,效果基本上是一樣的。
當用戶在瀏覽器的地址欄里輸入 Web 頁的 URL 后,HTTP 的處理就開始了。HTTP 默認使用 80 端口。它的工作機制,首先是客戶端向服務器的 80 端口建立一個 TCP 連接,然后在這個 TCP 連接上進行請求和應答以及數(shù)據(jù)報文的發(fā)送。
HTTP 中常用的有兩個版本,一個是 HTTP 1.0 ,另一個是 HTTP 1.1 。在HTTP 1.0 中每一個命令和應答都會觸發(fā)一次 TCP 連接的建立和斷開。而從 HTTP 1.1 開始,允許在一個 TCP 連接上發(fā)送多個命令和應答,這種方式也叫保持連接( keep-alive )??梢源罅繙p少 TCP 連接的建立和斷開操作,提高傳輸效率。
很多應用層協(xié)議廣為人知,是因為我們在日常上網(wǎng)的過程中,會大量使用與這些應用協(xié)議有關的應用程序,這類應用協(xié)議稱為終端用戶應用協(xié)議;另外還有一些應用協(xié)議在網(wǎng)絡中廣泛使用,但我們對它們卻少有聽聞,最多在網(wǎng)絡無法正常使用時,才會意識到它們的存在,這類應用層協(xié)議稱為系統(tǒng)應用協(xié)議。
在日常工作中,網(wǎng)絡工程師經(jīng)常使用到的系統(tǒng)應用協(xié)議有 DHCP 協(xié)議和 DNS 協(xié)議。
聯(lián)系客服