1 計算機網絡和因特網

重點

網絡邊緣:端系統和網絡應用。

網絡核心:傳輸數據的鏈路和交換機。

接入網和物理媒體:將端系統和網絡核心相連接的。

計算機網絡中數據的時延、丟包和吞吐量

端到端吞吐量和時延的簡單定量模型:兼顧傳輸、傳播和排隊時延等因素。

因特網服務提供商(Internet Service Provider,ISP).

傳輸控制協議(Transnission Control Protocal,TCP)

網際協議(Internet Protocal,IP)

數字用戶線(Digital Subscribe Line,DSL)

光纖到戶(Fiber To The Home,FTTH)

吞吐量:每秒能夠傳輸的數據量

1.1 什麼是因特網

1.1.1 具體構成

端系統通過通信鏈路和分組交換機連接到一起。

1)通信鏈路:同軸電纜、銅線、光纖、無線電頻譜。

傳輸速率:比特/秒度量(bit/s,或bps)。

傳輸方式:分組。

2)分組交換機:路由器和鏈路層交換機。

分組交換機從一條入通信鏈路接收到達的分組,從一條出通信鏈路轉發該分組。

路由器通常用於網絡核心中。

鏈路層交換機常用於接入網中。

分組類似於卡車、通信鏈路;類似於高速公路;分組交換機類似於立交橋;段系統類似於建築物。

端系統通過ISP接入因特網,每個ISP由多個分組交換機和多段通信鏈路組成的網絡。各ISP爲端系統提供了各種不同類型的網絡接入。

端系統、分組交換機和其它因特網部件都要運行一系列協議(protocal),這些協議控制因特網中信息的接收和發送。TCP和IP是因特網中兩個最爲重要的協議。

IP協議定義了路由器和分組之間發送和接收的分組格式。

因特網的主要協議統稱爲TCP/IP協議。

因特網標準由因特網工程任務組(IETF)研發。IETF的標準文檔稱爲請求評論(RFC).RFC定義了TCP、IP、HTTP、SMTP等協議。

其他組織也在指定用於網絡組件的標準,最引人注目的網絡鏈路的標準。例如IEEE 802 LAN/MAN標準委員會制定了以太網和無線WiFi的標準。

1.1.2 服務描述

另一個角度:爲應用程序提供服務的基礎設施來描述因聯網。

分佈式應用程序:電子郵件、Web衝浪、即時訊息、社交網絡、IP語音、流式視屏、分佈式遊戲、對等(P2P)文件共享、因特網電視、遠程註冊等。

運行在一個端系統上的端系統的應用程序怎樣才能指令因特網向運行在另一個端系統上的軟件發送數據呢?

與因特網相連的端系統提供了一個應用程序編程接口。該API規定了運行在一個端系統上的軟件請求因特網基礎設施向運行在另一個端系統上的特定目的地軟件交付數據的方式。

1.1.3 什麼是協議

一個協議定義了在兩個或多個通信實體之間交換的報文格式和次序,以及報文發送或接受一條報文或其他事件所採取的動作。

報文的交換以及發送和接收這些報文時所採取的動作是定義一個協議的關鍵元素:一個協議定義了在兩個或多個通信實體之間交換的報文格式和次序,以及報文發送或接收一條報文或其他事件所採取的動作。

1.2 網絡邊緣

“Google擁有30~50個數據中心,其中許多數據中心都有10萬臺以上的服務器。”

1.2.1 接入網(access network)

概念:接入網是指將端系統連接到其邊緣路由器(edge router)的物理鏈路。

邊緣路由器是端系統到任何其他遠程端系統的路徑上的第一臺路由器。

1)家庭接入:DSL、電纜、FTTH、撥號和衛星。

使用DSL時,用戶的本地電話公司也是它的ISP。

每個用戶的DSL調制解調器使用電話線(雙絞銅線)與位於本地電話公司的本地中心局中的數字用戶線接入複用器(DSLAM)來交換數據。

家庭電話線同時承載了數據和傳統的電話信號,它們編碼爲不同的頻率:

①高速下行信道,位於50KHz到1MHz頻段。

②中速上行信道,位於4KHz到50KHz頻段。

③普通的雙向電話信道,位於0到4KHz頻段。

因此一個電話呼叫和一個因特網連接能夠同時共享DSL鏈路(頻分複用技術)

使用電纜因特網接入(cable internet access)時。

混合使用了光纖和同軸電纜。

由頭端(Cable head end)發送的每個分組向下行經每段鏈路到每個家庭;每個家庭發送的每個分組經上行信道向頭端(Cable head end)。

使用FTTH接入

概念:從本地中心局直接到家庭提供了一條光纖路徑。光纖分佈體系結構:主動光纖網絡(AON)和被動光纖網絡(PON)。

2)企業(和家庭)接入:以太網和WiFi

通過局域網(LAN)將端用戶連接到邊緣路由器,目前以太網是最爲流行的技術。以太網用戶使用雙絞銅線與一臺以太網交換機相連。

基於IEEE 802.11技術的無線LAN接入,更爲通俗地稱爲WiFi。這樣的家庭網絡組成如下:

一臺漫遊的便攜機和一臺有線PC,一個無線PC通信的基站(無線接入點);一個提供與因特網寬帶接入的電纜調制解調器;以及一臺互連了基站及帶有電纜調制解調器的固定PC的路由器。

3)廣域無線接入:3G/4G/LTE

1.2.2 物理媒體

1)雙絞銅線:便宜,速度低。

2)同軸電纜:

3)光纖:成本高,速度快,抗干擾強。

4)陸地無線電信道

5)衛星無線電通道

1.3 網絡核心

概念:由互聯因特網端系統的分組交換機和鏈路構成的網狀網絡。下圖加粗部分。

通過網絡鏈路和交換機移動數據有兩種基本方法:電路交換(circuit switching)和分組交換(packet switching)。

1.3.1 分組交換

在各種網絡應用中,端系統彼此交換報文(message)。報文可以執行一種控制功能,也可以包含數據。將長報文劃分爲較小的數據塊,稱之爲分組。每個分組都通過通信鏈路和分組交換機(packet switch,包含兩類:路由器和鏈路層交換機)傳送。

分組以等於該鏈路最大傳輸速率的速度傳輸通過通信鏈路。L比特的分組,鏈路的傳輸速率爲R比特/秒,則傳輸該分組的時間爲L/R秒。

1)存儲轉發傳輸

多數分組交換機在鏈路的輸入端使用存儲轉發傳輸(store-and-forward transmission)機制。

存儲轉發機制是指在交換機能夠開始向輸出鏈路傳輸該分組的第一個比特之前,必須接收到整個分組。

則通過由N條速率均爲R的鏈路組成的路徑(則源和目的地之間有N-1臺路由器),從源到目的地發送一個分組的總體情況。

則一個分組的時延是:d(端到端) = N*L/R。
則P個分組的時延是:d(端到端) = (P-1)*L/R + N*L/R。

2)排隊時延和分組丟失

每個分組交換機有多條鏈路與之相連。對於每條相連的鏈路,該分組交換機具有一個輸出緩存(output buffer)(也稱爲輸出隊列(output queue)),它用於存儲路由器準備發往哪條鏈路的分組。

如果到達分組需要傳輸到某條鏈路,但發現該鏈路正忙於傳輸其他分組,該到達分組必須在輸出緩存中等待。因此,除了存儲轉發時延以外,分組還要承受輸出緩存的排隊時延。

在此情況下,可能出現分組丟失(丟包),到達的分組或已經排隊的分組之一將被丟失。

3)轉發表和路由選擇協議

問題:路由器從與它相連的一條通信鏈路得到分組,將其向與它相連的另一個通信鏈路轉發,但是該路由器怎樣決定它應當向哪條鏈路進行轉發呢?

在internet中,每個端系統具有一個稱爲IP地址的地址,當源主機向目的端系統發送一個分組時,源在該分組的首都包含了目的地的IP地址,當一個分組到達網絡中的路由器時,路由器檢查該分組的目的地址的一部分,並向一臺相鄰路由器轉發該分組。

每臺路由器具有一個轉發表,用於將目的地址(或目的地址的一部分)映射成爲輸出鏈路。

轉發表是如何設置的?因特網具有一些特殊的路由選擇協議(routing protocol)用於自動地設置這些轉發表。

1.3.2 電路交換

在電路交換網絡中,在端系統間通信會話期間,預留了端系統間通信沿路徑所需的資源(緩存,鏈路傳輸速率)。在分組交換網絡中,這些資源則不是預留的。

1)電路交換網絡中的複用

鏈路中的電路通過頻分複用FDM或時分複用TDM來實現。

FDM鏈路的頻譜由跨越鏈路創建的所有連接所共享。這個頻段通常具有4KHz的寬度,該頻段的寬度稱爲帶寬。下圖中,頻率域被劃分爲4個頻段,每個頻段的帶寬是4KHz。

TDM鏈路,時間被劃分爲固定區間的幀,並且每幀又被劃分爲固定數量的時隙。下圖中,其時域被劃分爲幀,每個幀中有4個時隙。一個電路的傳輸速率等於幀速率乘以一個時隙中的比特數量。

需要注意的是,電路交換的傳輸時間與鏈路數量無關。

1.3.3 網絡的網絡

端系統經過一個接入ISP與因特網相連,而這些ISP自身必須互連。通過創建網絡的網絡可以做到這一點。

現在的網絡情況:

1.4 分組交換網中的時延、丟包和吞吐量

計算機網絡限制在端系統之間的吞吐量,在端系統之間引入時延,而且實際上能夠丟失分組。

1.4.1 分組交換網中的時延概念

時延的類型:

1)結點處理時延(nodal processing delay):檢查分組首部和決定將該分組導向何處所需的時間是處理時延的一部分。(微秒或更低數量級)

2)排隊時延(queuing delay):在隊列中,當分組在鏈路上等待傳輸時,它經受排隊時延。(毫秒到微秒)

3)傳輸時延(transmission delay):用L比特表示分組的長度,用R bps表示從路由器A到路由器B的鏈路傳輸速率。則傳輸時延 = L/R。(通常是毫秒到微秒級)

4)傳播時延(propagation delay):一個比特被推向鏈路,該比特需要向路由器B傳播。從鏈路起點到路由器B傳播所需要的時間。速率爲s = 2~3*10^8m/s,若距離爲d。則傳播時延 = d/s。(毫秒級)

5)結點總時延(total nodal delay):以上時延總體累加起來。

1.4.2 排隊時延和丟包

結點時延的最爲複雜和有趣的成分是排隊時延。排隊時延對不同的分組可能是不同的。

假設令a表示分組到達隊列的平均速率(a的單位是分組/秒,即pkt/s)。R是傳輸速率,分組的大小爲L比特。則分組到達隊列的平均速率爲La bps。假設該隊列非常大,則La/R被稱爲流量強度。如果La/R > 1,則排隊時延將趨向無線大。

則:設計系統時流量強度不能大於1.

實際上,一條鏈路的前端只能有限的容量,當流量強度大於1,很容易丟包。

1.4.3 端到端時延

假設排隊時延是微不足道的,d = N(dproc + dtran + dprop)

1.4.4 計算機網絡中的吞吐量

瞬時吞吐量(instantaneous throuhput):從主機A向主機B傳輸文件,主機B接收到該文件的速度。(個人理解,即下載時的顯示的網絡下載速率)。

平均吞吐量(average throughput):該文件由F比特組成,主機B接收到所有F比特用了T秒,則文件傳送的平均吞吐量爲 F/T bps。

今天因熱網中對吞吐量的限制因素通常是接入網。吐吞量取決於數據流過的鏈路的傳輸速率。

1.5 協議層次及其服務模型

1.5.1 分層的體系結構

網絡設計者以分層的方式組織協議以及實現這些協議的網絡硬件和軟件。一個協議層能夠用軟件、硬件或兩者的結合來實現。

1)應用層

應用層是網絡應用程序及它們的應用層協議存留的地方。因特網的應用層包括許多協議,例如:

HTTP : 提供了Web文檔的請求和傳送。

SMTP:提供了電子郵件報文的傳輸。

FTP:提供了兩個端系統之間的文件傳送。

DNS:域名系統。

報文(message):一個端系統中的應用程序使用協議與另一個端系統中的應用程序交換信息的分組。

2)運輸層

因特網的運輸層在應用程序端點之間傳送應用層報文。在因特網中,有兩個運輸協議,即TCP和UDP,利用其中的任一個都能運輸應用層報文。

TCP向它的應用程序提供了面向連接的服務,這種服務包括了應用層報文向目的地的確保傳遞和流量控制(即發送方/接收方速率匹配)。TCP也將長報文劃分爲短報文,並提供擁塞控制機制,因此當網絡擁塞時,源抑制其傳輸速率。

UDP協議向它的應用程序提供無連接服務,這是一種不提供不必要服務的服務,沒有可靠性,沒有流量控制,沒有擁塞控制。

報文段(segment):運輸層分組。

3)網絡層

網絡層負責將網絡層分組(數據報,datagram)從一臺主機移動到另一臺主機。在一臺源主機中,因特網運輸層協議(TCP或UDP)向網絡層遞交運輸層報文段目的地址

網絡層包括的協議:

IP協議:該協議定義了在數據報中的各個字段以及端系統和路由器如何作用於這些字段。

路由選擇協議:使得數據報根據該路由從源傳輸到目的地。

網絡層通常也稱爲IP層。

4)鏈路層

因特網的網絡層通過源和目的地之間的一系列路由器路由數據報。網絡層將數據報下傳給鏈路層,鏈路層沿着路徑將數據報傳遞給下一個結點。在下個結點,鏈路層將數據報上傳給網絡層。

鏈路層的例子包括以太網、WiFi和電纜接入網的DOCDIS協議。數據報從源到目的地傳送通常需要經過幾條鏈路,一個數據報可能被沿途不同鏈路上的不同鏈路層協議處理。

鏈路層通常有交換機和路由器。

把鏈路層分組稱爲幀(frame)。

5)物理層

鏈路層的任務是將整個幀從一個網絡元素移動到鄰近的網絡元素,而物理層的任務是將該幀中的一個一個比特從一個結點移動到下一個結點。

例如以太網的物理層協議:雙絞銅線、同軸電纜、光纖等等。

PS:OSI模型多了表示層和會話層。

表示層的作用是使通信的應用程序能夠解釋交換數據的含義。

會話層提供了數據交換定界和同步功能,包括了建立檢查點和恢復方案的方法。

因特網缺少了OSI參考模型中建立的兩個層次:這留給應用程序開發者處理。

1.5.2 封裝

數據從發送端系統的協議棧向下,向上和向下經過中間的鏈路層交換機和路由器的協議棧。路由器和鏈路層交換機都是分組交換機。而路由器和鏈路層交換機並不實現協議棧中的所有層次。

鏈路層交換機實現了第一層和第二層;路由器實現了第一層到第三層。所以,因特網的路由器能夠實現IP協議,而鏈路層交換機不能。儘管鏈路層交換機不能識別IP地址,但它們能夠識別第二層地址,如以太網地址。主機實現了5個層次。

封裝:

在發送主機端,一個應用層報文M(application-layer message)被傳送給運輸層。在簡單情況下,運輸層收取到報文並附上附加信息(所謂運輸層首部信息Ht),該首部將被接收端的運輸層使用。應用層報文和運輸層首部信息一道構成了運輸層報文段(transport-layer segment)。運輸層報文段因此封裝了應用層報文,附加的信息也許包含下列信息:①允許接收端運輸層向上向適當的應用程序交付報文信息②差錯檢測信息③該信息讓接收方能夠判斷報文中的比特是否在途中已被改變。

網絡層增加了如源目的端系統地址等網絡層首部信息(Hn),產生網絡層數據報(network-layer datagram)。該數據報接下來被傳遞給鏈路層,鏈路層增加它自己的鏈路層首部信息並創建鏈路層幀(link-layer frame)

所以,我們看到在每一層,一個分組具有兩種類型的字段:首部字段和有效載荷字段(payload field)。有效載荷通常是來自上一層的分組。

1.6 面對攻擊的網絡

發佈了54 篇原創文章 · 獲贊 14 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章