2協(xié)議工程之協(xié)議構(gòu)造技術(shù)_第1頁
2協(xié)議工程之協(xié)議構(gòu)造技術(shù)_第2頁
2協(xié)議工程之協(xié)議構(gòu)造技術(shù)_第3頁
2協(xié)議工程之協(xié)議構(gòu)造技術(shù)_第4頁
2協(xié)議工程之協(xié)議構(gòu)造技術(shù)_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、網(wǎng)絡(luò)協(xié)議工程尹洪勝2011年4月2第二章 協(xié)議構(gòu)造技術(shù)2.1 引言 協(xié)議開發(fā)的第一步是構(gòu)造(或構(gòu)思)一個協(xié)議,提出協(xié)議初稿,這個過程類似于管理信息系統(tǒng)工程的概要設(shè)計。協(xié)議構(gòu)造包括以下內(nèi)容: 協(xié)議環(huán)境分析:用戶要求、通道性質(zhì)、工作模式 協(xié)議功能設(shè)計 協(xié)議組織形式的確定 協(xié)議元素的構(gòu)成 協(xié)議文本的編寫3第二章 協(xié)議構(gòu)造技術(shù)2.2 協(xié)議構(gòu)造過程n層協(xié)議模型如圖所示 4第二章 協(xié)議構(gòu)造技術(shù) n層可有多個協(xié)議實體(如A和B是其中的兩個),它們怎樣分布、各起什么作用,屬于協(xié)議工作模式問題。 USER1和USER2為(n+1)層協(xié)議實體,稱之為n層協(xié)議的用戶(簡稱n層用戶)。 n層協(xié)議實體利用(n-1)層協(xié)

2、議提供的服務(wù),按照n層協(xié)議通信(訊),這種通訊活動在兩個(n-1)SAP之間構(gòu)成一個通道,稱之為(n-1)層通道。 n層用戶的要求、(n-1)層通道的性質(zhì)以及n層協(xié)議的工作模式構(gòu)成n層協(xié)議的環(huán)境。 本節(jié)中n層協(xié)議和n層協(xié)議實體(協(xié)議機),n層用戶和(n+1)層協(xié)議實體,以及(n-1)層通道和(n-1)層服務(wù)將混用,不作嚴格區(qū)分5第二章 協(xié)議構(gòu)造技術(shù)2.2.1 協(xié)議環(huán)境(用戶要求、通道特性、工作模式)一、用戶要求n層用戶對n層協(xié)議提供的服務(wù)提出的要求歸納為以下幾個方面:1、連接功能 n層用戶可以要求n層協(xié)議提供有連接服務(wù)、無連接服務(wù)和永久連接服務(wù),并要求n層協(xié)議負責連接的建立、撤銷、作廢、復位、

3、恢復等管理工作。 連接建立過程中,網(wǎng)絡(luò)資源的分配和管理,連接合法性和安全性檢查,以及目標名和地址的轉(zhuǎn)換工作也由n層協(xié)議進行。2、多路和廣播 多個n層用戶可能要求在同一個(n)SAP建立多條連接,一個n層用戶亦可要求使用多條連接??上蚨鄠€其它用戶發(fā)廣播消息。多路和廣播的管理工作由n層協(xié)議完成。6第二章 協(xié)議構(gòu)造技術(shù)3、N實體,(N)SAP與N+1實體傳遞服務(wù)的規(guī)則(補充)7第二章 協(xié)議構(gòu)造技術(shù)3、服務(wù)認可 n層用戶可以要求三種形式服務(wù): 完全認可式 部分認可式 無認可式 完全認可式服務(wù)需要4條服務(wù)原語 request indication response confirm8第二章 協(xié)議構(gòu)造技術(shù)

4、部分認可式 無認可式9第二章 協(xié)議構(gòu)造技術(shù)4、通信方式通信方式: 單工/半雙工/全雙工; 同步/異步 對于全雙工通訊,n層協(xié)議必須在(n)SAP上提供并發(fā)的收發(fā)服務(wù)。 對于半雙工通訊,n層協(xié)議要管理“發(fā)信權(quán)”,握有“發(fā)信權(quán)”的用戶,可以發(fā)送數(shù)據(jù)報文。如果n層用戶進行應答式(同步)通訊,n層協(xié)議可免除流控制功能。n層用戶的同步通訊或通過n層協(xié)議提供的完全認可式服務(wù)進行,或用戶自己進行控制。對于異步通訊發(fā)送數(shù)據(jù)的用戶可向收方用戶發(fā)出任意個數(shù)據(jù)報文,此時n層協(xié)議必須施加流控制,否則報文將會丟失。10第二章 協(xié)議構(gòu)造技術(shù)5、數(shù)據(jù)形式用戶數(shù)據(jù)可為多種形式,它們是:l塊數(shù)據(jù) n層用戶向n層協(xié)議遞交整塊數(shù)據(jù)

5、。l流數(shù)據(jù) n層用戶向n層協(xié)議遞交字符流。l批數(shù)據(jù) n層用戶向n層協(xié)議遞交大批數(shù)據(jù)塊(短時間)。l優(yōu)先數(shù)據(jù) n層用戶向n層協(xié)議遞交的數(shù)據(jù)有不同的優(yōu)先級。l中斷數(shù)據(jù) n層用戶要求n層協(xié)議旁路正常數(shù)據(jù)的傳遞,快速將特殊 信息發(fā)送對方,此信息稱為中斷數(shù)據(jù)。l緊急數(shù)據(jù) 同中斷數(shù)據(jù)l流外信息 n層用戶向n層協(xié)議遞交的流數(shù)據(jù)中夾雜著要求n層協(xié)議截獲并做處理的信息,此信息叫流外數(shù)據(jù)。帶外數(shù)據(jù)(Out-Of-Band data),有時候也稱為快速數(shù)據(jù)(Expedited Data) l編碼信息 n層用戶要求n層協(xié)議先對信息編碼,然后發(fā)送。 11第二章 協(xié)議構(gòu)造技術(shù)6、數(shù)據(jù)長度 n層用戶要求傳送的塊數(shù)據(jù)的長度以

6、及批數(shù)據(jù)的數(shù)據(jù)量可能是任意的,數(shù)據(jù)塊過大,n層協(xié)議要分段發(fā)送,為了應付大宗量批數(shù)據(jù)的傳送,n層協(xié)議要加寬(n1)層通道的頻帶,要進行流控制和交通擁塞避免控制,要有足夠的緩沖區(qū)。7、數(shù)據(jù)可靠性 數(shù)據(jù)可靠性包括:數(shù)據(jù)報文CRC校驗,報文順序正確,報文不丟失不重復。n層協(xié)議為了保證數(shù)據(jù)可靠,必須進行CRC校驗和糾錯,進行報文順序控制,超時重發(fā)控制以及流控制。12第二章 協(xié)議構(gòu)造技術(shù)8、數(shù)據(jù)流通量與實時性 n層用戶可向n層協(xié)議提出流通量和實時性要求,n層協(xié)議要采取相應的措施以滿足用戶要求。9、安全、保密性 為了滿足用戶對安全、保密性的要求,n層協(xié)議可對用戶數(shù)據(jù)加密和安全控制(如口令、特權(quán)) 13第二章

7、 協(xié)議構(gòu)造技術(shù)10、目標識別n層用戶可以三種形式向n層協(xié)議說明自己的通信目標傳地址 說明目標的地址傳名字 說明目標的名字傳參照值(索引法) 說明目標的參照(索引)值11、其它用戶要求包括測試、監(jiān)視、統(tǒng)計、記帳等第二章 協(xié)議構(gòu)造技術(shù)二 、通道性質(zhì) n層中任意兩個協(xié)議實體通過(n-1)SAP所形成的數(shù)據(jù)邏輯通路叫(n-1)層通道。 n層協(xié)議實體A和B可用下述方法形成(n-1)層通道。 1) A和B建立并獨占一條連接,此時(n-1)層應提供有連接服務(wù) AB當前正確畫法不正確畫法15第二章 協(xié)議構(gòu)造技術(shù)2)A和B和其它協(xié)議實體共享一條連接 CBAD當前正確畫法不正確畫法第二章 協(xié)議構(gòu)造技術(shù)3) A和B

8、利用(n-1)層提供的無連接服務(wù)進行通訊 CBAD當前正確畫法不正確畫法17第二章 協(xié)議構(gòu)造技術(shù) n層協(xié)議使用(n-1)層通道的性質(zhì)對n層協(xié)議的構(gòu)成有重大影響,這些性質(zhì)可歸納為如下幾個方面:(1)通道形成方式 n層協(xié)議必須有一個負責和(n-1)層服務(wù)接口的模塊,該模塊的功能取決于通道形成方式。該模塊要負責連接建立和形成工作,連接共享控制工作,如果是物理信道,要負責信道接口工作,如果物理信道共享,要負責信道共享控制工作。(2)隊列性質(zhì) 一般情況下,(n-1)層通道可看作隊列通道,就是說一個數(shù)據(jù)報文從n層源端協(xié)議實體發(fā)出之后要在n層以下各層多次存儲轉(zhuǎn)發(fā),每個存儲轉(zhuǎn)發(fā)處就存在一個隊列。平均隊列長度以

9、及最大允許長度是隊列的主要性質(zhì)。隊列長,那么數(shù)據(jù)報文在通道中延時變大;如果隊列長度達到最大允許長度,那么后續(xù)的數(shù)據(jù)報文將會丟失。通道隊列性質(zhì)嚴重地影響n層協(xié)議的功能以及協(xié)議性質(zhì)。如果(n-1)層通道為物理信道,那么此通道有時是非隊列性質(zhì)的,此時報文在信道中的延時是固定的,報文不會丟失,并且是有序的 18第二章 協(xié)議構(gòu)造技術(shù)(3)RTT RTT(Round Trip Time)定義為報文從n層源實體發(fā)出到該報文的認可信息回到該實體之間的時間,它包括目標實體收到報文并對報文進行處理后發(fā)出認可信息的時間,RTT是n層協(xié)議的重要參數(shù)之一。(4)數(shù)據(jù)的可靠性 數(shù)據(jù)在通道中傳送的可靠性包括報文出錯率報文丟

10、失率報文重復率報文順序錯誤率。通道的形成方式與數(shù)據(jù)傳輸?shù)目煽啃杂幸欢P(guān)系,如果通道是利用(n-1)層有連接服務(wù)形成的或是物理信道,那么報文傳遞的順序不改變。如果通道是利用(n-1)層無連接服務(wù)形成的,報文傳遞順序無保障(5)通道可靠性 n層通道可靠性指通道故障(如斷聯(lián)、復位等)。(6)報文最大長度通道所接收的最大報文長度,該參數(shù)影響n層協(xié)議的報文分割、拼接等功能的執(zhí)行。(7)工作方式單工/半雙工/全雙工以及同步/異步兩個方向。(8)其它性質(zhì)(n-1)層通道的其他性質(zhì)包括流通量,帶寬等19第二章 協(xié)議構(gòu)造技術(shù)三 、工作模式1、點點模式和多點模式 n層內(nèi)任意兩個協(xié)議實體(如A和B)利用一條(n-1

11、)層通道通信,協(xié)同完成指定協(xié)議功能,此模式為點點模式。20第二章 協(xié)議構(gòu)造技術(shù) 而兩個以上協(xié)議實體利用多條通道相互通訊,協(xié)同執(zhí)行一定任務(wù),此模式稱為多點模式。21第二章 協(xié)議構(gòu)造技術(shù)(2)主從模式和平衡模式(無主) 在點點模式或多點模式中,如果一個協(xié)議實體為主控實體,其他實體受之控制,此模式為主從模式。各協(xié)議實體的作用和功能是近似的,控制上是自制的,此模式為平衡模式。 (3)中轉(zhuǎn)和路由 有時候;n層內(nèi)的兩個協(xié)議實體不能找到或形成直接通道(或者同為它們的協(xié)議不同,或是因為(n-1)層服務(wù)不同),此時它們的通訊必須通過中轉(zhuǎn)實體進行。多個中轉(zhuǎn)實體在n層內(nèi)形成一個邏輯網(wǎng)絡(luò),每個中轉(zhuǎn)體必須有路由功能,它

12、們不直接向n層用戶提供服務(wù)。22第二章 協(xié)議構(gòu)造技術(shù)23第二章 協(xié)議構(gòu)造技術(shù)24第二章 協(xié)議構(gòu)造技術(shù)2.2.2 協(xié)議功能和協(xié)議機制(1)n層協(xié)議功能指n層協(xié)議應該做哪些事情。(2)n層協(xié)議機制指用什么方法,設(shè)施和算法去做這些事情。 n層協(xié)議功能應與n層用戶要求,(n-1)層通道性質(zhì)和n層協(xié)議工作模式一致,n 層協(xié)議的機制應保證協(xié)議功能的真正有效地實行。 協(xié)議的工作模式一般在網(wǎng)絡(luò)總體設(shè)計時確立,例如ISO傳輸層為點點平衡模式,網(wǎng)絡(luò)層為多點模式,有路由功能。 當n層協(xié)議環(huán)境明確以后,n層協(xié)議的功能就可以確定了。一般情況下,n層協(xié)議功能為下述協(xié)議功能的一個子集。這些協(xié)議功能按A,B,C分類,同類協(xié)議

13、功能的關(guān)系較密切,實現(xiàn)時往往處于同一模塊中。 下面為基本的協(xié)議功能:25第二章 協(xié)議構(gòu)造技術(shù)A1、聯(lián)接管理:該功能負責n層用戶的連接建立,維護,撤消等管理工作。連接管理伴隨著連接合法性檢查,連接安全性控制,資源分配,連接目標名字和地址翻譯等工作。A2、多路管理:多路(即多路連接)管理是A1的擴充。A3、無連接和廣播管理:A4、通信方式管理:對于半雙工通訊n層協(xié)議需要進行發(fā)信權(quán)管理,對于全雙工通訊,n層協(xié)議要使它的用戶能在任意時刻遞交SDU(服務(wù)數(shù)層系統(tǒng))和異步接收SDU。 26第二章 協(xié)議構(gòu)造技術(shù)B1、SDU和PDU的發(fā)送和接收: n層協(xié)議接收n層用戶遞交的SDU,將之轉(zhuǎn)換成PDU,從(n-1

14、)層通道發(fā)送出去;反之,它接收(n-1)層通道的PDU抽出SDU將之轉(zhuǎn)交給n層用戶。B2、PDU的裝配/拆卸: n層協(xié)議必須裝配PDU,按照給定格式附上協(xié)議控制信息PCI。對于接收后的PDU要對之拆卸,拆卸PCI。B3 、SDU的編碼/解碼: n層協(xié)議可能需要對SDU進行編碼,加密,壓縮(發(fā)送方)解密,復原(接收方)B4 、CRC校驗: SDU到PDU可能要進行CRC校驗和糾錯 27第二章 協(xié)議構(gòu)造技術(shù)B5、SDU的分段和合段: 如果SDU長度大于(n-1)層通信最大允許報文長度,SDU必須分段(Segmenting)發(fā)送,接收后要合段(Reassembling)。B6 、SDU拼接與分離:

15、如果SDU長度很小,為了提高(n-1)層通道的利用率,多個SDU可以拼接(concatenation)成一個PDU后發(fā)送,接收方將PDU分離(Separation)出多個SDU來。B7、 PDU分割和組合: 為了加大通信流量(或帶寬),n層協(xié)議可建立多個(n-1)層通道。此時,一個PDU可以分割(splitting)成多個(n-1)SDU,并行地從多個通道分送。接收方將啟動組合(Recombining)成一個PDU。 28第二章 協(xié)議構(gòu)造技術(shù)C1、順序控制: 報文的編號有助于檢測報文的丟失和重復。順序控制包括PDU順序號的核對、管理以及重復PDU的剔出等工作。C2、超時重發(fā)控制: 對于丟失的P

16、DU,n層協(xié)議要實行超時重發(fā)的機制。C3、端-端流控制: 在一段時間內(nèi),收方能夠容納和處理PDU個數(shù)總是有限的,為了限制過多的PDU進入收方,n層協(xié)議必須實行端-端流控制。最常用的端-端流控制機制是窗口機制。29第二章 協(xié)議構(gòu)造技術(shù)C4、擁塞避免控制: 如(n-1)層通道為隊列通道,該通道可能擁塞,擁塞現(xiàn)象的發(fā)生將大大降低通道有效流量,并使正常的端-端流控失靈。擁塞避免控制力圖降低或消除擁塞現(xiàn)象。并獲得最大有效流通量。C5、發(fā)送速率控制: 當n層用戶遞交大宗數(shù)據(jù)時,n層協(xié)議(發(fā)方)將快速連續(xù)的向(n-1)層通道發(fā)送一串PDU,這可能產(chǎn)生一些不良后果,一方面,通道可能擁塞;另一方面,如果(n-1

17、)層為物理信道,物理信道收端硬件可能跟不上。為此,n層協(xié)議要實行發(fā)送速率控制,控制PDU之間發(fā)送的時間間隔。30第二章 協(xié)議構(gòu)造技術(shù)E1、通道接口管理: 該功能負責通道的形成,通道的狀態(tài)監(jiān)測等工作。E2、通道錯誤處理: 通道發(fā)生錯誤時,該功能負責處理和恢復工作。E3、通道共享控制: 如果(n-1)層通道為共享物理信道,n層協(xié)議必須實行介質(zhì)訪問控制,如多個n層協(xié)議容許共享一條(n-1)層連接,不同PDU的區(qū)分工作 n層協(xié)議負責。F1、其它協(xié)議功能: n層協(xié)議的功能還包括如目標的名字地址管理,快速報文和中斷報文的發(fā)送和接收,測試統(tǒng)計等。31第二章 協(xié)議構(gòu)造技術(shù)2.2.3協(xié)議元素協(xié)議有六種元素:服務(wù)

18、原語和服務(wù)原語的時序協(xié)議數(shù)據(jù)單元(PDU)和PDU交換時序協(xié)議狀態(tài)協(xié)議事件協(xié)議變量協(xié)議行動和謂詞 一般來說,每種協(xié)議功能都包含六種元素,有些協(xié)議由于不直接向用戶提供服務(wù)(如流控制),不包含服務(wù)原語。有些協(xié)議由于協(xié)議機制簡單,可能不包括協(xié)議變量,沒有專門的PDU定義。但多個協(xié)議的功能組成一個完整的協(xié)議之后,這六種元素缺一不可。 32第二章 協(xié)議構(gòu)造技術(shù)1、服務(wù)原語和服務(wù)原語時序: N層協(xié)議的服務(wù)原語和原語參數(shù)詳細準確的描述n層協(xié)議和它的用戶之間的接口(即SAP),服務(wù)原語分完全認可式,部分認可和無認可式三種形式。各種服務(wù)原語的各條服務(wù)原語的時序關(guān)系如圖2.2所示。N層協(xié)議和他的用戶接口狀態(tài)(即S

19、AP狀態(tài))和服務(wù)原語之間的關(guān)系有了明確定義。這個關(guān)系可有服務(wù)狀態(tài)轉(zhuǎn)移表示。例如圖2.6為ISOT層協(xié)議的服務(wù)狀態(tài)轉(zhuǎn)移圖。 第二章 協(xié)議構(gòu)造技術(shù)服務(wù)原語的四種類型原語類型英文對照含義請求request一個實體希望得到完成某些操作的服務(wù)指示indication通知一個實體,有某個事件發(fā)生響應response一個實體對某個事件作出響應證實confirm返回對先前請求的響應34第二章 協(xié)議構(gòu)造技術(shù)(1)請求類原語是由N+1層發(fā)給N層請求某一服務(wù)的原語。(2)指示類原語是由N層返回給N+1層的原語,以告知激活了一種被請求的服務(wù)或N層服務(wù)提供者啟動了一次動作告知N+1實體。(3)響應類原語是N+1層回應指

20、示原語而提供的一種原語,以便完成確認或完成由指示原語所調(diào)用的規(guī)程。(4)證實類原語是N層返回給發(fā)出請求的N+1層的一種原語,以便確認或完成先前由請求原語所調(diào)用的規(guī)程原語可以包含參數(shù),并且大多數(shù)原語都帶參數(shù),以便傳送為執(zhí)行其功能所需要的控制信息。每個參數(shù)都具有規(guī)定范圍內(nèi)的值,與某一原語相關(guān)的參數(shù)值在該原語方向上通過。例如聯(lián)接請求原語的參數(shù)要指明與哪臺機器連接、需要的服務(wù)類別和擬在該連接上使用的報文的最大長度。連接指示原語的參數(shù)可包括呼叫者的標識、需要的服務(wù)類別和建議的最大報文長度。如果被呼叫實體不同意呼叫實體所建議的最大報文長度,它可以在響應原語中作出一個更改的建議,呼方可以從證實原語中獲知新的

21、修改。35第二章 協(xié)議構(gòu)造技術(shù)服務(wù)原語交互的時序(舉例)參見 完全認可式,部分認可和無認可式36第二章 協(xié)議構(gòu)造技術(shù)2、PDU和PDU交換時序: PDU從語法和語義上詳細準確的定義n層協(xié)議實體之間交換的信息。除此之外,協(xié)議還必須描述PDU交換的時序。例如: 當一個協(xié)議實體收到CR PDU(Connection Request)之后,它在應該發(fā)出CA PDU(Connection Acknowledgement)或DR PDU(Disconnection Request)這三個PDU的交換時序CR-CA或CR-DR。 思考服務(wù)原語語PDU之間的聯(lián)系?37第二章 協(xié)議構(gòu)造技術(shù)3、協(xié)議狀態(tài):協(xié)議狀態(tài)

22、分為局部狀態(tài)和全局狀態(tài)。局部狀態(tài)為單個協(xié)議實體在某個時刻的執(zhí)行狀況。全局狀態(tài)為執(zhí)行某種協(xié)議功能的所有協(xié)議實體(包括(n-1)層通道)狀態(tài)之總和。(n-1)層通道狀態(tài)就是(n-1)層協(xié)議的服務(wù)狀態(tài)。4、協(xié)議事件:協(xié)議事件分輸入事件和輸出事件兩大類。N層協(xié)議的輸入事件由三部分組成,收到一個PDU;收到N層用戶的一條服務(wù)原語;產(chǎn)生一個內(nèi)部事件(如時鐘超時);N層協(xié)議的輸出事件由兩部分組成:發(fā)出一個PDU;向N層用戶發(fā)出一條服務(wù)原語。N層協(xié)議必須羅列和定義每個協(xié)議事件。38第二章 協(xié)議構(gòu)造技術(shù)5、協(xié)議變量: 存儲協(xié)議運行的歷史數(shù)據(jù),運行參數(shù)的變量,以及協(xié)議機制本身所設(shè)置的變量,統(tǒng)稱為協(xié)議變量。6、協(xié)議

23、行動和謂詞:每種協(xié)議功能都由一組協(xié)議過程的執(zhí)行來實現(xiàn)。協(xié)議過程是由協(xié)議事件驅(qū)動的。被驅(qū)動的過程執(zhí)行一系列操作(行動),這些操作包括:產(chǎn)生輸出事件清除和設(shè)置定時時鐘修改協(xié)議變量改變協(xié)議狀態(tài) 協(xié)議行動由事件驅(qū)動,并受一定條件制約,描述協(xié)議行動條件的語句是謂詞。這些約束條件包括:參數(shù),協(xié)議變量,協(xié)議運行環(huán)境等。事件驅(qū)動過程和事件行動其含義是等效的,協(xié)議過程的描述必須須說明過程的行動并給出行動謂詞39第二章 協(xié)議構(gòu)造技術(shù)2.2.4 協(xié)議組織 協(xié)議構(gòu)造過程中,每種協(xié)議功能和協(xié)議機制可以單獨設(shè)計,它的協(xié)議元素也可以單獨構(gòu)造。當各個協(xié)議功能的元素構(gòu)造之后,下面的問題是怎樣將它們組織成一個完整的協(xié)議(整體),

24、這個問題屬于協(xié)議的組織 協(xié)議的組織對協(xié)議功能和協(xié)議機制有影響,因此將多個協(xié)議功能(元素)組合在一起時,可能要回過頭來修改原有的協(xié)議元素。40第二章 協(xié)議構(gòu)造技術(shù)1、協(xié)議層次化: 就像OSI模型將整個網(wǎng)絡(luò)協(xié)議分成七層一樣,N層協(xié)議的眾多功能可進一步分成多個子層。子層的劃分可使復雜協(xié)議的結(jié)構(gòu)變得清晰,有利于協(xié)議的設(shè)計、驗證、實現(xiàn)和測試。但是,子層的劃分可能降低協(xié)議性能。2、 協(xié)議階段化: 可將N層協(xié)議分成多個運行階段(phase),每個階段只有一部分協(xié)議功能是有用的。協(xié)議的階段化使復雜協(xié)議變得簡單,有利于協(xié)議設(shè)計、驗證、實現(xiàn)和測試。 41第二章 協(xié)議構(gòu)造技術(shù)3、協(xié)議分類 協(xié)議的復雜性是由于不同用戶

25、的不同要求和不同通道的不同要求造成的。如果將協(xié)議分成不同類別(成不同級別),每類協(xié)議只適用于一定用戶和一定通道。那么復雜協(xié)議就會變得簡單。4、協(xié)議運行的方式:協(xié)議運行方式有三種,它們是:協(xié)議交替(protocol alternative),n層內(nèi)多個協(xié)議,或一個協(xié)議的多個類別,或一個協(xié)議的多個協(xié)議功能交替活躍運行的方式協(xié)議并發(fā)(protocol concurrency),n層內(nèi)多個協(xié)議,或一個協(xié)議的多個類別,或一個協(xié)議的多個協(xié)議功能同時活躍,并發(fā)運行的方式。協(xié)議并行(protocol parallizm),n層內(nèi)多個協(xié)議,或一個協(xié)議的多個類別,或一個協(xié)議的多個功能同時活躍,同時運行的方式協(xié)議并

26、行42第二章 協(xié)議構(gòu)造技術(shù) 如果多個協(xié)議或一個協(xié)議的多個類別交替活躍,交替執(zhí)行,那么n層協(xié)議可在不同時間內(nèi)適用不同用戶和不同通道的協(xié)議環(huán)境。如果它們同時活躍,并發(fā)運行,那么n層協(xié)議可在同一時間內(nèi)適用多種協(xié)議環(huán)境。如果還能并行運行則效果更好。如:(注意并發(fā)不等并行,并行優(yōu)于并發(fā))。 協(xié)議的運行方式,對協(xié)議功能和協(xié)議機制的實現(xiàn)有直接影響。43第二章 協(xié)議構(gòu)造技術(shù)2.2.5 協(xié)議文本 協(xié)議構(gòu)造的最后工作是用自然語言描述協(xié)議,以便人們閱讀理解。協(xié)議文本必須詳細地表述用戶要求(或服務(wù)性質(zhì))通道性質(zhì)(或?qū)Φ讓訁f(xié)議服務(wù)要求)工作模式,協(xié)議功能,協(xié)議組織和協(xié)議的各種元素。協(xié)議文本的最重要,最主要部分是協(xié)議元素

27、的描述。協(xié)議的各元素之間的關(guān)系可表達為:在什么協(xié)議狀態(tài)下,在什么輸入條件下調(diào)用什么協(xié)議過程。協(xié)議過程在什么條件下(謂詞)采取什么協(xié)議行動,輸出什么事件或修改協(xié)議狀態(tài)和變量。協(xié)議文本應清晰地表達這些關(guān)系。文件狀態(tài)表示一種方法。這種方法的優(yōu)點是表達清晰、簡明、系統(tǒng)。44第二章 協(xié)議構(gòu)造技術(shù)2.3 協(xié)議構(gòu)造方法 協(xié)議的構(gòu)造需要一定的經(jīng)驗和技巧,而且它是協(xié)議開發(fā)的第一步,目前人們只著重整個協(xié)議開發(fā)方法的研究(如協(xié)議綜合技術(shù))而不注重協(xié)議構(gòu)造方法的研究。然而,掌握一個好的方法,可使協(xié)議構(gòu)造的思路清晰,有條理,問題考慮周全,能以最快的省力的途徑獲得協(xié)議文本初稿。下面介紹三種方法:45第二章 協(xié)議構(gòu)造技術(shù)1

28、、自上而下的構(gòu)造方法 該方法類似軟件的自上而下的開發(fā)方法,它的起點是網(wǎng)絡(luò)總體設(shè)計時所提出的要求,網(wǎng)絡(luò)總體設(shè)計將一個網(wǎng)絡(luò)系統(tǒng)劃分成若干層,并對每層提出具體要求(服務(wù)特性,工作模式,總的功能等) 網(wǎng)絡(luò)總體設(shè)計對n層協(xié)議的要求對n層協(xié)議環(huán)境(用戶要求、通道性質(zhì)、工作模式)進行分析定義n層協(xié)議的服務(wù)原語和參數(shù),確定服務(wù)原語時序根據(jù)環(huán)境分析,確定n層協(xié)議應有哪些協(xié)議功能將關(guān)系較密切的功能歸成一類,形成協(xié)議模塊確立各協(xié)議功能的協(xié)議機制,并分析或模擬其功能按協(xié)議模塊,構(gòu)造協(xié)議元素,確立各元素之間的關(guān)系確立協(xié)議的組織形式,并修改協(xié)議功能和協(xié)議元素將各協(xié)議模塊的協(xié)議元素綜合成統(tǒng)一的協(xié)議元素對協(xié)議進行系統(tǒng)完整的描

29、述,形成協(xié)議文本初稿46第二章 協(xié)議構(gòu)造技術(shù)2、由下至上的構(gòu)造方法該方法的構(gòu)造過程和上述方法相反,它的起點是含混的。計算機網(wǎng)絡(luò)的飛躍發(fā)展往往要求研制性能更好的協(xié)議(服務(wù)能力好,服務(wù)能力越強,協(xié)議的性質(zhì)能取決于協(xié)議的機制,因此該方法的第一步是研究新的協(xié)議機制) 構(gòu)造更好的協(xié)議研制新的協(xié)議機制,模擬和分析性能將多個實現(xiàn)新協(xié)議機制的協(xié)議功能組合成協(xié)議模塊按協(xié)議模塊構(gòu)造協(xié)議元素,確定元素之間的關(guān)系確立協(xié)議組織形式將各個協(xié)議模塊的服務(wù)特性和協(xié)議元素組合起來描述協(xié)議對底層協(xié)議服務(wù)的要求(通道要求)對協(xié)議做完整描述,形成協(xié)議文本(通道要求)分析并描述協(xié)議的服務(wù)特性和服務(wù)能力47第二章 協(xié)議構(gòu)造技術(shù)3、由低(

30、易)到高(難)的構(gòu)造方法 將用戶要求和通道特性按難易程度排序,首先取最低的用戶要求和最容易通道構(gòu)造一個功能最簡單協(xié)議,然后增加要求和通道難度,逐步構(gòu)造一個完整復雜協(xié)議(快速原型法)。4、利用成熟協(xié)議構(gòu)造法 目前已有許多網(wǎng)絡(luò)協(xié)議在運行,有的已相當成熟。利用一個成熟的協(xié)議或一個協(xié)議國際標準,構(gòu)造一個新的符合指定環(huán)境的協(xié)議的方法是一條很好的捷徑。 48第二章 協(xié)議構(gòu)造技術(shù)2.4 ISO T層協(xié)議的構(gòu)造 在ISO/OSI模型中,T層用戶是會話層的協(xié)議實體,T層所利用的通道是N層(網(wǎng)絡(luò)層)協(xié)議所提供的服務(wù),目前ISO公布了兩類T層協(xié)議:無連接T層協(xié)議UDP,有鏈接T層協(xié)議TCP。我們?nèi)『笳咦鳛榕e例分析它

31、的協(xié)議構(gòu)造(協(xié)議環(huán)境,協(xié)議功能,協(xié)議元素和協(xié)議組織)。49第二章 協(xié)議構(gòu)造技術(shù)2.4.1 T層用戶對T層協(xié)議的要求(協(xié)議環(huán)境)T層用戶對T層協(xié)議的要求,可歸納為以下幾方面向T層用戶提供單路或多路有連接服務(wù)每條連接支持全雙工,無認可式的數(shù)據(jù)傳輸每條連接支持透明的數(shù)據(jù)傳輸 即SDU長度任意,SDU順序不錯,SDU不丟失,SDU不重復T層用戶進行異步數(shù)據(jù)傳輸,也可以進行同步數(shù)據(jù)傳輸T層用戶可提出服務(wù)質(zhì)量QOS要求,QOS包括一下內(nèi)容:Qos1:傳送緊急報文(中斷報文)的要求Qos2:流通量和延時要求Qos3:數(shù)據(jù)CRC錯誤概率的要求Qos4:T層連接出錯(斷聯(lián))概率要求 50第二章 協(xié)議構(gòu)造技術(shù)2.

32、4.2 N層通道特性(協(xié)議環(huán)境)ISO N層可提供三類服務(wù)(即三類通訊),分別記為A服務(wù),B服務(wù)和C服務(wù)。A類服務(wù):(1)提供有連接服務(wù),報文的傳輸是有序的報文不丟失,不重復(2)CRC錯誤率小于T層用戶對T層協(xié)議提出的CRC錯誤概率要求。(3)最大允許報文長度之有限的,可能小于TSDU長度(4)連接出錯概率小于T層用戶對T層連接出錯概率要求,并且連接出錯時給出N-Disconnect和N-Reset指令。51第二章 協(xié)議構(gòu)造技術(shù)B類服務(wù)(1)(2)(3)同A,(4)連接出錯概率大于T層用戶對T層連接出錯概率要求,并且連接出錯時給出N-Disconnect和N-Reset指令。C類服務(wù)(1)能

33、提供無連接服務(wù),報文的傳輸順序可能出錯,報文可能丟失和重復。(2)CRC錯誤率可能大于T層用戶對T層協(xié)議提出CRC錯誤率的要求。 (3)和(4)同B類 52第二章 協(xié)議構(gòu)造技術(shù)2.4.3 T層協(xié)議功能和協(xié)議機制 如果按T層用戶最高要求和n層通道的最壞特性來構(gòu)造T層協(xié)議。即其它應該包括2.2.1中所羅列的哪些功能呢? A1必須有A2必須有A3不需要A4全雙工服務(wù)必須有B1必須有B2必須有B3不需要B4必須有B5必須有B6 高性能協(xié)議應該有B7高性能協(xié)議應該有C1必須有C2必須有C3必須有C4高性能協(xié)議應該有,ISO T層協(xié)議未包括C5高性能協(xié)議應該有,ISO T層協(xié)議未包括E1必須有E2必須有E

34、3不需要E4不需要 F1緊急報文傳遞 53第二章 協(xié)議構(gòu)造技術(shù)2.4.4 T層協(xié)議的組織 ISO對其T層協(xié)議的組織作如下處理 (1)T層不再分子層 (2)協(xié)議正常運行分三個階段連接建立階段數(shù)據(jù)傳輸階段連接撤銷階段 各協(xié)議功能按階段活躍,例如連接建立階段B1,C5不活躍(3)協(xié)議分為5類,記為TP0,TP1,TP2,TP3,TP4、各類協(xié)議適用不同的用戶和通道。 54第二章 協(xié)議構(gòu)造技術(shù)(4)多類協(xié)議并發(fā)運行,即多個T層用戶通過TSAP使用不同類T層協(xié)議的服務(wù)。數(shù)據(jù)傳輸階段,有關(guān)協(xié)議功能并發(fā)運行,但不考慮它們的并行運行的問題。下面將ISO,T層協(xié)議各類特點(T層用戶特點,n層通道類別,協(xié)議功能)

35、敘述如下:TP0:用戶無Qos1和Qos2要求。用戶自己同步收發(fā)工作,用戶無多路連接要求,通道為A類服務(wù)(意味著用戶的Qos3和Qos4得到滿足);TP0包括A1,A2,B1,B5和E1功能TP1:用戶無Qos2要求,用戶自己同步收發(fā)工作,用戶無多路連接服務(wù)要求。有緊急報文傳輸要求(Qos1)。通道為B類(意味著用戶的Qos3得到滿足Qos4不滿足),TP1包括A1、A4,B1,B2,B5,B6,E1,E2和F1功能 。55第二章 協(xié)議構(gòu)造技術(shù)TP2: 用戶無Qos2要求,有Qos1要求(緊急報文傳送),用戶要求異步數(shù)據(jù)傳輸,要求多路連接服務(wù)。通道為A類服務(wù)。TP2包括 A1,A2,A4,B1

36、,B2,B5,B6,C3,E1和F1功能TP3: 用戶有Qos2要求,無Qos1要求,用戶要求異步數(shù)據(jù)傳輸,要求多路連接服務(wù),通道為B類服務(wù)。TP3包括A1,A2,A4,B1,B2,B5,B6,C3,E1,E2和F1功能TP4: 用戶有Qos2要求,無Qos1要求,用戶要求異步數(shù)據(jù)傳輸,要求多路連接服務(wù),通道為C類服務(wù)。TP4包括A1,A2,A4,B1,B2,B4,B5,B6,B7,C1,C2,C3,E1,E2和F1功能由于TP0,TP1,TP2,TP3,TP4可以并發(fā)運行,各類T層協(xié)議必須包括類別選擇和協(xié)商功能。當源端和目的端的協(xié)議類型不一致時,連接建立通過協(xié)商,取最高協(xié)議類別為最終的運行協(xié)

37、議。 56第二章 協(xié)議構(gòu)造技術(shù)傳輸協(xié)議類別與網(wǎng)絡(luò)服務(wù)之間的匹配關(guān)系傳輸協(xié)議類別網(wǎng)絡(luò)服務(wù)類型基本功能TP0A建立連接TP1B基本差錯修復TP2A復用TP3B差錯修復與復用TP4C差錯檢測與修復、復用第二章 協(xié)議構(gòu)造技術(shù)2.4.5 T層協(xié)議元素1、服務(wù)原語及服務(wù)狀態(tài)轉(zhuǎn)移圖 ISO T層協(xié)議服務(wù)原語10條,下面列出個服務(wù)原語和符號名,每條服務(wù)原語常若干參數(shù),參數(shù)又參加協(xié)議文本。 服務(wù)原語名 符號名 服務(wù)原語名 符號名 T-CONnect request TCONreq T-DISconnect indication TDISind T-CONnect indication TCONind T-DAT

38、A request TDTreg T-CONnect response TCONresp T-DATA indication TDTind T-CONnect confirm TCONconf T-EXPEDITED-DATA request TEXreqT-DISconnect request TDISreq T-EXPEDITED-DATA indication TEXind 第二章 協(xié)議構(gòu)造技術(shù)T層用戶所看到服務(wù)狀態(tài)定為四種,它們是:Idle (1) 連接未建立outgoing connection pending (2) 已發(fā)出連接請求ingoing connection pendin

39、g (3) 已收到連接請求Data transfer (4) 聯(lián)接已經(jīng)建立 59第二章 協(xié)議構(gòu)造技術(shù)2、 PDU和PDU交換時序ISO 7層協(xié)議定義了10種PDU。各個PDU的名字和符號如下: PDU名字 縮寫Connection Request CRConnection Confirm CCDisconnection Request DRDisconnection Confirm DCData DTDATA Acknowledgement EDExpidited data Acknowledgement EAReject RJTPDU Error ERABCRCCDTDTAKEDEADRDC

40、TPDU正常交換時序第二章 協(xié)議構(gòu)造技術(shù)3、協(xié)議狀態(tài) ISO T層定義了22種協(xié)議總狀態(tài),協(xié)議狀態(tài)的改變由T層協(xié)議進行,與用戶無關(guān)。狀態(tài)符號含義狀態(tài)符號含義WFNCWait for network connectionCLOSING-RRelease and reassignment in progressWFCCWait for the CC TPDUCLOSING-WRRelease in progress and wait for reassignmentWBCLWait before releasingWFTRESP-WRWait for T-CONNECT response and

41、wait for reassignmentOPENTransport connection is openWBOCWait before open complete (CC is unacknowledged)CLOSINGRelease in progressWBOC-W RWait before open complete and wait for reassignmentWFTRESPWait for T-CONNECT responseCLOSING BOCWait before open complete and release in progressCLOSEDTransport

42、connection is closedCLOSING BOC-WRIdle and wait for reassignmentWFNC-RWait for network connection and reassignment in progressAKWAITWait for acknowledgment of CC TPDUWBCC-RWait for the CC TPDU and reassignment in progressREFWAITWait for frosen reference timeWBCL-RWait before releasing and reassignme

43、nt in progress OPEN-RTransport connection is open and reassignment in progress 61第二章 協(xié)議構(gòu)造技術(shù) 以上22個總狀態(tài)只描述了聯(lián)接和聯(lián)接撤銷階段的協(xié)議狀態(tài),實際上在數(shù)據(jù)傳輸階段還有許多子狀態(tài)(總狀態(tài)為OPEN).“Reassignment in progress”表示T層聯(lián)接正在進行中, Reassignment表示聯(lián)接分配。T層協(xié)議分5類,對于每類協(xié)議來說,它只包含22種狀態(tài)的子集。第二章 協(xié)議構(gòu)造技術(shù)4、協(xié)議事件(輸入事件、輸出事件、內(nèi)部事件)輸出事件(outgoing event)符號名去向事件全名TCONindT層用戶T-CONNECT indication(服務(wù)原語)TCONconfT層用戶T-CONNECT confirm(服務(wù)原語)TDTindT層用戶T-DATA indication(服務(wù)原語)TEXindT層用戶T-EXPEDITED-DATA i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論