計算機網絡原理_2. 傳輸層

參考文獻: 慕課網<計算機網絡原理>課程

1. 傳輸層服務和協議

1.1 服務

1.簡單介紹
在這裏插入圖片描述
2.對比網絡層

  • 網絡層: 提供主機之間的邏輯通信機制
  • 傳輸層: 提供應用進程之間的邏輯通信機制

位於網絡層之上
依賴於網絡層服務
對網絡層服務進行增強

1.2 協議

1.兩種協議
在這裏插入圖片描述

2.多路複用和多路分用

  • 多路分用 =>接收端有多個socket進程,通過傳輸層後分別發送給對應的客戶端進程
  • 多路複用=>發送端有多個socket進程,在傳輸層爲每塊數據封裝上頭部信息,然後交給網絡層在這裏插入圖片描述
  1. 分用如何工作?
    在這裏插入圖片描述
  • 無連接多路分用
    在這裏插入圖片描述
  • 面向鏈接多路分用
    在這裏插入圖片描述

3.無連接傳輸協議 UDP

1.簡介
在這裏插入圖片描述
2.用途
在這裏插入圖片描述
3.UDP校驗和(checksum)
在這裏插入圖片描述

4.可靠數據傳輸

1.簡單瞭解
在這裏插入圖片描述
2.
2.可靠數據傳輸協議

  • Rdt 2.0

停–等協議
發送方 發送信息,然後等待 返回ACK無錯誤,NAK錯誤重新發送
接收方 判斷是否有錯,有錯然後返回NAK,無錯ACK

  • Rdt 2.1

如果ACK/NAK消息發送錯誤/被破壞
在這裏插入圖片描述

  • Rdt 2.2
  • 就是在ACK裏面加控制信息
    在這裏插入圖片描述
  • Rdt 3.0
  • 信道丟失? 2.0版本就不能用了
    在這裏插入圖片描述
  • 缺點: 性能差
  • 如何提高性能, 在等待的時間,可以多發幾個,一起等待
  • 改進之—流水線機制
    在這裏插入圖片描述
  • 改進之—滑動窗口協議
    在這裏插入圖片描述
  • GBN(Go-Back-N)協議
    在這裏插入圖片描述

GBN的缺陷
重傳錯誤後面的分組, 重複了

  • Selective Repeat協議
  • 多了一個接收方的窗口,然後有一個窗口尺寸,會把錯誤的分組信息單獨傳給發送方,然後發送方再單獨發送錯誤的分組
    在這裏插入圖片描述
    示例
    在這裏插入圖片描述

5. 面向連接傳輸協議(TCP)

1.簡介
在這裏插入圖片描述
2.序列號和ACK
在這裏插入圖片描述
3.TCP可靠數據傳輸
在這裏插入圖片描述

  • 設置超時時間

大於RTT
測量RTT的平均值
EstimatedRTT 估計值 SampleRTT平均值
在這裏插入圖片描述
在這裏插入圖片描述

  • TCP發送方事件
    在這裏插入圖片描述
  • 快速重傳機制
    在這裏插入圖片描述
    4.TCP流量控制
    在這裏插入圖片描述
  • 發送方可以發送一個很小的段去判斷是否可以繼續發送
    在這裏插入圖片描述
    5.TCP連接管理
    在這裏插入圖片描述
    -3次握手

1.客戶主機向服務器發送 SYN 報文段,不攜帶任何數據,SYN標誌位(詢問是否可以建立鏈接),初始序列號
2.服務器收到SYN報文段, 服務器會分配緩存, 初始序列號
3.客戶端收到SYNACK, 意思就是我收到了你同意我建立鏈接的報文段, 然後回覆ACK,服務器接收到ACK,鏈接關閉

6. 擁塞控制問題

1.定義
在這裏插入圖片描述
2.擁塞的成因和代價

  • 成因
  • 發送的分組大於帶寬
  • 發送的分組大於路由器緩存
  • 發送方有很多個
  • 多跳
  • 超時/重傳
    在這裏插入圖片描述
  • 代價
    在這裏插入圖片描述
    3.擁塞控制
  • 發送方觀察分組是否丟失或時延,然後調整自己的發送速率
    在這裏插入圖片描述
  • ATM ABR
    由接收方把擁塞信息發送給發送方
    在這裏插入圖片描述
  • 案列
    在這裏插入圖片描述

7.TCP的擁塞控制

1.控制發送速率

  • 接收方通過超時或者重複的ACK判斷是否擁塞,然後調整發送速率
    在這裏插入圖片描述
    2.線性的加,乘性的減在這裏插入圖片描述
    3.TCP慢啓動:SS
  • 指數型增長
    在這裏插入圖片描述
    4.如何判斷使用線性還是指數性增長
    在這裏插入圖片描述
    5.如何檢測擁塞
    在這裏插入圖片描述
    在這裏插入圖片描述
    6.TCP性能
    在這裏插入圖片描述