跳轉到內容

A-level 計算機科學/CIE/高階理論/通訊與網際網路技術

來自華夏公益教科書,開放的書本,開放的世界
A-level 計算機科學
資料表示 通訊與網際網路技術 硬體
規範連結

協議

  • 理解為什麼協議對於計算機之間的通訊至關重要
  • 理解如何將協議實現視為一個堆疊,其中每一層都有自己的功能
  • 理解 TCP/IP 協議每一層的函式
  • 理解當一條訊息從網際網路上的一臺主機發送到另一臺主機時,TCP/IP 協議的應用
  • 理解 BitTorrent 協議如何提供點對點檔案共享
  • 瞭解其他協議(HTTP、FTP、POP3、SMTP)及其用途

電路交換、分組交換和路由器

  • 理解電路交換及其應用
  • 理解分組交換
  • 理解路由器的功能
  • 解釋如何使用分組交換在網路(包括網際網路)上傳遞訊息

區域網

  • 理解匯流排拓撲網路以及分組在兩臺主機之間傳輸方式的含義
  • 理解星型拓撲網路以及分組在兩臺主機之間傳輸方式的含義
  • 理解無線網路
  • 解釋如何使用硬體來支援 LAN
  • 交換機、路由器、伺服器、網路介面卡 (NIC)、無線接入點
  • 理解乙太網以及 CSMA/CD 的工作原理

協議是一組規則,這些規則規定了如何傳送、接收、傳輸和解釋資料。一組協同工作的協議被稱為協議族

TCP/IP 協議族

[編輯 | 編輯原始碼]

物理層

[編輯 | 編輯原始碼]

物理層負責透過物理介質將資料從一臺裝置傳送到另一臺裝置。物理層協議通常是低階協議。

物理層協議可以細分為

機械協議
關於聯結器尺寸和形狀的協議。
電氣/光學協議
確定哪個電壓級別代表 0 和 1 的資料值的協議。
功能協議
確定聯結器每個引腳負責什麼的協議。
過程協議
定義為了傳送資料而需要執行的步驟順序的協議。

對於給定的網路,物理層協議可以確定

資料速率
在給定時間段內預期接收的位元數。
位元同步
確保傳送方和接收方具有相同資料速率的方法。
配置
系統之間的連結是點對點連線還是多點連線。
拓撲結構
網路中的終端系統如何相互連線。
模式
連線是單工(單向)、半雙工(雙向,但不能同時)還是全雙工(雙向,同時)模式。
[編輯 | 編輯原始碼]

資料鏈路層負責對資料進行幀封裝,以便它準備好透過物理層傳輸。資料鏈路層在從網路層接收的資料中新增頭和尾。

幀頭包含源和目標裝置的物理地址。這些物理地址通常是媒體訪問控制 (MAC) 地址,這些地址唯一標識用於將裝置連線到網路的網路介面卡 (NIC)。幀尾可能包含錯誤控制機制,例如奇偶校驗。

當資料透過網路傳輸時,幀用於將資料從一個系統傳輸到下一個系統。這被稱為跳躍式轉發。當資料透過多箇中間系統傳送時,每個中間系統都會接收一個幀,刪除原始幀頭和尾,使用新的頭和尾對資料進行幀封裝,並將資料轉發到下一個系統。

網路層

[編輯 | 編輯原始碼]

網路層負責在網路的多個鏈路上傳送資料包。資料鏈路層將資料從一個系統傳輸到另一個系統,而網路層將資料從端到端傳送。

為此,網路層在資料中新增資料包頭,其中包含

  • 源網路地址
  • 目標網路地址
  • 正在使用的網路協議版本

系統的網路地址不要與資料鏈路層使用的物理地址混淆。每個網路地址標識一個終端系統,而物理地址唯一標識連線到網路的每個系統。

在大型網路中,資料包透過一系列中間系統從一個終端系統傳送到另一個終端系統。每個中間系統透過跳躍式轉發幀將資料包從一個系統轉發到另一個系統,從而實現資料包的端到端傳遞。

傳輸層

[編輯 | 編輯原始碼]

傳輸層負責程序到程序的傳遞:它確保傳送方和接收方都知道如何處理傳送的資料包。它還負責確保資料包不會超過其允許的最大大小。

傳輸層頭包含

  • 傳送方埠地址
  • 接收方埠地址
  • 資料包序列號
  • 錯誤控制資訊

埠地址告訴接收方哪個應用程式負責傳送資料,以及哪個應用程式應該用於接收資料。一些常見的示例包括:埠:80,用於 HTTP;埠:20:21,用於 FTP;埠:25,用於 SMTP。

序列號在需要將大型訊息拆分為多個部分時使用。這將告訴接收方是否已收到所有資料包,以及以什麼順序排列資料包以組裝訊息。

傳輸層協議負責以下工作:

程序定址和複用
確定哪個程序發起了訊息,以及哪個程序應該接收訊息。(這是透過埠地址實現的)
段處理
為資料包分配序列號,以便在另一端重新組裝訊息。
連線控制
在傳送資料之前傳送控制訊號以建立連線。(如果協議是面向連線的,則適用此規則)
流量控制
確保快速傳送方在兩個不同系統之間傳送資料時不會壓倒慢速接收方。
錯誤控制
檢測和糾正傳輸過程中發生的錯誤。

應用層

[編輯 | 編輯原始碼]

應用層是使用者與網路之間的介面。它確定訊息的內容。

例如,當使用 HTTP 應用程式訪問網站時,訊息是一個 GET 請求。這意味著你想要從伺服器獲取資料。因此,傳送到傳輸層的訊息是 GET www.example.net 1.0

  • GET 是方法。
  • www.example.net 是目標的 URL。
  • 1.0 是所用協議的版本號。

使用 TCP/IP 協議套件

[編輯 | 編輯原始碼]

假設我們要訪問一個網站。為此,我們通常會在瀏覽器中鍵入 URL 或點選書籤。然後,應用程式協議 HTTP 會形成訊息:GET www.example.net 1.0␍␊

然後,此訊息被髮送到傳輸層,在那裡它很可能由 TCP 處理。TCP 將在必要時將訊息拆分成資料包,為每個資料包分配序列號,然後將資料包傳遞給網路層協議。如果使用的傳輸協議是面向連線的,則第一個資料包用於在傳送其他資料包之前建立連線。

為了讓網路層協議傳送訊息,它首先需要知道目標的網路地址。為了找到它,它使用域名系統 (DNS) 來查詢與 URL www.example.net 對應的地址。找到地址後,它將資料包頭附加到資料包上,以便它們最終到達正確的目的地。

資料鏈路層使用逐跳轉發將這些資料包從一個系統傳送到另一個系統。物理層是實際傳送資料的層。

在伺服器端,第一個資料包由網路層協議接收,然後轉發到傳輸層。如果使用的是面向連線的協議,伺服器將傳送一個確認以建立連線。連線建立後,其餘資料包將被髮送。

因此,請求被接收並重新組裝,所以伺服器需要對此做出響應。它以與客戶端向伺服器傳送請求的方式幾乎相同的方式將響應傳送回客戶端。

BitTorrent 協議

[編輯 | 編輯原始碼]

BitTorrent 協議是一種在分散的點對點模型中共享檔案的方式,與傳統的、更集中的客戶端和伺服器模型相反。

A peer distributes chunks to other peers. These peers distribute chunks to more peers until all of the peers have all of the chunks
BitTorrent 協議運作的動畫視覺化

客戶端和伺服器模型讓客戶端從中央伺服器下載檔案,而 BitTorrent 協議則有一組,這些群的成員互相提供定期的上傳和下載。這樣做的好處是,可以防止單個裝置不堪重負,因為所有裝置只與少數其他裝置共享資源。

為了使用 BitTorrent,一個對等節點將一個 .torrent 檔案載入到 BitTorrent 客戶端中,該客戶端提供與跟蹤器的連線。跟蹤器是一個裝置,它儲存與跟蹤器連線的對等節點列表,並跟蹤哪些對等節點擁有哪些檔案的哪些塊。跟蹤器不儲存檔案,它只跟蹤檔案。對等節點會定期更新跟蹤器,這樣它們就不會收到已經擁有的塊。

擁有所需檔案所有塊的對等節點稱為種子。種子將檔案塊分發給沒有所有檔案塊的對等節點。當一個對等節點獲得檔案的所有塊後,它就會成為一個新的種子,然後可以將更多塊傳送給其他對等節點。為了確保下載速度高,稀有塊的優先順序更高。

使用 BitTorrent 的主要優點是它具有良好的可擴充套件性。如果你有成千上萬的人試圖從同一個伺服器下載檔案,該伺服器可能會不堪重負並崩潰,從而降低下載速度;而使用 BitTorrent,更大的群實際上可以實現更快的下載速度。

應用程式層協議

[編輯 | 編輯原始碼]

超文字傳輸協議 (HTTP)

[編輯 | 編輯原始碼]

HTTP 是一個用於在網際網路上傳輸網頁的請求-響應協議。它基於客戶端-伺服器架構。與 HTTP 相關的兩種主要方法是:GET & POST

GET 用於從伺服器檢索資料。

POST 用於將資料放入伺服器的資料庫

檔案傳輸協議 (FTP)

[編輯 | 編輯原始碼]

FTP 是一種用於在客戶端-伺服器架構中傳輸檔案的協議。FTP 伺服器託管檔案,如果客戶端具有許可權,則可以上傳、下載或刪除檔案。

郵件協議 (SMTP & POP3)

[編輯 | 編輯原始碼]

簡單郵件傳輸協議 (SMTP) 用於將郵件傳送到郵件伺服器,郵局協議版本 3 (POP3) 用於從郵件伺服器接收郵件。

還有一種郵件協議,即網際網路訊息訪問協議 (IMAP),它有時用於替代 POP3,並執行大致相同的功能。

但是,郵件通常使用其他協議(例如 HTTP)傳送和接收。SMTP 仍然用於在郵件伺服器之間移動郵件。

電路交換、分組交換和路由器

[編輯 | 編輯原始碼]

電路交換

[編輯 | 編輯原始碼]

電路交換是一種在網路中建立連線的方式,它使用的是持續整個傳輸過程的專用鏈路。電話通話的運作方式通常就是這樣:電話透過固定電話線或無線電傳輸連線到交換局;該交換局連線到其他交換局;最後一個交換局連線到你要聯絡的人的電話。

在電路交換系統中,所有資料都透過相同的連線從一個節點傳輸到另一個節點。這意味著在通訊期間,這些鏈路不能被其他資料使用。

分組交換

[編輯 | 編輯原始碼]

分組交換是指在傳送資料時不建立電路,而是先將訊息拆分成資料包再發送。每個資料包透過網路獨立到達目的地。

電路交換的主要優點是,資料包可以沿著最有效的路徑路由到目的地,這使得傳輸速度更快,因為資料不會被迫進入速度慢或流量大的連線。

The packets in a packet-switched transmission all take different paths to reach the same destination
分組交換運作的動畫。

區域網

[編輯 | 編輯原始碼]

匯流排拓撲網路

[編輯 | 編輯原始碼]
Several computers are connected to the backbone cable
匯流排拓撲網路的示意圖

匯流排拓撲網路是指所有系統都透過一根公共主幹線進行多點連線。任何兩個端系統之間沒有直接連線。

  • 它需要最少的電纜長度。
  • 可以輕鬆新增新系統。
  • 匯流排拓撲結構具有簡單且可靠的架構。
  • 資料衝突的可能性更大,導致資料丟失。
  • 主幹電纜中的斷裂會影響整個網路。
  • 難以在匯流排網路中隔離故障。

星形拓撲網路

[編輯 | 編輯原始碼]
Many computers are connected to a central device
星形拓撲網路的示意圖

一個星形拓撲網路包含一箇中央裝置,所有終端系統都連線到它。

  • 可以輕鬆將新裝置新增到星形網路中。
  • 安全軟體(例如防火牆)可以儲存在中央裝置上,而不是儲存在每個單獨的終端系統上。
  • 如果一個節點或連線發生故障,不會影響其他連線。
  • 星形網路需要為每個連線到它的裝置提供一條電纜。
  • 如果中央裝置發生故障,整個網路就會失效。
  • 構建星形網路需要額外的硬體(例如集線器、交換機、伺服器),從而增加了成本。

無線網路

[編輯 | 編輯原始碼]

無線網路顧名思義,是不帶電線的網路。無線網路使用電磁輻射來傳輸資訊。

藍牙是一種使用短距離無線電波傳輸資訊的協議。藍牙是一種自組織網路:沒有定義的架構,連線是自發建立的。藍牙通常用於簡單的應用程式,例如使用無線鍵盤或滑鼠。藍牙裝置包含小型、低功耗無線電發射器和接收器。當裝置在其他藍牙裝置的範圍內時,它們會互相檢測,並可以配對或連線以共享資料或將硬體連線到計算機。

WiFi是一種無線區域網協議,它使用無線電波來傳輸資料。通常,WiFi 網路以無線接入點為中心,該裝置以無線方式與附近的裝置通訊,將它們連線到網際網路,因此不是自組織網路。

WiMAX(全球微波接入互操作性)是一種無線廣域網協議。它使用微波而不是無線電波來傳輸資料,無需鋪設地下電纜。這使得可以在原本需要大量電纜才能覆蓋的偏遠地區進行資料傳輸。

蜂窩網路

[編輯 | 編輯原始碼]
A collection of cells. Each cell has a base station at its centre. Adjacent cells have different frequencies
蜂窩網路的示意圖

蜂窩網路是一種使用小區覆蓋大地理區域的網路。每個小區的中心都是一個基站。無線裝置可以使用無線訊號連線到特定頻率的基站。相鄰小區使用不同的頻率,以便它們不會互相干擾。不相鄰小區可以使用相同的頻率。

區域網硬體

[編輯 | 編輯原始碼]

網路介面卡 (NIC)

[編輯 | 編輯原始碼]

網路介面卡是將系統連線到網路的必要元件。它允許系統與網路進行介面,並使用 MAC 地址唯一標識系統。

集線器

[編輯 | 編輯原始碼]

集線器是一種過時的物理層裝置,它將傳送到它的所有資料廣播到網路上的每個裝置。集線器因交換機和路由器的出現而被淘汰。

網橋是兩個網路之間的聯結器。它只在資料是傳送給另一個網路中的接收者時才將資料從一個網路傳送到另一個網路。網橋因交換機和路由器的出現而被淘汰。

交換機

[編輯 | 編輯原始碼]

交換機是一種資料鏈路層裝置,它將資料從源傳送到目標接收者。交換機使用訊息幀頭中記錄的接收者的 MAC 地址來實現這一點。

路由器

[編輯 | 編輯原始碼]

路由器是一種網路層裝置,它透過網路將資料沿著最有效的路線傳送。路由器可以分析網路流量,並選擇流量最少的路線來發送資料。

載波偵聽多路訪問/衝突檢測(CSMA/CD) 是一種用於乙太網連線的衝突檢測協議。它透過始終監測電線的電壓來工作。如果電線上正在傳輸幀,電線上的電壓就會發生變化。

如果在另一個系統試圖傳送幀時正在傳輸幀,則會在電線上傳送一個阻塞訊號,告訴雙方等待隨機時間後才能傳送下一幀。這可以確保在傳送下一幀時不會發生衝突。

CSMA/CD 僅用於系統之間的半雙工鏈路。對於全雙工單工鏈路,它是沒有必要的。

華夏公益教科書