流量控制(停止等待矫付、GBN猎莲、SR)

較高的發(fā)送速度和較低的接收能力的不匹配,會造成傳輸出錯(cuò)技即,因此流量控制也是數(shù)據(jù)鏈路層的一項(xiàng)重要工作著洼。

數(shù)據(jù)鏈路層的流量控制是點(diǎn)對點(diǎn)的,而傳輸層的流量控制是端到端的而叼。

數(shù)據(jù)鏈路層流量控制手段:接收方收不下就不回復(fù)確認(rèn)身笤。(確認(rèn)幀)

傳輸層流量控制手段:接收端給發(fā)送端一一個(gè)窗口公告。

流量控制的方法有停止-等待協(xié)議葵陵、滑動(dòng)窗口協(xié)議(后退N幀協(xié)議GBN液荸、選擇重傳協(xié)議SR)

1 停止-等待協(xié)議

為什么要有停止等待協(xié)議?

除了比特出差錯(cuò),底層信道還會出現(xiàn)丟包(物理線路故障脱篙、設(shè)備故障娇钱、病毒攻擊、路由信息錯(cuò)誤等原因绊困,會導(dǎo)致數(shù)據(jù)包的丟失)問題文搂。為了實(shí)現(xiàn)流量控制。

研究停等協(xié)議的前提?

雖然現(xiàn)在常用全雙工通信方式秤朗,但為了討論問題方便煤蹭,僅考慮一方發(fā)送數(shù)據(jù)(發(fā)送方),一方接收數(shù)據(jù)(接收方)取视。

因?yàn)槭窃谟懻摽煽總鬏數(shù)脑硐踉恚圆⒉豢紤]數(shù)據(jù)是在哪一個(gè)層次上傳送的。

“停止等待”就是每發(fā)送完一個(gè)分組就停止發(fā)送作谭,等待對方確認(rèn)稽物,在收到確認(rèn)后再發(fā)送下一個(gè)分組。

分為兩種情況研究:

??無差錯(cuò)情況

??有差錯(cuò)情況(分三種情況)

——數(shù)據(jù)幀丟失或檢測到幀出錯(cuò)

——ACK丟失

——ACK遲到

停止等待協(xié)議簡單折欠,但是信道利用率太低贝或。

2 后退N幀協(xié)議GBN

GBN發(fā)送方必須相應(yīng)的三件事

1.上層的調(diào)用

上層要發(fā)送數(shù)據(jù)時(shí)秧倾,發(fā)送方先檢查發(fā)送窗口是否已滿,如果未滿傀缩,則產(chǎn)生一個(gè)幀并將其發(fā)送;如果窗口已滿,發(fā)送方只需將數(shù)據(jù)返回給上層农猬,暗示上層窗口已滿赡艰。上層等一會再發(fā)送。(實(shí)際實(shí)現(xiàn)中斤葱, 發(fā)送方可以緩存這些數(shù)據(jù)慷垮,窗口不滿時(shí)再發(fā)送幀)。

2.收到了一個(gè)ACK

GBN協(xié)議中揍堕,對n號幀的確認(rèn)采用累積確認(rèn)的方式料身,標(biāo)明接收方已經(jīng)收到n號幀和它之前的全部幀。

3.超時(shí)事件

協(xié)議的名字為后退N幀/回退N幀衩茸,來源于出現(xiàn)丟失和時(shí)延過長幀時(shí)發(fā)送方的行為芹血。就像在停等協(xié)議中一樣,定時(shí)器將再次用于恢復(fù)數(shù)據(jù)幀或確認(rèn)幀的丟失楞慈。如果出現(xiàn)超時(shí)幔烛,發(fā)送方重傳所有已發(fā)送但未被確認(rèn)的幀。

GBN接收方要做的事

如果正確收到n號幀囊蓝,并且按序饿悬,那么接收方為n幀發(fā)送一個(gè)ACK,并將該幀中的數(shù)據(jù)部分交付給上層聚霜。

其余情況都丟棄幀狡恬,并為最近按序接收的幀重新發(fā)送ACK。接收方無需緩存任何失序幀蝎宇,只需要維護(hù)一個(gè)信息: expectedseqnum (下一個(gè)按序接收的幀序號)弟劲。


窗口長度可以無限嗎?

若采用n個(gè)比特對幀編號,那么發(fā)送窗口的尺寸WT應(yīng)滿足: 1≤ Wτ≤2^n-1姥芥。因?yàn)榘l(fā)送窗口尺寸過大函卒,就會使得接收方無D法區(qū)別新幀和舊幀。

運(yùn)行中的GBN

例:

因?yàn)镚BN是累積確認(rèn)撇眯,3號幀的確認(rèn)代表3及3之前的都受到了报嵌,所以需要重發(fā)的幀是4、5熊榛、6锚国、7幀,即需要重發(fā)的幀數(shù)是4玄坦,選擇C

3 選擇重傳協(xié)議SR

選擇重傳協(xié)議中的滑動(dòng)窗口

SR發(fā)送方必須相應(yīng)的三件事:

1.上層的調(diào)用

從上層收到數(shù)據(jù)后血筑,SR發(fā)送方檢查下一一個(gè)可用于該幀的序號绘沉,如果序號位于發(fā)送窗口內(nèi),則發(fā)送數(shù)據(jù)幀;否則就像GBN-樣豺总,要么將數(shù)據(jù)緩存车伞,要么返回給上層之后再傳輸。

2.收到了一個(gè)ACK

如果收到ACK喻喳,加入該幀序號在窗口內(nèi)另玖,則SR發(fā)送方將那個(gè)被確認(rèn)的幀標(biāo)記為已接收。如果該幀序號是窗口的下界(最左邊第一個(gè)窗口對應(yīng)的序號)表伦,則窗口向前移動(dòng)到具有最小序號的未確認(rèn)幀處谦去。如果窗口移動(dòng)了并且有序號在窗口內(nèi)的未發(fā)送幀,則發(fā)送這些幀蹦哼。

3.超時(shí)事件

每個(gè)幀都有自己的定時(shí)器鳄哭,一個(gè)超時(shí)事件發(fā)生后只重傳一個(gè)幀。

SR接收方要做的事

來者不拒(窗口內(nèi)的幀)

SR接收方將確認(rèn)一個(gè)正確接收的幀而不管其是否按序纲熏。失序的幀將被緩存妆丘,并返回給發(fā)送方一個(gè)該幀的確認(rèn)幀[收誰確認(rèn)誰],直到所有幀(即序號更小的幀)皆被收到為止局劲,這時(shí)才可以將一批幀按序交付給上層飘痛,然后向前移動(dòng)滑動(dòng)窗口。

如果收到了窗口序號外(小于窗口下界)的幀容握,就返回一個(gè)ACK宣脉。其他情況,就忽略該幀剔氏。

SR工作過程

窗口長度可以無限嗎?

對于SR塑猖,發(fā)送窗口最好等于接收窗口,W_{Tmax} =W_{Nmax}=2^{n-1}

如果超過了谈跛,比如n=2時(shí)羊苟,窗口最大是2,如果窗口是3感憾,就無法區(qū)分重傳的是舊幀還是新幀(下圖所示)

例題

解答:

連續(xù)ARQ協(xié)議(GBN):發(fā)送方可以連續(xù)發(fā)送若干個(gè)數(shù)據(jù)幀蜡励,如果收到接收方的確認(rèn)幀則可以繼續(xù)發(fā)送。若某個(gè)幀出錯(cuò)阻桅,接收方只是簡單地丟棄該幀及其后所有的后續(xù)幀凉倚,發(fā)送方超時(shí)后需重傳該數(shù)據(jù)幀及其后續(xù)的所有數(shù)據(jù)幀。這里要注意嫂沉,連續(xù)ARQ協(xié)議中稽寒,接收方一般采用累積確認(rèn)的方式,即接收方對按序到達(dá)的最后一個(gè)分組發(fā)送確認(rèn)趟章;

選擇ARQ協(xié)議(SR):選擇重傳協(xié)議中杏糙,接收方逐個(gè)地確認(rèn)正確接收的分組慎王,不管接收到的分組是否有序,只要正確接收就發(fā)送選擇ACK分組進(jìn)行確認(rèn)宏侍。因此選擇重傳協(xié)議中的ACK.分組不再具有累積確認(rèn)的作用赖淤。這點(diǎn)要特別注意與GBN協(xié)議的區(qū)別

0和2號幀兩個(gè)都需要重傳谅河,因此本題需要重傳的幀的數(shù)量num=2咱旱,選擇B

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市旧蛾,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蠕嫁,老刑警劉巖锨天,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異剃毒,居然都是意外死亡病袄,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進(jìn)店門赘阀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來益缠,“玉大人,你說我怎么就攤上這事基公》牛” “怎么了?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵轰豆,是天一觀的道長胰伍。 經(jīng)常有香客問我,道長酸休,這世上最難降的妖魔是什么骂租? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮斑司,結(jié)果婚禮上渗饮,老公的妹妹穿的比我還像新娘。我一直安慰自己宿刮,他們只是感情好互站,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著僵缺,像睡著了一般云茸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上谤饭,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天标捺,我揣著相機(jī)與錄音懊纳,去河邊找鬼。 笑死亡容,一個(gè)胖子當(dāng)著我的面吹牛嗤疯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播闺兢,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼茂缚,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了屋谭?” 一聲冷哼從身側(cè)響起脚囊,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎桐磁,沒想到半個(gè)月后悔耘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡我擂,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年衬以,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片校摩。...
    茶點(diǎn)故事閱讀 39,688評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡看峻,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出衙吩,到底是詐尸還是另有隱情互妓,我是刑警寧澤,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布坤塞,位于F島的核電站车猬,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏尺锚。R本人自食惡果不足惜珠闰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瘫辩。 院中可真熱鬧伏嗜,春花似錦、人聲如沸伐厌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽挣轨。三九已至军熏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間卷扮,已是汗流浹背荡澎。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工均践, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人摩幔。 一個(gè)月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓彤委,卻偏偏與公主長得像,于是被迫代替她去往敵國和親或衡。 傳聞我的和親對象是個(gè)殘疾皇子焦影,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評論 2 353