計算機網絡大綱

第一章 概述

1. 互聯網發展的三個階段

第一階段:從單個網絡 ARPANET 向互聯網發展的過程。
第二階段:形成了三級結構的互連網。分爲主幹網、地區網和校園網。主要覆蓋美國的大學和研究所。
第三階段:逐漸形成了多層次ISP結構的互連網。如下圖:

在這裏插入圖片描述

圖1-1 計算機多層次ISP結構和IXP

2. 計算機體系結構

在這裏插入圖片描述

圖1-2 計算機體系圖

各層的說明與作用:

1、應用層:體系中的最高層,比較熟悉的域名DNS協議,HTTP協議,SMTP協議都在該層。

2、運輸層:主機之間提供數據傳輸服務的,主要有TCP協和UDP協議。

3、網絡層:爲網上的不同主機提供通信服務,使用IP協議。

4、數據鏈路層:對網絡上的傳輸信息的檢錯與糾錯,協議最複雜的一層。

5、物理層:物理層爲設備之間的數據通信提供傳輸媒體及互連設備,爲數據傳輸提供可靠的環境。

參考:TCP協議
UDP協議

第二章 物理層

1. 通信基礎概念

1、通信系統分爲三大部分:源系統,傳輸系統和目的系統。

圖2-1 計算機通信模型

2、信道相關

信噪比(dB)= 10 lg(S/N)(dB)
香農公式:信道的極限傳輸速率C是
C = W log2(1 + S/N)(bit/s)
W是信道的貸款,單位是HZ,S是信道內所傳信號的平均功率,N是信道內的高斯噪音功率。

參考:信噪比和香農公式

第三章 數據鏈路層

1. 數據鏈路的基本概念

什麼是數據鏈路層?假設一個場景,主機H1,通過連接路由器R1,R2,R3然後到主機H2進行上網。

那麼,鏈路指的是一個結點到另一個結點之間的物理線路。
而數據鏈路除了物理線路之外,還包括了一系統通信的協議控制信息的傳輸。

2. 協議三個問題

1、封裝成幀
意思是在一段數據前後分別添加首部和尾部,比如首部爲SOH開始符,尾部爲EOT結束符。
當接收到某個數據出現差錯時,直接收到了SOH或者只有EOT說明數據已經不完整,
就可以很清楚的知道該重新發送哪個幀。如圖完整的幀包括:
SOH 裝在幀中的數據 EOT
2、透明傳輸
這裏透明的含義指的是將某些事物看起來像不存在一樣.
比如:幀數據中出現了像SOH和EOT控制字符相同的數據,數據傳輸過程中很可能錯誤的判斷幀的邊界,
從而導致幀數據的不完整。

於是,解決該問題的方法是:在在數據中出現SOH或EOT控制字符前加上轉義字符ESC,
這就保證了數據的透明傳輸。


3、差錯檢測
這個內容比較多,這裏不做深究,大概意思是:爲了保證數據的正確性,防止比特0變爲1等情況發生,
在數據後面添加冗餘碼。

具體請參考:
差錯檢測

第四章 網絡層

1. 網際協議IP

網際協議IP是TCP/IP協議中最重要的協議之一。與之相關的協議還有:
地址解析協議(ARP)
網際控制報文協議(ICMP)
網際組管理協議(IGMP)

2. 地址解析協議

APR協議的作用是:在已知IP地址時,需要找到相應的硬件地址。

每臺主機都有ARP高速緩存,裏面有各主機和路由器的IP地址到硬件地址的映射表。

同一局域網下

如果主機A向主機B發送IP數據報,首先從高速緩存中查詢是否有B的mac地址。
如果沒有,ARP進程發送廣播,而只有指定IP纔可接收到廣播進行回覆。

不同網絡下

主機A先找到本網下的路由器,接下來的工作右路由器完成

3. IP數據報格式

格式如下圖:

在這裏插入圖片描述

第五章 運輸層

1. UDP和TCP

用戶數據報協議UDP是無連接的,是面向報文的不可靠交付,還有首部開銷小、沒有阻塞控制等特點。
傳輸控制協議TCP是面向連接的,提供可靠交付等特點。

其中他們的頭部分別如下圖:

在這裏插入圖片描述

圖5-1 UDP頭部

在這裏插入圖片描述
圖5-2 TCP頭部

2. TCP連接

TCP把連接作爲最基本的抽象,每一條TCP連接有兩個端點。端點叫做套接字(Socket),
是由IP地址+端口號組成,比如127.0.0.1:8080。
注意:這裏的socket與訪問聯網的應用編程接口API socket不同。

3. TCP三次握手

過程:

(1)第一次握手:Client將標誌位SYN置爲1,隨機產生一個值seq=J,並將該數據包發送
給Server,Client進入SYN_SENT狀態,等待Server確認。
(2)第二次握手:Server收到數據包後由標誌位SYN=1知道Client請求建立連接,
Server將標誌位SYN和ACK都置爲1,ack=J+1,隨機產生一個值seq=K,並將該數據包發送給Client
以確認連接請求,Server進入SYN_RCVD狀態。
(3)第三次握手:Client收到確認後,檢查ack是否爲J+1,ACK是否爲1,如果正確則
將標誌位ACK置爲1,ack=K+1,並將該數據包發送給Server,Server檢查ack是否爲K+1
,ACK是否爲1,如果正確則連接建立成功,Client和Server進入ESTABLISHED狀態,完
成三次握手,隨後Client與Server之間可以開始傳輸數據了。

4. TCP四次揮手

過程:

(1)第一次揮手:Client發送一個FIN,用來關閉Client到Server的數據傳送,Client進入FIN_WAIT_1狀態。
(2)第二次揮手:Server收到FIN後,發送一個ACK給Client,確認序號爲收到序號+1(與SYN相同,一個FIN佔用一個序號),Server進入CLOSE_WAIT狀態。
(3)第三次揮手:Server發送一個FIN,用來關閉Server到Client的數據傳送,Server進入LAST_ACK狀態。
(4)第四次揮手:Client收到FIN後,Client進入TIME_WAIT狀態,接着發送一個ACK給Server,確認序號爲收到序號+1,Server進入CLOSED狀態,完成四次揮手。

第六章 應用層

1. 域名系統

域名系統是用來把人們容易記憶的機器名稱轉換爲IP地址

其中域名空間如下:

在這裏插入圖片描述

2. 文件傳輸協議

1. FTP

工作原理:

FTP使用客戶端服務器方式,一個服務器進程可以爲多個客戶端進程提供服務。
服務器進程右兩大部分組成,一個是主進程,負責接收新的請求,另外有若干個從屬進程,負責處理單個請求。

工作情況如圖:

在這裏插入圖片描述

2. TFTP

TCP/IP協議族中的TFTP是簡單文件傳輸協議,可用於UDP環境,而且佔用內存較小

3. DHCP

DHCP:動態主機配置協議,提供了即插即用聯網機制,保證了一臺計算機加入網絡時
獲取IP地址而不用手工配置。
例如:局域網自動分配IP地址。

4. P2P

P2P對等網絡。
各臺計算機功能相同,無主從之分。
整個網絡不依賴專有服務器。
消除了中間商,溝通更加便捷

具有以下特點:

非中心化;
可擴展性;
健壯性;
高性價比;
隱私保護;
負載均衡。

第七章 網絡安全

1. 數字簽名

過程:A向B發送消息時,先通過簽名算法對消息進行簽名加密。B收到消息後,執行
解密算法對消息進行解密,如果能還原出原消息,證明消息沒被篡改。


簽名的作用不是對消息進行保密,而是對消息進行覈實。

如圖示:

在這裏插入圖片描述

在生產中,比如微信支付,雙方確定一個固定隨機字符串key,防止被他人知道。
訂單發送過程前,先把訂單+key進行加密獲得sign,然後和訂單一同發送給微信端。
微信端接收到訂單詳情和sign,首先也對訂單+key進行加密獲取mySign,最後,
通過比較sign和mySign來確定訂單是否在傳輸過程中被篡改。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章