OSI/RM由兩類(lèi)系統(tǒng)構(gòu)成:7層的端系統(tǒng)(End-system)和3層或3層以下的中間系統(tǒng)。OSI/RM對(duì)層功能的描述與傳統(tǒng)的網(wǎng)絡(luò)描述方式有所不同。除OSI的最高層(應(yīng)用層)只定義了協(xié)議以外,ISO文本為下面6層都定義了“服務(wù)”(Service),因此,下6層由服務(wù)與協(xié)議(Protocol)共同構(gòu)成完整的功能描述。
1、服務(wù)
OSI服務(wù)與電信領(lǐng)域的Service(譯作“業(yè)務(wù)”)的含義完全不同。電信領(lǐng)域的業(yè)務(wù)是用于描述電信業(yè)務(wù)提供商向電信業(yè)務(wù)使用者提供的服務(wù),典型的電信業(yè)務(wù)有:話音與電報(bào)傳送業(yè)務(wù)、普通數(shù)據(jù)傳送業(yè)務(wù)、多媒體實(shí)時(shí)傳送業(yè)務(wù)等等。OSI服務(wù)則是對(duì)OSI協(xié)議層間操作關(guān)系的抽象。
在OSI服務(wù)定義(Service Definition)文本中,協(xié)議層間交換的信息(種類(lèi)、信息內(nèi)部參數(shù)及用途)被稱為服務(wù)原語(yǔ)(Service Primitive)。由于對(duì)服務(wù)原語(yǔ)的定義不涉及其具體的表達(dá)格式,又稱之為抽象服務(wù)原語(yǔ),因此,同一服務(wù)的服務(wù)原語(yǔ)在不同的硬軟件實(shí)現(xiàn)中其表達(dá)格式可能完全不同。在OSI文本中,廣泛使用“狀態(tài)變遷圖”(State Transition Diagram)來(lái)描述在服務(wù)訪問(wèn)點(diǎn)(SAP,即Service Access Point)服務(wù)原語(yǔ)交換關(guān)系與狀態(tài)變遷關(guān)系;“時(shí)序圖”(Time Sequence Diagram)則用來(lái)描述服務(wù)原語(yǔ)在一對(duì)SAP間概念上的交換時(shí)序(抽象服務(wù)原語(yǔ)并不從一個(gè)系統(tǒng)傳送到另一個(gè)系統(tǒng))。
OSI的服務(wù)有兩類(lèi):面向連接的服務(wù)(Connection Oriented Service)和無(wú)連接服務(wù)(Connectionless Service )。前者類(lèi)似于電話服務(wù)過(guò)程:在進(jìn)行數(shù)據(jù)傳輸前,呼方必須向受呼方請(qǐng)求建立連接,在得到對(duì)方同意后才能在二者間建立起供數(shù)據(jù)傳輸用的抽象“連接”,從而進(jìn)入數(shù)據(jù)傳輸階段;雙方在數(shù)據(jù)傳輸階段完成數(shù)據(jù)傳輸任務(wù)后,必須由某方提出拆除連接請(qǐng)求,連接拆除后整個(gè)服務(wù)過(guò)程結(jié)束。拆除連接的過(guò)程又有無(wú)確認(rèn)方式和需確認(rèn)方式,不同的服務(wù)可能采用一種或兩種拆除連接的方式。面向連接服務(wù)較為復(fù)雜,但所提供的傳輸服務(wù)較為可靠。有連接服務(wù)在路徑選擇上與無(wú)連接方式有所不同,每個(gè)連接僅需在建立連接階段進(jìn)行一次。
無(wú)連接服務(wù)像郵政服務(wù),每個(gè)基本數(shù)據(jù)單元像郵件那樣帶上目的地址,經(jīng)過(guò)中間網(wǎng)絡(luò)節(jié)點(diǎn)(等效于郵政系統(tǒng)的郵件中轉(zhuǎn)站)選擇路徑后被逐級(jí)轉(zhuǎn)發(fā)到目的地。無(wú)連接服務(wù)的每個(gè)基本數(shù)據(jù)單元都需要選擇各自的路徑,因此,同一對(duì)通信對(duì)象間的不同數(shù)據(jù)單元可能會(huì)選擇不同的路徑。無(wú)連接服務(wù)簡(jiǎn)單,但通常傳輸不太可靠,可能發(fā)生數(shù)據(jù)單元錯(cuò)序、丟失、重復(fù)等情況。
2、協(xié)議(Protocol)
在OSI/RM之中,所謂協(xié)議是指同層(或同一子層)實(shí)體(Entity)之間允許交換的信息格式規(guī)定和交換規(guī)程。協(xié)議使用的基本信息稱為協(xié)議數(shù)據(jù)單元(PDU,即Protocol Data Unit),其種類(lèi)、內(nèi)部字段的意義及編碼、各比特的傳輸順序,在協(xié)議文本中都必須給予詳細(xì)的定義。ISO文本常采用兩種方式來(lái)描述PDU交換規(guī)程:非形式化技術(shù)和形式化技術(shù)。前者采用文字描述加狀態(tài)變遷圖/表的方式進(jìn)行;后者要求使用形式化描述技術(shù)(FDT,即Formal Definition Technique)。
由于自然語(yǔ)言可能產(chǎn)生二義性,對(duì)文本理解的不同可能會(huì)影響協(xié)議實(shí)現(xiàn)與文本原意之間的一致性(Conformity)。盡管在該類(lèi)文本中都附有描述協(xié)議狀態(tài)變遷的狀態(tài)變遷圖(State Transition Diagram)或狀態(tài)變遷表(State Transition Table),但由于二者仍然是非形式化的描述方法,難以保證協(xié)議的正確性和完整性。有不少用非形式化描述技術(shù)定義的協(xié)議在使用多年之后還發(fā)現(xiàn)有錯(cuò)誤,因此人們開(kāi)始研究形式化描述技術(shù)(FDT)。圖1畫(huà)出了在層次型數(shù)據(jù)網(wǎng)絡(luò)中數(shù)據(jù)在網(wǎng)中的流動(dòng)與變化過(guò)程。
圖1:層次型網(wǎng)絡(luò)數(shù)據(jù)傳送過(guò)程示意圖
如圖1所示,上一層交給下一層的用戶數(shù)據(jù),每經(jīng)過(guò)一層都被加上該層協(xié)議頭形成該層的協(xié)議數(shù)據(jù)單元(PDU,即Protocol Data Unit),然后交給下一層進(jìn)行類(lèi)似處理,最后到達(dá)物理層傳輸線路后,以二進(jìn)制位流形式發(fā)出。收方則進(jìn)行反向操作,每經(jīng)過(guò)一層,該層協(xié)議實(shí)體根據(jù)協(xié)議頭內(nèi)容進(jìn)行相應(yīng)處理后,將除去協(xié)議頭的上一層的PDU交給上一層,直到最后還原成應(yīng)用系統(tǒng)的用戶數(shù)據(jù)。每一層的協(xié)議文本對(duì)PDU的種類(lèi)、用途、格式(包括參數(shù))和合法順序關(guān)系和應(yīng)答關(guān)系都作了明確的規(guī)定,發(fā)送方發(fā)出的PDU到達(dá)對(duì)方同層實(shí)體中原則上不變(個(gè)別PDU的參數(shù)因協(xié)議不同可能變化),就像同層實(shí)體間在直接交換PDU一樣。
大家應(yīng)當(dāng)理解,同層實(shí)體間PDU的對(duì)等通信關(guān)系是虛擬通信關(guān)系,實(shí)際傳輸過(guò)程是在同一系統(tǒng)中沿空心粗箭頭方向傳輸,通過(guò)物理通信介質(zhì)傳至對(duì)方。在這一點(diǎn)上,OSI/RM與其他層次型結(jié)構(gòu)網(wǎng)絡(luò)的傳輸過(guò)程一樣。OSI/RM與其他層次型網(wǎng)絡(luò)不同之處在于,由于它明確地定義了“服務(wù)”的概念,因此,圖1中的空心箭頭實(shí)際代表層間服務(wù)原語(yǔ)的交換。可以想見(jiàn),在OSI/RM中,同一系統(tǒng)中鄰層的信息交換不能以PDU的形式進(jìn)行,而是以交換服務(wù)原語(yǔ)的方式完成。這也是OSI/RM十分復(fù)雜的原因之一。
ITU與ISO在對(duì)OSI/RM中的下3層協(xié)議描述的觀察點(diǎn)是不同的。欲進(jìn)一步了解的請(qǐng)進(jìn)入。
欲更多了解其OSI知識(shí)的請(qǐng)進(jìn)入:OSI/RM的概念;OSI/RM各層功能介紹