計算機組成原理簡單複習總結--未完待續

但求上進發表於2020-11-13

一、計算機的網路的體系結構

1、OSI的七層協議結構

在這裡插入圖片描述

2、TCP/IP的四層協議結構

這裡是引用

3、OSI和TCP/IP的折中–五層協議架構

這裡是引用

應用層–直接為使用者程式提供服務:

1) DNS域名解析協議:
解析域名對應的相關IP地址。維護了一個名字的快取記憶體,存放最近解析過的名字的相關記錄,可以大大的減少根域名伺服器的負荷。為了保證快取記憶體中的內容正確,應該設立一個計時器,設定超過合理時間的處理。

2)FTP檔案傳輸協議:
21為伺服器埠,埠20為客戶端的自己的傳輸埠。

3)HTTP超文字傳輸協議:
基於請求與響應無狀態的,應用層的協議,常基於TCP/IP協議傳輸資料。是明文傳輸。常用的埠號是80
常見的狀態碼:200請求成功,400請求有語法錯誤,404資源不存在,500伺服器錯誤,401未授權等

4)HTTPS協議:
是HTTP協議增強版;在HTTP協議的的基礎上增加了SSL加密傳輸協議。常用的埠號是443。SSL協議可以分為兩層,一層是建立在TCP可靠傳輸上的SSL記錄協議,主要負責加密,壓縮等。另一層則是建立在SSL記錄協議上的SSL握手協議,主要用於資料傳輸之前通訊雙方的校驗,包括身份認證,協商金鑰等。

運輸層–負責向兩個主機中程式之間的通訊提供通用資料服務:

由於主機可以同時執行多個程式,因此運輸層有複用和分用功能。

複用:多個應用層可以同時使用本層運輸層的服務。

分用:把收到的資訊分別交給上一層應用層對應的程式。

三次握手:
在這裡插入圖片描述
在這裡插入圖片描述
三次握手主要流程:
第一步、客戶端請求建立連結,傳送SYN包表示請求建立連結,並傳遞自己的序列號。
第二步、伺服器接收到SYN請求進行響應,也回應了SYN表示請求建立連結,同時傳送ACK=1表示確認收到了請求表示準備就緒,ack=x+1表示的是已經接收到上一次傳遞過來的資料。
第三步、客戶端接收到響應之後,也進行了回應,表示自己也準備就緒,這樣一來連結建立完成,可以開始傳輸資料了。

四次揮手主要流程:
在這裡插入圖片描述
第一步、
客戶端傳送FIN=1表示請求斷開連結,同時傳送自己的序列號。此時主動關閉TCP連結,停止傳送資料。
第二步、
服務端收到斷開連結的請求,此時會傳送一個ACK=1的訊號表示自己已經接收到了請求斷開的請求,併傳送自己的序列號v。此時A->B的連結通道已經關閉了,TCP連結處於半關閉狀態。這個時候B(伺服器)發資料,A還得接收。告訴A我準備關閉了,在這之前我得先處理一些手尾。
第三步、
伺服器傳送FIN=1表示手尾已經處理完了,已經關閉了連結,此時伺服器被動關閉。這個時候伺服器進入最後的確認階段。
第四步、
客戶端接收到了伺服器已經關閉了的請求後,傳送了相關確認資訊給伺服器,伺服器接收到最後一次的確認後,進入了完完全全的關閉狀態,不再接收任何來自A的資訊了,並且不會傳送資訊給A了。這個時候A進入了一個2MSL的等待時間,因為傳輸的過程中可能存在丟失,導致A傳送的確認收到伺服器端的關閉資訊伺服器並沒能及時接收,如果發生這種情況,伺服器會進行超時重傳。這一步的目的就是為了保證伺服器並沒有進行超時重傳。當經過了一整子的等待之後,如果沒收到伺服器的回應,則關閉連線。四次揮手到此結束。

停止等待策略:
即每次傳送一個分組,就停止傳送,等待對方確認,對方確認之後再繼續傳送。但是如果在傳輸的過程中出現了差錯,就有可能導致造成互相等待的現象。解決方案是ARQ超時重傳

超時重傳策略:
每傳送一個組,就設定一個超時計時器,規定時間內如果收到相應的確認,就撤銷該計時器。如果沒收到確認,就重發。因此,在傳送完一個分組後,必須暫時保留已傳送的分組的副本,以備重發。如圖所示:
在這裡插入圖片描述

流量控制–滑動視窗:
1、定義:
讓傳送方不要傳送的太快,給接收方足夠的時間來得及接收,避免不發生網路擁塞。
2、傳送視窗與接收視窗:
傳送方維持的一個視窗叫傳送視窗,允許在沒有接收到服務端的確認號下能傳送的最大數量的組。告知傳送方自己能一次性接收多少組的視窗為接收視窗。具體的流程如下所示:
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
3、流量控制具體流程:
在這裡插入圖片描述

擁塞控制(重點)–基於擁塞視窗(cwnd)的控制方法
1、出現擁塞的原因:
請求的資源數大於可以提供的資源數。塞車就是一個很好的例子,道路資源就這麼多,路上的車的數量很多,每一個都想盡快的使用車道去做自己的事情,就很有可能發生交通事故或者阻塞的現象,計算機網路也是如此。
2、與流量控制的區別:
流量控制更傾向於點對點的控制,主要針對的是使用者程式之間。而擁塞控制更傾向於全域性的控制,防止過多的資料注入到網路中,使網路中的路由器或鏈路不致過載。
3、擁塞控制採用的方法:
擁塞視窗並不是一個固定的視窗大小,它是動態的隨時隨刻變化的。屬於的是基於反饋的閉環控制方法,而不是一開始就事先面面俱到的開環控制方法。
4、擁塞控制演算法:
慢開始演算法
在不超過慢開始門限(ssth預設初始值為16)的基礎上,每經過一個傳輸輪次,就翻倍增長髮送視窗。如圖所示:
在這裡插入圖片描述
關於慢開始門限ssth,有:
當 cwnd < ssthresh 時,使用慢開始演算法。
當 cwnd > ssthresh 時,停止使用慢開始演算法而改用擁塞避免演算法。
當 cwnd = ssthresh 時,既可使用慢開始演算法,也可使用擁塞避免演算法。
擁塞避免演算法
加法線性增大,每經過一個傳輸輪次,傳送視窗就增加1;值得注意的是,無論是在慢開始階段還是擁塞避免階段,只要傳送方判斷出現了網路阻塞(重傳計時器超時),迅速的將ssth慢開始門限設定為Max(cwnd/2,2),同時將擁塞視窗重新設定為1。如下圖所示:
在這裡插入圖片描述
快重傳:
當出現傳送方連續收到了3個對同一報文段的重複確認。傳送方改為快重傳和快恢復演算法。
快重傳的目的是在於更早的重傳丟失的報文,而不是等到超時計時器。這樣就不會讓傳送方以為發生了網路阻塞的現象。提高了系統的吞吐率。
在這裡插入圖片描述
快恢復:
由於此時進行了快重傳,傳送方認為網路此時此刻只是個別報文丟失而已,沒有發生阻塞,這個時候就沒必要執行慢開始演算法,而是執行快恢復演算法。
此時。慢開始門限 ssth = 當前擁塞視窗 cwnd / 2 ;新擁塞視窗 cwnd = 慢開始門限 ssthresh;然後執行擁塞避免演算法。
在這裡插入圖片描述

TCP傳輸控制協議(重點):
1、一種有連結協議。傳輸之前需要建立通訊。是可靠的傳輸服務。
2、套接字socket:IP+埠號;
3、可靠的原理:三次握手、四次揮手、停止等待、ARQ超時重傳、擁塞控制。

UDP使用者資料包協議:
一種無連線協議,傳輸資料之前不需要建立連結。盡最大努力交付。

網路層–把運輸層的報文段或資料封裝成IP資料包:

分組交換網上的不同主機提供通訊服務。

資料鏈路層:

兩個相鄰結點傳輸資料時,將網路層交下來的資料包封裝成幀

物理層:

所傳資料單位是位元:透明傳輸位元流

4、三者具體對應關係

這裡是引用

5、資料在各層的傳遞

這裡是引用

相關文章