計算機網路-概述
計算機網路慕課地址:https://www.bilibili.com/video/BV1c4411d7jb
1.1網路在資訊時代的作用
- 計算機網路已由一種通訊基礎設施發展成一種重要的資訊服務基礎設施。
- 計算機網路已經像水、電、煤氣這些基礎設施一樣,成為我們生活中不可或缺的一部分。
1.2 因特網概述
1.2.1 網路 互連網 因特網
網路(Network):由若干個結點(Node)和連線這些結點的鏈路(Link)組成。
互連網(網際網路):多個網路通過路由器互連起來,這樣就構成了一個覆蓋範圍更大的網路,即互連網(網際網路)。因此,網際網路又稱為網路的網路(Network of Networks)
因特網:因特網(Internet)是世界上最大的互連網路(使用者數以億計,互連的網路數以百萬計)。
internet與Internet的區別
-
internet(網際網路或互連網)是一個通用名詞,它泛指多個計算機網路互連而成的網路。在這些網路之間的通訊協議可以是任意的。
-
Internet(因特網)則是一個專用名詞,它指當前全球最大的、開放的、由眾多網路互連而成的特定計算機網路,它採用TCP/IP協議族作為通訊的規則,其前身是美國的ARPANET。
1.2.2 因特網發展
1.2.3 ISP
因特網服務提供者ISP: (Internet Service Provider)
- 中國的三大ISP:中國電信,中國聯通和中國移動。
- ISP可以從因特網管理機構申請到成塊的Ip地址,這一點很重要,因為因特網的主機都必須有IP地址才能進行通訊。
- 任何機構和個人只要向ISP繳納規定的費用,就可以從ISP得到所需要的IP地址,同時擁有通訊線路以及路由器等連網裝置。
基於ISP的三層結構的因特網
ISP1基本概念:
第一層ISP通常也被稱為因特網主幹網,並且擁有高速鏈路和交換裝置,第一層ISP之間直接互聯,一般都能夠覆蓋國際性區域範圍。
ISP2基本概念:
第二層ISP和一些大公司都是第一層ISP的使用者,通常具有區域性或者國家性覆蓋規模,與少數第一層ISP相連線。
ISP3基本概念:
- 第三層ISP又稱為本地的ISP,並且只擁有本地範圍的網路,它們是第二層ISP的使用者。
- 一般的校園網或者企業網,以及住宅使用者和無線移動使用者,都是第三層ISP使用者。
總結:
- 一旦某個使用者能夠接入到因特網,那麼他也可以成為一個ISP,所需要做的就是購買一些如調變解調器或路由器這樣的裝置,讓其他使用者可以和他相連。
- 在網路核心部分起特殊作用的是路由器,它是一種專用的計算機,但是我們不稱它為主機。
- 路由器是實現分組交換的關鍵構件,其任務是轉發收到的分組,這是網路核心部分最重要的功能。
1.2.4 標準化工作
-
因特網的標準化工作對因特網的發展起到了非常重要的作用。
-
因特網在指定其標準上的一個很大的特點是面向公眾。
- 因特網所有的RFC(Request For Comments)技術文件都可從因特網上免費下載。
- 任何人都可以隨時用電子郵件發表對某個文件的意見或建議。
-
因特網協會ISOC是一個國際性組織,它負責對因特網進行全面管理,以及在世界範圍內促進其發展和使用。
- 因特網體系結構委員會IAB,負責管理因特網有關協議的開發。
- 因特網工程部IETF,負責研究中短期工程問題,主要針對協議的開發和標準化。
- 因特網研究部IRTF,從事理論方面的研究和開發一些需要長期考慮的問題。
-
制訂因特網的正式標準要經過一下4個階段:
- 因特網草案(在這個階段還不是RFC文件)
- 建議標準(從這個階段開始就成為RFC文件)
- 草案標準
- 因特網標準
1.2.5 因特網的組成
邊緣部分
由所有連線在因特網上的主機組成。這部分是使用者直接使用的,用來進行通訊(傳送資料、音訊或視訊)和資源共享。
核心部分
由大量網路和連線這些網路的路由器組成。這部分是為邊緣部分提供服務的(提供連通性和交換)。
1.3 三種交換方式
在網路核心部分起特殊作用的是路由器(router),它負責將各種網路互連起來。
路由器是實現分組交換 (packet switching) 的關鍵構件,其任務是轉發收到的分組,這是網路核心部分最重要的功能。
1.3.1 電路交換
傳統兩兩相連的方式,當電話數量很多時,電話線也很多,就很不方便
所以要使得每一部電話能夠很方便地和另一部電話進行通訊,就應該使用一個中間裝置將這些電話連線起來,這個中間裝置就是電話交換機
電話交換機
可以將電話交換機簡單的看成一個有多個開關的開關器,可以將需要通訊的任意兩部電話的電話線路按需接通。用這樣的方法,就構成了覆蓋全世界的電信網。
電話交換機接通電話線的方式稱為電路交換
從通訊資源的分配角度來看,交換(Switching)就是按照某種方式動態地分配傳輸線路的資源。
電路交換的三個步驟:
- 建立連線(分配通訊資源)
- 通話(一直佔用通訊資源)
- 釋放連線(歸還通訊資源)
結論
使用電路交換來傳送計算機資料時,其線路的傳輸效率往往很低。這是因為計算機資料是突發式地出現在傳輸線路上的。
1.3.2 分組交換
分組交換需要將傳輸資料(即報文)分割成較小的資料塊,每個資料塊附加上地址、序號等控制資訊構成資料分組,每個分組獨立傳輸到目的地,目的地將收到的分組重新組裝,還原為報文。分組傳輸過程通常也採用儲存-轉發交換方式。
傳送方
構造分組,傳送分組
路由器
快取分組, 轉發分組
路由器處理分組的過程是
- 把收到的分組先放入快取(暫時儲存),查詢轉發表,找出到某個目的地址應從哪個埠轉發。
- 把分組送到適當的埠轉發出去。
接收方
接收分組,還原報文
1.3.3 報文交換
- 報文交換也稱為訊息交換。其工作過程為:傳送方把要傳送的資訊附加上傳送/接收主機的地址及其他控制資訊。
- 構成一個完整的報文。然後以報文為單位在交換網路的各個結點之間以儲存-轉發的方式傳遞,直至送達目的主機。
- 報文交換主要用於早期的電報通訊網,現在較少使用,通常被較先進的分組交換方式所取代。
電路交換、報文交換、分組交換的對比
假設A,B,C,D是分組傳輸路徑所要經過的4個結點交換機,縱座標為時間
結論
電路交換:
- 通訊之前首先要建立連線;連線建立好之後,就可以使用已建立好的連線進行資料傳送。
- 資料傳送後,需釋放連線,以歸還之前建立連線所佔用的通訊線路資源。
- 一旦建立連線,中間的各結點交換機就是直通形式的,位元流可以直達終點。
報文交換:
- 可以隨時傳送報文,而不需要事先建立連線;整個報文先傳送到相鄰結點交換機,全部儲存下來後進行查錶轉發,轉發到下一個結點交換機。
- 整個報文需要在各結點交換機上進行儲存轉發,由於不限制報文大小,因此需要各結點交換機都具有較大的快取空間。
分組交換:
- 可以隨時傳送分組,而不需要事先建立連線。構成原始報文的一個個分組,依次在各結點交換機上儲存轉發。
- 各結點交換機在傳送分組的同時,還快取接收到的分組。
- 構成原始報文的一個個分組,在各結點交換機上進行儲存轉發。
- 相比報文交換,減少了轉發時延,還可以避免過長的報文長時間佔用鏈路,同時也有利於進行差錯控制。
1.4 網路的分類
計算機網路簡單定義
一些互相連線的、自治的計算機的集合。
- 互連:是指計算機之間可以通過有線或無線的方式進行資料通訊;
- 自治:是指獨立的計算機,他有自己的硬體和軟體,可以單獨執行使用;
- 集合:是指至少需要兩臺計算機;
計算機網路完整定義
計算機網路主要是由一些通用的,可程式設計的硬體(一定包含有中央處理機CPU)互連而成的,而這些硬體並非專門用來實現某一特定目的(例如,傳送資料或視訊訊號)。這些可程式設計的硬體能夠用來傳送多種不同型別的資料,並能支援廣泛的和日益增長的應用。
- 計算機網路所連線的硬體,並不限於一般的計算機,而是包括了智慧手機等智慧硬體。
- 計算機網路並非專門用來傳送資料,而是能夠支援很多種的應用(包括今後可能出現的各種應用)。
計算機網路分類
1.5 效能指標
1.5.1 速率
案例說明
1.5.2 頻寬
1.5.3 吞吐量
吞吐量表示單位時間內通過某個網路(或通道、介面)的數劇量。
吞吐量被經常用於對現實世界中的網路的一種測量,以便知道實際上到底有多少資料量能夠通過網路。
吞吐量受到網路的頻寬或額定速率的限制。
案例說明
這是一個頻寬為1Gb/s的乙太網,其吞吐量受頻寬限制,最高為1Gb/s,這個數值也是該乙太網的吞吐量的絕對上限值。
對於頻寬1 Gb/s的乙太網,通常實際吞吐量只能達到700 Mb/s,甚至更低。
1.5.4 時延
時延時指資料(一個報文或分組,甚至位元)從網路(或鏈路)的一端傳送到另一端所需的時間。
結論1
在構建網路時,應該做到各裝置間以及傳輸介質的速率匹配,這樣才能完全發揮出本應具有的傳輸效能。源主機和目的主機之間的路徑會由多段鏈路和多個路由器構成。
結論2
構成網路時延的傳送時延,傳播時延以及處理時延,在處理時延時忽略不計的情況下。
我們不能想當然地認為傳送時延佔主導或傳播時延佔主導,而且應該具體問題具體分析。
1.5.5 時延頻寬積
時延頻寬積 = 傳播時延 * 頻寬
1.5.6 往返時間
基本定義
從源主機發送分組開始,直到源主機收到來自目的主機的確認分組為止,所需的時間。在許多情況下,因特網上的資訊不僅僅單方向傳輸,而且是雙向互動,有時很需要知道雙向互動一次所需的時間。因此,往返時間(RTT)是一個重要的效能指標。
結論1
一般情況下,衛星鏈路的距離比較遠,所帶來的傳播時延比較大。
1.5.7 利用率
1.5.8 丟包率
基本定義
丟包率即分組丟失率,是指在一定時間範圍內,傳輸過程中丟失的分組數量與總分組數量的比率。
丟包率分類
介面丟包率, 結點丟包率,鏈路丟包率,路徑丟包率,網路丟包率。
丟包率是網路運維人員非常關心的一個網路效能指標,但對於普通使用者來說往往並不關心這個指標,因為他們通常意識不到網路丟包。
分組丟失主要情況
分組在傳輸過程中出現誤碼,被結點丟棄。
分組到達一臺佇列已滿的分組交換時被丟棄,在通訊量較大時就可能造成網路擁塞。
結論
實際上,路由器會根據自身的擁塞控制方法,在輸入快取還未滿的時候就主動丟棄分組。當網路的丟包率比較高時,通常無法使網路應用正常工作。
丟包率反映了網路的擁塞情況
- 無擁塞時路徑丟包率為0。
- 輕度擁塞時路徑丟包率為1%~4%。
- 嚴重擁塞時路徑丟包率為5%~15%。
1.6 網路體系結構
1.6.1 OSI體系結構
1.6.2 TCP/IP體系
1.6.3 具體運用
結論:
如今用的最多的是TCP/IP體系結構,現今規模最大的、覆蓋全球的、基於TCP/IP的網際網路並未使用OSI標準。
TCP/IP體系結構相當於將OSI體系結構的物理層和資料鏈路層合併成了網路介面層。並且去掉了會話層和表示層。
由於TCP/IP在網路層使用的協議是IP協議,IP協議的中文意思是網際協議,因此TCP/IP體系結構的網路層稱為網際層。
結論
使用者的主機必須使用TCP/IP協議。在使用者主機的作業系統中,通常都帶有符合TCP/IP體系結構標準的TCP/IP協議族。
用於網路互連的路由器中,也帶有符合TCP/IP體系結構標準的TCP/IP協議族。
TCP/IP體系結構的網路介面層並沒有規定具體的內容。只不過路由器一般只包含網路介面層和網際層。這樣做的目的是可以互連全世界各種不同的網路介面。
1.6.5 TCP/IP體系結構
網路介面層
並沒有規定具體內容,這樣做的目的是可以互連全世界各種不同的網路介面,例如:有線的乙太網介面,無線區域網的WIFI介面等。
網際層
它的核心協議是IP協議,網際協議IP是TCP/IP體系結構的核心協議。
運輸層
TCP和UDP是這層的兩個重要協議。
應用層
這層包含了大量的應用層協議,如 HTTP , DNS 等。
IP協議、TCP/IP 、UDP
- IP協議是TCP/IP體系結構網際層的核心協議,TCP/UDP是TCP/IP體系結構運輸層的兩個重要協議。
- TCP/IP體系結構的應用層包含了大量的應用層協議,IP協議可以將不同的網路介面進行互聯。並且向其上的 TCP協議和UDP協議提供網路互連服務。
- TCP協議在享受IP協議提供的網路互連服務的基礎上,可以嚮應用層的相應協議提供可靠的傳輸服務。
- UDP協議在享受IP協議提供的網路互連服務的基礎上,可以嚮應用層的相應協議提供不可靠的傳輸服務。
1.6.6 TCP/IP協議族
一方面負責互連不同的網路介面,另一方面,為各種網路應用提供服務。
結論
IP協議和TCP協議是其中非常重要的兩個協議,在TCP/IP協議體系中包含大量的協議,因此用TCP和IP這兩個協議來表示整個協議大家族。常稱為TCP/IP協議族。
1.7 分層的必要性
計算機網路是個非常複雜的系統,早在最初的ARPANET設計時候提出了分層設計理念。
分層可將龐大而複雜的問題,轉化為若干較小的區域性問題,而這些較小的區域性問題就比較易於研究和處理。
1.7.1 物理層
結論
嚴格來說,傳輸媒體並不屬於物理層,它並不包含在體系結構之中。
計算機網路中輸出的訊號,並不是我們舉例的方波訊號。
1.7.2 資料鏈路層
標識網路中的各主機
主機編址問題,也就是網路和主機共同編址的問題,該類IP地址的前三個十進位制用來標識網路。
第四個十進位制用來標識主機。
1.7.3 網路層
IP地址
其實就是主機在網路中的地址,主機在傳送資料時,應該給資料附加上目的地,當其他主機收到後,根據目的地址和自身地址,來決定是否接受資料。
1.7.4 運輸層問題
1.7.5 應用層問題
在此基礎上,只需要制定各種應用層協議,並且按協議標準編寫相應的應用程式。
通過應用程序間的互動來完成特定的網路應用。
總結
1.8 分層思想案例
1.8.1 案列引出
主機的瀏覽器如何與Web伺服器進行通訊?
步驟分析:
主機屬性網路N1,web伺服器屬於網路N2,N1和N2通過路由器互連。使用主機中的瀏覽器訪問web伺服器,主機會向Web伺服器傳送請求。
Web伺服器收到請求後,會發出相應的相應,主機的瀏覽器收到響應後,會發回相應的響應。主機的瀏覽器收到響應後,將其解析為具體的網頁內容顯示出來。
注意: 主機和Web伺服器之間基於網路的通訊,實際上是主機中的瀏覽器應用程序與Web伺服器中的Web伺服器中的Web伺服器應用程序之間基於網路的通訊。
1.8.2 傳送方傳送
應用層:
應用層按HTTP協議的規定,構建一個HTTP請求報文。應用層將HTTP請求報文交付給運輸層處理。
運輸層:
- 運輸層給HTTP請求報文新增一個TCP首部,使之成為TCP報文段。
- TCP報文段的首部格式作用是區分應用程序以及實現可靠傳輸,運輸層將TCP報文段交付給網路層處理。
網路層:
- 網路層給TCP報文段新增一個IP首部,使之成為IP資料報。
- IP資料報的首部格式作用是使IP資料報可以在網際網路傳輸,也就是被路由器轉發
- 網路層將IP資料報交付給資料鏈路層處理。
資料鏈路層:
- 資料鏈路層給IP資料報新增一個首部和一個尾部,使之成為幀,假設網路N1是乙太網。
- 該首部的作用主要是為了讓幀能夠在一段鏈路上或一個網路上傳輸,能夠被相應的目的主機接收
- 該尾部的作用是讓目的主機檢查所接收到的幀是否有誤碼
- 資料鏈路層將幀交付給物理層
物理層
- 物理層先將幀看做是位元流,所以物理層還會給該位元流前面新增前導碼。
- 前導碼的作用是為了讓目的主機做好接收幀的準備。
- 物理層將裝有前導碼的位元流變換成相應的訊號傳送給傳輸媒體。
訊號通過傳輸媒體到達路由器
1.8.3 路由器處理
步驟1:
- 物理層將訊號變為位元流,然後去掉前導碼後,將其交付給資料鏈路層,這實際上交付的是幀。
- 資料鏈路層將幀的首部和尾部去掉後,將其交付給網路層,這實際交付的是IP資料報。
- 網路層解析IP資料報的首部,從中提取目的網路地址,提取目的網路地址後查詢自身路由表。確定轉發埠,以便進行轉發。
步驟2:
- 網路層將IP資料報交付給資料鏈路層。
- 資料鏈路層給IP資料報新增一個首部和一個尾部,使之成為幀。
- 資料鏈路層將幀交付給物理層。
- 物理層先將幀看成位元流,所以物理層還會給該位元流前面新增前導碼。
步驟3:
物理層將裝有前導碼的位元流變換成相應的訊號傳送給傳輸媒體,訊號通過傳輸媒體到達Web伺服器。
1.8.4 接收方接收
和傳送方傳送過程的封裝正好相反。
執行步驟
- 物理層將訊號變換為位元流,然後去掉前導碼後成為幀,交付給資料鏈路層。
- 資料鏈路層將幀的首部和尾部去掉後成為IP資料報,將其交付給網路層。
- 網路層將IP資料報的首部去掉後成為TCP報文段,將其交付給運輸層。
- 運輸層將TCP報文段的首部去掉後成為HTTP請求報文,將其交付給應用層。
- 應用層對HTTP請求報文進行解析,然後給主機發迴響應報文。
發回響應報文的步驟和之前過程基本相同
1.9 體系結構專用術語
以下介紹的專用術語來源於OSI的七層協議體系結構,同時也適用於TCP/IP的四層體系結構和五層協議體系結構
1.9.1 實體
實體: 任何可傳送或者接收資訊的硬體或者軟體程序。
對等實體: 收發雙方相同層次中的實體。
1.9.2 協議
協議:控制兩個對等實體進行邏輯通訊的規則的集合。
協議三要素:
語法:定義所交換資訊的格式。
語義:定義收發雙方所要完成的操作。
時序:定義收發雙發的時序關係。
1.9.3 服務