日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机网络(十一)-数据链路层-流量控制

發布時間:2024/7/19 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机网络(十一)-数据链路层-流量控制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.流量控制

1.1 較高的發送速度較低的接收能力的不匹配,因此流量控制也是數據鏈路層的一項重要工作。

1.2 數據鏈路層的流量控制是點對點的,而傳輸層的流量控制是端到端的。

1.3 數據鏈路層流量控制手段:接收方收不下就不回復確認。
傳輸層流量控制手段:接收端給發送端一個窗口公告。

1.4 流量控制的方法

  • 停止-等待協議:每發完一個幀就停止發送,等待對方的確認,在收到確認后再發送下一幀。發送窗口大小為1,接收窗口大小為1(滑動窗口的特例)。
  • 滑動窗口協議(窗口大小固定)
    -后退N幀協議(GBN):發送窗口大小大于1,接收窗口大小為1;
    -選擇重傳協議(SR):發送窗口大小大于1,接收窗口大小大于1;

1.5.可靠傳輸、滑動窗口、流量控制區別

  • 可靠傳輸:發送端發送,接收端就接收。
  • 流量控制:控制發送速率,使接收方有足夠的緩沖空間來接收每一幀。
  • 滑動窗口解決:
    -流量控制:收不下數據,就不發送確認幀。
    -可靠傳輸:發送方自動重傳。

二.停止-等待協議

2.1 數據幀丟失或檢測到幀出錯

  • 超時計時器:每次發送一個幀就啟動一個計時器。
  • 超時計時器設置的重傳時間應當比幀傳輸的平均RTT更長。
  • 超時重傳:發送完一個幀后,還需要保存該幀的一個副本,以備超時重傳。
  • 數據幀和確認幀必須編號。根據編號可以判斷是否重復。

    2.2 確認幀丟失

    2.3 確認幀遲到(ACK遲到)

    2.4 該協議信道利用率較低
  • 發送方在一個發送周期內,有效的發送數據所需的時間占整個發送周期的比率。

2.5 停等協議的弊端
信道利用率低,可以采用流水線技術,提高利用率。

  • 必須增加序號范圍;
  • 發送發需要緩存多個分組。

三. 后退N幀協議

3.1 GBN發送方需要響應的三件事

  • 上層的調用:
    上層要發送數據時,發送方先檢查發送窗口是否已滿,如果未滿,則產生一個幀并將其發送;如果窗口已滿,發送發只需將數據返回給上層,暗示上層窗口已滿。上層等一會再發送。(實際中,發送發可以緩存這些數據,窗口不滿時在發送幀)。
  • 收到了一個ACK
    GBN協議中,對n號幀的確認采用累積確認的方式,標明接收方已經收到n號幀和它之前的全部幀。以最大序號確認為準,則之前的不管是否發送確認,都表明已經確認收到了。
  • 超時事件:
    協議的名字為后退N幀/回退N幀,來源于出現丟失和延長幀時發送方的行為。就像在停等協議中一樣,定時器將再次用于恢復數據幀或確認幀的丟失。如果出現超時,發送方重傳所有已發送但未被確認的幀。

3.2 GBN 接收方要做的事

  • 如果正確收到n號幀,并且按序,那么接收方為n幀發送一個確認ACK,并將該幀中的數據部分交付給上層。
  • 其余情況都丟掉,并為最近按序接收的幀重新發送ACK。接收方無需緩存任何失序幀,只要維護一個信息exepectedseqnum(下一個按序接收的幀序號)。

    3.3 滑動窗口長度
    若采用n個比特對幀編號,那么發送窗口的尺寸W1應滿足:1<=W1<=2n-1。因為發送窗口尺寸過大,就會使得接收方無法區分新幀和舊幀。

3.4 GBN協議重點

  • 累積確認(也稱捎帶確認)。
  • 接收方只按序接受幀,不按序無情丟棄
  • 確認序列號最大的、按序到達的幀
  • 發送窗口最大為2n-1,接收窗口大小為1。

3.5 GBN 協議性能分析

  • 提高了信道利用率;
  • 在重傳時必須把原來已經正確傳送的數據幀重傳,使傳遞效率降低。

四.選擇重傳協議SR

4.1 只重傳出錯幀:設置單個確認(逐一確認幀),同時加大接收窗口,設置接收緩存,緩存亂序到達的幀。

4.2 選擇重傳協議中的滑動窗口

4.3 SR必須響應的三件事

  • 上層調用
    從上層收到數據后,SR發送方檢查下一個可用于該幀的序號,如果序號位于發送窗口內,則發送數據幀;否則就像GBN一樣,要么將數據緩存,要么返回給上層之后再傳輸。

  • 收到了一個ACK
    如果收到ACK,加入該幀序號在窗口內,則SR發送方將那個被確認的幀標記為已接收。如果該幀序號是窗口的下界(最左邊第一個窗口對應的序號),則窗口向前移動到具有最小序號的未確認幀處。如果窗口移動了并且有序號在窗口內的未發送幀,則發送這些幀。

  • 超時事件
    每個幀都有自己的定時器,一個超時事件發生后只重傳一個幀

4.4 SR接收方要做的事
SR接收方將確認一個正確接收的幀不管其是否按序。失序的幀將被緩存,并返回給發送方一個該幀的確認幀,直到所有幀(序號更小的幀)皆被收到為止,這時才可以將一批幀按序交付給上層,然后向前移動滑動窗口

4.5 運行中的SR
假設接收窗口和發送窗口大小為4.

4.6 滑動窗口長度

  • 如何區分新舊幀:
  • 發送窗口等于接收窗口
  • W發送窗口max=W接收窗口max=2n-1 n為窗口長度可以用幾位二進制編碼的二進制位數。

4.7 SR協議重點

  • 對數據幀逐一確認,收到一個確認一個;
  • 只重傳出錯幀
  • 接收方有緩存
  • W發送窗口max=W接收窗口max=2n-1

總結

以上是生活随笔為你收集整理的计算机网络(十一)-数据链路层-流量控制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。