服務(wù)訪問(wèn)點(diǎn)SAP(Service Access Point)是網(wǎng)絡(luò)體系結(jié)構(gòu)中上下層之間進(jìn)行通信的接口,即N層的SAP就是N+1層可以訪問(wèn)N層的通道。
具體解釋?zhuān)琒AP就是相鄰層實(shí)體(軟件或硬件)之間的邏輯接口,如圖4-17所示.若按照Internet四層網(wǎng)絡(luò)體系結(jié)構(gòu)分析,網(wǎng)絡(luò)訪問(wèn)層向上層(網(wǎng)絡(luò)層)提供的SAP應(yīng)該是各種介質(zhì)訪問(wèn)控制的方法(詳細(xì)解釋請(qǐng)參見(jiàn)第5.2節(jié)介紹);網(wǎng)絡(luò)層向上層(傳輸層)提供的SAP就是TCP和i兀護(hù)兩種不同的數(shù)據(jù)傳輸服務(wù)接口;而傳輸層向上層(應(yīng)用層)提供的SAP就是TCP和UDP兩種數(shù)據(jù)傳輸方式允許通過(guò)不同網(wǎng)站建設(shè)端口進(jìn)行若干個(gè)進(jìn)程的復(fù)用。
2.通信流程
Internet網(wǎng)絡(luò)通信技術(shù)看似深?yuàn)W、復(fù)雜,但并不是想象的那么難以理解。把TCP/IP協(xié)議按照各層“服務(wù)訪問(wèn)點(diǎn)”分層給出,再描繪Internet各層的數(shù)據(jù)通信流程就簡(jiǎn)單易傲了。首先,用戶(hù)數(shù)據(jù)從不同應(yīng)用進(jìn)程的端口分別流向丁CP或UDP;在傳輸層,TCP或UDP收到上層來(lái)自不同進(jìn)程的報(bào)文數(shù)據(jù)后,開(kāi)始封裝傳輸層的數(shù)據(jù)單元,封裝的主要信息是上層進(jìn)程的源端口號(hào)和目的端口號(hào),然后通過(guò)指定的服務(wù)訪問(wèn)點(diǎn)流向網(wǎng)絡(luò)層;在網(wǎng)絡(luò)層,上層的數(shù)據(jù)單元無(wú)論是TCP數(shù)據(jù)報(bào),還是UDP數(shù)據(jù)報(bào),IP協(xié)議均將其作為本層傳輸數(shù)據(jù)再次進(jìn)行封裝,封裝的主要信息是源發(fā)端IP地址和目的端IP地址;然后通過(guò)下層的服務(wù)訪問(wèn)點(diǎn)流向網(wǎng)絡(luò)訪問(wèn)層。

當(dāng)網(wǎng)絡(luò)出現(xiàn)故障導(dǎo)致網(wǎng)絡(luò)不通或目的主機(jī)不可達(dá)、路由不可用等情況時(shí),ICMP協(xié)議就會(huì)輔助傳送相應(yīng)的控制消息,以通知網(wǎng)絡(luò)管理、各轉(zhuǎn)發(fā)路由器以及源發(fā)主機(jī)用戶(hù)。ARP協(xié)議是輔助在數(shù)據(jù)鏈路層傳送數(shù)據(jù)時(shí),可獲取下一鏈接點(diǎn)或目的節(jié)點(diǎn)的MAC地址。
通過(guò)上述分析可知:
(1)網(wǎng)絡(luò)層和傳輸層之間的職責(zé)是非常清晰而明確的。網(wǎng)絡(luò)層的IP協(xié)議頭指明了數(shù)據(jù)傳輸過(guò)程中兩端主機(jī)的邏輯地址(IP);而傳輸層的TCP或UDP協(xié)議頭指明了數(shù)據(jù)傳輸過(guò)程中兩端進(jìn)程的端地址(源端口和目的端口)。網(wǎng)絡(luò)層只負(fù)責(zé)網(wǎng)絡(luò)之間主機(jī)到主機(jī)的數(shù)據(jù)傳輸,而傳輸層只負(fù)責(zé)進(jìn)程與進(jìn)程之間端到端的數(shù)據(jù)傳輸。
(2)一個(gè)完整的數(shù)據(jù)傳輸過(guò)程至少要有3個(gè)基本參數(shù)。一是進(jìn)程間端到端傳輸數(shù)據(jù)所需要的端口號(hào),二是傳輸層數(shù)據(jù)傳輸?shù)目刂品绞剑碩CP或UDP,三是網(wǎng)絡(luò)間主機(jī)到主機(jī)傳輸數(shù)據(jù)所需要的IP地址。將這3個(gè)基本參數(shù)綁定起來(lái)就構(gòu)成了一個(gè)套接字Socket,以虛擬文件形式管理著。可以這樣理解,任何兩個(gè)應(yīng)用層之間的數(shù)據(jù)傳輸均是通過(guò)一個(gè)特定的套接字接口實(shí)現(xiàn)的。