網(wǎng)絡(luò)體系結(jié)構(gòu)-OSI參考模型 國(guó)際標(biāo)準(zhǔn)化組織(ISO)在1978年提出了開(kāi)放系統(tǒng)互連參考模型(OSI:Open System Interconnection Reference Mode),該模型是設(shè)計(jì)和描述網(wǎng)絡(luò)通信的基本框架。生產(chǎn)廠商根據(jù)OSI模型的標(biāo)準(zhǔn)設(shè)計(jì)自己的產(chǎn)品。OSI描述了網(wǎng)絡(luò)硬件和軟件如何以層的方式協(xié)同工作進(jìn)行網(wǎng)絡(luò)通信。
2.2.1 OSI七層模型 開(kāi)放系統(tǒng)互連參考模型(OSI)采用分層的結(jié)構(gòu)化技術(shù),共分7層,從低到高為:物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會(huì)話(huà)層、表示層、應(yīng)用層。OSI參考模型的每一層都定義了所實(shí)現(xiàn)的功能,完成某特定的通信任務(wù),并只與相鄰的上層和下層進(jìn)行數(shù)據(jù)的交換。如圖2.2所示。 ![]() 2.2.2 OSI參考模型各層的功能 OSI參考模型的每一層都有它自己必須實(shí)現(xiàn)的一系列功能,以保證數(shù)據(jù)包能從源結(jié)點(diǎn)傳輸?shù)侥康慕Y(jié)點(diǎn)。下面簡(jiǎn)單介紹OSI參考模型各層的功能。 1.物理層(Physical Layer) 物理層是OSI參考模型的最低層,也是OSI體系結(jié)構(gòu)中最重要的、最基礎(chǔ)的一層。物理層并不是指物理設(shè)備或物理媒體,而是有關(guān)物理設(shè)備通過(guò)物理媒體進(jìn)行互連的描述和規(guī)定。物理層協(xié)議定義了接口的機(jī)械特性、電氣特性、功能特性、規(guī)程特性等4個(gè)基本特性。 物理層以比特流的方式傳送來(lái)自數(shù)據(jù)鏈路層的數(shù)據(jù),而不去理會(huì)數(shù)據(jù)的含義或格式。同樣,它接收數(shù)據(jù)后直接傳給數(shù)據(jù)鏈路層。也就是說(shuō),物理層只能看見(jiàn)0和1,它沒(méi)有一種機(jī)制用于確定自己所處理的比特流的具體意義,而只與數(shù)據(jù)通信的機(jī)械或電氣特性有關(guān)。 2.?dāng)?shù)據(jù)鏈路層(Da 數(shù)據(jù)鏈路層是OSI模型的第二層,負(fù)責(zé)通過(guò)物理層從一臺(tái)計(jì)算機(jī)到另一臺(tái)計(jì)算機(jī)無(wú)差錯(cuò)地傳輸數(shù)據(jù)幀,允許網(wǎng)絡(luò)層通過(guò)網(wǎng)絡(luò)連接進(jìn)行虛擬無(wú)差錯(cuò)地傳輸。 通常,數(shù)據(jù)鏈路層發(fā)送一個(gè)數(shù)據(jù)幀后,等待接收方的確認(rèn)。接收方數(shù)據(jù)鏈路層檢測(cè)幀傳輸過(guò)程中產(chǎn)生的任何問(wèn)題。沒(méi)有經(jīng)過(guò)確認(rèn)的幀和損壞的幀都要進(jìn)行重傳。 3.網(wǎng)絡(luò)層(Network Layer) 網(wǎng)絡(luò)層是OSI模型的第3層,負(fù)責(zé)信息尋址和將邏輯地址與名字轉(zhuǎn)換為物理地址。 在網(wǎng)絡(luò)層,數(shù)據(jù)傳送的單位是包。網(wǎng)絡(luò)層的任務(wù)就是要選擇合適的路徑和轉(zhuǎn)發(fā)數(shù)據(jù)包,使發(fā)送方的數(shù)據(jù)包能夠正確無(wú)誤的按地址尋找到接收方的路徑,并將數(shù)據(jù)包交給接收方。網(wǎng)絡(luò)中兩結(jié)點(diǎn)之間達(dá)到的路徑可能有很多,應(yīng)通過(guò)哪條路徑才能將數(shù)據(jù)從源設(shè)備傳送到所要通信的目的設(shè)備,在尋找最快捷花費(fèi)最低的路徑時(shí),必須考慮網(wǎng)絡(luò)擁塞程度、服務(wù)質(zhì)量、線路的花費(fèi)和線路有效性等諸多因素。總的來(lái)說(shuō),網(wǎng)絡(luò)層負(fù)責(zé)選擇最佳路徑。 網(wǎng)絡(luò)層處于傳輸層和數(shù)據(jù)鏈路層之間,它負(fù)責(zé)向傳輸層提供服務(wù),同時(shí)負(fù)責(zé)將網(wǎng)絡(luò)地址翻譯成對(duì)應(yīng)的物理地址。網(wǎng)絡(luò)層協(xié)議還能協(xié)調(diào)發(fā)送、傳輸以及接收設(shè)備的能力不平衡的問(wèn)題,如網(wǎng)絡(luò)層對(duì)數(shù)據(jù)進(jìn)行分段和重組,以使得數(shù)據(jù)的長(zhǎng)度能夠滿(mǎn)足該網(wǎng)絡(luò)下層數(shù)據(jù)鏈路層所支持的最大的數(shù)據(jù)幀(MTU)的長(zhǎng)度。 另外,網(wǎng)絡(luò)層還需要考慮采用不同的網(wǎng)絡(luò)層協(xié)議的網(wǎng)絡(luò)之間的互聯(lián)問(wèn)題,如TCP/IP使用的IP協(xié)議和NOVELL使用的IPX協(xié)議之間的互連。 4.傳輸層(Transport Layer) 傳輸層的功能是保證在不同子網(wǎng)的兩臺(tái)設(shè)備間數(shù)據(jù)包可靠、順序、無(wú)錯(cuò)地傳輸。在傳輸層,數(shù)據(jù)傳送的單位是段。傳輸層負(fù)責(zé)處理端對(duì)端通信,所謂端對(duì)端是指從一個(gè)終端(主機(jī))到另一個(gè)終端(主機(jī)),中間可以有一個(gè)或多個(gè)交換結(jié)點(diǎn)。 傳輸層向高層用戶(hù)提供端到端的可靠的透明傳輸服務(wù),為不同進(jìn)程間的數(shù)據(jù)交換提供可靠的傳送手段。在傳輸層一個(gè)很重要的工作是數(shù)據(jù)的分段和重組,即把一個(gè)上層數(shù)據(jù)分割成更小的邏輯片或物理片。換言之,也就是發(fā)送方在傳輸層把上層交給它的較大的數(shù)據(jù)進(jìn)行分段后分別交給網(wǎng)絡(luò)層進(jìn)行獨(dú)立傳輸,從而實(shí)現(xiàn)在傳輸層的流量控制,提高網(wǎng)絡(luò)資源的利用率。在接收方將收到的分段的數(shù)據(jù)重組,還原成為原先完整的數(shù)據(jù)。 另外,傳輸層的另一主要功能就是將收到的亂序數(shù)據(jù)包重新排序,并驗(yàn)證所有的分組是否都已被收到。 5.會(huì)話(huà)層(Session Layer) 會(huì)話(huà)層是利用傳輸層提供的端到端的服務(wù),向表示層或會(huì)話(huà)用戶(hù)提供會(huì)話(huà)服務(wù)。會(huì)話(huà)層的主要功能是在兩個(gè)結(jié)點(diǎn)間建立、維護(hù)和釋放面向用戶(hù)的連接,并對(duì)會(huì)話(huà)進(jìn)行管理和控制,保證會(huì)話(huà)數(shù)據(jù)可靠傳送。 在會(huì)話(huà)層和傳輸層都提到了連接,那么會(huì)話(huà)連接和傳輸連接到底有什么區(qū)別呢?會(huì)話(huà)連接和傳輸連接之間有三種關(guān)系:一對(duì)一關(guān)系,即一個(gè)會(huì)話(huà)連接對(duì)應(yīng)一個(gè)傳輸連接;一對(duì)多關(guān)系,一個(gè)會(huì)話(huà)連接對(duì)應(yīng)多個(gè)傳輸連接;多對(duì)一關(guān)系,多個(gè)會(huì)話(huà)連接對(duì)應(yīng)一個(gè)傳輸關(guān)系。 會(huì)話(huà)過(guò)程中,會(huì)話(huà)層需要決定到底使用全雙工通信還是半雙工通信。如果采用全雙工通信,則會(huì)話(huà)層在對(duì)話(huà)管理中要做的工作就很少;如果采用半雙工通信,會(huì)話(huà)層則通過(guò)一個(gè)數(shù)據(jù)令牌來(lái)協(xié)調(diào)會(huì)話(huà),保證每次只有一個(gè)用戶(hù)能夠傳輸數(shù)據(jù)。 會(huì)話(huà)層提供了同步服務(wù),通過(guò)在數(shù)據(jù)流中定義檢查點(diǎn)(Checkpoint)來(lái)把會(huì)話(huà)分割成明顯的會(huì)話(huà)單元。當(dāng)網(wǎng)絡(luò)故障出現(xiàn)時(shí),從最后一個(gè)檢查點(diǎn)開(kāi)始重傳數(shù)據(jù)。 常見(jiàn)的會(huì)話(huà)層協(xié)議有:結(jié)構(gòu)化查詢(xún)語(yǔ)言(SQL)、遠(yuǎn)程進(jìn)程呼叫(RPC)、X-windows 系統(tǒng)、AppleTalk 會(huì)話(huà)協(xié)議、數(shù)字網(wǎng)絡(luò)結(jié)構(gòu)會(huì)話(huà)控制協(xié)議(DNA SCP)等。 6.表示層(Presentation Layer) OSI模型中,表示層以下的各層主要負(fù)責(zé)數(shù)據(jù)在網(wǎng)絡(luò)中傳輸時(shí)不出錯(cuò)。但數(shù)據(jù)的傳輸沒(méi)有出錯(cuò),并不代表數(shù)據(jù)所表示的信息不會(huì)出錯(cuò)。表示層專(zhuān)門(mén)負(fù)責(zé)有關(guān)網(wǎng)絡(luò)中計(jì)算機(jī)信息表示方式的問(wèn)題。表示層負(fù)責(zé)在不同的數(shù)據(jù)格式之間進(jìn)行轉(zhuǎn)換操作,以實(shí)現(xiàn)不同計(jì)算機(jī)系統(tǒng)間的信息交換。 除了編碼外,還包括數(shù)組、浮點(diǎn)數(shù)、記錄、圖像、聲音等多種數(shù)據(jù)結(jié)構(gòu),表示層用抽象的方式來(lái)定義交換中使用的數(shù)據(jù)結(jié)構(gòu),并且在計(jì)算機(jī)內(nèi)部表示法和網(wǎng)絡(luò)的標(biāo)準(zhǔn)表示法之間進(jìn)行轉(zhuǎn)換。 表示層還負(fù)責(zé)數(shù)據(jù)的加密,以在數(shù)據(jù)的傳輸過(guò)程對(duì)其進(jìn)行保護(hù)。數(shù)據(jù)在發(fā)送端被加密,在接收端解密。使用加密密鑰來(lái)對(duì)數(shù)據(jù)進(jìn)行加密和解密。 表示層還負(fù)責(zé)文件的壓縮,通過(guò)算法來(lái)壓縮文件的大小,降低傳輸費(fèi)用。 7.應(yīng)用層(Application Layer) 應(yīng)用層是OSI參考模型中最靠近用戶(hù)的一層,它直接與用戶(hù)和應(yīng)用程序打交道,負(fù)責(zé)對(duì)軟件提供接口以使程序能使用網(wǎng)絡(luò)。與OSI參考模型的其他層不同的是,它不為任何其他OSI層提供服務(wù),而只是為OSI模型以外的應(yīng)用程序提供服務(wù),如電子表格程序和文字處理程序。包括為相互通信的應(yīng)用程序或進(jìn)程之間建立連接、進(jìn)行同步,建立關(guān)于錯(cuò)誤糾正和控制數(shù)據(jù)完整性過(guò)程的協(xié)商等。應(yīng)用層還包含大量的應(yīng)用協(xié)議,如虛擬終端協(xié)議(Telnet)、簡(jiǎn)單郵件傳輸協(xié)議(SMTP)、簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP)、域名服務(wù)系統(tǒng)(DNS)和超文本傳輸協(xié)議(HTTP)等。 2.2.3 OSI的層次間關(guān)系 在同一臺(tái)計(jì)算機(jī)的層間交互過(guò)程與在同一層上不同計(jì)算機(jī)之間的相互通信過(guò)程是相互關(guān)聯(lián)的。 l 每一層向其協(xié)議規(guī)范中的上層提供服務(wù)。 l 每層都與其他計(jì)算機(jī)中相同層的軟件和硬件交換一些信息。 1. OSI模型每一層數(shù)據(jù)的名稱(chēng) 為了使數(shù)據(jù)分組從源主機(jī)傳送到目的主機(jī),源主機(jī)OSI模型的每一層要與目標(biāo)主機(jī)的每一層進(jìn)行通信,如圖2.3中所示。用Peer-to-peer communications(對(duì)等實(shí)體間通信)表示源主機(jī)與目的主機(jī)對(duì)等層間的通信。在這一過(guò)程中,每一層的協(xié)議交換的信息稱(chēng)為協(xié)議數(shù)據(jù)單元(PDU,Protocol Da ![]() 在網(wǎng)絡(luò)通信中,通過(guò)傳輸該層的PDU到對(duì)方的同一層(對(duì)等層),以實(shí)現(xiàn)通信。例如會(huì)話(huà)層通過(guò)傳送SPDU和對(duì)端的會(huì)話(huà)層進(jìn)行通信。從邏輯上講,對(duì)等層間的通信,是兩個(gè)設(shè)備的同一層直接通信。而物理上,每一層都只與自己相鄰的上下兩層直接通信。下層通過(guò)服務(wù)訪問(wèn)點(diǎn)(SAP)為上一層提供服務(wù)。兩個(gè)設(shè)備建立對(duì)等層的通信連接,即在各個(gè)對(duì)等層間建立邏輯信道,對(duì)等層使用功能相同的協(xié)議實(shí)現(xiàn)對(duì)話(huà),如主機(jī)A的第二層不能和對(duì)方的第三層通信。同時(shí),同一層之間的不同協(xié)議也不能通信,如主機(jī)A的E-Mail應(yīng)用程序不能和對(duì)方的Telnet應(yīng)用程序通信。 2. 數(shù)據(jù)封裝 在了解了OSI層次參考模型的每一層的功能之后,進(jìn)一步來(lái)學(xué)習(xí)層次間是如何實(shí)現(xiàn)數(shù)據(jù)傳遞的。如圖2.4所示簡(jiǎn)單示意了兩個(gè)實(shí)現(xiàn)OSI七層功能的網(wǎng)絡(luò)設(shè)備之間是如何進(jìn)行通信的。任務(wù)從主機(jī)A的應(yīng)用層開(kāi)始,按規(guī)定的格式逐層封裝數(shù)據(jù),直至數(shù)據(jù)包達(dá)到物理層,然后通過(guò)網(wǎng)絡(luò)傳輸線路到主機(jī)B。主機(jī)B的物理層獲取數(shù)據(jù),向上層發(fā)送數(shù)據(jù),直到到達(dá)主機(jī)B的應(yīng)用層。 ![]() 封裝(Encapsulation)是指網(wǎng)絡(luò)結(jié)點(diǎn)將要傳送的數(shù)據(jù)用特定的協(xié)議頭打包來(lái)傳送數(shù)據(jù),有時(shí)候也可能在數(shù)據(jù)尾部加上報(bào)文。OSI七層模型的每一層都對(duì)數(shù)據(jù)進(jìn)行封裝,以保證數(shù)據(jù)能夠正確無(wú)誤的到達(dá)目的地,并被終端主機(jī)理解及處理。下面來(lái)看一下數(shù)據(jù)從主機(jī)A到主機(jī)B的封裝過(guò)程。 首先,主機(jī)的應(yīng)用層信息轉(zhuǎn)化為能夠在網(wǎng)絡(luò)中傳播的數(shù)據(jù),能夠被對(duì)端應(yīng)用程序識(shí)別;然后數(shù)據(jù)在表示層加上表示層報(bào)頭,協(xié)商數(shù)據(jù)格式,是否加密,轉(zhuǎn)化成對(duì)端能夠理解的數(shù)據(jù)格式;數(shù)據(jù)在會(huì)話(huà)層加上會(huì)話(huà)層報(bào)頭;依此類(lèi)推,傳輸層加上傳輸層報(bào)頭,這時(shí)數(shù)據(jù)稱(chēng)為段(Segment),網(wǎng)絡(luò)層加上網(wǎng)絡(luò)層報(bào)頭,稱(chēng)為數(shù)據(jù)包(Packet),數(shù)據(jù)鏈路層加上數(shù)據(jù)鏈路層報(bào)頭稱(chēng)為幀(Frame);在物理層數(shù)據(jù)轉(zhuǎn)化為比特流,傳送到交換機(jī),通過(guò)交換機(jī)將數(shù)據(jù)幀發(fā)向路由器;同理,路由器也逐層解封裝:剝?nèi)?shù)據(jù)鏈路層幀頭部,依據(jù)網(wǎng)絡(luò)層數(shù)據(jù)包頭信息查找去往主機(jī)B的路徑,然后封裝數(shù)據(jù)發(fā)向主機(jī)B。主機(jī)B從物理層到應(yīng)用層,依次解封裝,剝?nèi)ジ鲗臃庋b報(bào)頭,提取出發(fā)送主機(jī)發(fā)來(lái)的數(shù)據(jù),完成數(shù)據(jù)的發(fā)送和接收過(guò)程。圖2.5示意了數(shù)據(jù)封裝的過(guò)程,圖2.6示意了數(shù)據(jù)解封裝的過(guò)程。 ![]()
![]()
3. 同一臺(tái)計(jì)算機(jī)之間相鄰層的通信 OSI模型描述了在不同計(jì)算機(jī)上應(yīng)用程序的信息是如何通過(guò)網(wǎng)絡(luò)介質(zhì)傳送的。對(duì)于一個(gè)給定的系統(tǒng)的各層,當(dāng)要發(fā)送的信息逐層向下傳送時(shí),信息越往低層就越不同于人類(lèi)的語(yǔ)言,而是計(jì)算機(jī)能夠理解的“1”和“0”。
為了向相鄰的高層提供服務(wù),每一層必須知道兩層之間定義的標(biāo)準(zhǔn)接口。為了使N層獲得服務(wù),這些接口定義N+1層應(yīng)須向N層提供哪些信息,以及N層應(yīng)向N+1層提供何種返回信息。 如圖2.7所示是OSI類(lèi)型通信的一個(gè)例子。主機(jī)A發(fā)送信息給主機(jī)B。主機(jī)A的應(yīng)用層與主機(jī)B的應(yīng)用層通信,主機(jī)A的應(yīng)用層再與主機(jī)A的表示層通信,主機(jī)A的表示層再與主機(jī)A的會(huì)話(huà)層通信,等等,直到到達(dá)主機(jī)A的物理層。物理層把信息放到網(wǎng)絡(luò)物理介質(zhì)上并把信息從網(wǎng)絡(luò)物理介質(zhì)上送走。信息在網(wǎng)絡(luò)物理介質(zhì)上傳送并被主機(jī)B接收后,會(huì)以相反的方向向上通過(guò)主機(jī)B的各層(先是物理層,然后是數(shù)據(jù)鏈路層,等等),直到最終到達(dá)主機(jī)B的應(yīng)用層。 ![]()
數(shù)據(jù)是由主機(jī)A中的一些應(yīng)用程序生成的。例如用戶(hù)輸入一條e-mail消息。每層生成一個(gè)頭部及所傳數(shù)據(jù)一并傳到下一層(圖2.7中步驟1的箭頭,表示數(shù)據(jù)在不同層的傳遞過(guò)程)。將數(shù)據(jù)傳到下一層意味著下一層需要為上一層提供某種服務(wù)。要完成這些服務(wù),下一層需要在包頭或包尾中加入一些信息。例如,傳輸層發(fā)送其數(shù)據(jù)和包頭;網(wǎng)絡(luò)層在其包頭中加入正確的網(wǎng)絡(luò)層目的地址,以使包能被傳送到其他計(jì)算機(jī)上。
從各層的觀點(diǎn)來(lái)看,在該層包頭之后的比特被認(rèn)為是數(shù)據(jù)。例如,第4層認(rèn)為第5層、第6層和第7層的包頭與原始的用戶(hù)數(shù)據(jù)一起是一個(gè)大的數(shù)據(jù)字段。 在應(yīng)用程序生成數(shù)據(jù)之后,實(shí)現(xiàn)每層功能的軟、硬件完成各自的工作,加入適當(dāng)?shù)陌^和包尾。為實(shí)現(xiàn)在物理媒體上傳輸,物理層能夠?qū)崿F(xiàn)媒體發(fā)送信號(hào),如圖2.7中步驟2。 當(dāng)接收時(shí)(步驟3),主機(jī)B啟動(dòng)其上的相鄰層協(xié)議進(jìn)行通信,如圖2.7中的步驟4 ,指明了接收數(shù)據(jù)在協(xié)議棧中逐層向上遞交處理的過(guò)程。具體步驟如下: 步驟A:物理層(第1層)保證比特的同步,并將接收的二進(jìn)制數(shù)據(jù)放到緩存中。在將接收到的信號(hào)解碼成比特流后,通知數(shù)據(jù)鏈路層已經(jīng)收到一個(gè)幀。因此,第1層在媒體上已經(jīng)提供了傳遞的比特流。 步驟B:數(shù)據(jù)鏈路層(第2層)檢查幀尾的幀校驗(yàn)序列(FCS),判斷傳輸過(guò)程中是否有錯(cuò)誤發(fā)生(差錯(cuò)控制)。如果有錯(cuò)誤發(fā)生,丟棄此幀。檢查數(shù)據(jù)鏈路層的地址,使主機(jī)B決定是否需要進(jìn)一步處理這些數(shù)據(jù)。如果這個(gè)地址是主機(jī)B的地址,那么將在第2層的包頭和尾之間的數(shù)據(jù)傳遞給第3層的軟件。從而,數(shù)據(jù)鏈路層通過(guò)該鏈路實(shí)現(xiàn)了數(shù)據(jù)的傳輸。 步驟C:檢查網(wǎng)絡(luò)層(第3層)的目的地址。如果該地址是主機(jī)B的地址(邏輯地址),處理過(guò)程將會(huì)繼續(xù)進(jìn)行,將在第3層包頭之后的數(shù)據(jù)傳遞給傳輸層(第4層)的軟件。從而,第3層實(shí)現(xiàn)了端到端的數(shù)據(jù)傳輸服務(wù)。 步驟D:如果傳輸層(第4層)選擇了差錯(cuò)恢復(fù),標(biāo)識(shí)這段數(shù)據(jù)的計(jì)數(shù)器與確認(rèn)信息(差錯(cuò)恢復(fù))一起在第4層的包頭中進(jìn)行編碼。在差錯(cuò)恢復(fù)和對(duì)輸入數(shù)據(jù)進(jìn)行重新排序后,將這些數(shù)據(jù)傳遞給會(huì)話(huà)層。 步驟E:會(huì)話(huà)層(第5層)可以用來(lái)保證一系列消息的完整性。如果沒(méi)有完成后續(xù)的通信,收到的數(shù)據(jù)可能沒(méi)有任何意義。第5層的包頭中包含有標(biāo)識(shí)字段意味著是一個(gè)不連續(xù)數(shù)據(jù)鏈的中間流而不是結(jié)束流。在會(huì)話(huà)層保證所有的流都完成后,將在第5層包頭之后的數(shù)據(jù)傳遞給第6層的軟件。 步驟F:表示層(第6層)定義 并維護(hù)數(shù)據(jù)的格式。例如,如果數(shù)據(jù)是二進(jìn)制數(shù)據(jù)而不是字符數(shù)據(jù),包頭會(huì)指明這一點(diǎn)。接收方并不會(huì)用主機(jī)B中缺省的ASCII字符集轉(zhuǎn)換這些數(shù)據(jù)。通常,此類(lèi)包頭只包括在初始流中,而不包含在每個(gè)被傳輸?shù)牧鳎〝?shù)據(jù)格式)中。在完成了數(shù)據(jù)格式的轉(zhuǎn)換后,將數(shù)據(jù)傳遞給應(yīng)用層的軟件。 步驟G:應(yīng)用層(第7層)處理最后的包頭,然后檢查真正的終端用戶(hù)數(shù)據(jù)。這個(gè)包頭指明了主機(jī)A與主機(jī)B已協(xié)商好的應(yīng)用程序所使用的運(yùn)行參數(shù),該包頭用于交換所有參數(shù)值。因此,通常只在應(yīng)用程序初始化時(shí)才發(fā)送和接收這個(gè)包頭。例如,在文件傳輸時(shí),會(huì)相互傳遞所傳輸文件的長(zhǎng)度和文件格式(應(yīng)用參數(shù))。 4. 不同計(jì)算機(jī)上同等層之間的通信 如圖2.3所示提供了同等層之間通信的概念模型。主機(jī)A的應(yīng)用層與主機(jī)B的應(yīng)用層通信。同樣,主機(jī)A的傳輸層、會(huì)話(huà)層和表示層也與主機(jī)B的對(duì)等層進(jìn)行通信。 OSI參考模型的分層禁止了不同主機(jī)間的對(duì)等層之間的直接通信。因此,主機(jī)A的每一層必須依靠主機(jī)A相鄰層提供的服務(wù)來(lái)與主機(jī)B的對(duì)應(yīng)層通信。假定主機(jī)A的第4層必須與主機(jī)B的第4層通信。那么,主機(jī)A的第4層就必須使用主機(jī)A的第3層提供的服務(wù)。第4層叫服務(wù)用戶(hù),第3層叫服務(wù)提供者。第3層通過(guò)一個(gè)服務(wù)接入點(diǎn)(SAP)給第4層提供服務(wù)。這些服務(wù)接入點(diǎn)使得第4層能要求第3層提供服務(wù)。 |
|
來(lái)自: uqt123 > 《網(wǎng)絡(luò)架構(gòu)》