回覆列表
  • 1 # 使用者104479031894

    運輸層嚮應用層提供通訊服務,屬於面向通訊部分最高層,使用者功能中最低層。運輸層作用就是為相互通訊的應用程序提供邏輯通訊。對於應用程序的通訊,通俗說法就是兩個主機進行通訊,又稱為端對端的通訊。邏輯通訊的意思就是運輸層之間的通訊可以看成水平之間的通訊,沒有物理連線。


    網路邊緣部分的主機透過網路的核心部分進行通訊時,只有位於網路邊緣部分的主機的協議棧才有運輸層,網路核心部分沒有,只用到下三層:網路層,資料鏈路層,物理層。



    總的來說,運輸層有,2個主要功能:


    1,為應用程序提供端對端的邏輯通訊


    2,對收到的報文差錯檢測


    5.1.2 運輸層的兩個主要協議

    先補充說明何為運輸協議資料單元TPDU:兩個對等傳輸實體通訊時傳送的資料單位。


    1,面向連線的TCP:傳輸控制協議

    只提供最大努力的,可靠的,面向連線的服務,因此在TPDU的首部開銷較大,佔用處理機資源多。邏輯通道相當全雙工可靠通道,不過通道不知經過哪些路由器,路由器也不知道運輸層是否建立連線。傳送的TPDU是TCP報文段。TCP不提供廣播,多播服務。


    2,無連線的UDP:使用者資料報協議

    傳送資料前不需要先建立連線,邏輯通道是不可靠通道。傳送的TPDU是UDP報文。一方運輸層收到UDP報文後不需要給對方任何確認。即便如此,有時候UDP是最有效工作方式。

    5.1.3 運輸層的埠

    主機如何判斷資料包屬於哪一個程序的?如網頁,還是QQ?用程序識別符號。

    而埠,可以想象成通訊的終點。 埠是運輸層與應用層的服務介面。運輸層的複用和分用功能都要透過端口才能實現。

    軟體埠:協議棧間的抽象的協議埠,應用層各種協議程序與運輸實體進行層間互動的一種地址。

    硬體埠:路由器和交換機上埠,不同硬體裝置間的互動介面。

    TCP埠用16位埠號進行標識,埠號只具有本地意義,只是為了標誌本計算機應用層中的各程序。

    三類埠 :

    1,熟知埠

    2,登記埠號

    3,客戶埠號/短暫埠號

    5.2 使用者資料報協議UDP

    5.2.1 UDP 概述

    UDP在IP資料報中增加埠功能和差錯檢測功能,僅此而已。

    主要特點:

    n UDP 是無連線的,即傳送資料之前不需要建立連線。

    n UDP 使用盡最大努力交付,即不保證可靠交付,同時也不使用擁塞控制。

    n UDP 是面向報文的。 UDP 沒有擁塞控制,很適合多媒體通訊的要求。

    n UDP 支援一對一、一對多、多對一和多對多的互動通訊。

    n UDP 的首部開銷小,只有 8 個位元組。

    5.2.2 UDP 的首部格式

    在計算檢驗和時,臨時把“偽首部”和 UDP使用者資料報連線在一起。偽首部僅僅是為了計算檢驗和。


    5.3 傳輸控制協議TCP 概述

    5.3.1 TCP 最主要的特點

    1,面向連線(虛連線)

    2,每條TCP連線只有兩個端點,且點對點,一對一

    3,提供可靠交付服務

    4,提供全雙工服務

    5,面向位元組流

    TCP 根據對方給出的視窗值和當前網路擁塞的程度來決定一個報文段應包含多少個位元組( UDP 傳送的報文長度是應用程序給出的),所以 對應用程序一次把多長的報文傳送到 TCP 的快取中是不關心的,太長時,會劃分資料塊再發送。


    5.3.2 TCP 的連線

    TCP 連線的端點不是主機,不是主機的 IP 地址,不是應用程序,也不是運輸層的協議埠。 TCP 連線的端點叫做 套接字 (socket) 或 插口 。

    埠號 拼接到 ( contatenated with) IP 地址即構成了套接字。

    每一條 TCP 連線唯一地被通訊兩端的兩個端點(即兩個套接字)所確定。


    5.4 可靠傳輸的工作原理

    5.4.1 停止等待協議


    這種可靠傳輸協議常稱為 自動重傳請求 ARQ (Automatic Repeat reQuest ) 。

    ARQ 表明重傳的請求是 自動 進行的。接收方不需要請求傳送方重傳某個出錯的分組。

    停止等待協議的優點是簡單,但缺點是通道利用率太低,利用流水線傳輸連續傳送多個分組,可以提高通道利用率。


    5.4.2 連續ARQ 協議

    滑動視窗協議,圖(a)表示傳送方維持的傳送視窗。 傳送方可 連續傳送 5個分組,不必每發完一個分組就停頓下來等待對方的確認。

    由於通道上一直有資料不間斷地傳送,這種傳輸方式可獲得很高的通道利用率。


    接收方採用累積確認方式, 即不必對收到的分組逐個傳送確認,而是對按序到達的最後一個分組傳送確認,這樣就表示: 到這個分組為止的所有分組都已正確收到了 。

    優點:容易實現,即使確認丟失也不必重傳。

    缺點: 不能向傳送方反映出接收方已經正確收到的所有分組的資訊。


    Go-back-N (回退 N ):需要再退回來重傳已傳送過的N 個分組。

    如傳送方傳送了前 5 個分組,而中間的第 3 個分組丟失了。這時接收方只能對前兩個分組發出確認。傳送方無法知道後面三個分組的下落,而只好把後面的三個分組都再重傳一次。


    TCP 可靠通訊的具體實現 :

    TCP連線每一端都有兩個視窗:傳送,接收。這4個埠都是動態變化的。

    TCP可靠傳輸機制用位元組序號進行控制,所有確認都基於序號而非報文段。

    TCP 連線的往返時間 RTT 也 不是固定不變的 。需要使用特定的演算法估算較為合理的重傳時間。


    5.5 TCP 報文段的首部格式

    源埠和目的埠欄位——各佔 2 位元組。埠是運輸層與應用層的服務介面。運輸層的複用和分用功能都要透過端口才能實現。


    序號欄位——佔 4 位元組。TCP 連線中傳送的資料流中的每一個位元組都編上一個序號。序號欄位的值則指的是本報文段所傳送的資料的第一個位元組的序號。


    確認號欄位——佔 4 位元組,是期望收到對方的下一個報文段的資料的第一個位元組的序號。


    資料偏移(即首部長度)——佔 4 位,它指出 TCP報文段的資料起始處距離TCP報文段的起始處有多遠。“資料偏移”的單位是32 位字(以 4 位元組為計算單位)。


    檢驗和—— 佔 2 位元組。檢驗和欄位檢驗的範圍包括首部和資料這兩部分。在計算檢驗和時,要在TCP報文段的前面加上12 位元組的偽首部。


    選項欄位—— 長度可變。TCP最初只規定了一種選項,即最大報文段長度MSS。MSS 告訴對方 TCP:“我的快取所能接收的報文段的資料欄位的最大長度是 MSS個位元組。”


    MSS (MaximumSegment Size)是TCP 報文段中的資料欄位的最大長度。資料欄位加上TCP 首部才等於整個的TCP 報文段。


    5.6 TCP 可靠傳輸的實現


    5.6.1 以位元組為單位的滑動視窗

    5.6.2 超時重傳時間的選擇

    5.6.3 選擇確認 SACK

    5.7 TCP的流量控制

    5.7.1 利用滑動視窗實現流量控制

    流量控制 (flow control) 就是讓傳送方的傳送速率不要太快,既要讓接收方來得及接收,也不要使網路發生擁塞。


    TCP 為每一個連線設有一個 持續計時器 。

    只要 TCP 連線的一方收到對方的 零視窗 通知,就啟動持續計時器。

    若持續計時器設定的時間到期,就傳送一個零視窗探測報文段(僅攜帶 1 位元組的資料),而對方就在確認這個探測報文段時給出了現在的視窗值。

    若視窗仍然是零,則收到這個報文段的一方就重新設定持續計時器。

    若視窗不是零,則死鎖的僵局就可以打破了

    5.7.1 必須考慮傳輸效率

    若網路中有許多資源同時產生擁塞,網路的效能就要明顯變壞,整個網路的吞吐量將隨輸入負荷的增大而下降。

    擁塞控制 所要做的都有一個前提,就是網路能夠承受現有的網路負荷。

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

    流量控制所要做的就是抑制傳送端傳送資料的速率,以便使接收端來得及接收。


    5.8 TCP 的擁塞控制

    5.8.1 擁塞控制的一般原理:開環控制和閉環控制

    5.8.2 幾種擁塞控制方法

    1,慢開始和擁塞避免


    傳送方控制擁塞視窗的原則是:只要網路沒有出現擁塞,擁塞視窗就再增大一些,以便把更多的分組傳送出去。但只要網路出現擁塞,擁塞視窗就減小一些,以減少注入到網路中的分組數。

    2. 快重傳和快恢復


    5.9 TCP 的運輸連線管理

    運輸連線3個階段:連線建立,資料傳送,連線釋放


    5.9.1 TCP 的連線建立

    TCP 連線的建立都是採用客戶伺服器方式。


    用三次握手建立 TCP 連線


    5.9.2 TCP 的連線釋放


    必須等待 2MSL 的時間

    第一,為了保證 A 傳送的最後一個 ACK 報文段能夠到達 B 。

    第二,防止“已失效的連線請求報文段”出現在本連線中。 A 在傳送完最後一個 ACK 報文段後,再經過時間 2MSL ,就可以使本連線持續的時間內所產生的所有報文段,都從網路中消失。這樣就可以使下一個新的連線中不會出現這種舊的連線請求報文段。

  • 中秋節和大豐收的關聯?
  • 考上普通211,是復讀上985,還是讀完211考985碩士好?