1. 程式人生 > 其它 >【網路基礎-01】七層網路模型及對應協議詳解

【網路基礎-01】七層網路模型及對應協議詳解

一、什麼是七層網路模型

七層模型,亦稱OSI(Open System Interconnection)。參考模型是國際標準化組織(ISO)制定的一個用於計算機或通訊系統間互聯的標準體系,一般稱為OSI參考模型或七層模型。

它是一個七層的、抽象的模型體,不僅包括一系列抽象的術語或概念,也包括具體的協議。

二、網路模型的優點

  1. 減輕了問題的複雜程度,方便錯誤定位,便於查詢糾錯;
  2. 在各層分別定義了標準介面,使具備相同對等層的不同網路裝置能實現互操作;
  3. 有效刺激網路技術更新;
  4. 有利於研究和教學。

三、TCP-三次握手和四次揮手區別

三次握手(three-way handshaking)

1.背景:TCP位於傳輸層,作用是提供可靠的位元組流服務,為了準確無誤地將資料送達目的地,TCP協議採納三次握手策略。

2.原理:

        1)傳送端首先發送一個帶有SYN(synchronize)標誌地資料包給接收方。

        2)接收方接收後,回傳一個帶有SYN/ACK標誌的資料包傳遞確認資訊,表示我收到了。

        3)最後,傳送方再回傳一個帶有ACK標誌的資料包,代表我知道了,表示’握手‘結束。

通俗的說法

       1)Client:嘿,李四,是我,聽到了嗎?

       2)Server:我聽到了,你能聽到我的嗎?

       3)Client:好的,我們互相都能聽到對方的話,我們的通訊可以開始了。

 

 四次揮手(Four-Way-Wavehand)

1.意義:

當被動方收到主動方的FIN報文通知時,它僅僅表示主動方沒有資料再發送給被動方了。但未必被動方所有的資料都完整的傳送給了主動方,所以被動方不會馬上關閉SOCKET,它可能還需要傳送一些資料給主動方後,再發送FIN報文給主動方,告訴主動方同意關閉連線,所以這裡的ACK報文和FIN報文多數情況下都是分開發送的。

2.原理:

   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)Client:我所有東西都說完了

  2)Server:我已經全部聽到了,但是等等我,我還沒說完

  3)Server:好了,我已經說完了

  4)Client:好的,那我們的通訊結束l

 

 

四、TCP與UDP的區別:

1、基於連線與無連線;

2、對系統資源的要求(TCP較多,UDP少);

3、UDP程式結構較簡單;

4、流模式與資料報模式 ;

5、TCP保證資料正確性,UDP可能丟包、不可靠;

6、TCP保證資料順序,UDP不保證。