淺談通信網(wǎng)絡流量控制與擁塞控制技術2_第1頁
淺談通信網(wǎng)絡流量控制與擁塞控制技術2_第2頁
淺談通信網(wǎng)絡流量控制與擁塞控制技術2_第3頁
淺談通信網(wǎng)絡流量控制與擁塞控制技術2_第4頁
淺談通信網(wǎng)絡流量控制與擁塞控制技術2_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、淺談通信網(wǎng)絡流量控制與擁塞控制技術張光宇內(nèi)容摘要:在通信系統(tǒng)中,由于網(wǎng)絡可運載的業(yè)務量是有限的,隨著輸入業(yè)務量增加會使得網(wǎng)絡出現(xiàn)聚集現(xiàn)象和通過量大大下降,并引起時延大大升,從而導致網(wǎng)絡無法正常運行,因此要求采用必要的流量和擁塞控制。 本文通過對網(wǎng)絡流量控制與擁塞控制技術進行概念解讀,并對通信網(wǎng)絡中存在擁塞的原因和需要進行流量控制的原因進行闡釋。介紹現(xiàn)有擁塞控制的技術和現(xiàn)有流量控制的技術;最后針對特定的因特網(wǎng)擁塞控制技術和擁塞控制技術作原理論述、分析和實際中的使用情況進行說明。關鍵詞:通信網(wǎng)絡 流量控制 擁塞控制 因特網(wǎng)第一章 什么是通信網(wǎng)絡流量控制與擁塞控制技術第一節(jié) 什么是網(wǎng)絡擁塞1.1.1

2、網(wǎng)絡擁塞現(xiàn)象擁塞現(xiàn)象是指到達通信子網(wǎng)中某一部分的分組數(shù)量過多,使得該部分網(wǎng)絡來不及處理,以致引起這部分乃至整個網(wǎng)絡性能下降的現(xiàn)象,嚴重時甚至會導致網(wǎng)絡通信業(yè)務陷入停頓,即出現(xiàn)死鎖現(xiàn)象。這種現(xiàn)象跟公路網(wǎng)中經(jīng)常所見的交通擁擠一樣,當節(jié)假日公路網(wǎng)中車輛大量增加時,各種走向的車流相互干擾,使每輛車到達目的地的時間都相對增加(即延遲增加),甚至有時在某段公路上車輛因堵塞而無法開動(即發(fā)生局部死鎖)。 網(wǎng)絡的吞吐量與通信子網(wǎng)負荷(即通信子網(wǎng)中正在傳輸?shù)姆纸M數(shù))有著密切的關系。當通信子網(wǎng)負荷比較小時,網(wǎng)絡的吞吐量(分組數(shù)/秒)隨網(wǎng)絡負荷(每個節(jié)點中分組的平均數(shù))的增加而線性增加。當網(wǎng)絡負荷增加到某一值后,若

3、網(wǎng)絡吞吐量反而下降,則表征網(wǎng)絡中出現(xiàn)了擁塞現(xiàn)象。在一個出現(xiàn)擁塞現(xiàn)象的網(wǎng)絡中,到達某個節(jié)點的分組將會遇到無緩沖區(qū)可用的情況,從而使這些分組不得不由前一節(jié)點重傳,或者需要由源節(jié)點或源端系統(tǒng)重傳。當擁塞比較嚴重時,通信子網(wǎng)中相當多的傳輸能力和節(jié)點緩沖器都用于這種無謂的重傳,從而使通信子網(wǎng)的有效吞吐量下降。由此引起惡性循環(huán),使通信子網(wǎng)的局部甚至全部處于死鎖狀態(tài),最終導致網(wǎng)絡有效吞吐量接近為零。簡而言之就是對資源需求的總和>可用資源擁塞出現(xiàn)表示荷載超過了資源的承受能力。 圖1-1 擁塞示意圖1.1.2造成網(wǎng)絡擁塞的原因1、多條流入線路有分組到達,并需要同一輸出線路,此時,如果路由器沒有足夠的內(nèi)存來

4、存放所有這些分組,那么有的分組就會丟失。2、路由器的慢帶處理器的緣故,以至于難以完成必要的處理工作,如緩沖區(qū)排隊、更新路由表等。1.1.3 網(wǎng)絡擁塞造成的后果1、直接鎖死:直接死鎖即由互相占用了對方需要的資源而造成的死鎖。例如兩個結點都有大量的分組要發(fā)往對方,但兩個結點中的緩存在發(fā)送之前就已經(jīng)全部被待發(fā)分組占滿了。當每個分組到達對方時,由于沒有地方存放,只好被丟棄。發(fā)送分組的一方因收不到對方發(fā)來的確認信息,只能將發(fā)送過的分組依然保存在自己結點的緩存中。這兩個結點就這樣一直互相僵持著,誰也無法成功地發(fā)送出一個分組。 2、重裝鎖死:報文A、B和C經(jīng)過路由器P、Q和R發(fā)往主機H。每一報文由4個分組構

5、成。每個路由器的緩存只能容納4個分組。路由器R已為報文A預留了4個分組的緩存。由于分組A3還未到達,所以目前還不能交付給主機H。分組A3暫存于路由器P的緩存中,它無法轉發(fā)到路由器Q,因為路由器Q的緩存已全占滿了。 3、對用戶及運營商造成的影響極度利用峰值帶寬,帶寬統(tǒng)計復用的服務模型隨之失效,運營商運營成本增高,用戶無法正常使用網(wǎng)絡,例如voIP、BT、P2P等軟件和技術就極度占用正常帶寬惡化網(wǎng)絡運行環(huán)境,最終造成網(wǎng)絡擁塞,導致的業(yè)務投訴增加,服務品質(zhì)下降。圖1-2 網(wǎng)絡擁塞的影響1.1.4 網(wǎng)絡擁塞控制的基本原理(一)根據(jù)控制論,擁塞控制方法分為兩類1、開環(huán)控制:開環(huán)控制方法就是在設計網(wǎng)絡時事

6、先將有關發(fā)生擁塞的因素考慮周到,力求網(wǎng)絡在工作時不產(chǎn)生擁塞。擁塞控制時,不考慮網(wǎng)絡當前狀態(tài)。圖1-3 開環(huán)控制可采用流程2、閉環(huán)控制:閉環(huán)控制是基于反饋機制。屬于閉環(huán)控制的有以下幾種措施(即工作過程):監(jiān)測網(wǎng)絡系統(tǒng)以便檢測到擁塞在何時、何處發(fā)生。將擁塞發(fā)生的信息傳送到可采取行動的地方。調(diào)整網(wǎng)絡系統(tǒng)的運行以解決出現(xiàn)的問題。 (二)衡量網(wǎng)絡是否擁塞缺乏緩沖區(qū)造成的丟包率; 平均隊列長度; 超時重傳的包的數(shù)目; 平均包延遲; 包延遲變化(Jitter)(三)反饋方法向負載發(fā)生源發(fā)送一個告警包; 包結構中保留一個位或域用來表示發(fā)生擁塞,一旦發(fā)生擁塞,路由器將所有的輸出包置位,向鄰居告警; 主機或路由器

7、主動地、周期性地發(fā)送探報(probe),查詢是否發(fā)生擁塞。 1.1.5擁塞控制的策略(一)、開環(huán)控制。開環(huán)控制是一種不依靠反饋信息來調(diào)整業(yè)務流,而是在擁塞發(fā)生之前來避免擁塞的一類控制策略。在開環(huán)控制中,一旦源端發(fā)送的業(yè)務流被接收,則該業(yè)務流就不會倒是網(wǎng)絡過載。下面是集中開環(huán)控制的方法。1、接納控制接納控制是一種預防性開環(huán)擁塞控制方法,其最初是針對虛電路分組交換網(wǎng)絡提出的,但是在數(shù)據(jù)報網(wǎng)絡中也得到了研究。在連接上工作的接納控制叫連接接納控制(CAC,Connection Admission Control),在數(shù)據(jù)報網(wǎng)絡上工作的接納控制角突發(fā)接納控制。當某個資源請求建立連接時,CAC必須確定是接

8、受還是拒絕這個連接。如果能保證同一路徑上的所有源的QoS(最大延時、丟失率、帶寬、抖動等參數(shù)描述)都得到滿足,則接受這個連接;否則就拒絕這個連接。為了確定QoS是否能夠得到滿足,CAC必須知道每個源的業(yè)務流特征,為了實現(xiàn)這一點,每個源應在連接建立期間用一組稱為業(yè)務量描述器的參數(shù)來說明它的業(yè)務流。業(yè)務量描述器可以包括:峰值速率、平均速率、最大突發(fā)容量等,可以認為是對業(yè)務量的簡潔而準確的總結。CAC必須計算它要為每個源保留多少帶寬(平均速率與峰值速率之間),即有效帶寬。對于有效帶寬的精確計算是一個難點。2、管制一旦CAC接受連接,則只要源遵循它在連接建立期間提交的業(yè)務量描述器中的規(guī)定,源的QoS就

9、可以得到滿足。然而如果源的業(yè)務流違反了最初的合約,則網(wǎng)絡就有可能不能保證性能。為了防止源違反它的合約,網(wǎng)絡應該在連接期間對業(yè)務流進行監(jiān)視。監(jiān)視和強制業(yè)務流執(zhí)行合約的過程叫流量管制。當流量違反了一致商定的合約時,對違約的流量,網(wǎng)絡可以丟棄或標記,被標記的流量將被網(wǎng)絡傳送,但優(yōu)先級較低,只要下游擁塞,就首先被丟棄。漏桶算法是管制的一個比較經(jīng)典的算法。我們假設管制設備的業(yè)務流是正在流入底部有孔的桶的水流。當桶不空時,水流以恒定的速度從桶中漏出,只要桶未滿,流入的水就由桶來調(diào)節(jié);當桶滿的時候,流入的水會溢出,這些溢出的水就是違約的流量,而未溢出的水為守約流量。桶的深度可以用來吸收水流的不均勻性,如果要

10、求業(yè)務流比較平滑,則可以減小桶的深度,這樣瞬時多的水流(短的突發(fā)分組)會從桶中溢出,不會影響正常的業(yè)務。漏桶一般可以用來管制峰值速率和可支持的速率。3、流量整形當某個源試圖發(fā)送分組時,其可能不知道它的業(yè)務流是什么樣的業(yè)務流。如果源想要保證業(yè)務流能夠與漏桶管制設備中規(guī)定的參數(shù)一致,它就應該首先改變它的業(yè)務流。這種將業(yè)務流改變?yōu)榱硪粋€業(yè)務流的過程叫做流量整形。流量整形可以使流量更平滑。流量整形的實現(xiàn)方式主要有:漏桶流量整形器。它通過一個以固定間隔周期讀出的緩存器來實現(xiàn)。它是一個可以儲存分組的緩存器,可以調(diào)節(jié)業(yè)務流。輸入的分組存在緩存器中,然后對分組進行周期性的讀出,這樣輸出的分組就是平滑的。緩存器

11、用來存儲短時的分組突發(fā),如果緩存器滿,再輸入的分組就屬于非法分組而被丟棄。例圖如下 圖 1-4 漏桶算法令牌桶流量整形器。由于許多應用都是可變速率的或者是實時業(yè)務,這樣的分組通過漏桶流量整形器會導致不必要的延時。令牌桶流量整形器只對違約分組進行調(diào)節(jié)而對守約的分組將直接通過整形器,不增加它的延時。例圖如下圖 1-5 令牌桶算法(二)、閉環(huán)控制閉環(huán)擁塞控制根據(jù)反饋信息來調(diào)節(jié)信源速率,反饋信息可以是隱含的信息(隱式反饋),或者是明顯的信息(顯式反饋)。隱式反饋中,信源可以用超時來判斷網(wǎng)絡中是否已經(jīng)出現(xiàn)擁塞;在顯式反饋中,將有某種形式的顯式消息到達信源,以指示網(wǎng)絡的擁塞狀態(tài)。下圖給出了重要的擁塞控制技

12、術的一般性描述。圖 1-6閉環(huán)擁塞控制機制下面是幾種閉環(huán)控制方法:1、反壓這種技術類似于流過管道的流體產(chǎn)生的反壓現(xiàn)象。當管道末端被關閉或者受限時,流體就向源頭產(chǎn)生壓力,從而阻斷或減慢流量。反壓可以在鏈路或虛電路上實施,當下游節(jié)點變得擁擠或者緩存滿溢時,就會減慢或者阻止來自上游節(jié)點的分組流量。這種流量的限制會反向傳播到信源,使信源根據(jù)限制重新調(diào)節(jié)流量。反壓可以有選擇地應用到通信量最大的連接上。X.25支持這種方式2、阻流分組阻流分組是由擁塞節(jié)點產(chǎn)生控制分組,然后將這些控制分組傳回源節(jié)點以限制通信的流量。ICMP就是采用這種技術。阻流分組是一種比較粗糙的擁塞控制技術。3、隱式擁塞信令當網(wǎng)絡發(fā)生擁塞

13、的時候,會出現(xiàn)從源站到目的站的個別分組的傳輸時延增加或者分組丟棄。如果源站能夠檢測到這種傳輸時延的增加和分組的丟失,就認為有間接的證據(jù)說明網(wǎng)絡已經(jīng)擁塞,可以減緩流量來消除網(wǎng)絡擁塞?;陔[式信令的擁塞控制是由端系統(tǒng)來完成,不需要網(wǎng)絡中間節(jié)點的參與。在數(shù)據(jù)報分組交換網(wǎng)絡中和基于IP的互聯(lián)網(wǎng)中,由于采用的是無連接的方式,因此隱式擁塞信令是一種有效的方法。另外,隱式信令也可以用于面向連接的網(wǎng)絡。4、顯式擁塞信令顯式擁塞信令技術可以使網(wǎng)絡容量得到充分的利用,同時,又能夠以公平的方式對擁塞進行控制。在這種方法中,網(wǎng)絡會對正在形成的擁塞向源端發(fā)出警告,而源端采取相應的措施來減低對網(wǎng)絡的負荷。通常顯式擁塞控制

14、用于面向連接的網(wǎng)絡中,并以單個連接將擁塞信令分為三類:二進制的、基于信用值的和基于速率的。二進制的:擁塞節(jié)點在轉發(fā)數(shù)據(jù)分組時對分組中的某一比特位置位。當源站受到一條邏輯連接上的擁塞二進制指示時,就會降低該連接上的通信量?;谛庞弥档模涸摲桨割愃朴谠谝粭l邏輯連接上對源站提供顯式信用值。這個信用值表示了允許源站發(fā)送的字節(jié)數(shù)或分組數(shù)。當一個源站用完它的信用值后,必須等待更多的信用值才可以發(fā)送數(shù)據(jù)?;谒俾实模涸摲桨割愃朴谠谝粭l邏輯連接上提供一個明確的數(shù)據(jù)率上限。源站只能以不超過該上限的速率發(fā)送數(shù)據(jù)。無論是采取開環(huán)方法還是閉環(huán)方法,擁塞控制都只能暫時地緩解網(wǎng)絡過載(一般在毫秒的量級)。如果過載持續(xù)更長

15、的時間,那么只有對網(wǎng)絡進行更新。圖 1-7擁塞控制所起的作用第二節(jié) 網(wǎng)絡流量控制1.2 .1什么是網(wǎng)絡流量控制流量控制用于防止在端口阻塞的情況下丟幀,這種方法是當發(fā)送或接收緩沖區(qū)開始溢出時通過將阻塞信號發(fā)送回源地址實現(xiàn)的。流量控制可以有效的防止由于網(wǎng)絡中瞬間的大量數(shù)據(jù)對網(wǎng)絡帶來的沖擊,保證用戶網(wǎng)絡高效而穩(wěn)定的運行。流量限制能限制網(wǎng)絡上兩個節(jié)點之間的數(shù)據(jù)流量,以滿足接收端的承受能力,避免過載。若沒有流量控制,在發(fā)生過載時將發(fā)生以下情況:隊列建立分組被丟棄源重傳信息擁塞增加不穩(wěn)定1.2.2 流量控制的目標將流量控制能力添加到網(wǎng)絡流量管理中,能夠幫助網(wǎng)絡管理者對網(wǎng)絡資源和業(yè)務資源進行帶寬控制和資源調(diào)

16、度,具備流量控制能力的網(wǎng)絡流量管理還能夠對嚴重影響業(yè)務運營者收入的未經(jīng)許可的其他業(yè)務進行抑制。還可以通過綜合使用網(wǎng)絡層、傳輸層和應用層檢測技術,對未經(jīng)許可的寬帶私接用戶采取中斷連接、主動告警、分時控制等多種管理動作。1.2.3 談P2P及類似應用對網(wǎng)絡的影響P2P應用對于年輕人來說,現(xiàn)在基本上每天都不能離開了,我們會長期一天不關機的下載BT,EDonkey,EMule和POCO,網(wǎng)絡上大量免費的共享資源誘惑著我們的眼球,下載速度遠高于傳統(tǒng)的FTP、HTTP下載,只要有種子供應,甚至幾分鐘就可以下載一部電影。 P2P應用(PeertoPeer)或點對點應用,對我們每個人來說,展現(xiàn)了一個全新的文件

17、共享的世界,從音樂到視頻再到各種應用程序,所有這些都是免費的并且可以通過數(shù)以百計的P2P應用來獲取。但對于運營商而言,P2P應用就是一場噩夢,因為越來越多的P2P應用搶占了大量的帶寬,而傳統(tǒng)的web應用,Email受到了嚴重的擠壓。P2P的概念是相當誘人的:一組不同的應用,它們能夠充分的利用各種資源,包括存儲設備,處理器周期,內(nèi)容,用戶的位置等等,所有這些都可以在Internet的邊緣上獲得。P2P用戶將用戶的計算機變成對等體(Peers),既是客戶端同時也是服務器。 在使用了P2P應用后,網(wǎng)絡變得不再有任何空閑。P2P應用的用戶通常將很多大型的文件放在下載隊列中然后離開計算機或者開始其它的工

18、作。P2P應用工作在后臺的模式下,竭盡所能的獲取網(wǎng)絡能夠提供的最大帶寬用以完成下載任務,而不做任何限制。在對等體計算機之間用于文件傳輸?shù)膸捳加靡彩求@人的高,這些對等體計算機位于網(wǎng)絡的任意位置,使用某些頻繁交換信息的協(xié)議來發(fā)送類似“查詢”與“定位”的消息以保持連接的狀態(tài),而這種連接將會保持一個很長的時間。假設P2P用戶的計算機長時間保持這些連接,那么用于維護連接的流量總和甚至會超過用于娛樂性下載的數(shù)據(jù)量。主流流量控制技術原理那么,到底什么樣的方法能有效的檢測出P2P流量并加以控制呢?下面介紹的就是一種主流的技術方式:DPI(深度數(shù)據(jù)包檢測) 對P2P應用進行判定需要借助復雜的第7層識別技術,因

19、為大多數(shù)P2P文件共享應用都使用端口跳動技術或者盜用一些常用的協(xié)議端口進行傳輸,所以通過端口對它們進行識別顯然是遠遠不夠的。因此,所有的數(shù)據(jù)包都必須在應用層面上進行檢查,即對傳輸協(xié)議的載荷(payload)部分進行檢查,以判斷它們是否符合代表某些應用代碼的樣本特征。在很多情況下,對于某一種應用的識別需要檢測它是否匹配多個代碼樣本的特征。 標準的協(xié)議頭部(Header)字段例如TCP/UDP的端口號字段在每一個數(shù)據(jù)包中都存在。而第7層的協(xié)議代碼樣本通常只能在一次協(xié)議會話的前幾個數(shù)據(jù)包中存在,并進行會話標記的請求以標識本次會話中所有的數(shù)據(jù)包。當網(wǎng)絡中產(chǎn)生了一個新的會話,如P2P應用會話,那么一個唯

20、一的協(xié)議簽名(Signatrue)就必須被找到并能夠與已知的協(xié)議代碼樣本相匹配。例如當我們使用第7層的分類方法對一個P2P應用進行了正確的識別,那么該會話中的后續(xù)數(shù)據(jù)包就能夠被正確的判別為該P2P應用會話的數(shù)據(jù)流量。在一些情況下,一個P2P應用使用不止一個會話,這就需要流量管理系統(tǒng)能夠從兩個或多個會話中提取信息并進行關聯(lián)以找到能夠匹配的代碼樣本。 因為P2P應用通常使用隨機的端口號或者借助一些常用的端口號來進行傳輸,因此在進行P2P應用樣本的搜索時,就不能做任何的假設,我們需要對網(wǎng)絡中所有的數(shù)據(jù)流進行第7層協(xié)議的探測,而不管它們是否使用了某個端口號。 使用能夠識別第7層應用的流量管理解決方案,

21、運營商能夠準確的判別P2P應用并對它們進行限制。 那么DPI作為一種先進的包檢測技術,是不是只能識別P2P協(xié)議呢,答案是否定的,除了P2P,DPI還可以識別包括VOIP(skype、H.323、SIP、RTP、Net2Phone、Vonage),在線游戲(Doom、Diablo、MSNGame、魔獸世界),stream(PPlive、QQlive、SopCast),web,流量封裝協(xié)議等各種應用協(xié)議,主流的流控設備甚至可以通過DPI識別90以上網(wǎng)絡中的各種協(xié)議。1.2.5 當前幾種流量控制技術及比較認識了P2P,并了解了DPI技術之后,下面談談如何對流量進行控制目前主流的控制技術可以分為三種:

22、1:以Packeteer為代表的基于TCP窗口整形的流控技術,我們知道TCP建立連接需要三次握手的過程,通過握手最后達成協(xié)議,確定滑動窗口的大小?;赥CP窗口整形的流控技術的核心就在于“人為調(diào)整TCP滑動窗口的大小”,達到流量控制的目的。具體過程如下:一臺主機A和另一臺主機B要建立一個TCP連接,那么主機A和B首先都要和Packeteer設備建立連接,即A和B不直接握手,而是都和Packeteer握手,建立連接后,Packeteer根據(jù)自身流控策略的配置,調(diào)整TCP滑動窗口的大小,然后通知A和B,要它們各自按照這個窗口的大小來發(fā)送和接收文件,從而達到流量控制的目的。這種技術的優(yōu)勢在于:可以對流量的控制非常精確,例如說控制流量在512K,它的誤差甚至會控制在幾個字節(jié),但是如果控制流量比較大,比如說幾百M甚至幾個G,那么TCP窗口整形的效果就不那么好了,很多實例表明,在控制大流量的情況下,TCP窗口整形技術通常會出現(xiàn)較大誤差,于是又出現(xiàn)了一種新的技術:隊列技術。 2:以Allot和Cisco為代表的基于隊列的流控技術。它不是通過調(diào)整TCP滑動窗口的大小來限制流量,那么它是通過什么來控流呢?它的策略的核心是建立很多管道(pipe),不同的對象對應不同的管道,然后通過調(diào)整不同管道的大小,讓不同的對象有序通過。比如我要限制P2

溫馨提示

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

評論

0/150

提交評論