計算機網絡基礎(2)

運輸層主要功能

  • 運輸層爲應用進程之間提供端到端的邏輯通訊(但網絡層是爲主機之間提供邏輯通訊)。
  • 運輸層還要對收到的報文進行差錯檢測
  • 運輸層須要有兩種不一樣的運輸協議,即面向鏈接的 TCP無鏈接的 UDP

運輸層的兩個主要協議

  • UDP 用戶數據報協議
    傳送數據以前不須要創建鏈接,不須要給出任何確認。提供不可靠的服務。
  • TCP 傳輸控制協議
    傳送數據以前必須創建鏈接,數據傳送結束後要釋放鏈接。TCP提供可靠的、面向鏈接的運輸服務,這樣不可避免的增長了許多開銷,使協議數據單元的首部增大不少。

運輸層的端口

給應用層的每一個應用進程賦予一個很是明確的標誌是相當重要的。
clipboard.png
爲了使運行不一樣OS的計算機應用進程可以互相通訊,就必須用統一的方法(irrelevant with OS):端口
端口用一個 16 位端口號進行標誌。
端口號只具備本地意義,即端口號只是爲了標誌本計算機應用層中的各進程。在因特網中不一樣計算機的相同端口號是沒有聯繫的.緩存

三類端口
- 熟知端口 0-1023
- 登記端口號
- 客戶端口號網絡


UDP

UDP 只在 IP 的數據報服務之上增長了不多一點的功能,即端口的功能差錯檢測的功能。socket

clipboard.png

clipboard.png

TCP

TCP 鏈接的端點不是主機,不是主機的IP 地址,不是應用進程,也不是運輸層的協議端口。TCP 鏈接的端點叫作套接字(socket)或插口。
clipboard.png性能

TCP報文段的首部格式

clipboard.png

可靠傳輸的工做原理

使用確認和重傳機制,即自動重傳請求-- 連續ARQ(發送完一批分組後,必須暫時保留已經發送的分組副本;直到接收了接收方的確認報文;分組和確認分組都必須進行編號;丟棄重複的報文)能夠在不可靠的傳輸網絡上實現可靠的通訊。spa

ARQ的重傳的請求是自動進行的。接收方使用累積確認:即沒必要對收到的分組逐個發送確認,而是對按序到達的最後一個分組發送確認,這樣就表示:到這個分組爲止的全部分組都已正確收到了計算機網絡

還有超時重傳 和 選擇確認機制code

具體實現

TCP 鏈接的每一端都必須設有兩個窗口——一個發送窗口和一個接收窗口 -- 以字節爲單位的滑動窗口進程

TCP 的可靠傳輸機制用字節的序號進行控制。TCP 全部的確認都是基於序號而不是基於報文段。圖片

TCP兩端的四個窗口常常處於動態變化ip

流量控制

利用滑動窗口實現流量控制

clipboard.png

clipboard.png

clipboard.png

擁塞控制

在計算機網絡中的鏈路容量(帶寬)、交換結點的緩存和處理機等,都是網絡的資源。在某段時間,若對網絡中某一資源的需求超過了該資源所能提供的可用部分,網絡的性能就要變壞。 -- 這種狀況叫作擁塞

出現資源擁塞的條件:
對資源需求的總和 > 可用資源

擁塞控制與流量控制的關係
擁塞控制所要作的都有一個前提,就是網絡可以承受現有的網絡符合。

擁塞控制是一個全局性的過程,涉及到全部的主機、全部的路由器,以及與下降網絡傳輸性能有關的全部因素。

流量控制每每指在給定的發送端和接收端之間的點對點通訊量的控制

流量控制所要作的是抑制發送端發送數據的速率,以便使接收端來得及接收。


TCP運輸鏈接

鏈接創建 (三次握手終於來了!)

clipboard.png

鏈接釋放 (四次握手)

clipboard.png


想更一進步的支持我,請掃描下方的二維碼,你懂的~
圖片描述

相關文章
相關標籤/搜索