導航:首頁 > 網路連接 > 計算機網路第三章謝仁希

計算機網路第三章謝仁希

發布時間:2024-03-30 12:55:14

計算機網路第三章(數據鏈路層)

3.1、數據鏈路層概述

概述

鏈路 是從一個結點到相鄰結點的一段物理線路, 數據鏈路 則是在鏈路的基礎上增加了一些必要的硬體(如網路適配器)和軟體(如協議的實現)

網路中的主機、路由器等都必須實現數據鏈路層

區域網中的主機、交換機等都必須實現數據鏈路層

從層次上來看數據的流動

僅從數據鏈路層觀察幀的流動

主機H1 到主機H2 所經過的網路可以是多種不同類型的

注意:不同的鏈路層可能採用不同的數據鏈路層協議

數據鏈路層使用的信道

數據鏈路層屬於計算機網路的低層。 數據鏈路層使用的信道主要有以下兩種類型:

點對點信道

廣播信道

區域網屬於數據鏈路層

區域網雖然是個網路。但我們並不把區域網放在網路層中討論。這是因為在網路層要討論的是多個網路互連的問題,是討論分組怎麼從一個網路,通過路由器,轉發到另一個網路。

而在同一個區域網中,分組怎麼從一台主機傳送到另一台主機,但並不經過路由器轉發。從整個互聯網來看, 區域網仍屬於數據鏈路層 的范圍

三個重要問題

數據鏈路層傳送的協議數據單元是 幀

封裝成幀

封裝成幀 (framing) 就是在一段數據的前後分別添加首部和尾部,然後就構成了一個幀。

首部和尾部的一個重要作用就是進行 幀定界 。

差錯控制

在傳輸過程中可能會產生 比特差錯 :1 可能會變成 0, 而 0 也可能變成 1。

可靠傳輸

接收方主機收到有誤碼的幀後,是不會接受該幀的,會將它丟棄

如果數據鏈路層向其上層提供的是不可靠服務,那麼丟棄就丟棄了,不會再有更多措施

如果數據鏈路層向其上層提供的是可靠服務,那就還需要其他措施,來確保接收方主機還可以重新收到被丟棄的這個幀的正確副本

以上三個問題都是使用 點對點信道的數據鏈路層 來舉例的

如果使用廣播信道的數據鏈路層除了包含上面三個問題外,還有一些問題要解決

如圖所示,主機A,B,C,D,E通過一根匯流排進行互連,主機A要給主機C發送數據,代表幀的信號會通過匯流排傳輸到匯流排上的其他各主機,那麼主機B,D,E如何知道所收到的幀不是發送給她們的,主機C如何知道發送的幀是發送給自己的

可以用編址(地址)的來解決

將幀的目的地址添加在幀中一起傳輸

還有數據碰撞問題

隨著技術的發展,交換技術的成熟,

在 有線(區域網)領域 使用 點對點鏈路 和 鏈路層交換機 的 交換式區域網 取代了 共享式區域網

在無線區域網中仍然使用的是共享信道技術

3.2、封裝成幀

介紹

封裝成幀是指數據鏈路層給上層交付的協議數據單元添加幀頭和幀尾使之成為幀

幀頭和幀尾中包含有重要的控制信息

發送方的數據鏈路層將上層交付下來的協議數據單元封裝成幀後,還要通過物理層,將構成幀的各比特,轉換成電信號交給傳輸媒體,那麼接收方的數據鏈路層如何從物理層交付的比特流中提取出一個個的幀?

答:需要幀頭和幀尾來做 幀定界

但比不是每一種數據鏈路層協議的幀都包含有幀定界標志,例如下面例子

前導碼

前同步碼:作用是使接收方的時鍾同步

幀開始定界符:表明其後面緊跟著的就是MAC幀

另外乙太網還規定了幀間間隔為96比特時間,因此,MAC幀不需要幀結束定界符

透明傳輸

透明

指某一個實際存在的事物看起來卻好像不存在一樣。

透明傳輸是指 數據鏈路層對上層交付的傳輸數據沒有任何限制 ,好像數據鏈路層不存在一樣

幀界定標志也就是個特定數據值,如果在上層交付的協議數據單元中, 恰好也包含這個特定數值,接收方就不能正確接收

所以數據鏈路層應該對上層交付的數據有限制,其內容不能包含幀定界符的值

解決透明傳輸問題

解決方法 :面向位元組的物理鏈路使用 位元組填充 (byte stuffing) 或 字元填充 (character stuffing),面向比特的物理鏈路使用比特填充的方法實現透明傳輸

發送端的數據鏈路層在數據中出現控制字元「SOH」或「EOT」的前面 插入一個轉義字元「ESC」 (其十六進制編碼是1B)。

接收端的數據鏈路層在將數據送往網路層之前刪除插入的轉義字元。

如果轉義字元也出現在數據當中,那麼應在轉義字元前面插入一個轉義字元 ESC。當接收端收到連續的兩個轉義字元時,就刪除其中前面的一個。

幀的數據部分長度

總結

3.3、差錯檢測

介紹

奇偶校驗

循環冗餘校驗CRC(Cyclic Rendancy Check)

例題

總結

循環冗餘校驗 CRC 是一種檢錯方法,而幀校驗序列 FCS 是添加在數據後面的冗餘碼

3.4、可靠傳輸

基本概念

下面是比特差錯

其他傳輸差錯

分組丟失

路由器輸入隊列快滿了,主動丟棄收到的分組

分組失序

數據並未按照發送順序依次到達接收端

分組重復

由於某些原因,有些分組在網路中滯留了,沒有及時到達接收端,這可能會造成發送端對該分組的重發,重發的分組到達接收端,但一段時間後,滯留在網路的分組也到達了接收端,這就造成 分組重復 的傳輸差錯

三種可靠協議

停止-等待協議SW

回退N幀協議GBN

選擇重傳協議SR

這三種可靠傳輸實現機制的基本原理並不僅限於數據鏈路層,可以應用到計算機網路體系結構的各層協議中

停止-等待協議

停止-等待協議可能遇到的四個問題

確認與否認

超時重傳

確認丟失

既然數據分組需要編號,確認分組是否需要編號?

要。如下圖所示

確認遲到

注意,圖中最下面那個數據分組與之前序號為0的那個數據分組不是同一個數據分組

注意事項

停止-等待協議的信道利用率

假設收發雙方之間是一條直通的信道

TD :是發送方發送數據分組所耗費的發送時延

RTT :是收發雙方之間的往返時間

TA :是接收方發送確認分組所耗費的發送時延

TA一般都遠小於TD,可以忽略,當RTT遠大於TD時,信道利用率會非常低

像停止-等待協議這樣通過確認和重傳機制實現的可靠傳輸協議,常稱為自動請求重傳協議ARQ( A utomatic R epeat re Q uest),意思是重傳的請求是自動進行,因為不需要接收方顯式地請求,發送方重傳某個發送的分組

回退N幀協議GBN

什麼用回退N幀協議

在相同的時間內,使用停止-等待協議的發送方只能發送一個數據分組,而採用流水線傳輸的發送方,可以發送多個數據分組

回退N幀協議在流水線傳輸的基礎上,利用發送窗口來限制發送方可連續發送數據分組的個數

無差錯情況流程

發送方將序號落在發送窗口內的0~4號數據分組,依次連續發送出去

他們經過互聯網傳輸正確到達接收方,就是沒有亂序和誤碼,接收方按序接收它們,每接收一個,接收窗口就向前滑動一個位置,並給發送方發送針對所接收分組的確認分組,在通過互聯網的傳輸正確到達了發送方

發送方每接收一個、發送窗口就向前滑動一個位置,這樣就有新的序號落入發送窗口,發送方可以將收到確認的數據分組從緩存中刪除了,而接收方可以擇機將已接收的數據分組交付上層處理

累計確認

累計確認

優點:

即使確認分組丟失,發送方也可能不必重傳

減小接收方的開銷

減小對網路資源的佔用

缺點:

不能向發送方及時反映出接收方已經正確接收的數據分組信息

有差錯情況

例如

在傳輸數據分組時,5號數據分組出現誤碼,接收方通過數據分組中的檢錯碼發現了錯誤

於是丟棄該分組,而後續到達的這剩下四個分組與接收窗口的序號不匹配

接收同樣也不能接收它們,講它們丟棄,並對之前按序接收的最後一個數據分組進行確認,發送ACK4, 每丟棄一個數據分組,就發送一個ACK4

當收到重復的ACK4時,就知道之前所發送的數據分組出現了差錯,於是可以不等超時計時器超時就立刻開始重傳,具體收到幾個重復確認就立刻重傳,根據具體實現決定

如果收到這4個重復的確認並不會觸發發送立刻重傳,一段時間後。超時計時器超時,也會將發送窗口內以發送過的這些數據分組全部重傳

若WT超過取值范圍,例如WT=8,會出現什麼情況?

習題

總結

回退N幀協議在流水線傳輸的基礎上利用發送窗口來限制發送方連續發送數據分組的數量,是一種連續ARQ協議

在協議的工作過程中發送窗口和接收窗口不斷向前滑動,因此這類協議又稱為滑動窗口協議

由於回退N幀協議的特性,當通信線路質量不好時,其信道利用率並不比停止-等待協議高

選擇重傳協議SR

具體流程請看視頻

習題

總結

3.5、點對點協議PPP

點對點協議PPP(Point-to-Point Protocol)是目前使用最廣泛的點對點數據鏈路層協議

PPP協議是網際網路工程任務組IEIF在1992年制定的。經過1993年和1994年的修訂,現在的PPP協議已成為網際網路的正式標准[RFC1661,RFC1662]

數據鏈路層使用的一種協議,它的特點是:簡單;只檢測差錯,而不是糾正差錯;不使用序號,也不進行流量控制;可同時支持多種網路層協議

PPPoE 是為寬頻上網的主機使用的鏈路層協議

幀格式

必須規定特殊的字元作為幀定界符

透明傳輸

必須保證數據傳輸的透明性

實現透明傳輸的方法

面向位元組的非同步鏈路:位元組填充法(插入「轉義字元」)

面向比特的同步鏈路:比特填充法(插入「比特0」)

差錯檢測

能夠對接收端收到的幀進行檢測,並立即丟棄有差錯的幀。

工作狀態

當用戶撥號接入 ISP 時,路由器的數據機對撥號做出確認,並建立一條物理連接。

PC 機向路由器發送一系列的 LCP 分組(封裝成多個 PPP 幀)。

這些分組及其響應選擇一些 PPP 參數,並進行網路層配置,NCP 給新接入的 PC 機

分配一個臨時的 IP 地址,使 PC 機成為網際網路上的一個主機。

通信完畢時,NCP 釋放網路層連接,收回原來分配出去的 IP 地址。接著,LCP 釋放數據鏈路層連接。最後釋放的是物理層的連接。

可見,PPP 協議已不是純粹的數據鏈路層的協議,它還包含了物理層和網路層的內容。

3.6、媒體接入控制(介質訪問控制)——廣播信道

媒體接入控制(介質訪問控制)使用一對多的廣播通信方式

Medium Access Control 翻譯成媒體接入控制,有些翻譯成介質訪問控制

區域網的數據鏈路層

區域網最主要的 特點 是:

網路為一個單位所擁有;

地理范圍和站點數目均有限。

區域網具有如下 主要優點 :

具有廣播功能,從一個站點可很方便地訪問全網。區域網上的主機可共享連接在區域網上的各種硬體和軟體資源。

便於系統的擴展和逐漸地演變,各設備的位置可靈活調整和改變。

提高了系統的可靠性、可用性和殘存性。

數據鏈路層的兩個子層

為了使數據鏈路層能更好地適應多種區域網標准,IEEE 802 委員會就將區域網的數據鏈路層拆成 兩個子層 :

邏輯鏈路控制 LLC (Logical Link Control)子層;

媒體接入控制 MAC (Medium Access Control)子層。

與接入到傳輸媒體有關的內容都放在 MAC子層,而 LLC 子層則與傳輸媒體無關。 不管採用何種協議的區域網,對 LLC 子層來說都是透明的。

基本概念

為什麼要媒體接入控制(介質訪問控制)?

共享信道帶來的問題

若多個設備在共享信道上同時發送數據,則會造成彼此干擾,導致發送失敗。

隨著技術的發展,交換技術的成熟和成本的降低,具有更高性能的使用點對點鏈路和鏈路層交換機的交換式區域網在有線領域已完全取代了共享式區域網,但由於無線信道的廣播天性,無線區域網仍然使用的是共享媒體技術

靜態劃分信道

信道復用

頻分復用FDM (Frequency Division Multiplexing)

將整個帶寬分為多份,用戶在分配到一定的頻帶後,在通信過程中自始至終都佔用這個頻帶。

頻分復用 的所有用戶在同樣的時間 佔用不同的帶寬資源 (請注意,這里的「帶寬」是頻率帶寬而不是數據的發送速率)。

❷ 《計算機網路第5版》pdf下載在線閱讀,求百度網盤雲資源

《計算機網路》(謝希仁)電子書網盤下載免費在線閱讀

鏈接:

提取碼:cfmg

書名:計算機網路

作者:謝希仁

豆瓣評分:7.9

出版社:電子工業出版社

出版年份:2008-1

頁數:402

內容簡介:

《計算機網路(第5版)》自1989年首次出版以來,於1994年、1999年和2003年分別出了修訂版。2006年8月本教材通過了教育部的評審,被納入普通高等教育「十一五」國家級規劃教材。《計算機網路》的第5版,在內容和結構方面都有了很大的修改。

全書分為10章,比較全面系統地介紹了計算機網路的發展和原理體系結構、物理層、數據鏈路層、網路層、運輸層、應用層、網路安全、網際網路上的音頻/視頻服務、無線網路和下一代網際網路等內容。各章均附有練習題。此外,附錄A給出了部分習題的答案和提示。隨書配套的光碟中,有全書課件和作者教學中經常遇到的150多個問題及解答,計算機網路最基本概念的演示(PowerPoint文件),以及《計算機網路(第5版)》引用的全部RFC文檔等,供讀者參閱。

❸ 《計算機網路(第7版)》epub下載在線閱讀全文,求百度網盤雲資源

《計算機網路(第7版)》(謝希仁)電子書網盤下載免費在線閱讀

鏈接:https://pan..com/s/1UqUnDvE8FLNUkdVIJW11kQ

提取碼:NCEO

書名:計算機網路(第7版)

作者:謝希仁

豆瓣評分:8.8

出版社:電子工業出版社

出版年份:2017-1

頁數:464

內容簡介:

本書自1989年首次出版以來,曾於1994年、1999年、2003年、2008年和2013年分別出了修訂版。在2006年本書通過了教育部的評審,被納入普通高等教育「十一五」國家級規劃教材;2008年出版的第5版獲得了教育部2009年精品教材稱號。2013年出版的第6版是「十二五」普通高等教育本科國家級規劃教材。

目前2017年發行的第7版又在第6版的基礎上進行了一些修訂。 全書分為9章,比較全面系統地介紹了計算機網路的發展和原理體系結構、物理層、數據鏈路層(包括區域網)、網路層、運輸層、應用層、網路安全、互聯網上的音頻/視頻服務,以及無線網路和移動網路等內容。各章均附有習題(附錄A給出了部分習題的答案和提示)。

本書的特點是概念准確、論述嚴謹、內容新穎、圖文並茂,突出基本原理和基本概念的闡述,同時力圖反映計算機網路的一些最新發展。本書可供電氣信息類和計算機類專業的大學本科生和研究生使用,對從事計算機網路工作的工程技術人員也有參考價值。

作者簡介:

謝希仁,解放軍理工大學指揮自動化學院,教授,博士生導師。主要學術成果有:1986年完成總參通信部區域網辦公系統項目;1987年在《電子學報》發表「分組話音通信新進展」;為國內首次介紹分組數據通信;1991年完成國家自然科學基金項目「分組交換的話音數據通信系統」項目。1999年完成第一個軍用衛星通信系統網管中心的研製任務及「金橋網網管技術」項目等。上述科研項目分別獲得國家、軍隊和部級獎項。著有:《計算機網路》第1至第7版(「十一五國家級規劃教材」),曾兩次獲得國家級優秀教材獎,成為高校最受讀者歡迎的本國計算機網路教材。

❹ 求解CSMA/CD的一道題!計算機網路第五版(謝希仁) 第3章25題!!

t=0時,A,B開始傳輸數據; t=225比特時間,A和B同時檢測到發生碰撞; t=225+48=273比特時間,完成了干擾信號的傳輸; 開始各自進行退避演算法: A: 因為rA=0,則A在干擾信號傳輸完之後立即開始偵聽 t=273+225(傳播時延)=498比特時間,A檢測到信道開始空閑 t=498+96(幀間最小間隔)=594比特時間,A開始重傳數據 -----第一問A的重傳時間 t=594+225 (傳播時延)=819比特時間,A重傳完畢 ----第二問A重傳的數據幀到達B的時間 B: 因為rB=1,則B在干擾信號傳輸完之後1倍的爭用期,即512比特時間才開始偵聽 t=273+512=785比特時間,B開始偵聽 若偵聽空閑,則 t=785+96(幀間最小間隔)=881比特時間,B開始重傳數據 若偵聽費空閑,則繼續退避演算法 又因為t=819比特時間的時候,A才重傳數據完畢,所以B在785比特時間偵聽的時候,肯定會偵聽信道非空閑,即B在預定的881比特時間之前偵聽到信道忙, 所以,第四問的答案:B在預定的881比特時間是停止發送數據的。 即第三問A重傳的數據不會和B重傳的數據再次發生碰撞。

❺ 謝希仁計算機網路答案

答:a=τ/T0=τC/L=100÷(2×108)×1×109/L=500/L,信道最大利用率Smax =1/(1+4.44a),最大吞吐量Tmax=Smax×1Gbit/s幀長512位元組時,a=500/(512×8)=0.122, Smax =0.6486,Tmax=648.6 Mbit/s幀長1500位元組時,a=500/(1500×8)=0.0417,Smax =0.8438 ,Tmax=843.8 Mbit/s幀長64000位元組時,a=500/(64000×8)=0.000977,Smax =0.9957,Tmax=995.7 Mbit/s可見,在端到端傳播時延和數據發送率一定的情況下,幀長度越大,信道利用率越大,信道的最大吞吐量月越大。

❻ 運輸層知識要點——謝希仁《計算機網路》

為了在計算機網路中有條不紊地交換數據,就必須遵守一些事先約定好的規則。這些規則明確規定了所 交換數據的格式 以及有關的 同步 問題。

同步的含義:在一定條件下應當發生什麼事件,因而含有時序的意思。

網路協議:為進行網路中的數據交換而建立的規則、標准或約定。

網路協議由以下三個要素組成:

   1)語法:即數據與控制信息的結構或格式

   2)語義:即需要發出何種控制信息,完成何種動作以及做出何種反應

   3)同步:即事件實現順序的詳細說明

一、運輸層協議的概述

   1.1 進程之間的通信

   1.2 運輸層的兩個主要協議

   1.3 運輸層的埠

二、用戶數據報協議UDP

   2.1 UDP概述

   2.2 UDP的首部格式

三、傳輸控制協議TCP概述

   3.1 TCP的最主要的特點

   3.2 TCP的連接

四、可靠傳輸的工作原理

   4.1 停止等待協議

   4.2 連續ARQ協議

五、TCP報文段的首部格式

六、TCP可靠傳輸的實現

   6.1 以位元組為單位的滑動窗口

   6.2 超時重傳時間的選擇

   6.3 選擇確認SACK

七、TCP的流量控制

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

   7.2 必須考慮傳輸效率

八、TCP的擁塞控制

   8.1 擁塞控制的一般原理

   8.2 幾種擁塞控制方法

   8.3 隨機早期檢測RED

九、TCP的運輸連接管理

   9.1 TCP的連接建立

   9.2 TCP的連接釋放

   9.3 TCP的有限狀態機

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

1.1 進程之間的通信

1.只有主機的協議棧才有運輸層,而網路核心部分中的路由器在轉發分組時都只用到了下三層的功能

2.兩個主機進行通信就是兩個主機中的應用進程互相通信。從運輸層的角度看,通信的真正端點並不是主機而是主機中的進程。(IP協議能把分組送到目的主機)

網路層時為主機之間提供邏輯通信,而運輸層為應用進程之間提供端到端的邏輯通信。

3.運輸層一個重要功能——復用、分用。 (應用進程復用、分用運輸層)

1.2 運輸層的兩個主要協議

1.UDP—User Datagram Protocol 用戶數據報協議(無連接):DNS/RIP/DHCP/SNMP/NFS

TCP—Transmission Control Protocol 傳輸控制協議(面向連接):SMTP/TELNET/HTTP/ FTP

1.3 運輸層的埠

問題:為了使運行不同操作系統的計算機的應用進程能夠互相通信,就必須使用統一的方法(而這種方法必須與特定操作系統無關)對TCP/IP體系的應用進程進行標識。

為什麼不用進程號來區分?(第一,不同操作系統的進程標識符不同;第二,用功能來識別,而不是進程,例如郵件服務功能,而不管具體是哪個進程)

解決方案:在運輸層使用協議埠號,即埠。軟體埠是應用層的各種協議進程與運輸實體進行層間交互的一種地址。(埠號只具有本地意義,只是為了標識本計算機應用層中各個進程在和運輸層交互時的層間介面。)

埠分為兩大類:

1)伺服器使用的埠號:熟知埠號或系統埠號(0~1023);登記埠號(1024~49151)

2)客戶端使用的埠號:49152~65535

2.1 UDP概述

1.UDP只在IP的數據報服務至上增加了很少一點功能,就是復用、分用以及差錯檢測功能

2.特點

   1)無連接

   2)盡最大努力交付

   3)面向報文 (不合並、不拆分、保留這些報文的邊界)

   4)UDP沒有擁塞控制

   5)UDP支持一對一、一對多、多對一和多對多的交互通信

   6)UDP的首部開銷小,只有8位元組

應用進程本身可以在不影響應用的實時性的前提下,增加一些提高可靠性的措施,如採用前向糾錯或重傳已丟失的報文。

2.2 UDP的首部格式

1.traceroute 讓發送的UDP用戶數據報故意使用一個非法的UDP埠號,接收方丟棄報文,並由ICMP(網路控制報文協議)發送「埠不可達」差錯報文給發送方。

2.計算檢驗和。IP數據報的校驗和只檢驗IP數據報的首部,但UDP的校驗和是把首部和數據部分一起都檢驗。(12位元組的首部+真正的首部+數據來進行校驗和的計算)

   Q1.為什麼計算校驗和要加12位元組的偽首部

   Q2.計算校驗和的原理是什麼?

3.1 TCP的最主要的特點

1.面向連接的運輸層協議(建立連接、傳輸數據、釋放連接)

2.點對點,每一條TCP連接只能有兩個端點

3.可靠交付(無差錯、不丟失、不重復、並且按序到達)

4.全雙工通信。TCP連接的兩端都設有發送緩存和接收緩存。

5.面向位元組流。(流指的是流入到進程或從進程流出的位元組序列;面向位元組流:TCP把應用程序交下來的數據看成是一連串的無結構位元組流。 接收方的應用程序必須有能力識別接收到的位元組流,把它還原成有意義的應用層數據。 因此TCP可以根據窗口值和當前網路狀況調整發送的報文長度。劃分短一點,或者積累到足夠多再發送出去。)

3.2 TCP的連接

1.TCP把連接作為最基本的抽象。

2.每一條TCP連接有兩個端點。TCP連接的端點叫作套接字。

   套接字soket = (IP地址:埠號)

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

   TCP連接 ::= {socket1, socket2}

理想的傳輸條件有以下兩個特點:

   1)傳輸信道不產生差錯

   2)不管發送方以多快的速度發送數據,接收方總是來得及處理收到的數據

實際的網路並不具備,因此:

   1)出現差錯時,讓發送方重傳

   2)接收方來不及處理時,及時告訴發送方適當降低發送數據的速度

4.1 停止等待協議

1.「停止等待」就是沒發送完一個分組就停止發送,等待對方的確認,在收到確認後再發送下一個分組。

2.超時重傳。在每發完一個分組就設置一個超時計時器,如果在超時計時器之前收到對方的確認,就撤銷已設置的超時計時器。如果未收到,就認為剛才的分組丟失,並重傳。

3.三種情況:A發送的分組出錯、丟失;B發送的確認丟失;B發送的確認遲到

確認丟失:B丟棄重復的分組,向A重傳確認

確認遲到:A丟棄重復的確認,B丟棄重復分組,並向A重傳確認

4.常稱為自動重傳請求ARQ,重傳時自動進行的(超時即重傳)

5.缺點:信道利用率太低

   U=Td/(Td+RTT+Ta)

為了提高傳輸效率,發送方不使用停止等待協議,而是採用流水線傳輸。流水線傳輸就是發送發可連續發送多個分組,不必等每發完一個分組就停頓下來等待對方的確認。(連續ARQ協議和滑動窗口協議)

4.2 連續ARQ協議

1.位於發送窗口內的分組都可連續發送出去,而不需要等待對方的確認。

2.累積確認:接收方不必對收到的分組逐個發送確認,而是在收到幾個分組後,對按序到達的最後一個分組發送確認。

3.缺點:Go-back-N (發送前5個分組,第3個分組丟失,後面三個要重傳)

1.源埠和目的埠

2.序號。 每個位元組都按順序編號。

3.確認號。 期望收到對方下一個報文段的第一個數據位元組的序號。

若確認號=N,則表明:到序號N-1為止的所有數據都已正確收到。

4.數據偏移。 指出TCP報文段的數據起始處距離TCP報文段的起始處有多遠(也即TCP報文段首部長度)。由於首部中還有長度不確定的選項欄位,因此數據偏移欄位是必要的。

5.窗口。窗口欄位明確指出了現在允許對方發送的數據量。窗口值是經常在動態變化著。

6.1 以位元組為單位的滑動窗口

1.發送緩存用來暫存:

   1)發送應用程序傳送給發送方TCP准備發送的數據;

   2)TCP已發送但未收到確認德爾數據

2.接收緩存用來存放:

   1)按序到達的、但尚未被接收應收程序讀取的數據;

   2)未按序到達的數據

3.注意三點:

   1)A的發送窗口是根據B的接收窗口設置的,但是在同一時刻,由於網路傳輸的滯後,A的發送窗口並不總是B的接收窗口一樣大

   2)TCP通常對不按序到達的數據是先臨時存放在接收窗口中,等到位元組流中所缺少的位元組收到後,再按序交付上層的應用進程

   3)TCP接收方有累計確認功能(不能過分推遲發送確認,否則會導致發送方不必要的重傳)

6.2 超時重傳時間的選擇

1.超時重傳時間設置太短,會引起很多不必要的重傳;如果設置太長,使網路的空閑時間增大,降低傳輸效率。

2.新的RTTs = (1-a)x(舊的RTTs) + ax(新的RTT樣本),其中RTT樣本的時間為:記錄一個報文段發出的時間,以及收到相應的確認時間,時間差就是報文段的往返時間RTT。

3.RTO = RTTs + 4 x RTTd,其中RTO為超時重傳時間,RTTd是RTT的偏差的加權平均值。

新的RTTd = (1-b) x (舊的RTTd)+ b x |RTTs - 新的RTT樣本|

4.一個問題:發送一個報文段,設定的重傳時間到了,還沒有收到確認。於是重傳報文段。經過一段時間,收到了確認報文段。現在的問題是:如何判定此確認報文段是對先發送的報文段的確認,還是對後來重傳的報文段的確認?

1)解決方法1,在計算加權平均值RTTs時,只要報文段重傳了,就不採用其往返時間樣本。

引入的問題:報文段的時延突然增大的情況

2)解決方法2,報文段每重傳一次,就把超時重傳時間RTO增大一些(一般是2倍)。當不在發生報文段的重傳時,再根據加權平均計算。

6.3 選擇確認SACK

SACK文檔並沒有指明發送發應當怎樣響應SACK。因此大多數的實現還是重傳所有未被確認的數據塊。

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

1.流量控制:就是讓發送方的發送速率不要太快,要讓接收方來得及接收。

2.利用滑動窗口機制可很方便地在TCP連接上實現對發送方的流量控制。發送方的發送窗口不能超過接收方給出的接收窗口的數值。

3.死鎖情況:B向A發送了零窗口的報文段後不久,B又有了一些緩存空間,因此B向A發送rwnd = 400.然而該報文段在傳送過程中丟失。A一直等待B發送的非零窗口的通知,B也一直等待A發送的數據。( 窗口通知不超時重傳?為什麼? )

解決方法:TCP為每個連接設有一個持續計時器。只要一方收到對方的零窗口通知,就啟動計時器。計時器到期後,發送一個零窗口探測報文段,而對方就在確認這個探測報文段時給出了現在的窗口值。若仍為零,收到報文段的一方重新設置持續計時器。

7.2 必須考慮傳輸效率

1.應用程序把數據傳送到TCP的發送緩存後,剩下的發送任務就由TCP來控制了。

2.三種不同的機制來控制TCP報文段的發送時機:

   1)TCP維持一個變數,它等於最大報文段長度MSS,只要緩存中的存放的數據達到MSS,就組裝成一個TCP報文段發送出去

   2)由發送方的應用進程指明要求發送報文段,即TCP支持推送操作

   3)發送方設置一個定時器

3.問題一、若用戶只發送一個位元組,則非常浪費帶寬。

解決方法:若發送應用程序把要發送的數據逐個位元組地送到TCP的發送緩存,則發送方就把第一個數據位元組先發送出去,把後面到達的數據位元組都緩存起來。當發送方收到對第一個數據字元的確認後,再把發送緩存中的所有數據組裝成一個報文段發送出去。(採用收到確認就發送+並開始緩存的方式;同時當到達的數據已達到發送窗口大小的一半或已達到報文段的最大長度時,就立即發送一個報文段。)

4.問題二、糊塗窗口綜合症。接收緩存已滿,應用程序一次只讀取一個位元組,然後向發送方發送確認。

解決方法:讓接收方等待一段時間,使得接收緩存已有足夠空間容納一個最長的報文段,或者等到接收緩存已有一半空閑的空間。則接收方就發出確認報文。

8.1 擁塞控制的一般原理

1.擁塞的定義:對資源的需求 > 可用資源。 在計算機網路中的鏈路帶寬、交換結點中的緩存和處理機等,都是網路中的資源。

2.擁塞解決不能靠解決某一個部分的問題。因為這會將瓶頸轉移到其他地方。問題的實質往往是整個系統的各個部分不匹配。只有所有部分都平衡了,問題才會得到解決。

3.擁塞控制與流量控制的比較。

   1)擁塞控制:防止過多的數據注入到網路中,這樣可以使網路中的路由器或鏈路不致過載。

   擁塞控制有個前提:網路能夠承受現有的網路負荷

   擁塞控制是一個全局性過程。(發送擁塞時,不知道在某處、什麼原因造成的)

   2)流量控制:點對點通信量的控制,是個端到端的問題

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

4.尋找擁塞控制的方案無非就是使不等式 「對資源的需求 > 可用資源 」不再成立的條件。但是必須考慮該措施帶來的其他影響。

5.計算機網路是個復雜的系統。從控制理論的角度來看擁塞控制,可以分為開環控制和閉環控制兩種方法。

   1)開環控制:設計網路時事先將有關發生擁塞的因素考慮周到,力求網路在工作時不產生擁塞。但一旦系統運行起來,就不再中途改正。

   2)閉環控制:基於反饋環路。

   步驟一、監測網路系統以便檢測到擁塞在何時、何處發生;

   步驟二、把擁塞發生的信息傳送到可採取行動的地方

   步驟三、調整網路系統的運行以解決出現的問題

8.2 幾種擁塞控制方法(只考慮網路擁塞程度,即假設接收方總是有足夠大的緩存空間)

1.慢開始和擁塞避免

1)發送方維持一個擁塞窗口。

   擁塞窗口的大小取決於網路的擁塞程度,並且動態地在變化。

   控制擁塞窗口的原則是:只要網路沒有出現擁塞,擁塞窗口增大;如果網路出現擁塞,則減小。

2)慢開始的思路:由小到大逐漸增大擁塞窗口數值。每收到一個對新的報文段的確認,把擁塞窗口增加至多一個MSS的數值。(沒經過一個傳輸輪次,擁塞窗口cwnd就加倍)

輪次:把擁塞窗口所允許發送的報文段都連續發送出去,並收到了對已發送的最後一位元組的確認。

慢開始的「慢」並不是指cwnd的增長速率慢,而是指TCP開始發送報文段時先設置cwnd=1(一個MSS數值)。

3)慢開始門限ssthresh

   為防止擁塞窗口增長過大,引入一個慢開始門限ssthresh。

   當cwnd < ssthresh時,使用上述的慢開始演算法

   當cwnd > ssthresh時,停止使用慢開始演算法而改用擁塞避免演算法

4)擁塞避免演算法

思路:讓擁塞窗口cwnd緩慢增大,即沒經過一個往返時間RTT就把發送方的擁塞窗口cwnd增加1,而不是加倍。

5)慢開始門限的設置

只要發送方判斷網路出現擁塞(沒有按時收到確認),就把慢開始門限ssthresh設置為出現擁塞時發送方窗口值的一半,然後把擁塞窗口cwnd重置為1,執行慢開始演算法。

6)乘法減小和加法增大

乘法減小:網路出現擁塞時,把慢開始門限ssthresh減半(當前的ssthresh的一半),並執行慢開始演算法。

加法增大:執行擁塞避免方法

2.快重傳和快恢復

1)快重傳(盡快重傳未被確認的報文段)

首先,要求接收方每收到一個失序的報文段後就立即發出重復確認。(如接收方收到了M1和M2後都分別發出了確認,但接收方沒有收到M3但接著收到了M4。此時接收方立即發送對M2的重復確認。)

其次,發送方只要一連收到三個重復確認,就應當立即重傳對方尚未收到的報文段M3.

2)快恢復

要點一、當發送方連續收到三個重復確認,就執行「乘法減小」演算法,把慢開始門限ssthresh減半。

要點二、由於發送方認為網路很可能沒有發生擁塞(因為收到了連續的重復確認),把cwnd設置為慢開始門限ssthresh減半後的值,然後開始執行擁塞避免演算法

慢開始演算法只在TCP連接建立時和網路出現超時才使用。

3.發送方的窗口

發送方窗口的上限值 = Min [rwnd, cwnd]

8.3 隨機早期檢測RED(IP層影響TCP層的擁塞控制)

1.網路層的分組丟棄策略

網路層的策略對TCP擁塞控制影響最大的就是路由器的分組丟棄策略。

如果路由器隊列已滿,則後續到達的分組將都被丟棄。這就叫做尾部丟棄策略。

2.全局同步

由於TCP復用IP,若發生路由器中的尾部丟棄,就可能會同時影響到很多條TCP連接,結果就使許多TCP連接在同一時間突然都進入到慢開始狀態。全局同步使得全網的通信量突然下降了很多,網路恢復正常後,其通信量又突然增大很多。

3.隨機早期檢測RED

使路由器的隊列維持兩個參數,即隊列長度最小門限THmin和最大門限THmax。當每一個分組到達時,RED就先計算平均隊列長度Lav。RED演算法是:

1)若平均隊列長度小於最小門限THmin,則把新到達的分組放入隊列進行排隊

2)若平均隊列長度超過最大門限THmax,則把新到達的分組丟棄

3)若平均隊列長度在最小門限THmin和最大門限THmax之間,則按照某一概率p將新到達的分組丟棄。

隨機體現在3),在檢測到網路擁塞的早期徵兆時(即路由器的平均隊列長度超過一定的門限值時),就先以概率p隨機丟棄個別的分組,讓擁塞控制只在個別的TCP連接上進行,因而避免發生全局性的擁塞控制。

4.平均隊列長度Lav和分組丟棄概率p

Lav = (1-d) x (舊的Lav) +d x (當前的隊列長度樣本)

p = ptemp / (1- count x ptemp)

ptemp = pmax x (Lav - THmin) / (THmax - THmin)

TCP時面向連接的協議。

運輸連接就有三個階段:連接建立、數據傳送和連接釋放

運輸連接的管理:使運輸連接的建立和釋放都能正常地進行。

在TCP連接建立過程中要解決以下三個問題:

   1)要使每一方能夠確知對方的存在

   2)要允許雙方協商一些參數(如最大窗口值、是否使用窗口擴大選項和時間戳等等)

   3)能夠對運輸實體資源(如緩存大小、連接表中的項目等)進行分配

9.1 TCP的連接建立

1.TCP規定,SYN=1報文段不能攜帶數據,但消耗一個序號

2.TCP規定,ACK=1報文段可以攜帶數據,如果不攜帶數據則不消耗序號

3.為什麼A還要發送一次確認?為了防止已失效的連接請求報文突然又傳送到B,因而產生錯誤。

「已失效的連接請求報文段」

A發出第一個連接請求報文段,在網路中滯留超時,又發出了第二個連接請求。但B收到第一個延遲的失效的連接請求報文段後,就誤認為是A又發出了一次新的連接請求。於是就向A發出確認報文段,同意建立連接。假定不採用三次握手,那麼只要B發出確認,新的連接就建立。此時A不會理睬B的確認,也不會發數據,但B一直等A發送數據,B的許多資源就浪費了。

採用三次握手,A不會向B發送確認,因此B就知道A並沒有要求建立確認。

9.2 TCP的連接釋放

1.TCP規定,FIN報文段基石不攜帶數據,也消耗一個序號

2.第二次握手後,TCP通知高層應用程序,因而從A到B這個方向的連接就釋放,TCP連接處於半關閉狀態

3.為什麼A在TIME-WAIT狀態必須等待2MSL的時間

  1)為了保證A發送的最後一個ACK報文段能夠到達B。因為ACK可能丟失,此時B可能會超時重傳,然後A重傳確認,並重新啟動2MSL計時器

  2)防止「已失效的連接請求報文段」出現在本連接中。可以使本連接持續時間內所產生的所有報文段都從網路中消失。

9.3 TCP的有限狀態機

❼ 計算機網路 第五版 答案

第一章 概述
傳播時延=信道長度/電磁波在信道上的傳播速度
發送時延=數據塊長度/信道帶寬
總時延=傳播時延+發送時延+排隊時延
101 計算機網路的發展可劃分為幾個階段?每個階段各有何特點?
102 試簡述分組交換的要點。
103 試從多個方面比較電路交換、報文交換和分組交換的主要優缺點。
104 為什麼說網際網路是自印刷術以來人類通信方面最大的變革?
105 試討論在廣播式網路中對網路層的處理方法。討論是否需要這一層?
106 計算機網路可從哪幾個方面進行分類?
107 試在下列條件下比較電路交換和分組交換。要傳送的報文共x(bit)。從源站到目的站共經過k段鏈路,每段鏈路的傳播時延為d(s),數據率為b(b/s)。在電路交換時電路的建立時間為S(s)。在分組交換時分組長度為p(bit),且各結點的排隊等待時間可忽略不計。問在怎樣的條件下,分組交換的時延比電路交換的要小?
108 在上題的分組交換網中,設報文長度和分組長度分別為x 和(p+h)(bit),其中p為分組的數據部分的長度,而此為每個分組所帶的控制信息固定長度,與p的大小無關。通信的兩端共經過k段鏈路。鏈路的數據率為b(b/s),但傳播時延和結點的排隊時間均可忽略不計。若打算使總的時延為最小,問分組的數據部分長度P應取為多大?
109 計算機網路中的主幹網和本地接入同各有何特點?
110 試計算以下兩種情況的發送時延和傳播時延:(1)數據長度為107bit,數據發送速率為100kb/s,收發
111 計算機網路由哪幾部分組成?

101 計算機網路的發展可劃分為幾個階段?每個階段各有何特點?
答:計算機網路的發展可分為以下四個階段。
(1)面向終端的計算機通信網:其特點是計算機是網路的中心和控制者,終端圍繞中心
計算機分布在各處,呈分層星型結構,各終端通過通信線路共享主機的硬體和軟體資源,計
算機的主要任務還是進行批處理,在20 世紀60 年代出現分時系統後,則具有互動式處理和
成批處理能力。
(2)分組交換網:分組交換網由通信子網和資源子網組成,以通信子網為中心,不僅共
享通信子網的資源,還可共享資源子網的硬體和軟體資源。網路的共享採用排隊方式,即由
結點的分組交換機負責分組的存儲轉發和路由選擇,給兩個進行通信的用戶斷續(或動態)
分配傳輸帶寬,這樣就可以大大提高通信線路的利用率,非常適合突發式的計算機數據。
(3)形成計算機網路體系結構:為了使不同體系結構的計算機網路都能互聯,國際標准
化組織ISO提出了一個能使各種計算機在世界范圍內互聯成網的標准框架—開放系統互連基
本參考模型OSI.。這樣,只要遵循OSI標准,一個系統就可以和位於世界上任何地方的、也
遵循同一標準的其他任何系統進行通信。
(4)高速計算機網路:其特點是採用高速網路技術,綜合業務數字網的實現,多媒體和
智能型網路的興起。
102 試簡述分組交換的要點。
答:分組交換實質上是在「存儲——轉發」基礎上發展起來的。它兼有電路交換和報文交
換的優點。在分組交換網路中,數據按一定長度分割為許多小段的數據——分組。以短的分
組形式傳送。分組交換在線路上採用動態復用技術。每個分組標識後,在一條物理線路上采
用動態復用的技術,同時傳送多個數據分組。在路徑上的每個結點,把來自用戶發端的數據
暫存在交換機的存儲器內,接著在網內轉發。到達接收端,再去掉分組頭將各數據欄位按順
序重新裝配成完整的報文。分組交換比電路交換的電路利用率高,比報文交換的傳輸時延小,
交互性好。
分組交換網的主要優點是:
① 高效。在分組傳輸的過程中動態分配傳輸帶寬,對通信鏈路是逐段佔有。
② 靈活。每個結點均有智能,為每一個分組獨立地選擇轉發的路由。
③ 迅速。以分組作為傳送單位,通信之前可以不先建立連接就能發送分組;網路使用高
速鏈路。
④ 可靠。完善的網路協議;分布式多路由的通信子網。
103 試從多個方面比較電路交換、報文交換和分組交換的主要優缺點。
答:(1)電路交換電路交換就是計算機終端之間通信時,一方發起呼叫,獨佔一條物理
線路。當交換機完成接續,對方收到發起端的信號,雙方即可進行通信。在整個通信過程中
雙方一直佔用該電路。它的特點是實時性強,時延小,交換設備成本較低。但同時也帶來線
路利用率低,電路接續時間長,通信效率低,不同類型終端用戶之間不能通信等缺點。電路
交換比較適用於信息量大、長報文,經常使用的固定用戶之間的通信。
(2)報文交換將用戶的報文存儲在交換機的存儲器中。當所需要的輸出電路空閑時,
再將該報文發向接收交換機或終端,它以「存儲——轉發」方式在網內傳輸數據。報文交換的
優點是中繼電路利用率高,可以多個用戶同時在一條線路上傳送,可實現不同速率、不同規
程的終端間互通。但它的缺點也是顯而易見的。以報文為單位進行存儲轉發,網路傳輸時延
大,且佔用大量的交換機內存和外存,不能滿足對實時性要求高的用戶。報文交換適用於傳
輸的報文較短、實時性要求較低的網路用戶之間的通信,如公用電報網。
(3)分組交換分組交換實質上是在「存儲——轉發」基礎上發展起來的。它兼有電路交
換和報文交換的優點。分組交換在線路上採用動態復用技術傳送按一定長度分割為許多小段
的數據——分組。每個分組標識後,在一條物理線路上採用動態復用的技術,同時傳送多個
數據分組。把來自用戶發端的數據暫存在交換機的存儲器內,接著在網內轉發。到達接收端,
再去掉分組頭將各數據欄位按順序重新裝配成完整的報文。分組交換比電路交換的電路利用
率高,比報文交換的傳輸時延小,交互性好。
104 為什麼說網際網路是自印刷術以來人類通信方面最大的變革?
105 試討論在廣播式網路中對網路層的處理方法。討論是否需要這一層?
答:廣播式網路是屬於共享廣播信道,不存在路由選擇問題,可以不要網路層,但從OSI
的觀點,網路設備應連接到網路層的服務訪問點,因此將服務訪問點設置在高層協議與數據
鏈路層中邏輯鏈路子層的交界面上,IEEE 802 標准就是這樣處理的。
106 計算機網路可從哪幾個方面進行分類?
答:從網路的交換功能進行分類:電路交換、報文交換、分組交換和混合交換;從網路的拓撲結構進行分類:集中式網路、分散式網路和分布式網路;從網路的作用范圍進行分類:廣域網WAN、區域網LAN、城域網MAN;從網路的使用范圍進行分類:公用網和專用網。
107 試在下列條件下比較電路交換和分組交換。要傳送的報文共x(bit)。從源站到目的站共經過k段鏈路,每段鏈路的傳播時延為d(s),數據率為b(b/s)。在電路交換時電路的建立時間為S(s)。在分組交換時分組長度為p(bit),且各結點的排隊等待時間可忽略不計。問在怎樣的條件下,分組交換的時延比電路交換的要小?
答:對於電路交換,t=s時電路建立起來;t=s+x/b 時報文的最後1 位發送完畢;t=s+x/b+kd時報文到達目的地。而對於分組交換,最後1位在t=x/b時發送完畢。為到達最終目的地,最後1個分組必須被中間的路由器重發k1 次,每次重發花時間p/b(一個分組的所有比特都接收齊了,才能開始重發,因此最後1位在每個中間結點的停滯時間為最後一個分組的發送時間),所以總的延遲為
所以:
108在上題的分組交換網中,設報文長度和分組長度分別為x 和(p+h)(bit),其中p為分組的數據部分的長度,而此為每個分組所帶的控制信息固定長度,與p的大小無關。通信的兩端共經過k段鏈路。鏈路的數據率為b(b/s),但傳播時延和結點的排隊時間均可忽略不計。若打算使總的時延為最小,問分組的數據部分長度P應取為多大?
答:所需要的分組總數是x /p ,因此總的數據加上頭信息交通量為(p+h)x/p 位。源端發送這些位需要時間為: 中間的路由器重傳最後一個分組所花的總時間為(k1)(p+h)/b因此我們得到的總的延遲為對該函數求p的導數,得到 令 ?得到 ?因為p>0,所以 故 時能使總的延遲最小。
109 計算機網路中的主幹網和本地接入同各有何特點?
答:主幹網路一般是分布式的,具有分布式網路的特點:其中任何一個結點都至少和其它兩個結點直接相連;本地接入網一般是集中式的,具有集中式網路的特點:所有的信息流必須經過中央處理設備(交換結點),鏈路從中央交換結點向外輻射。
110 試計算以下兩種情況的發送時延和傳播時延:(1)數據長度為107bit,數據發送速率為100kb/s,收發兩端之間的傳輸距離為1000km,信號在媒體上的傳播速率為2×108m/s。 解:發送時延= 107bit/100kbit/s =100s
傳播時延= 1000km/2×108m/s =5×103s
(2)數據長度為103bit,數據發送速率為1Gb/s。收發兩端之間的傳輸距離為1000km,信號在媒體上的傳播速率為2×108 m/s。
解:發送時延=103bit/1×109bit/s =1×106s
傳播時延= 1000km/2×108m/s =5×103s
111 計算機網路由哪幾部分組成?
答:一個計算機網路應當有三個主要的組成部分:
(1)若干主機,它們向用戶提供服務;
(2)一個通信子網,它由一些專用的結點交換機和連接這些結點的通信鏈路所組成的; (3)一系列協議,這些協議為主機之間或主機和子網之間的通信而用的。

閱讀全文

與計算機網路第三章謝仁希相關的資料

熱點內容
如何使用原先禁用網路 瀏覽:879
濟南移動網路續費 瀏覽:519
華為honor還原網路設置 瀏覽:31
網路營銷者 瀏覽:408
蘋果4s用的是4g網路嗎 瀏覽:950
把連接網路的標志拿褲子 瀏覽:928
設計網路平台有哪些 瀏覽:879
網路4g信號放大器有用嗎 瀏覽:184
多台安卓usb共享網路 瀏覽:339
網路連接dns錯誤 瀏覽:166
蘋果x提升網路速度 瀏覽:326
網路二級密碼設 瀏覽:341
老式電視怎麼安裝到無線網路 瀏覽:238
寧夏哪個網路好 瀏覽:583
想敲代碼計算機網路技術可以學嗎 瀏覽:368
綠籬笆智慧農貿市場網路密碼 瀏覽:578
廣電網路的賬號及密碼 瀏覽:539
無線網路忘記交錢了 瀏覽:799
tplink設置普通網路 瀏覽:748
移動網路箭頭圖標 瀏覽:103

友情鏈接