什么是數(shù)據(jù)通信的信息流量控制
流量控制是網(wǎng)絡(luò)技術(shù)中的一個(gè)重要課題,此處以ATM網(wǎng)絡(luò)為例對(duì)流量控制的各個(gè)問題進(jìn)行說明。ATM網(wǎng)絡(luò)能夠?qū)Σ煌瑯I(yè)務(wù)提供服務(wù)質(zhì)量的保證,在分析ATM網(wǎng)絡(luò)所支持業(yè)務(wù)的特點(diǎn)及其相應(yīng)參數(shù)的基礎(chǔ)上,ATM網(wǎng)絡(luò)除了可為信息提供高速率、高帶寬的轉(zhuǎn)移功能外,更為重要的是能靈活地支持現(xiàn)有的和將來可能出現(xiàn)的各種業(yè)務(wù),并對(duì)各種業(yè)務(wù)提供服務(wù)質(zhì)量保證,使網(wǎng)絡(luò)達(dá)到很高的資源利用率,要達(dá)到這些目的需要對(duì)不同業(yè)務(wù)運(yùn)用不同的流量控制和擁塞控制機(jī)制。概括地說流量控制就是為了避免網(wǎng)絡(luò)擁塞的出現(xiàn)而采取的一系列操作( ATM層的擁塞是指網(wǎng)絡(luò)不能達(dá)到連接建立時(shí)所簽訂的流量合同);擁塞控制是當(dāng)網(wǎng)絡(luò)發(fā)生擁塞時(shí),為避免網(wǎng)絡(luò)進(jìn)一步惡化和緩解網(wǎng)絡(luò)擁塞而采取的一系列操作。流量控制和擁塞控制都是為了提高網(wǎng)絡(luò)性能,保證業(yè)務(wù)服務(wù)質(zhì)量,通常統(tǒng)一稱之為流量控制。
流量控制涉及鏈路上字符或幀的發(fā)送速率的控制, 以使接收方在接收前的足夠的緩沖存儲(chǔ)空間來接收每一個(gè)字符或幀。例如,在面向字符的終端——計(jì)算機(jī)鏈路中,若遠(yuǎn)程計(jì)算機(jī)為許多臺(tái)終端服務(wù),它就有可能因不能在高峰時(shí)按預(yù)定速率傳輸全部字符而暫時(shí)過載。同樣,在面向幀的自動(dòng)重發(fā)請(qǐng)求系統(tǒng)中,當(dāng)待確認(rèn)幀數(shù)量增加時(shí),有可能超出緩沖器存儲(chǔ)空間,也會(huì)造成過載。下面介紹兩種常用的流量控制方案:XON/XOFF方案和窗口機(jī)制。
XON/XOFF方案
增加緩沖存儲(chǔ)空間在某種程度上可以緩解收、發(fā)雙方在傳輸速率上的差異,但這是一種被動(dòng)、消極的方法。因?yàn)椋环矫嫦到y(tǒng)不允許開設(shè)過大的緩沖空間,另一方面對(duì)于速率顯著失配并且又傳送大量數(shù)據(jù)的場(chǎng)合,仍會(huì)出現(xiàn)緩沖空間不夠的現(xiàn)象。XON/XOFF方案方案則是一種相比之下更主動(dòng)、更積極的流量控制方法。
XON/XOFF方案中使用一對(duì)控制字符來實(shí)現(xiàn)流量控制,其中XON采用ASCII字符集中的控制字符DC1,XOFF采用ASCII字符集中的控制字符DC3。當(dāng)通信路上的接收方發(fā)生過載時(shí),便向發(fā)送方發(fā)送一個(gè)XOFF字符,發(fā)送方接收XOFF字符后便暫停發(fā)送數(shù)據(jù);等接收方處理完緩沖器中的數(shù)據(jù),過載恢復(fù)后,再向發(fā)送方發(fā)送一個(gè)XON字符,以通知發(fā)送方恢復(fù)數(shù)據(jù)發(fā)送。在一次數(shù)據(jù)傳輸過程中,XOFF、XON的周期可重復(fù)多次,但這些操作對(duì)用戶來說是透明的。
許多異步數(shù)據(jù)通信軟件包均支持XON/XOFF協(xié)議。這種方案也可用于計(jì)算機(jī)向打印機(jī)或其它終端設(shè)備發(fā)送字符,在這種情況下,打印機(jī)或終端設(shè)備中的控制部件用以控制字符流量。
窗口機(jī)制
為了提高信道的有效利用率,如前所述采用了不等待確認(rèn)幀返回就連續(xù)發(fā)送若干幀的方案。由于允許連續(xù)發(fā)送多個(gè)未被確認(rèn)的幀 ,幀號(hào)就需采用多位二進(jìn)制才能加以區(qū)分。因?yàn)榉脖话l(fā)出去蛤尚未被確認(rèn)的幀都可能出錯(cuò)或丟失而要求重發(fā),因而這些幀都要保留下來。這就要求發(fā)送方有較大的發(fā)送緩沖區(qū)保留可能要求重發(fā)的未被確認(rèn)的幀。
但是緩沖區(qū)容量總是有限的,如果接收方不能以發(fā)送方的發(fā)送速率處理接收到的幀,則還是可能用完緩沖容量而暫時(shí)過載。為此,可引入類似于空閑RQ控制方案的調(diào)整措施,其本質(zhì)是在收到一確定幀之前,對(duì)發(fā)送方可發(fā)送的幀的數(shù)目加以限制。這是由發(fā)送方調(diào)整保留在重發(fā)表中的待確認(rèn)幀的數(shù)目來實(shí)現(xiàn)的。如果接收方來不及時(shí)對(duì)心到的幀進(jìn)行處理,則便停發(fā)確認(rèn)信息,此時(shí)發(fā)送方的重發(fā)送方的重發(fā)表就會(huì)增長(zhǎng),當(dāng)達(dá)到重發(fā)表限度時(shí),發(fā)送方就不再發(fā)送新幀,直至再次收到確認(rèn)信息為止。
不了實(shí)現(xiàn)此方案,發(fā)送方存放待確認(rèn)幀的重發(fā)表中,應(yīng)設(shè)置待確認(rèn)幀數(shù)目的最大限度,這一限度被稱為鏈路的發(fā)送窗口。顯然,如果窗口設(shè)置為1,即發(fā)送方緩沖能力僅為一個(gè)幀,則傳輸控制方案就回到了空閑RQ方案,此時(shí)傳輸效率很低。故窗口限度應(yīng)選為使接收方盡量能處理或接受收到的所有幀。當(dāng)然選擇時(shí)還必須考慮諸如幀的最大長(zhǎng)度、可使用的緩沖存空間以及傳輸速率等因素。
重發(fā)表是一個(gè)連續(xù)序號(hào)的列表,對(duì)應(yīng)發(fā)送方已發(fā)送但尚未確認(rèn)的那些幀。這些幀的序號(hào)有一個(gè)最大值,這個(gè)最大值即發(fā)送窗口的限度。所謂發(fā)送窗口就是指示發(fā)送方已發(fā)送但尚未確認(rèn)的幀序號(hào)隊(duì)列的界,其上、下界分別稱為發(fā)送窗口的上、下沿,上、下沿的部距稱為窗口尺寸。接收方類似地也有接收窗口,它批示允許接收和幀的序號(hào)。
發(fā)送方每次發(fā)送一幀后,待確認(rèn)幀的數(shù)目便增1,每收到一個(gè)確認(rèn)信息后,待確認(rèn)幀的數(shù)目便減1。當(dāng)重發(fā)表長(zhǎng)度計(jì)數(shù)值,即待確認(rèn)幀的數(shù)目等于發(fā)送窗口尺寸時(shí),便停止發(fā)送新的幀。
一般幀號(hào)只取有限位二進(jìn)制數(shù),到一定時(shí)間后就又反復(fù)循環(huán)。若幀號(hào)配3位二進(jìn)制數(shù),則幀號(hào)在0~7間循環(huán)。如果發(fā)送窗口尺寸取值為2。則發(fā)送如圖3.15所示。圖中發(fā)送方陰影部分表示打開的發(fā)送窗口,接收方陰影部分則表示打開的接收窗口。當(dāng)傳送過程進(jìn)行時(shí),打開的窗口位置一直在滑動(dòng),所以也稱為滑動(dòng)窗口(Slidding Window),或簡(jiǎn)稱為滑窗。
圖1滑動(dòng)窗口狀態(tài)變化過程
圖1中的滑動(dòng)窗口變化過程可敘述如下(假設(shè)發(fā)送窗口尺寸為2,接收窗口尺寸為1):
①初始態(tài),發(fā)送方?jīng)]有幀發(fā)出,發(fā)送窗口前后沿相重合。接收方0號(hào)窗口打開,表示等待接收0號(hào)幀;
②發(fā)送方已發(fā)送0號(hào)幀,此時(shí)發(fā)送方打開0號(hào)窗口,表示已發(fā)出0幀但尚確認(rèn)返回信息。此時(shí)接收窗口狀態(tài)同前,仍等待接收0號(hào)幀;
③發(fā)送方在未收到0號(hào)幀的確認(rèn)返器信息前,繼續(xù)發(fā)送1號(hào)幀。此時(shí),1號(hào)窗口打開,表示1號(hào)幀也屬等待確認(rèn)之列。至昆,發(fā)送方打開的窗口數(shù)已達(dá)規(guī)定限度,在未收到新的確認(rèn)返回幀之前,發(fā)送方將暫停發(fā)送新的數(shù)據(jù)幀。接收窗口此時(shí)狀態(tài)仍未變;
④接收方已收到0號(hào)幀,0號(hào)窗口關(guān)閉,1號(hào)窗口打開,表示準(zhǔn)備接收1號(hào)幀。此時(shí)發(fā)送窗口狀態(tài)不變;
⑤發(fā)送方收到接收方發(fā)來的0號(hào)幀確認(rèn)返回信息,關(guān)閉0號(hào)窗口,表示從重發(fā)表中刪除0號(hào)幀。此時(shí)接收窗口狀態(tài)仍不變;
⑥發(fā)送方繼續(xù)發(fā)送2號(hào)幀,2號(hào)窗口打開,表示2號(hào)幀也納入待確認(rèn)之列。至此,發(fā)送方打開的窗口又已達(dá)規(guī)定限度,在未收到新的確認(rèn)返回幀之前,發(fā)送方將暫停發(fā)送新的數(shù)據(jù)幀,此時(shí)接收窗口狀態(tài)仍不變;
⑦接收方已收到1號(hào)幀,1號(hào)窗口關(guān)閉,2號(hào)窗口打開,表示準(zhǔn)備接收2號(hào)幀。此時(shí)發(fā)送窗口狀態(tài)不變;
⑧發(fā)送方收到接收方發(fā)來的1號(hào)幀收畢的確認(rèn)信息,關(guān)閉1號(hào)窗口,表示從重發(fā)表中刪除1號(hào)幀。此時(shí)接收窗口狀態(tài)仍不變。
一般來說,凡是在一定范圍內(nèi)到達(dá)的幀,即使它們不按順序,接收方也要接收下來。若把這個(gè)范圍看成是接收窗口的話,由接收窗口的大小也應(yīng)該是大于1的。而Go-back-N正是接收窗口等于1的一個(gè)特例,選擇重發(fā)也可以看做是一種滑動(dòng)窗口協(xié)議,只不過其發(fā)送窗口和接收窗口都大于1。若從滑動(dòng)窗口的觀點(diǎn)來統(tǒng)一看待空閑RQ、Go-back-N及選擇重發(fā)三種協(xié)議,它們的差別僅在于各自窗口尺寸的大小不同而已:
空閑RQ: 發(fā)送窗口=1,接收窗口=1;
Go-back-N: 發(fā)窗口>1,接收窗口>1;
選擇重發(fā): 發(fā)送窗口>1,接收窗口>1。
若幀序號(hào)采用3位二進(jìn)制編碼,由最大序號(hào)為Smax=2^3-1=7。對(duì)于有序接收方式,發(fā)送窗口最大尺寸選為Smax;對(duì)于無序接收方式,發(fā)送窗口最大尺寸至多是序號(hào)范圍的一半。發(fā)送方管理超時(shí)控制的計(jì)時(shí)器數(shù)應(yīng)等于緩沖器數(shù),而不是序號(hào)空間的大小。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(0) 0%
相關(guān)閱讀:
- [電子說] 如何打造具有競(jìng)爭(zhēng)力的線纜數(shù)智化升級(jí)解決方案? 2023-10-22
- [電子說] 華為全聯(lián)接大會(huì)2023 | 一圖看懂?dāng)?shù)據(jù)通信商業(yè)市場(chǎng)新品 2023-09-28
- [電子說] Modbus協(xié)議網(wǎng)關(guān)的飲料生產(chǎn)線數(shù)據(jù)通信應(yīng)用 2023-09-26
- [電子說] 華為全聯(lián)接大會(huì)2023|華為發(fā)布全新《邁向智能世界白皮書》數(shù)據(jù)通信篇 2023-09-25
- [電子說] 使用cJSON庫來做數(shù)據(jù)組包及數(shù)據(jù)解析分享 2023-09-25
- [電子說] 為什么電路帶寬不能設(shè)計(jì)成無窮大? 2023-09-20
- [連接器] 2024年的連接器行業(yè)前景如何呢 2023-09-07
- [電子說] 華為全聯(lián)接大會(huì) 2023 | 華為數(shù)據(jù)通信參會(huì)早知道! 2023-09-06
( 發(fā)表人:admin )