通信系統(tǒng)第15章課件_第1頁
通信系統(tǒng)第15章課件_第2頁
通信系統(tǒng)第15章課件_第3頁
通信系統(tǒng)第15章課件_第4頁
通信系統(tǒng)第15章課件_第5頁
已閱讀5頁,還剩110頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第15章網(wǎng)絡體系結構15.1概述15.2物理層15.3數(shù)據(jù)鏈路層15.4網(wǎng)絡層15.5高位層簡介第15章網(wǎng)絡體系結構15.1概述15.1概述15.1.1分層體系結構計算機網(wǎng)絡的基本功能是讓遠程端用戶之間進行通信聯(lián)系。為了適應端用戶的各種要求,而且不管在傳輸過程中出現(xiàn)任何差錯,端用戶數(shù)據(jù)格式有何差別,數(shù)據(jù)傳輸?shù)乃俣热绾危g斷方式如何,通信聯(lián)系也應能夠進行。網(wǎng)絡的總功能是十分復雜的,因此最好將總功能劃分成一系列按某種方式組合的更簡單的功能來逐步完成。計算機網(wǎng)絡的體系結構就是這個計算機網(wǎng)絡及其部件所應完成功能集合的準確定義和結構。最典型的網(wǎng)絡體系結構是分層體系結構。因此換種說法,網(wǎng)絡體系結構就是指計算機網(wǎng)絡各層及其協(xié)議的集合。分層結構的基本概念包括以下兩個方面:15.1概述15.1.1分層體系結構(1)將網(wǎng)絡的功能分解成許多層,在每一層中,通信雙方要有許多約定和規(guī)程,這些約定和規(guī)程叫做同層協(xié)議或等同協(xié)議,簡稱協(xié)議。只有雙方共同遵守規(guī)定的協(xié)議,才可以配合工作,避免混亂。(1)將網(wǎng)絡的功能分解成許多層,在每一層中(2)要能從一個層次過渡到另一個層次,即前一層要做好為進入下一層次的準備工作,以便順利轉入下一個層次。這種兩個相鄰層次之間要完成的過渡條件,叫做接口協(xié)議,簡稱接口。接口可以是硬件,如機械的和電子的裝量等,也可以是軟件,如數(shù)據(jù)格式的變換和地址的映射等,要根據(jù)具體條件而定。分層結構有許多優(yōu)點,一是可使復雜的網(wǎng)絡設計簡化;二是模塊化,使層內功能局部化,修改某層協(xié)議不影響系統(tǒng)的其余部分,所以各個計算機廠家都有自己產(chǎn)品的網(wǎng)絡體系結構。這些結構都確認:當用戶通過一個或一系列網(wǎng)絡進行通信時,必須保證數(shù)據(jù)傳輸?shù)募皶r性、正確性和可辨識性。即解決通信問題有兩個必不可少的部分:(2)要能從一個層次過渡到另一個層次,即前一(1)由一個端點用戶發(fā)出的數(shù)據(jù)必須能正確、及時地到達目的地。

(2)保證到達末端用戶的數(shù)據(jù)是可辨識的,并且具有恰當?shù)男问揭允顾苷_使用。為了解決上述第一個問題提出了許多網(wǎng)絡協(xié)議,而第二個問題是用高層協(xié)議來解決的,因此一個完整的面向末端用戶的體系結構包含兩類協(xié)議。根據(jù)這一特征,可用圖15.1來表示。它描述了兩個末端用戶A和B之間的通信。(1)由一個端點用戶發(fā)出的數(shù)據(jù)必須能正確、圖15.1分層通信結構的功能圖15.1分層通信結構的功能15.1.2開放系統(tǒng)互連(OSI)參考模型(RM)

由于先前各計算機廠家推出的產(chǎn)品,其網(wǎng)絡體系結構有各自不同的分層、不同的數(shù)據(jù)格式和數(shù)據(jù)交換規(guī)則。因此,不同廠家甚至同一廠家不同的網(wǎng)絡產(chǎn)品很難互連。為此國際標準化組織(ISO)提出了一個開放系統(tǒng)互連(OSI,OpenSystemInterconnections)參考模型(RM),它是定義連接異種計算機的標準框架。OSI模型提供了連接分布式應用處理的開放系統(tǒng)的基礎。所謂“開放”模式,就是指只要遵循OSI標準,一個系統(tǒng)就可以和位于世界上任何地方,也遵循這一標準的其他任何系統(tǒng)進行通信。這一點很像世界范圍的電話和郵政系統(tǒng),這兩個系統(tǒng)都是開放系統(tǒng)。15.1.2開放系統(tǒng)互連(OSI)參考模型(RM)圖15.2OSI參考模型圖15.2OSI參考模型OSI模型各層的名稱如下:第1層:物理層(PhysicalLayer);第2層:數(shù)據(jù)鏈路層(DataLinkLayer);第3層:網(wǎng)絡層(NetworkLayer);第4層:傳輸層(TransportLayer);第5層:會話層(SessionLayer);第6層:表示層(PresentationLayer);第7層:應用層(ApplicationLayer)。OSI模型各層的名稱如下:

這種分層體系結構有以下特點:

(1)各層只能與上下相鄰層之間相互通信,與各層的內部過程無關。

(2)各層的協(xié)議互相獨立,各層的任務明確,每一層利用相鄰的下一層提供服務完成特定的功能,每層只對相鄰的上一層提供服務。

(3)除物理層是水平通信外,其余各層都是垂直通信,即網(wǎng)絡中各節(jié)點之間的直接接口只能是物理層。這種分層體系結構有以下特點:

1.物理層

物理層的主要功能有:

(1)提供為建立、維護和拆除物理鏈路所需的機械的、電氣的、功能的和規(guī)程的特性。

(2)在物理鏈路上傳輸非結構的比特流以及物理鏈路故障檢測指示。1.物理層

2.數(shù)據(jù)鏈路層

數(shù)據(jù)鏈路層的主要功能有:

(1)檢測和校正物理鏈路產(chǎn)生的差錯,將不可靠的物理鏈路變成可靠的數(shù)據(jù)鏈路。

(2)提供數(shù)據(jù)鏈路的流量控制。

(3)為網(wǎng)絡層實體間提供傳送數(shù)據(jù)的功能和過程。2.數(shù)據(jù)鏈路層

3.網(wǎng)絡層網(wǎng)絡層的主要功能有:

(1)為端到端傳輸數(shù)據(jù)提供面向連接的和無連接的服務。

(2)提供控制通信子網(wǎng)傳輸?shù)牟僮?,如路由選擇、擁塞控制、網(wǎng)絡互連等功能,它的特性對高層是透明的。

(3)根據(jù)傳輸層的要求來選擇服務質量和安全性。

(4)向傳輸層報告未恢復的差錯。3.網(wǎng)絡層

4.傳輸層傳輸層的主要功能有:

(1)提供建立、維護和拆除連接的功能。

(2)選擇網(wǎng)絡層提供的最合適的服務。

(3)在系統(tǒng)之間提供可靠的、透明的數(shù)據(jù)傳輸,提供端到端的差錯恢復和流量控制。4.傳輸層

5.會話層會話層的主要功能有:

(1)提供兩個進程之間建立、維護和終止連接的功能。

(2)提供交互會話的管理功能。有三種數(shù)據(jù)流方向控制模式,即單工、半雙工和全雙工模式。

6.表示層表示層的主要功能有:

(1)代表應用進程協(xié)商數(shù)據(jù)表示。

(2)完成數(shù)據(jù)轉換、格式化和文本壓縮。5.會話層

7.應用層應用層可提供OSI用戶服務,例如事務處理程序、文件傳送協(xié)議和網(wǎng)絡管理等。需要指出的是,ISO/OSI參考模型為研究、設計和實現(xiàn)計算機網(wǎng)絡系統(tǒng)提供了功能上和概念上的框架結構,但它本身并不是一個標準。目前,尚未出臺嚴格按照ISO/OSI七層參考模型定義的網(wǎng)絡協(xié)議集及其國際標準。但是,在制定有關網(wǎng)絡協(xié)議和標準時都要把ISO/OSI參考模型作為“參照基準”,并說明與該“參照基準”的對應關系,這正是ISO/OSI參考模型的意義所在。7.應用層15.1.3開放系統(tǒng)互連(OSI)環(huán)境在研究OSIRM時,常常要弄清楚它所描述的范圍。這個范圍就稱為OSI環(huán)境。圖15.3所示為OSI環(huán)境及其有關數(shù)據(jù)單位。通信是在系統(tǒng)中的用戶或它們的應用進程(圖中標AP(A)和AP(B))之間進行的。如果AP(A)希望送一份電文到AP(B),它就啟動應用層(第7層),第7層與終點裝置(目的站)的第7層通過使用第7層協(xié)議建立對等層的聯(lián)系,這一協(xié)議需要第6層的服務,因而兩個第6層實體使用它們自己的協(xié)議。如此類推到物理層,它才真正通過傳輸媒介來傳輸比特流。15.1.3開放系統(tǒng)互連(OSI)環(huán)境圖15.3OSI環(huán)境及有關數(shù)據(jù)單元圖15.3OSI環(huán)境及有關數(shù)據(jù)單元15.2物理層15.2.1物理層接口特性

1.機械特性物理層的機械特性規(guī)定了物理接口連接器的尺寸,插針的數(shù)目、排列情況以及插頭與插座的尺寸,電纜長度以及電纜所含導線的數(shù)目等。例如,常用于串行遠程通信的EIARS-232C和ISO2110規(guī)定的25針插座,X.25公用分組交換網(wǎng)物理級X.21協(xié)議所用的ISO4903所規(guī)定的15針插座,以及EIARS-499和ISO4902規(guī)定的適用于串行話音通信和寬帶MODEM的37針和9針插座等。15.2物理層15.2.1物理層接口特性

2.電氣特性

物理層的電氣特性規(guī)定了在物理連接上傳輸二進制比特流時線路上信號電壓高低、阻抗匹配情況、傳輸速率和距離的限制等。物理層接口的電氣特性主要分為三類:非平衡型、新的非平衡型(半平衡型)和新的平衡型(平衡型),它們分別由ITU的V.24/V.28(對應EIARS-232C/RS-232D)、V.10/X.26(對應EIARS-423A)、V.11/X.27(對應RS-422A)定義,如圖15.4所示。2.電氣特性圖15.4幾種電氣特性(a)非平衡型;(b)新的非平衡型;(c)新的平衡型圖15.4幾種電氣特性表15.1不同電氣特性的比較表15.1不同電氣特性的比較

3.功能特性

功能特性是指對各個信號線分配確切的信號含義,即定義DTE/DCE間各個線路的功能。對每根接口信號線的定義通常采用兩種方法:一種是一線一義法,即每根信號線定義為一種功能,ITU-TV.24、EIARS-232C、EIARS-449等都采用這種方法;另一種是一線多義法,指每根信號線被定義為多種功能,此法有利于減少接口信號線的數(shù)目,被ITU-TX.24、ITU-TX.21所采用。接口信號線按其功能一般可分為接地線、控制線、定時線等幾類。3.功能特性

4.規(guī)程特性

規(guī)程特性是指完成物理連接的建立、維護、交換信息及拆除連接時,DTE/DCE雙方在各電路上的動作序列,最常見的有V.24、V.25、V.54、V.22等V系列標準和X.20、X.20bis、X.21和X.21bis(帶bis的標準表示它能與V系列Modem相連)等。4.規(guī)程特性15.2.2常用物理層接口標準1.EIARS-232C

EIARS-232C是美國電子工業(yè)協(xié)會(EIA,ElectronicIndustryAssociation)頒布的物理接口標準。RS(RecommendedStandard)的意思是推薦標準,232是一個標識號碼,C表示該標準已被修改過的次數(shù)。該標準最初是為了促進使用公用電話網(wǎng),通過Modem進行遠程數(shù)據(jù)通信而制定的,但目前也廣泛應用于主機與終端、計算機與計算機以及計算機與I/O設備之間的近程連接之中。

EIARS-232C的機械特性建議使用25針連接器,并對該連接器的尺寸及插針排列位置作了確切的使用說明。EIARS-232電氣特性采用非平衡型的電氣特性。15.2.2常用物理層接口標準1.EIEIARS-232C的功能特性將25針中的20條信號線分為四類:數(shù)據(jù)線(4條)、控制線(11條)、定時線(3條)和信號線(2條),余下的5條是未定義或專用的。在RS-232C的接口中,實際上有主、輔兩種信道。輔助信道用于在互連的設備之間傳送一些輔助的控制信息,其速率比主信道低得多。在規(guī)程方面,RS-232C可以用于單向發(fā)送或接收、半雙工和全雙工等多種場合。對于每一種應用場合,都有一組標準信號線與之對應,稱為不同的接口類型。它共有14種不同的接口類型。對應于每類接口,規(guī)定有相應的規(guī)程特性,這對于接口的正確設計與正常工作是至關重要的。EIARS-232C的功能特性將25針中的

另外,在實際使用中,由于并非要用到該標準中的全集(即各條信號線的功能),因此也可采用插針較少的標準連接器,如9針連接器或8針連接器(RJ45)。當使用RS-232C接口直接連接兩臺計算機時,引入了一種空調制解調器(NullModem)方式。所謂空Modem,實際上是指沒有Modem,直接把兩個機器的串行口用電纜連接起來。為了使兩臺計算機能按RS-232規(guī)程進行數(shù)據(jù)傳輸,這段電纜采用交叉跳接信號線的方法,使得連接在電纜兩端的DTE通過電纜看對方都好像是DCE一樣,從而滿足了RS-232C需要DTE/DCE成對使用的要求。另外,在實際使用中,由于并非要用到該標準中的

2.EIARS-449、RS-422A和RS-423A

由于RS-232C的所有電路共享一個公用地,是一種非平衡傳輸,因此可能在設備之間產(chǎn)生相當多的串話干擾。1977年11月,EIA頒布了RS-449標準,其機械、功能和規(guī)程接口由RS-449定義,電氣接口有兩種不同的標準,即RS-422A(平衡型)和RS-423A(半平衡型)。

RS-422A采用的是平衡發(fā)送器和差分接收器,使用雙線來傳輸信號,增強了抗共模干擾能力。當距離為10m時,速率達10Mb/s;當距離增加到1000m時,速率仍可達100kb/s。2.EIARS-449、RS-422ARS-423A采用的是單端發(fā)送器和差分接收器。由于采用了差分接收,可獲得比RS-232C更好的傳輸特性。在距離為10m時,速率可達300kb/s;當距離增加到1000m時,速率為3kb/s。由于在傳輸同樣數(shù)量的信號時,RS-422A和RS-423A需要用到更多的連接線,因此RS-449的機械特性規(guī)定使用37針的標準連接線。RS-423A采用的是單端發(fā)送器和差分接收器

3.ITU-TX.21

X.21是ITU-T于1976年推薦的一種數(shù)字發(fā)送接口。作為X.25協(xié)議的第一級,它規(guī)定了DCE如何與DTE通過交換信號來建立和拆除連接。

X.21采用由ISO4903標準規(guī)定的15針連接器,它只定義了8根信號線。X.21的電氣特性較為靈活,在DCE一側使用新的平衡電氣特性X.27,而DTE一側用X.27或X.26非平衡電氣特性。X.21的目的之一在于明顯減少接口線數(shù)目,采用對數(shù)據(jù)線進行復用的辦法在接口界面上傳送接口狀態(tài)控制信息。X.21接口的工作過程分成四個階段:空閑階段、呼叫建立階段、數(shù)據(jù)傳輸階段和拆線階段。3.ITU-TX.2115.3數(shù)據(jù)鏈路層15.3.1數(shù)據(jù)鏈路層的基本功能

1.幀同步(FrameSynchronization)

1)字節(jié)計數(shù)法字節(jié)計數(shù)法首先用一個特殊字符表示一幀的開始,然后用一個字段來標明本幀的字節(jié)數(shù)。當接收方讀到字節(jié)計數(shù)值時,就知道了后面跟隨的字節(jié)數(shù),從而可確定幀結束的位置。在面向字節(jié)計數(shù)的同步規(guī)程(如DDCP協(xié)議)中采用的就是這種方法。15.3數(shù)據(jù)鏈路層15.3.1數(shù)據(jù)鏈路層的基本2)字符填充的首尾定界符法使用字符填充的首尾定界符法是指用一些字符來定界一幀的開始和結束。為了不將信息位中出現(xiàn)的特殊字符誤判為幀的首尾定界符,可以在前面填充一個轉義字符(DLE)來區(qū)分。在面向字符的同步規(guī)程中(如IBM公司的BSC協(xié)議)采用的就是這種方法。2)字符填充的首尾定界符法3)比特填充的首尾標志法使用比特填充的首尾標志法是用一些特定的比特模式(如01111110)來標志一幀的開始和結束的。為了不使信息段中出現(xiàn)的該特定比特模式被誤判為幀的首尾標志,可以采用比特填充的方法來解決。當發(fā)送方的數(shù)據(jù)鏈路層在發(fā)送數(shù)據(jù)中遇到連續(xù)5個“1”時,它自動在后面插入一個“0”到輸出流中。例如,鏈路層要發(fā)送數(shù)據(jù)“0111101111101111110”,則填充后出現(xiàn)于物理鏈路中的比特流為“011110111110011111010”。當接收方看到5個連續(xù)“1”后緊跟了“0”,則刪除第一個“0”。這樣,兩幀間的邊界就可以通過“01111110”惟一地識別了。在面向比特的同步規(guī)程(如HDLC規(guī)程)中采用的就是這種方法。3)比特填充的首尾標志法4)違例編碼法違例編碼法是在物理層采用特定編碼方法時采用的,例如采用曼徹斯特編碼方法,將數(shù)據(jù)比特“1”編碼成高-低電平對,而將數(shù)據(jù)比特“0”編碼成低-高電平對。高-高或低-低電平對在數(shù)據(jù)比特的編碼中都是違例的,可以借用這些違例編碼序列來定界幀的開始和結束。在局域網(wǎng)IEEE802標準中就采用了這種方法。目前,使用較普遍的是最后兩種方法。4)違例編碼法

2.差錯控制(ErrorControl)在計算機一類數(shù)據(jù)通信中,一般都要求有極低的比特差錯率。為此,廣泛地采用了編碼技術。編碼技術有兩大類:一類是糾錯編碼,即前向糾錯,收方收到有差錯的數(shù)據(jù)幀時,能夠發(fā)現(xiàn)差錯并自動加以改正,這種方法的開銷較大,適合于使用衛(wèi)星中繼的計算機通信;另一類是檢錯編碼,即檢錯重發(fā),收方一旦檢測出收到的幀中有差錯,于是就要求發(fā)方重復發(fā)送這一幀,以便收方能正確接收。這種方法在計算機通信中是最常用的。我們主要討論這種差錯控制方法。2.差錯控制(ErrorControl)

3.流量控制(FlowControl)流量控制是一種協(xié)調發(fā)方和收方工作步調的一種技術,其目的是避免發(fā)送速度過快,使得接收方來不及處理而丟失數(shù)據(jù)。通常接收器維持一定大小的接收緩沖區(qū),當收到的數(shù)據(jù)進入沖區(qū)后,接收器進行簡單的處理,然后才能清除緩沖區(qū),再開始接收下一批數(shù)據(jù)。如果在接收器沒取走緩沖區(qū)中的數(shù)據(jù)之前下一批數(shù)據(jù)又進入緩沖區(qū),緩沖區(qū)就會溢出,從而引起數(shù)據(jù)丟失。為了避免發(fā)生這種情況,必須引入一種反饋機制,使得發(fā)方及時了解收方的狀況,發(fā)方根據(jù)反饋信息及時采取措施緩解信息流動的緊張程度。必須指出的是,流量控制并非只在數(shù)據(jù)鏈路層才進行。實際上在網(wǎng)絡層和傳輸層都有流量控制問題,其差別在于它們控制的對象不同。例如,數(shù)據(jù)鏈路層的流量控制對象是相鄰兩節(jié)點間數(shù)據(jù)鏈路上的流量,而傳輸層則控制源到目的之間、端到端的流量。3.流量控制(FlowControl)

4.鏈路管理

當通信網(wǎng)中的兩個節(jié)點要進行通信時,發(fā)送方必須確知接收方已在接收的狀態(tài)中。為此,通信雙方必須先要交換一些必要的控制信息。也就是說,必須先建立一條數(shù)據(jù)鏈路。同樣,在傳輸數(shù)據(jù)時應當維持數(shù)據(jù)鏈路,而在通信完畢時要釋放數(shù)據(jù)鏈路。數(shù)據(jù)鏈路的建立、維持和釋放過程就叫鏈路管理。上述數(shù)據(jù)鏈路控制功能與其數(shù)據(jù)鏈路控制協(xié)議(規(guī)程)密切相關,不同的網(wǎng)絡具有不同的通信協(xié)議(規(guī)程)。4.鏈路管理15.3.2流量控制

1.停等協(xié)議最簡單的流控協(xié)議是停等(StopandWait)協(xié)議。它的工作原理是:發(fā)送方發(fā)送一個幀后要停下來等待接收方的應答幀,只有接收到應答幀后才發(fā)送下一幀;接收方接收緩沖區(qū)容量只能存放一個數(shù)據(jù)幀,在處理完一個數(shù)據(jù)幀后才發(fā)送應答幀,指示發(fā)送方發(fā)送下一幀。這樣,幀的源和目的之間的流動是由接收端控制的。15.3.2流量控制

2.滑動窗口協(xié)議

簡單的停等協(xié)議采用一幀一應答的方式,通信效率過低,不能充分利用線路帶寬。為了提高通信效率,可以采取多幀一應答的方式。假設兩個節(jié)點A和B通過全雙工鏈路連接,B節(jié)點的接收緩沖區(qū)容量可以存放n個幀,則B可連續(xù)接收n個數(shù)據(jù)幀,因而A也可以連續(xù)發(fā)送n個幀而不必等待應答信號。為了使B能夠表示哪些幀已被成功地接收,每個幀都給予一個順序編號。B發(fā)出一個幀編號的應答信號,就表明該編號之前的幀已正確接收,它準備接收具有該編號及其以后編號的幀。例如,B已收到編號為0、1、2的三個幀,這時它發(fā)出帶順序號3的應答信號,表明前三個幀都已正確接收,并要求A發(fā)送從3號開始的n個幀。顯然,這樣就允許B一次應答多個幀,從而提高了通信效率。2.滑動窗口協(xié)議

在節(jié)點A和B中都保存一個幀編號表,A的表指明它可以連續(xù)發(fā)送而不必等待應答的所有編號,B的表指明它準備連續(xù)接收的所有幀的編號,這些表都可以看作是加在幀編號序列上的窗口,隨著數(shù)據(jù)傳送過程的進展窗口向前滑動,因而取名滑動窗口(SlidingWindow)協(xié)議。值得注意的是,編號在幀格式中要占用一個字段,因而編號的大小不能超過該字段可表示的最大值。如果幀編號字段為k位,則編號的取值范圍為0~2k-1,即幀編號是以2k為模循環(huán)計數(shù)的,通常選用的k值為3或7。因此,窗口的大小W不能大于2k-1。在節(jié)點A和B中都保存一個幀編號表,A的表指明它圖15.5滑動窗口示意圖圖15.5滑動窗口示意圖

圖15.5為滑動窗口的示意圖。這里假設k=3,幀編號取值范圍為0~7,窗口最大值W=7。發(fā)送窗口的大小隨著幀的發(fā)送和收到的應答信號而變化。A每發(fā)出一幀,窗口的后沿向前推進一格;A每收到一個編號為i的應答信號,窗口前沿推進到(i-1+W)mod2k的位置。接收窗口的大小也隨收到的數(shù)據(jù)幀和發(fā)出的應答信號而變化。B每收到一幀,窗口的后沿向前推進一格;A每發(fā)出一個編號為i的應答信號,窗口前沿同樣調整到(i-1+W)mod2k的位置。如果B發(fā)出某個應答信號后,不再發(fā)出新的應答信號,則兩個窗口都會不斷縮小,直至減小到0,這時A不能再發(fā)出數(shù)據(jù)幀,B也不再接收,從而達到流量控制的目的。圖15.5為滑動窗口的示意圖。這里假設k=3圖15.6滑動窗口圖15.6滑動窗口15.3.3差錯控制通常應付傳輸錯誤的辦法如下:(1)肯定應答。收方對收到的幀校驗無誤后送回肯定應答信號ACK,表示已經(jīng)正確地接收了該幀,發(fā)方可以繼續(xù)發(fā)送下一幀。(2)否定應答重發(fā)。收方收到一個幀后,經(jīng)校驗發(fā)現(xiàn)有錯,則送回一個否定應答信號NAK。發(fā)方必須重新發(fā)送該幀。(3)超時重發(fā)。發(fā)方在發(fā)出一幀后開始計時,在一定時間內沒有收到對該幀的應答信號,則認為該幀丟失并重發(fā)該幀。15.3.3差錯控制

這種技術主要是利用檢錯技術(如CRC)自動地對丟失幀和錯誤幀請求重發(fā),因而叫ARQ(AutomaticRepeatreQuest)技術。結合上一節(jié)講的流控技術,可有三種形式的ARQ技術:(1)停等ARQ協(xié)議;(2)后退N幀ARQ協(xié)議;(3)選擇性重傳ARQ協(xié)議。這種技術主要是利用檢錯技術(如CRC)自動地

1.停等ARQ協(xié)議停等ARQ協(xié)議是停等流控技術與ARQ技術的結合。根據(jù)停等ARQ協(xié)議,發(fā)送方發(fā)出一幀后必須等待應答信號,收到肯定應答信號ACK后繼續(xù)發(fā)下一幀;收到否定應答信號NAK后重發(fā)該幀,在一定的時間間隔內沒有收到應答信號也必須重發(fā)該幀。沒收到應答信號的原因可能是數(shù)據(jù)幀丟失,也可能是應答信號(ACK或NAK)丟失了。無論哪種原因發(fā)端均收不到應答信號都必須發(fā)送原來的幀。1.停等ARQ協(xié)議2.后退N幀ARQ協(xié)議后退N(Go-backN)幀ARQ協(xié)議和下面要介紹的選擇重傳ARQ協(xié)議都是滑動窗口技術和自動請求重發(fā)(ARQ)技術的結合,由于窗口的尺寸開到足夠大時,幀在線路上可以連續(xù)地流動,因此稱其為連續(xù)ARQ協(xié)議。在連續(xù)ARQ協(xié)議中,所用的發(fā)送窗口尺寸WT應大于1,且接收端是有序接收的。我們知道,允許連續(xù)發(fā)送數(shù)據(jù)幀的數(shù)目取決于窗口尺寸的大小,一般WT≤2k-1,其中k為編號的比特數(shù)。2.后退N幀ARQ協(xié)議

現(xiàn)舉例解釋后退N幀協(xié)議的工作過程,如圖15.7所示。假設節(jié)點A向節(jié)點B發(fā)數(shù)據(jù)幀,設發(fā)送窗口尺寸WT=5,表明節(jié)點A可連續(xù)發(fā)送5個幀,其序號為0~4。當節(jié)點A發(fā)完0號幀時,可繼續(xù)發(fā)送后續(xù)的1號、2號等幀,對于每一幀分別按順序編號,而接收窗口的尺寸WR=1?,F(xiàn)舉例解釋后退N幀協(xié)議的工作過程,如圖15.圖15.7后退N幀協(xié)議的工作過程圖15.7后退N幀協(xié)議的工作過程

設節(jié)點B在收到一幀后立即應答,應指明是對哪一幀號肯定應答或否定應答,因為節(jié)點A已發(fā)了多個幀?,F(xiàn)假設2號幀在傳輸中出了差錯(圖中用E表示),于是節(jié)點B發(fā)送否定應答信號NAK2,它到達節(jié)點A時,A正在發(fā)送4號幀。節(jié)點A根據(jù)收到的NAK2,就可知道應當重發(fā)2號幀,但應在4號幀發(fā)完后才能進行2號幀的重發(fā)。節(jié)點B應答NAK2后,接著陸續(xù)收到3、4號幀,盡管這些幀號是正確到達的序號,但B也要將其舍棄(圖中用D表示)。因此,節(jié)點A在發(fā)完4號幀后,還要向回走,重傳從2號開始的所有幀,所以這種連續(xù)ARQ協(xié)議稱為后退N幀ARQ協(xié)議,它指的是出現(xiàn)差錯必須重傳時,要向后走N個幀,然后開始重傳。設節(jié)點B在收到一幀后立即應答,應指明是對哪一幀

同樣,如果發(fā)送端發(fā)出的某個幀丟失了,或是應答信號(ACK或NAK)丟失了,則發(fā)送方的計時器會發(fā)現(xiàn)這種情況,這時也要后退N幀重發(fā)。由此可知,后退N幀ARQ協(xié)議一方面因能連續(xù)發(fā)送數(shù)據(jù)幀而提高了信道利用率,另一方面重傳時又必須將原已正確的幀也重傳,這又使利用率發(fā)生下降。在數(shù)據(jù)鏈路不太可靠(誤碼率大)的網(wǎng)絡環(huán)境中這種協(xié)議的通信效率仍得不到明顯改善。值得注意的是,在連續(xù)ARQ協(xié)議中,為了減少接收端的開銷,不必像圖15.7所示的那樣一幀一應答,而是等連續(xù)收到好幾個正確數(shù)據(jù)幀后,只對最后那個幀發(fā)一個確認信息即可。當接收端節(jié)點接收了所有應該收到的序號時,如果接收端恰有數(shù)據(jù)幀重發(fā)給節(jié)點A,也可采用捎帶技術,由數(shù)據(jù)幀將應答信息捎帶傳到節(jié)點A。同樣,如果發(fā)送端發(fā)出的某個幀丟失了,或是應答

3.選擇重傳ARQ協(xié)議

為了進一步提高信道利用率,減少重傳的幀數(shù),可以設法只重傳有錯的幀或者是定時器超時的幀,這就是選擇重傳(SelectiveRepeat)ARQ協(xié)議。在該協(xié)議中,接收窗口的尺寸WR必須加大,使得接收序號不連續(xù)的但仍在接收窗口內的那些幀可暫存一下,以便等待所缺序號的幀經(jīng)重傳到達之后再一并送交主機。由此可見,這種協(xié)議所允許的發(fā)送窗口的尺寸WT和接收窗口的尺寸WR均可大于1,但應滿足WT+WR≤2k。因為接收窗口不應大于發(fā)送窗口(否則沒有意義),所以在選擇重傳ARQ協(xié)議下,接收窗口的約束條件為WR≤2k/2。若取WT=WR

=2k/2,當k=3時,則WT=WR=4。3.選擇重傳ARQ協(xié)議15.3.4高級數(shù)據(jù)鏈路控制(HDLC)規(guī)程

數(shù)據(jù)鏈路層的通信規(guī)程主要有兩類:面向字符的通信規(guī)程和面向比特的通信規(guī)程。由于前者與特定的字符編碼集的關系過于密切,兼容性較差,并且實現(xiàn)上也較復雜,故在現(xiàn)代數(shù)據(jù)通信系統(tǒng)已較少使用;而面向比特的規(guī)程(協(xié)議)傳輸效率高,能適應計算機通信的最新發(fā)展,因而獲得廣泛應用。

HDLC(HighlevelDataLinkControl)規(guī)程是ISO制定的高級數(shù)據(jù)鏈路控制規(guī)程,應用十分廣泛,如X.25和幀中繼廣域網(wǎng)以及IEEE802局域網(wǎng)等。

HDLC規(guī)程的基本內容包括三個部分:幀結構、HDLC規(guī)程要素及HDLC規(guī)程類型。15.3.4高級數(shù)據(jù)鏈路控制(HDLC)規(guī)程圖15.8HDLC的幀格式圖15.8HDLC的幀格式

標志(F):是一個8比特的序列“01111110”。F標志一幀的開始和結束,也可做幀同步信號。當發(fā)送連續(xù)幀時,一個標志序列可同時作為前一幀的結束和下一幀的開始。在一幀中間不允許出現(xiàn)與標志相同的比特模式,通過采用比特插入的方法來實現(xiàn)透明性傳輸。地址(A):對于命令幀,該字段為對方(目標)地址;對于響應幀,該字段指出發(fā)出本響應的源地址。標志(F):是一個8比特的序列“0111111

控制(C):用作序號、確認及其它目的,用來表示各種命令和響應,以便對鏈路進行監(jiān)視、控制、檢驗并防止信息的丟失和重復??刂贫沃幸?guī)定三種類型的幀格式:信息幀(Information)、監(jiān)控幀(Supervisory)和無序號幀(Unnumbered),如圖15.9所示。在圖15.9中,N(S)表示所發(fā)送幀的序號,而N(R)為捎帶確認,指希望對方發(fā)送下一個幀的序號;M為修正功能位;P/F是探詢/終結位;計算機用P來命令對方發(fā)送數(shù)據(jù)。除最后一幀外,所有次站發(fā)送的幀都將P/F置成P,而最后一幀置成F。當然,該位也用來強制對方發(fā)送一個監(jiān)控幀,從站將P/F置成F響應。這時P和F總是成對出現(xiàn)的,在F未到來之前,主站不能發(fā)送新的P幀??刂疲–):用作序號、確認及其它目的,用來表通信系統(tǒng)第15章課件

信息幀(I)用來執(zhí)行信息傳輸。按這種格式發(fā)送時,發(fā)送站應對所發(fā)送的每一幀進行計數(shù)編號,接收站對收到的幀檢查其編號的順序性。因此,發(fā)送站要設置發(fā)送順序號N(S)來指明當前發(fā)送幀的編號,接收站也要設置接收順序號N(R)。接收順序號指明下一次期望收到I幀的順序號,同時說明已正確接收了N(R)減1的所有I幀。信息幀(I)用來執(zhí)行信息傳輸。按這種格式發(fā)送時

監(jiān)控幀(S)用來執(zhí)行鏈路監(jiān)控功能,如對幀的確認、要求重傳或請求幀傳送暫停等。其共有四種命令和響應:準備接收(RR)、拒收(REJ)、不準備接收(RNR)和選擇拒收(SREJ)。RR幀用來指明已準備接收I幀以及確認順序號小于N(R)的各幀。REJ幀用來請求重發(fā)從順序號N(R)開始的各幀,并確認順序號小于N(R)的各幀。RNR幀用來指明暫時忙狀態(tài),并確認順序號小于N(R)的各幀。SREJ幀用來請求重發(fā)順序號為N(R)的那一幀,并以P/F來表示對順序號小于N(R)各幀的確認。監(jiān)控幀(S)用來執(zhí)行鏈路監(jiān)控功能,如對幀的確認

無編號幀(U)用來提供附加的鏈路控制功能,這種格式?jīng)]有順序號,而是利用修正功能位M來規(guī)定各種附加的命令或響應功能。目前已定義了13種命令和8種響應。信息段(INFO):用來存放所要傳送的信息。這些信息可以是任意比特組合,雖未規(guī)定長度大小,但實際應用中受FCS校驗能力及站緩存空間大小的限制,最大長度是通信信道差錯率的函數(shù)。校驗序列(FCS):采用16比特CRC校驗碼進行差錯控制,其生成多項式為X16+X12+X5+1。校驗內容范圍是首尾標志序列之間的幀內容,應除去按透明規(guī)則插入的所有“0”比特。無編號幀(U)用來提供附加的鏈路控制功能,這種15.4網(wǎng)絡層15.4.1網(wǎng)絡層提供的服務

圖15.10(a)和(b)分別畫出了虛電路服務和數(shù)據(jù)報服務的特點。15.4網(wǎng)絡層15.4.1網(wǎng)絡層提供的服務圖15.10網(wǎng)絡層提供的兩種服務(a)虛電路服務;(b)數(shù)據(jù)報服務圖15.10網(wǎng)絡層提供的兩種服務

1.虛電路在虛電路方式中,在送出任何分組之前,先要建立一條邏輯連接。在圖15.10(a)中,假定A有一個或多個分組要送到B,它首先要向節(jié)點1發(fā)送一個“呼叫請求”分組(CallRequestPacket),請求與B連接。節(jié)點1啟動路由選擇算法為該請求分組和所有后續(xù)的數(shù)據(jù)分組選擇與之相連的下一個節(jié)點。如節(jié)點1選定將該分組發(fā)到節(jié)點2,2又選定將該分組發(fā)到節(jié)點3,3號節(jié)點最終將“呼叫請求”分組報送到B。如果B準備接受連接,它就向節(jié)點3發(fā)送一個“呼叫接受”分組(CallAcceptPacket),這個分組通過節(jié)點2和1回送到A。1.虛電路

現(xiàn)在,A和B之間可以經(jīng)由這條已建立的邏輯連接或虛電路(VC1)交換數(shù)據(jù)了。此后的每個分組除了數(shù)據(jù)之外還包括一個虛電路標識符。在預先建立的這條路由上的每個節(jié)點都知道這個分組要去的方向,所以不需要再進行路由選擇判決。因此,來自A的每個數(shù)據(jù)分組通過節(jié)點1、2、3流動,而來自B的數(shù)據(jù)分組通過節(jié)點3、2、1流動。最終,其中任何一方用一個“清除請求”分組(ClearRequestPacket)來結束這一連接。在任何時刻,每個站都能與任何其它站建立多條虛電路,也能與多個站建立虛電路。現(xiàn)在,A和B之間可以經(jīng)由這條已建立的邏輯連接

2.數(shù)據(jù)報

在數(shù)據(jù)報方式中,單獨處理每個分組?,F(xiàn)以圖15.10(b)為例,假定A有一個包括三個分組的報文要送到C,它將分組按1-2-3的順序發(fā)送到節(jié)點1,節(jié)點1必須對每個分組分別作出路由選擇的決定。在1號分組到來之后,節(jié)點1判定到2號節(jié)點的分組排隊時間比到4號節(jié)點的排隊時間短,于是它把1號分組排列到2號節(jié)點的隊列。2號分組也是如此。但對于3號分組,節(jié)點1發(fā)現(xiàn)到節(jié)點4的排隊時間短,因此將3號分組排到去節(jié)點4的隊列,在以后通往C的路徑的各節(jié)點上,都作類似的處理。這樣,每個分組雖有同樣的目的地址,但并不遵循同一路由。而且很可能3號分組先于1、2號分組到達節(jié)點6。因此,這些分組可能以一種不同于它們發(fā)送時的順序送到C。這就要靠C來重新排列它們,以恢復它們原來的順序。2.數(shù)據(jù)報15.4.2路由選擇1.最低費用準則圖15.11網(wǎng)絡圖例15.4.2路由選擇1.最低費用準則圖15.11網(wǎng)

2.最短路徑算法

1)前向搜索算法(Dijkstra算法)前向搜索算法的基本思想是求出從一個源節(jié)點S到其它所有節(jié)點的最短路徑,這個算法是一個逐步搜索的過程。假定在第k步,找到了k個最接近源節(jié)點的最短路徑,這k個節(jié)點組成了節(jié)點集合M。在第k+1步,找出一個不屬于M但距源節(jié)點最近的節(jié)點,并把該節(jié)點也加入到M中。設l(i,j)是從i節(jié)點到j節(jié)點的鏈路長度(當i和j不直接相連時鏈路長度為∞),并設D1(n)是從源節(jié)點到n節(jié)點的最短路徑長度。假定N為網(wǎng)絡中所有節(jié)點的集合,節(jié)點1為源節(jié)點(即S=1),則Dijkstra算法的步驟如下:2.最短路徑算法

(1)初始化:置M={S},對于每個節(jié)點n∈N-{S},置D1(n)=l(s,n)。(2)找出一個節(jié)點w∈N-M,使得D1(w)最小,并加進M。然后,對每個節(jié)點n∈N-M

置D1(n)=Min[D1(n),D1(w)+l(w,n)]若這后一項為最小值,則從S到n路徑變?yōu)閺腟到w的路徑再加上從w到n的鏈路。(3)重復步驟(2),直到M=N為止。(1)初始化:置M={S},對于每個節(jié)點n∈N表15.2Dijkstra算法舉例表15.2Dijkstra算法舉例2)后向搜索算法(Ford&Fulkerson算法)后向搜索算法的基本思想是對于一個指定的目的節(jié)點D找出從所有節(jié)點到該目的節(jié)點的最短路徑?,F(xiàn)在我們用Ford&Fulkerson算法對同樣的網(wǎng)絡計算從所有節(jié)點到節(jié)點1(即D=1)的最短路徑。設D2(n)為節(jié)點n和目的節(jié)點D的最短路徑,則Ford&Fulkerson算法的步驟如下:(1)初始化:置D2(D)=0,對于每個節(jié)點n∈N-{D},置D2(n)=∞。2)后向搜索算法(Ford&Fulke(2)對于每個節(jié)點n∈N-{D},置

若這后一項為最小值,則現(xiàn)在從n到D的路徑是從n到w的鏈路再接上從w到D的路徑。(2)對于每個節(jié)點n∈N-{D},置若這后(3)重復步驟(2),直到路徑不變?yōu)橹?。?5.3Ford&Fulkerson算法舉例(3)重復步驟(2),直到路徑不變?yōu)橹?。?5.3Fo3.路由選擇策略1)非自適應路由選擇非自適應路由選擇又稱靜態(tài)路由選擇,它是一種不測量、不依據(jù)網(wǎng)絡狀態(tài)信息,僅按照某種固定規(guī)律進行決策的一種簡單路由選擇策略。(1)洪泛式。洪泛式又稱擴散式,每個收到分組的節(jié)點都將該分組復制成多份,向該節(jié)點所擁有的(除輸入鏈路以外)所有出口發(fā)送出去。這種方法中,只要目的地是可達到的,分組總能送到目的地,而且至少有一個分組是按最佳路徑到達的。但是采用這種方法,一個分組在轉發(fā)過程中迅速造成了許多復制的分組,網(wǎng)絡資源使用效率低,吞吐量小,且由于副本越來越多,最后將泛濫成災,因而要采用一些辦法來限制它無限制地擴散轉發(fā)。常用的辦法有三種:3.路由選擇策略1)非自適應路由選擇①每個分組的首部設置一個計數(shù)字段,對該字段賦予一初始值,當某節(jié)點收到一個分組時,就將計數(shù)字段減1,若結果為零,則將此分組丟棄;②網(wǎng)絡中各節(jié)點均設一登記表,用來記錄經(jīng)過該節(jié)點的分組,一旦某個分組再次經(jīng)過該節(jié)點時,就將其丟棄;③采用有選擇的洪泛法,該法不是將分組向所有相鄰節(jié)點轉發(fā),而是只向靠近目的節(jié)點方向的那些中繼節(jié)點轉發(fā),從而減輕了網(wǎng)絡負荷。洪泛式路由選擇方式可靠性高,但付出代價大,適用于負荷輕、規(guī)模小、可靠性要求極高的網(wǎng)絡,如軍用網(wǎng)。①每個分組的首部設置一個計數(shù)字段,對該字段賦

(2)隨機式。這種路由選擇方式的基本思想是讓轉發(fā)節(jié)點隨機地選擇一個輸出鏈路(不包括輸入鏈路)發(fā)送分組,如果選擇各個輸出鏈路的概率相同,則可用循環(huán)方式輪流地把各個分組轉發(fā)到所有相鄰節(jié)點。為了減少盲目性,可以對各個輸出鏈路指定不同的選擇概率。例如,根據(jù)各個輸出鏈路數(shù)據(jù)率用下式計算出每條鏈路的選擇概率:式中,Pi為選擇輸出鏈路i的概率,Rj為鏈路j的數(shù)據(jù)率。上式分母是對所有候選鏈路求和。這個方案可望獲得均勻的業(yè)務量分布。另外,也可以用其它費用準則來計算選擇概率。(2)隨機式。這種路由選擇方式的基本思想是讓轉發(fā)節(jié)

和洪泛式一樣,隨機式路由選擇不需利用網(wǎng)絡信息,由于所有路由是隨機的,因此實際路由既不是最低費用路由,也不是中繼段數(shù)最少的路由。因此,網(wǎng)絡必須承擔比最佳業(yè)務負載更高的負荷。另外,由于傳遞數(shù)據(jù)分組的延遲不可預料及增加業(yè)務量負荷,故除特殊場合外,這種路由選擇方式應用不夠廣泛。和洪泛式一樣,隨機式路由選擇不需利用網(wǎng)絡信息,

(3)固定路由法。網(wǎng)絡中的每個節(jié)點都保存一張按照某種算法(如Dijkstra算法)計算得到的固定路由表,表中的每一項都記錄著對應某個目的節(jié)點及下一步應選擇的鄰接點。通常路由表在系統(tǒng)生成時,由網(wǎng)絡控制中心為每個節(jié)點所配置,并且保持固定不變。因此,對于網(wǎng)絡拓撲固定,且網(wǎng)絡流量相對穩(wěn)定的場合,采用固定路由法比較合適。(3)固定路由法。網(wǎng)絡中的每個節(jié)點都保存一張按照2)自適應路由選擇(1)孤立式路由選擇策略。這種方法的策略是讓節(jié)點的路由選擇主要依據(jù)節(jié)點自身當前的一些狀態(tài)信息(如鏈路隊列長度),而不考慮其它節(jié)點情況,故稱“孤立式”。其基本原理是當節(jié)點欲發(fā)一個已到達的分組時,僅考慮本節(jié)點當前各輸出鏈路的等待隊列長度,哪一路最短,就將分組送到哪個隊列排隊待發(fā),這樣所有節(jié)點均以最小延時盡快地把分組轉發(fā)出去。這種方法也稱“熱土豆”算法。該方法可均衡各輸出鏈路負載,但可能傳錯了方向。一種改進措施,是每一輸出鏈路相應于每一目的節(jié)點加一個偏置值B,實際輸出鏈路應使隊列長度Q加偏置B之和最小。2)自適應路由選擇

(2)集中式路由選擇策略。這種方法的策略是通過網(wǎng)絡中增設或指定一個節(jié)點作為路由控制中心(RCC,RoutingControlCenter)來實現(xiàn)的。在網(wǎng)絡運行過程中,要求其它所有節(jié)點周期性地將所有有關狀態(tài)信息報告給RCC,如每個節(jié)點的分組排隊長度、自上次報告以來各條鏈路業(yè)務量等。RCC收集到這些信息后,根據(jù)它對整個網(wǎng)絡的了解,使用某種算法,確定出一條自源端到目的端的最佳路由,并將其信息發(fā)布至所有節(jié)點中去。(2)集中式路由選擇策略。這種方法的策略是通過

(3)分布式路由選擇策略。這種策略是一種每一節(jié)點與其相鄰節(jié)點周期性地交換網(wǎng)絡狀態(tài)信息,并根據(jù)交換得到的信息更新自己原有路由表的算法。由于網(wǎng)絡狀態(tài)信息反映了網(wǎng)絡拓撲及流量的變化,從而該策略能夠自適應網(wǎng)絡狀態(tài)的動態(tài)變化。每個節(jié)點都設有路由表,路由表中的每一行除指明目的節(jié)點外,還包含下一步應選擇的鄰接點和所需的延遲時間或距離。延遲時間的測量可以通過發(fā)送“回聲”分組的方法來實現(xiàn)。(3)分布式路由選擇策略。這種策略是一種每一節(jié)

(4)混合式路由選擇策略。實際網(wǎng)絡中采用的路由策略常常是幾種方法的結合,即所謂的混合式路由選擇策略,以便相互間可以取長補短。常用的方法是將集中式和孤立式路由選擇策略結合起來。集中式策略用來尋找在穩(wěn)定狀態(tài)下的最佳路由,然后由RCC將路由表送到每一個節(jié)點中去。而孤立式策略則用來提供對局部的擁塞和故障的迅速響應。這種響應只是暫時的,因而并不要求很精確。不需要很長時間,RCC就會發(fā)現(xiàn)業(yè)務量及網(wǎng)絡拓撲的變化情況,于是就對路由表進行更新。(4)混合式路由選擇策略。實際網(wǎng)絡中采用的路由策15.4.3業(yè)務量控制

1.業(yè)務量控制的類型業(yè)務量(通信量)控制(TrafficControl)是分組交換網(wǎng)中的關鍵技術。在分組交換網(wǎng)中,由于用戶終端發(fā)送數(shù)據(jù)的時間和數(shù)量具有隨機性,網(wǎng)絡中各個節(jié)點的緩沖器容量、節(jié)點處理能力和鏈路傳輸容量(速率)總是有限的,如果不對業(yè)務量采取任何控制措施,就可能造成網(wǎng)內數(shù)據(jù)流嚴重不均,有些節(jié)點和鏈路上的數(shù)據(jù)流超過了節(jié)點的存儲和處理能力,或者超過了鏈路的傳輸能力,導致網(wǎng)絡的擁塞,嚴重時使數(shù)據(jù)停止流動,既不能輸出,也不能輸入,這種現(xiàn)象稱為死鎖(Deadlock)。當輸入數(shù)據(jù)流量超過了輸出的數(shù)據(jù)流量時,網(wǎng)絡很快就會出現(xiàn)擁塞和死鎖現(xiàn)象。15.4.3業(yè)務量控制圖15.12擁塞效應(a)吞吐量特性;(b)延遲特性圖15.12擁塞效應

2.流量控制流量控制是指對一條通信路徑(或者虛電路)上各個環(huán)節(jié)的業(yè)務量進行控制,加以某種限制,以使得業(yè)務量與該路徑上的資源相適應,使其能在較高的效率下運行,并避免快的發(fā)送者淹沒慢的接收者。流量控制可以在不同的層次上實現(xiàn)。在ISO的OSI七層模型中,數(shù)據(jù)鏈路層、網(wǎng)絡層和傳輸層都可以處理流控的問題。在分組交換網(wǎng)中,流量控制是按級進行的,大致可劃分為如圖15.13所示的四種不同級別。2.流量控制圖15.13流控的層級圖15.13流控的層級

(1)段級(Hoplevel)。段級流量控制作用于通信子網(wǎng)內部的相鄰節(jié)點之間,主要目的是平滑節(jié)點之間的信息流,防止局部緩沖區(qū)的擁塞和死鎖。段級的流量控制主要由數(shù)據(jù)鏈路層實現(xiàn)。(2)入口到出口級(Entry

to

exitlevel)。入口到出口級流量控制由源節(jié)點和目的節(jié)點之間的網(wǎng)絡層協(xié)議實現(xiàn),用于防止目的節(jié)點緩沖區(qū)發(fā)生擁塞。(3)入網(wǎng)級(Networkaccesslevel)。入網(wǎng)級是主機和源節(jié)點的接口,既是物理上的界面,也是傳輸層和網(wǎng)絡層的接口,也稱為網(wǎng)絡訪問流量控制,可由數(shù)據(jù)鏈路層或網(wǎng)絡層實現(xiàn)。目的是根據(jù)網(wǎng)絡內部擁塞程度限制進入網(wǎng)絡的分組數(shù)。它與網(wǎng)絡的擁塞控制關系十分密切。(1)段級(Hoplevel)。段級流量控制作

(4)傳輸級(Transportlevel)或端到端級(End

to

endlevel)。傳輸級控制關系到一對用戶主機之間的流控,一般由傳輸層協(xié)議來實現(xiàn)。通常用來防止用戶進程緩沖器溢出。需要指出的是,實際網(wǎng)絡遠比上述規(guī)整的分類和分級模型復雜得多。有時一個實際網(wǎng)絡無法區(qū)分開幾種不同級別的流量控制,有時一種流控包括了兩個或多個級別的流量控制,有時某級或某幾級都沒有流控功能,這都是可能的。(4)傳輸級(Transportlevel)

兩點之間流控的基本方法通常采用應答方式。當然在各種不同的流控要求中,可以采用由協(xié)議規(guī)定的各種不同的應答體系?;趹饳C制的滑動窗口協(xié)議獲得了廣泛應用。在15.3節(jié)中介紹過的數(shù)據(jù)鏈路層流控機制在網(wǎng)絡層和傳輸層都有類似的應用。例如,在面向連接的傳輸層協(xié)議中也采用了與數(shù)據(jù)鏈路層類似的滑動窗口機制,區(qū)別是傳輸層采用一種稱為信用證的窗口機制。即在建立連接時,雙方通過連接請求(CR)分組和接受連接(CA)分組中的窗口字段捎帶通告各自的窗口尺寸,即發(fā)放信用證(Credit)。通信過程中動態(tài)調整收、發(fā)窗口尺寸。在TCP協(xié)議中也采用了類似的動態(tài)窗口流量控制機制。兩點之間流控的基本方法通常采用應答方式。當然

除上述應答方式外,流控方式還有多種,下面簡要介紹其中幾種:(1)預約法。發(fā)端發(fā)送數(shù)據(jù)前,先向收端請求分配所需的收信緩沖區(qū),得到收端的允許后,發(fā)送允許數(shù)量的分組。(2)保速法。在雙方通信前協(xié)商好所用的傳輸速率。這種協(xié)商是在“建立連接”時完成的,因而,在數(shù)據(jù)傳輸開始之前已建立了保速流量控制。只要本次會話未結束,這個速率就維持不變。除上述應答方式外,流控方式還有多種,下面

(3)恒量法(IsarithmicScheme),又稱許可證法。其意思是要在網(wǎng)中保持“固定數(shù)量”的分組。它是一種具有代表性的入網(wǎng)級流量控制方式。實現(xiàn)的方法是在網(wǎng)內設置一定數(shù)量的“許可證”(Permit),每個許可證攜帶一個分組。當許可證不帶分組時為“空載”,帶分組時為“滿載”。滿載許可證到達終點時卸下分組,變?yōu)椤翱蛰d”,許可證在網(wǎng)絡內部巡游,分組在節(jié)點捕獲到“空許可證”之后,才可能在網(wǎng)內流動。采用許可證方法,分組需要在節(jié)點得到許可證才能發(fā)送,這可能產(chǎn)生額外的等待時延。為了減少等待時延,有人認為不應讓所有許可證都在網(wǎng)內隨機巡游,而應在各個節(jié)點設立一個“許可證池”,在池內保持幾個空載許可證,但池內空許可證也不能太多(一般為兩三個),否則導致流控失控,產(chǎn)生擁塞,時延反而加大。(3)恒量法(IsarithmicScheme

3.擁塞控制

通信擁塞是指由于在通信子網(wǎng)中正在傳輸?shù)臄?shù)據(jù)分組數(shù)量過量而引起的網(wǎng)絡性能下降現(xiàn)象。擁塞控制和流量控制兩個詞常被混用。一般認為流量控制是對一條通信路徑上的業(yè)務量進行控制的,是解決“線”或“局部”的問題;擁塞控制是對進入通信子網(wǎng)的總業(yè)務量進行控制的,是解決“面”或“全局”的問題。雖然在一條網(wǎng)絡連接兩端進行的流量控制,很難控制通信子網(wǎng)中發(fā)生的業(yè)務量擁塞現(xiàn)象,但由于數(shù)據(jù)分組進入通信子網(wǎng),總是通過個別通信路徑實現(xiàn)的,因此兩者又密切相關。所以有文獻將其合二為一,統(tǒng)稱為流量控制。3.擁塞控制

在分組交換網(wǎng)中實施的擁塞控制方法有許多種,不同網(wǎng)絡采用了不同的方法:(1)丟棄超量分組。若無緩沖區(qū)存儲分組,只能加以丟棄。(2)采用流量控制,重選路由,分散處理。(3)從擁塞節(jié)點向一些或所有源節(jié)點發(fā)送一個控制分組。這種抑流控制分組所具有的作用是停止或延緩源節(jié)點傳輸分組的速率,從而也限制了網(wǎng)絡中的分組總數(shù)量,但這種方法在網(wǎng)絡擁塞時會增加額外的業(yè)務量。在分組交換網(wǎng)中實施的擁塞控制方法有許多種,

(4)依靠路由選擇信息。諸如APPANET那樣的路由選擇策略,向相鄰節(jié)點傳送鏈路延遲信息,它會影響路由選擇判決。這個信息也可以用來影響新分組產(chǎn)生的速率,因為這些延遲受路由選擇判決影響,所以它們可能會變化太快而不能有效地用于擁塞控制。(5)利用端對端的探針分組。此類分組上含有一個時間戳,用于測量兩個特定端點之間的延遲。當然,這類分組也增加了網(wǎng)絡開銷。(4)依靠路由選擇信息。諸如APPANET那樣

(6)允許分組交換節(jié)點在分組經(jīng)過時,在分組上添加擁塞信息。這有兩種方法:一種方法是節(jié)點可以在與擁塞方向反向而行的分組上添加此類信息,這個信息會很快到達源節(jié)點,這樣源節(jié)點就可以減少網(wǎng)絡中的分組流;另一種方法是節(jié)點可以在向著擁塞方向前進的分組上添加此類信息,目的節(jié)點在收到這個分組后,或者請求源節(jié)點調整其負荷,或者通過反方向發(fā)送的分組(或應答)向源節(jié)點返回這個信號。(6)允許分組交換節(jié)點在分組經(jīng)過時,在分組上添加擁

在幀中繼網(wǎng)中采用擁塞警告通知機制,即把網(wǎng)絡擁塞情況報告給用戶終端,由用戶終端做具體的擁塞處理。其方法如下:(1)利用幀格式中的FECN(正向擁塞顯式通知)標志向幀的接收方,或利用BECN(反向擁塞顯式通知)標志向幀的發(fā)送方發(fā)出擁塞警告通知,迫使用戶終端適當?shù)亟邓倩蚶么翱跈C制適當?shù)乜刂屏髁?。?)用戶終端可使用DE(幀舍棄許可指示)來告訴網(wǎng)絡,若發(fā)生擁塞可優(yōu)行傳送那些對時延敏感(DE=0)的幀,而舍棄那些次要(DE=1)的幀。在幀中繼網(wǎng)中采用擁塞警告通知機制,即把網(wǎng)絡擁塞

(3)每隔N幀丟棄一幀。當N=1時,表明無緩沖器可用,所有幀將被丟棄。在ATM網(wǎng)中擁塞控制是個十分重要的課題,出現(xiàn)擁塞必須及時緩解、排除,不能讓其在網(wǎng)絡中擴散。流量控制技術和擁塞控制技術就是如何避免出現(xiàn)擁塞以及出現(xiàn)擁塞后如何盡快排除的技術。

ATM的流量控制主要是入網(wǎng)級流控,而不是網(wǎng)絡內部對業(yè)務量的流控。其主要方法如圖15.14所示。(3)每隔N幀丟棄一幀。當N=1時,表明無緩沖圖15.14流量控制的主要方法圖15.14流量控制的主要方法ATM的擁塞控制分為擁塞管理、擁塞回避和擁塞恢復。擁塞管理在網(wǎng)絡中無擁塞時應用,擁塞回避主要在網(wǎng)絡出現(xiàn)輕度擁塞時應用,而擁塞恢復主要在網(wǎng)絡嚴重擁塞時應用。其基本方法如圖15.15所示。ATM的擁塞控制分為擁塞管理、擁塞回避和擁塞圖15.15擁塞控制的基本方法圖15.15擁塞控制的基本方法

在Internet網(wǎng)中廣泛采用TCP/IP協(xié)議。

TCP采用信用證動態(tài)窗口擁塞控制機制。在IP協(xié)議中,采用了抑制分組的方法來解決擁塞問題。當網(wǎng)絡發(fā)生嚴重擁塞時,路由器往往需要采用載荷脫落(LoadShedding),即舍棄分組的方法來解決擁塞。至于舍棄哪個分組則取決于路由器所采用的策略,如按先來先服務規(guī)則舍去后到的分組或按分組優(yōu)先級規(guī)則舍棄優(yōu)先級低的分組等。當然,被舍棄的分組要重新傳輸。在Internet網(wǎng)中廣泛采用TCP/IP協(xié)議

4.防止死鎖擁塞的極端情況是死鎖,即使在網(wǎng)絡負荷不重時也有可能發(fā)生死鎖。常見的死鎖有以下幾種:(1)直接存儲轉發(fā)死鎖。這是簡單形式的死鎖,當兩個直接相鄰節(jié)點互相傳送數(shù)據(jù)時,如圖15.16(a)所示,若A節(jié)點的緩沖器容量被送往B節(jié)點的分組占滿,而B節(jié)點的存儲容量又被送往A節(jié)點的分組占滿,互相不能再接收對方的分組,因此互相也不能再發(fā)送分組,造成死鎖。4.防止死鎖圖15.16死鎖類型(a)直接存儲轉發(fā)死鎖;(b)間接存儲轉發(fā)死鎖;(c)重新組裝死鎖圖15.16死鎖類型

(2)間接存儲轉發(fā)死鎖。這種類型死鎖一般出現(xiàn)在環(huán)型網(wǎng)中,如圖15.16(b)所示,當每個節(jié)點的存儲器均被要發(fā)送到間隔相鄰節(jié)點的分組占滿時(如圖中A節(jié)點裝滿了送往C節(jié)點的分組,B節(jié)點又裝滿了送往D節(jié)點的分組,依次類推),所有的通路均被堵塞而引起死鎖??朔鎯D發(fā)死鎖的有效方法是對每條鏈路設置至少一個溢出專用緩沖器。也就是在正常使用的緩沖器中,當只有一個未被占用時,要限制分組的輸入,當有分組輸出而空出存儲空間后才能再輸入,這樣就不會發(fā)生死鎖。(2)間接存儲轉發(fā)死鎖。這種類型死鎖一般出現(xiàn)在

(3)重裝死鎖。如圖15.16(c)所示,若目的節(jié)點C的緩沖區(qū)中存滿了來自幾個不同節(jié)點的分組,而每個報文的分組都不齊全,無法恢復出原報文,并且C又不能再接收新的分組,于是就形成了死鎖??朔?/p>

溫馨提示

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

評論

0/150

提交評論