網(wǎng)絡(luò)協(xié)議一詞指定了一組規(guī)則或約定來執(zhí)行特定任務(wù)。在數(shù)據(jù)傳輸中,網(wǎng)絡(luò)協(xié)議在較不廣義的意義上用于表示用于實(shí)現(xiàn) OSI 模型的一個(gè)或多個(gè)級(jí)別的一組規(guī)則或規(guī)范。網(wǎng)絡(luò)協(xié)議定義了它進(jìn)行通信、通信方式以及通信時(shí)間。網(wǎng)絡(luò)協(xié)議的關(guān)鍵元素是它的句法、語義和時(shí)序。
句法:指的是數(shù)據(jù)格式的結(jié)構(gòu),即它們出現(xiàn)的順序。例如,一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)協(xié)議可能期望數(shù)據(jù)的前八位是發(fā)送方的地址,接下來的八位是接收方的地址,而流的其余部分是消息本身。
語義:指的是每個(gè)位段的含義。您如何解釋特定模式并根據(jù)該表示采取行動(dòng)。例如,地址是否標(biāo)識(shí)要采用的路由或消息的最終目的地?
Timing:它定義了兩個(gè)特征:數(shù)據(jù)應(yīng)該發(fā)送的時(shí)間和發(fā)送的速度。例如,如果發(fā)送方以 100Mbps 的速度產(chǎn)生數(shù)據(jù),但接收方只能以 1Mbps 的速度處理數(shù)據(jù),則傳輸會(huì)使接收方超載,從而導(dǎo)致大量數(shù)據(jù)丟失。
我們將在本教程中涵蓋以下主題:
協(xié)議功能
最常見的網(wǎng)絡(luò)協(xié)議
協(xié)議功能
并非所有網(wǎng)絡(luò)協(xié)議都執(zhí)行所有功能,因?yàn)檫@意味著大量的重復(fù)工作。在不同級(jí)別的網(wǎng)絡(luò)協(xié)議中存在多個(gè)相同類型功能的示例。
網(wǎng)絡(luò)協(xié)議的功能可以分為以下幾類:
分段和組裝:當(dāng)應(yīng)用程序的實(shí)體(任何能夠發(fā)送或接收信息的東西)以消息或連續(xù)序列發(fā)送數(shù)據(jù)時(shí),較低級(jí)別的網(wǎng)絡(luò)協(xié)議可能需要將數(shù)據(jù)分成更小的塊和所有數(shù)據(jù)。為方便起見,它被稱為協(xié)議數(shù)據(jù)單元(PDU),即兩個(gè)實(shí)體之間通過網(wǎng)絡(luò)協(xié)議交換的數(shù)據(jù)塊。
封裝:每個(gè)PDU 不僅包含數(shù)據(jù),還包含控制信息。相反,某些 PDU 僅包含控制信息,不包含數(shù)據(jù)。控制信息分為三類:
•地址:您可以指定發(fā)件人和收件人的地址。
•錯(cuò)誤地址代碼:有時(shí)包含一些幀校驗(yàn)序列用于錯(cuò)誤檢測(cè)。
•協(xié)議控制:包含附加信息以實(shí)現(xiàn)本節(jié)其余部分列出的網(wǎng)絡(luò)協(xié)議功能。
連接控制:一個(gè)實(shí)體可以將數(shù)據(jù)傳輸?shù)搅硪粋€(gè)實(shí)體,以便每個(gè) PDU 獨(dú)立于之前的 PDU 進(jìn)行處理。它被稱為非連接導(dǎo)向數(shù)據(jù)的傳輸;一個(gè)例子是數(shù)據(jù)報(bào)的使用。盡管這種模式很有用,但同樣重要的技術(shù)是面向連接的數(shù)據(jù)傳輸,虛電路就是一個(gè)例子。
如果站點(diǎn)提供擴(kuò)展的數(shù)據(jù)交換并且它們的網(wǎng)絡(luò)協(xié)議的某些細(xì)節(jié)動(dòng)態(tài)變化,則最好(甚至是必要的)傳輸面向連接的數(shù)據(jù)。在實(shí)體之間建立邏輯關(guān)聯(lián)或連接。
• 連接建立
• 數(shù)據(jù)傳輸
• 連接釋放
已訂購運(yùn)費(fèi):如果兩個(gè)通信實(shí)體位于網(wǎng)絡(luò)中的不同站點(diǎn),則存在 PDU 不會(huì)按照它們發(fā)送的相同順序接收的危險(xiǎn),因?yàn)樗鼈冊(cè)诰W(wǎng)絡(luò)中遵循不同的路徑。在面向連接的協(xié)議中,通常需要維護(hù) PDU 的順序。例如,如果您在兩個(gè)系統(tǒng)之間傳輸文件,我們希望確保接收文件的記錄與傳輸文件的記錄順序相同,而不是混合。如果每個(gè) PDU 都有一個(gè)唯一的編號(hào),并且這些編號(hào)是按順序分配的,那么根據(jù)序列號(hào)對(duì)接收到的 PDU 進(jìn)行重新排序?qū)τ诮邮諏?shí)體來說是一項(xiàng)簡(jiǎn)單的邏輯任務(wù)。該方案的唯一問題是由于使用了有限的序列號(hào)域(模塊某個(gè)最大數(shù))導(dǎo)致序列號(hào)重復(fù)。
流量控制:流量控制是接收實(shí)體執(zhí)行的一項(xiàng)功能,用于限制發(fā)布實(shí)體發(fā)送的數(shù)據(jù)量或速率。
最純粹的流量控制形式是停止等待程序,其中每個(gè) PDU 必須在發(fā)送下一個(gè) PDU 之前進(jìn)行確認(rèn)。使用更高效的網(wǎng)絡(luò)協(xié)議意味著使用發(fā)行者提供的某種形式的信用,這是無需確認(rèn)即可發(fā)送的數(shù)據(jù)量。
錯(cuò)誤控制:使用技術(shù)來管理數(shù)據(jù)和控制信息的丟失或錯(cuò)誤是必要的。大多數(shù)技術(shù)包括基于使用幀校驗(yàn)序列的錯(cuò)誤檢測(cè)和 PDU 重傳。
尋址:通信體系結(jié)構(gòu)中尋址的概念很復(fù)雜,包含大量概念,例如尋址級(jí)別、地址范圍、連接標(biāo)識(shí)符和尋址模式。
多路復(fù)用:多路復(fù)用與尋址的概念有關(guān)。在單個(gè)系統(tǒng)中,通過多個(gè)連接支持的一種多路復(fù)用形式。例如,對(duì)于 X.25,可以有多個(gè)虛擬電路以同一個(gè)最終系統(tǒng)結(jié)束;可以說,這些虛電路復(fù)用在最終系統(tǒng)和網(wǎng)絡(luò)之間的物理接口上。
傳輸服務(wù):網(wǎng)絡(luò)協(xié)議可以為使用它的實(shí)體提供各種各樣的附加服務(wù)。三個(gè)常見的例子是優(yōu)先級(jí)、服務(wù)程度和安全性。
最常見的網(wǎng)絡(luò)協(xié)議
網(wǎng)絡(luò)協(xié)議決定了信息(包括數(shù)據(jù)和控制)的模式和組織,以便通過具有低級(jí)協(xié)議的物理介質(zhì)進(jìn)行傳輸。最常見的網(wǎng)絡(luò)協(xié)議是:
IPX/SPX
IPX/SPX (Internetwork Packet Exchange / Sequenced Packet Exchange) 是由 Novell 開發(fā)的一組網(wǎng)絡(luò)協(xié)議,用于您的 Netware 網(wǎng)絡(luò)操作系統(tǒng)。IPX/SPX 分組的協(xié)議比 TCP/IP 少,因此它不需要 TCP/IP 所需的一般負(fù)載。IPX / SPX 可用于小型和大型網(wǎng)絡(luò)并允許數(shù)據(jù)路由。
網(wǎng)絡(luò)用戶界面
NetBEUI(NetBIOS 擴(kuò)展用戶界面)是一種快速直接的網(wǎng)絡(luò)協(xié)議,旨在與 Microsoft 和 IBM 為小型網(wǎng)絡(luò)開發(fā)的 NetBios 協(xié)議(Net-Ware 基本輸入輸出系統(tǒng))結(jié)合使用。NetBEUI 在 OSI 模型的傳輸層中運(yùn)行。
由于 NetBEUI 只提供 OSI 傳輸層和網(wǎng)絡(luò)層所需的服務(wù),它需要與運(yùn)行在 OSI 模型層的 NetBios 一起工作,并負(fù)責(zé)建立連接到網(wǎng)絡(luò)的兩臺(tái)計(jì)算機(jī)之間的通信會(huì)話。Microsoft 網(wǎng)絡(luò)還包括另外兩個(gè)組件:重定向器和服務(wù)器消息塊。重定向器在應(yīng)用層運(yùn)行,使客戶端計(jì)算機(jī)將所有網(wǎng)絡(luò)資源視為本地資源。服務(wù)器消息塊(Server Message Block 或 SMB)在客戶端機(jī)器和網(wǎng)絡(luò)服務(wù)器中的重定向器之間提供同級(jí)通信。服務(wù)器消息塊在 OSI 模型的表示層中運(yùn)行。
雖然它是一種優(yōu)秀的低成本傳輸協(xié)議,但 NetBEUI 不是一種可以通過路由器路由的協(xié)議,因此它不能使用網(wǎng)內(nèi)互連。因此,雖然 NetBEUI 是小型和簡(jiǎn)單網(wǎng)絡(luò)的網(wǎng)絡(luò)協(xié)議選項(xiàng),但它不適用于需要使用路由器的更廣泛的網(wǎng)絡(luò)。
網(wǎng)絡(luò)協(xié)議/網(wǎng)絡(luò)協(xié)議
通常被稱為“低價(jià)協(xié)議”的 TCP/IP 已經(jīng)成為企業(yè)網(wǎng)絡(luò)連接的事實(shí)標(biāo)準(zhǔn)。TCP/IP 網(wǎng)絡(luò)具有廣泛的可擴(kuò)展性,因此 TCP/IP 可用于小型和大型網(wǎng)絡(luò)。
TCP/IP是一組可以運(yùn)行在不同軟件平臺(tái)(Windows、Unix等)上的路由協(xié)議,幾乎所有的網(wǎng)絡(luò)操作系統(tǒng)都支持它作為默認(rèn)的網(wǎng)絡(luò)協(xié)議。TCP/IP由一系列組成TCP/IP棧的成員協(xié)議組成。并且由于在 OSI 參考模型完成之前開發(fā)的 TCP/IP 協(xié)議集,構(gòu)成它的協(xié)議不能與模型的不同層正確對(duì)應(yīng)。
APPLETALK
該協(xié)議從一開始就包含在 Apple Macintosh計(jì)算機(jī)操作系統(tǒng)中,允許計(jì)算機(jī)和外圍設(shè)備以非常簡(jiǎn)單的方式為用戶互連,因?yàn)樗恍枰魏闻渲茫硪环矫妫僮飨到y(tǒng)會(huì)處理一切。盡管許多網(wǎng)絡(luò)管理員不認(rèn)為 AppleTalk 是公司或互連網(wǎng)絡(luò)協(xié)議,但 AppleTalk 允許通過路由器路由數(shù)據(jù)。AppleTalk 可以支持以太網(wǎng)、令牌環(huán)和 FDI 網(wǎng)絡(luò)體系結(jié)構(gòu)。