計算機網絡
該博客爲我的學習計算機網絡時候作的一些筆記,做者水平頗有限,若有錯誤和理解不對之處,歡迎指出!!!謝謝謝謝!!!git
學習課本以及資料爲謝希仁老師的《計算機網絡(第七版)》以及《自頂向下》。課程爲韓立剛老師的視頻,強推該老師視頻,很棒棒~服務器
網絡的性能特性
帶寬
兩種不一樣意義:網絡
- 「帶寬」(bandwidth) 原本是指信號具備的頻帶寬度,其單位是赫(或千赫、兆赫、吉赫等)。
- 在計算機網絡中,帶寬用來表示網絡中某通道傳送數據的能力。表示在單位時間內網絡中的某信道所能經過的「最高數據率」。單位是 bit/s,即 「比特每秒」。
在「帶寬」的上述兩種表述中,前者爲頻域稱謂,然後者爲時域稱謂,其本質是相同的。也就是說,一條通訊鏈路的「帶寬」越寬,其所能傳輸的「最高數據率」也越高。性能
速率
- 比特(bit)是計算機中數據量的單位,也是信息論中使用的信息量的單位。
- 比特(bit)來源於 binary digit,意思是一個「二進制數字」,所以一個比特就是二進制數字中的一個 1 或 0。
- 速率是計算機網絡中最重要的一個性能指標,指的是數據的傳送速率,它也稱爲數據率 (data rate) 或比特率 (bit rate)。
- 速率的單位是 bit/s,或 kbit/s、Mbit/s、 Gbit/s等。
例如4 *10^10 bit/s 的數據率就記爲 40 Gbit/s。
- 速率每每是指額定速率或標稱速率,非實際運行速率。
帶寬和速率二者之間的區別
很顯然,這二者的單位都是bit/s,很容易讓人混淆。這裏,咱們嘗試對他們有個更加清晰的區分認識,在學習的時候發現了一個思路,就是從他的英文單詞出發。速率是Date rate,帶寬是Bandwidth。其中,速率平時被人們說起的次數頗有限,而帶寬這個詞卻經常被人掛在嘴邊,包括我那個每天抱怨打王者卡頓的小老弟。學習
速率,更多的是硬件的數據。就是說這個通道自己所能承載的最大信息傳輸速度。計算機網絡
帶寬,這有着更多能夠作文章的空間。好比從服務器到客戶機之間的傳輸,他們之間可能不止一條管道,它們之間的傳輸能力咱們用帶寬來表示。由於咱們指的不是二者間某一條管道的傳輸速度,而是二者間的傳輸速度。視頻
吞吐量
- (throughput) 表示在單位時間內經過某個網絡(或信道、接口)的數據量。
- 吞吐量更常常地用於對現實世界中的網絡的一種測量,以便知道實際上到底有多少數據量可以經過網絡。
- 吞吐量受網絡的帶寬或網絡的額定速率的限制。
也就是說,吞吐量這個概念它包括了下載和上傳的所有數據,若是下載和上傳的帶寬都是100M,那麼吞吐量就是200M。blog
時延
-
時延 (delay 或 latency) 是指數據(一個報文或分組,甚至比特)從網絡(或鏈路)的一端傳送到另外一端所需的時間。接口
-
有時也稱爲延遲或遲延。隊列
-
網絡中的時延由如下幾個不一樣的部分組成:
-
發送時延:
- 也稱爲傳輸時延。
- 發送數據時,數據幀從結點進入到傳輸媒體所須要的時間。
- 也就是從發送數據幀的第一個比特算起,到該幀的最後一個比特發送完畢所需的時間。
- 發送時延 =數據幀長度(bit) / 發送速率(bit/s)
- 這個就比如時坐火車,火車離開出發站的時間,和火車長度和火車速度有關。就是那個小學數學題裏火車頭火車尾那玩意。
信號的發送速率和傳播速率很不同
-
傳播時延
- 電磁波在信道中須要傳播必定的距離而花費的時間。
- 發送時延與傳播時延有本質上的不一樣。
- 信號發送速率和信號在信道上的傳播速率是徹底不一樣的概念。
- 傳播時延 = 信道長度(米)/ 信號在信道上的傳播速率(米/秒)
- 這個就比如火車尾巴剛離開出發站到火車徹底進入目的站的時間。和底線長度以及火車速度有關。
-
處理時延
- 主機或路由器在收到分組時,爲處理分組(例如分析首部、提取數據、差錯檢驗或查找路由)所花費的時間。
- 這個不就是火車的檢票嘛
-
排隊時延
- 分組在路由器輸入輸出隊列中排隊等待處理所經歷的時延。
- 排隊時延的長短每每取決於網絡中當時的通訊量。
- 這個不就是檢票出站時候的排隊嘛
全部時間加載一塊,就是總的時延,而在總的時延中,究竟是哪一個時延佔主導,這要看具體狀況來分析。
容易錯誤的概念
- 對於高速網絡鏈路,咱們提升的僅僅是數據的發送速率而不是比特在鏈路上的傳播速率。
- 提升鏈路帶寬減少了數據的發送時延。
時延帶寬積
鏈路的時延帶寬積又稱爲以比特爲單位的鏈路長度。
就是該通道被填滿了,一點點都沒有浪費的時候,所傳播的比特數
![](http://static.javashuo.com/static/loading.gif)
往返時間
- 互聯網上的信息不只僅單方向傳輸,而是雙向交互的。所以,有時很須要知道雙向交互一次所需的時間。
- **往返時間 RTT (round-trip time) **表示從發送方發送數據開始,到發送方收到來自接收方的確認,總共經歷的時間。
- 在互聯網中,往返時間還包括各中間結點的處理時延、排隊時延以及轉發數據時的發送時延。
- 當使用衛星通訊時,往返時間 RTT 相對較長,是很重要的一個性能指標。延遲比較大,可是帶寬很是高。就好比說,個人冰冰在作現場採訪時,轉播室的主持人說一句話,冰冰要等一兩秒才能聽到。
信道利用率
- 分爲信道利用率和網絡利用率。
- 信道:一個發送端一個接收端加上中間的通路,成爲一個信道
- 網絡:網絡的出發點是網卡,它和全部信道有關
- 信道利用率指出某信道有百分之幾的時間是被利用的(有數據經過)。
- 徹底空閒的信道的利用率是零。
- 網絡利用率則是全網絡的信道利用率的加權平均值。
- 信道利用率並不是越高越好。當某信道的利用率增大時,該信道引發的時延也就迅速增長。(若是路上一眼看過去全是車,鐵定堵死了)
時延與網絡利用率的關係
- 根據排隊論的理論,當某信道的利用率增大時,該信道引發的時延也就迅速增長。
- 若令 D0 表示網絡空閒時的時延,D 表示網絡當前的時延,則在適當的假定條件下,能夠用下面的簡單公式表示 D 和 D0 之間的關係:
![](http://static.javashuo.com/static/loading.gif)
其中:U 是網絡的利用率,數值在 0 到 1 之間。
網絡的非性能特性
- 費用
- 質量
- 標準化
- 可靠性
- 可擴展性和可升級性
- 易於管理和維護