OSI / RM 參考模型有3個(gè)主要概念:服務(wù)、接口和協(xié)議,但是 TCP / IP 參考模型最初沒(méi)有明確區分服務(wù)、接口和協(xié)議。
一、協(xié)議:網(wǎng)絡(luò )協(xié)議就是通信雙方都必須要遵守的規則,和我們日常生活中的約定一樣。如果沒(méi)有網(wǎng)絡(luò )協(xié)議,計算機中的數據無(wú)法發(fā)送到網(wǎng)絡(luò )上,更無(wú)法到達對方計算機上。有了網(wǎng)絡(luò )通信協(xié)議,網(wǎng)絡(luò )通信才能夠發(fā)生。協(xié)議的實(shí)現是很復雜的。因為協(xié)議要把電子郵件、文檔等加工轉化成可以在網(wǎng)絡(luò )上傳輸的信號,需要進(jìn)行非常復雜的處置流程才能讓人讀得懂它傳輸的數據,協(xié)議中,每一層都是通過(guò)層間接口向上一層提供一定的服務(wù),而把"這種服務(wù)是如何實(shí)現的細節對上層加以屏蔽。
假設網(wǎng)絡(luò )協(xié)議分為若干層,那么 A、B 兩節點(diǎn)通信,實(shí)際是節點(diǎn) A 的第 n 層與節點(diǎn) B 的第 n 層進(jìn)行通信,故協(xié)議總是指某一層的協(xié)議。準確地說(shuō),它是在同等層之間的實(shí)體通信時(shí),有關(guān)通信規則和約定的集合就是該層協(xié)議,如物理層協(xié)議、傳輸層協(xié)議、應用層協(xié)議。每一相鄰層協(xié)議間有一接口,下層通過(guò)該接口向上一層提供服務(wù)。
從用戶(hù)來(lái)看,通信是在用戶(hù) A 和用戶(hù) B 之間進(jìn)行的。雙方遵守應用層協(xié)議,通信為水平方向。但實(shí)際上,信息并不是從 A 站的應用層直接傳送至 B 站的應用層,而是每一層都把數據和控制信息傳給它的下一層,直至最低層,第一層之下是物理傳輸介質(zhì),在物理介質(zhì)上傳送的是實(shí)際電信號。信息的實(shí)際流動(dòng)過(guò)程如圖所示。
信息流動(dòng)過(guò)程
網(wǎng)絡(luò )協(xié)議主要由以下三個(gè)要素組成:
1、語(yǔ)法:即數據與控制信息的結構或格式,包括數據的組織方式、編碼方式、信號電平的表示方式等。
2、語(yǔ)義:即需要發(fā)出何種控制信息,完成何種動(dòng)作及做出何種應答,以實(shí)現數據交換的協(xié)調和差錯處理。
3、時(shí)序:即事件實(shí)現順序的詳細說(shuō)明,以實(shí)現速率匹配和排序
二、服務(wù):服務(wù)是協(xié)議外部行為的體現,各層服務(wù)是垂直關(guān)系,即網(wǎng)絡(luò )中低層協(xié)議向相鄰的高層協(xié)議提供服務(wù),如上圖中的物理層向數據鏈路層服務(wù)。高層則通過(guò)原語(yǔ)( Primitive )或過(guò)程( Procedure )調用相鄰低層所提供的服務(wù)。計算機網(wǎng)絡(luò )向用戶(hù)提供兩類(lèi)關(guān)于數據傳輸方式的服務(wù)。
1、面向連接的服務(wù)( Connection Oriented Service )。面向連接的服務(wù)思想來(lái)源于電話(huà)傳輸系統。其過(guò)程可以分為三部分,即建立連接,數據傳輸與斷開(kāi)連接,稱(chēng)為虛電路方式。面向連接的服務(wù)又可分為永久性連接服務(wù)和非永久性連接服務(wù)。
非永久性連接服務(wù)在每個(gè)應用(或稱(chēng)為數據流)開(kāi)始之前,都要先進(jìn)行連接,待連接成功之后再進(jìn)行數據通信。通信完畢之后斷開(kāi)連接。
永久性連接則只是在第一次進(jìn)行數據通信之前進(jìn)行連接。待該連接成功后將一直把該連接的路徑存入相應的計算機或網(wǎng)絡(luò )設備中。除非管理員刪除掉永久性連接或網(wǎng)絡(luò )故障,以后這兩臺計算機進(jìn)行通信時(shí)就不用再進(jìn)行連接。
面向連接的服務(wù)只有在建立連接時(shí)發(fā)送的分組中才包含相應的目的地址。待連接建立起來(lái)之后,所傳送的分組中將不再包含目的地址,而僅包含比目的地址要短小得多的連接標識( Connection Identifier ),從而減少了數據分組傳輸的負載。面向連接的另一個(gè)好處就是一旦連接中斷,用戶(hù)馬上就能發(fā)現。這使得用戶(hù)可以很快地采取相應的措施。 TCP 協(xié)議就是面向連接的, ATM ( Asynchronous Transfer Mode ,異步傳輸模式)交換機、幀中繼網(wǎng)( Frame Relay , FR )等也是面向連接的。
2、無(wú)連接服務(wù)( Connectionless Service )。無(wú)連接服務(wù)的工作方式就像郵電系統。兩個(gè)通信的計算機之間無(wú)須事先建立連接。以無(wú)連接服務(wù)方式傳輸每個(gè)數據分組中都必須包含目的地址。無(wú)連接方式不能防止分組的丟失、重復或失序等錯誤。無(wú)連接方式的優(yōu)點(diǎn)是處理開(kāi)銷(xiāo)小,發(fā)送信息快,比較適合實(shí)時(shí)數據的處理和傳輸。 UDP 協(xié)議就是無(wú)連接方式的。 IP 協(xié)議也是無(wú)連接的。以太網(wǎng)、令牌環(huán)網(wǎng)、光纖分布式數據接口( Fiber Distributed Data Interface , FDDI )網(wǎng)等共享傳輸介質(zhì)的局域網(wǎng)都是無(wú)連接方式的。交換式以太網(wǎng)包括千兆位以太網(wǎng)都是無(wú)連接方式的。
三、服務(wù)、接口和協(xié)議三者的關(guān)系:服務(wù)、接口和協(xié)議三者的關(guān)系如圖下圖所示。接口是兩相鄰協(xié)議層之間所有調用和服務(wù)訪(fǎng)問(wèn)點(diǎn)以及服務(wù)的集合。相鄰高層協(xié)議通過(guò)不同的服務(wù)訪(fǎng)問(wèn)點(diǎn)( Service Access Point , SAP )對低層協(xié)議進(jìn)行調用,就像過(guò)程調用中不同的過(guò)程調用要使用不同的過(guò)程調用名一樣。網(wǎng)絡(luò )層的服務(wù)訪(fǎng)問(wèn)點(diǎn)就是網(wǎng)絡(luò )地址。
四、數據傳送單位:數據傳送單位可以分為以下三種:
1、服務(wù)數據單元( Service Data Unit , SDU ):為完成用戶(hù)所要求的功能而應傳送的數據。第 N 層的服務(wù)數據單元記為 N - SDU 。
2、協(xié)議控制信息( Protocol Control Information , PCI ):控制協(xié)議操作的信息。第 N 層的協(xié)議控制信息記為 N - PCI 。
3、協(xié)議數據單元( Protocol Data Unit , PDU ):協(xié)議交換的數據單位。第 N 層的協(xié)議數據單元記為 N - PDU 。