05計算機網路相關概念

请叫我虾發表於2024-12-09

網路開發的兩大架構:CS架構,BS架構(c是client客戶端,s是server服務端,b是brower瀏覽器)

image
image

BS架構(Browser/Server Architecture)

定義

BS架構,即瀏覽器/伺服器架構,是一種基於Web的分散式計算模型,其中瀏覽器作為客戶端,伺服器作為服務端。在這種架構中,瀏覽器負責向伺服器傳送請求,並接收伺服器返回的響應。伺服器則負責處理瀏覽器的請求,並返回相應的結果。BS架構通常用於構建Web應用程式,如線上購物網站、社交媒體平臺、線上銀行系統等。

工作原理

  1. 客戶端傳送請求:使用者在瀏覽器頁面提交表單操作或點選連結等,向伺服器傳送請求,等待伺服器響應。
  2. 伺服器端處理請求:伺服器端接收並處理請求。Web伺服器解析請求後,呼叫相應的業務邏輯進行處理,並生成響應資料。
  3. 伺服器端傳送響應:伺服器端將處理後的響應資料(如網頁檔案、圖片、聲音等)返回給瀏覽器。
  4. 瀏覽器解釋執行HTML檔案:瀏覽器接收到響應資料後,解釋執行HTML檔案,呈現使用者介面供使用者檢視。

分層結構

BS架構通常分為三層:

  1. 表現層:即客戶端,主要負責使用者介面的顯示和使用者輸入的收集。由於使用者無需安裝客戶端,因此表現層面向的是大範圍的使用者,介面設計得相對簡單且通用。在B/S架構中,瀏覽器充當了客戶端的角色,使用者透過瀏覽器向伺服器傳送請求並接收伺服器的響應。
  2. 邏輯層:即Web伺服器,扮演著資訊傳送的角色。當使用者想要訪問資料庫時,會首先向Web伺服器傳送請求。Web伺服器收到請求後,會解析請求並呼叫相應的業務邏輯進行處理,然後向資料庫伺服器傳送訪問資料庫的請求。這個請求通常是以SQL語句的形式實現的。
  3. 資料層:即資料庫伺服器,負責儲存和管理系統的資料。當資料庫伺服器收到Web伺服器的請求後,會對SQL語句進行處理,並將返回的結果傳送給Web伺服器。Web伺服器再將收到的資料結果轉換為HTML文字形式傳送給瀏覽器,供使用者檢視。

優勢

  1. 簡化客戶端:由於所有的業務邏輯都由伺服器完成,客戶端只需負責介面的顯示和使用者輸入的收集,因此大大簡化了客戶端的開發和維護。
  2. 跨平臺性:B/S架構基於Web技術,因此具有跨平臺的特性。使用者只需透過瀏覽器即可訪問系統,無需考慮作業系統的差異。
  3. 易於維護和擴充套件:由於系統的核心部分集中在伺服器上,因此維護和擴充套件變得更加容易。只需對伺服器進行升級或新增新功能,即可實現系統的整體升級和擴充套件。
  4. 降低成本:B/S架構無需安裝客戶端軟體,因此降低了使用者的成本。同時,由於系統的開發和維護都集中在伺服器上,也降低了開發成本。

缺點

  1. 表現性較差:要達到C/S程式的程度需要一定的精力。
  2. 在速度和安全性設計上成本較高:B/S架構最大的問題。
  3. 客戶端伺服器端的互動是請求 - 響應形式:常常動態重新整理頁面,響應速度明顯減少(Ajax能夠一定程度上處理這個問題)。沒辦法實現分頁顯示,給資料庫訪問導致較大的壓力。
  4. 功能弱化:難以實現傳統形式下的特殊功能需要。

CS架構(Client/Server Architecture)

定義

CS架構,即客戶端/伺服器架構,是一種分散式計算模型,其中客戶端和伺服器之間透過網路進行通訊。在這種架構中,客戶端負責向伺服器傳送請求,並接收伺服器返回的響應。伺服器則負責處理客戶端的請求,並返回相應的結果。CS架構通常用於構建大型的網路應用程式,如Web應用程式、電子郵件系統、資料庫管理系統等。

工作原理

在C/S結構中,應用程式分為兩部分:伺服器部分和客戶端部分。伺服器部分是多個使用者共享的資訊與功能,執行後臺服務,如控制共享資料庫的操作等;客戶端部分為使用者所專有,負責執行前臺功能,在出錯提示、線上幫助等方面都有強大的功能,並且可以在子程式間自由切換。客戶端透過區域網與伺服器相連,接受使用者的請求,並透過網路向伺服器提出請求,對資料庫進行操作。伺服器接受客戶端的請求,將資料提交給客戶端,客戶端將資料進行計算並將結果呈現給使用者。伺服器還要提供完善安全保護及對資料完整性的處理等操作,並允許多個客戶端同時訪問伺服器,這就對伺服器的硬體處理資料能力提出了很高的要求。

分層結構

CS架構可以有兩層結構或三層結構:

  1. 兩層結構:客戶端層和資料庫層。這種分層結構簡單,易於理解,程式碼編寫相對容易。但存在可擴充套件性差、可維護性差、安全性差、穩定性差等缺點。例如,若資料庫地址發生變化,所有客戶端配置都需要修改;沒有任何安全保障,一旦中毒,後果不堪設想;程式碼邏輯混合在一起,bug容易增多,且不好復現。
  2. 三層結構:表示層、功能層和資料層。表示層是應用的使用者介面部分,用於檢查使用者從鍵盤等輸入的資料,並顯示應用輸出的資料;功能層相當於應用的本體,將具體的業務處理邏輯編入程式中;資料層就是資料庫管理系統,負責管理對資料庫資料的讀寫。三層結構具有易擴充套件、易維護、安全性高、穩定性強等優點,但程式碼複雜,需要較高的編碼水平,且不易遷移。

優勢

  1. 效能高效:由於客戶端直接與伺服器進行資料交換,沒有中間層的延遲,因此響應速度快,能夠處理大量資料和複雜業務邏輯。
  2. 介面豐富:客戶端可以提供高度定製化的使用者介面和操作體驗,支援更復雜的圖形介面和操作功能。
  3. 安全性較高:可以透過自定義協議和多層認證機制確保資料傳輸的安全性,尤其是在區域網環境中更為安全。
  4. 離線操作:在設計允許的情況下,客戶端可以在離線狀態下工作,之後同步資料到伺服器,適合無網路或網路不穩定環境。
  5. 協議靈活:開發者可以自由選擇或設計通訊協議,以適應特定需求,提高系統效率和安全性。
  6. 支援分散式、併發環境:C/S架構支援分散式、併發環境,可以有效地提高資源的利用率和共享程度。
  7. 伺服器端管理:伺服器集中管理資源,有利於許可權控制和系統安全。

缺點

  1. 高昂的維護成本:每次更新或升級軟體時,都需要在每個客戶端上單獨進行,部署和維護工作量大。
  2. 依賴性強:客戶端必須安裝特定軟體,對硬體和作業系統可能有特定要求,限制了使用的靈活性。
  3. 擴充套件性有限:對於遠端訪問或大規模分散式部署不夠友好,通常更適合於區域網環境。
  4. 資源消耗:客戶端需要相對較高的系統資源來執行應用程式,特別是在功能複雜的情況下。
  5. 使用者入門門檻:使用者需要安裝客戶端軟體,對於非技術使用者可能存在一定的使用障礙。
  6. 開發和測試成本高:由於客戶端的不同作業系統和硬體環境導致開發和測試成本較高。
  7. 表達能力較弱:在大多數C/S風格的系統中,構件之間的連線透過(遠端)過程呼叫,接近於程式碼一級,表達能力較弱。
  8. 跨平臺性差:C/S架構的客戶端軟體通常需要針對特定的作業系統進行開發,因此跨平臺性較差。
    B/S(Browser/Server,瀏覽器/伺服器)架構和C/S(Client/Server,客戶端/伺服器)架構是兩種常見的軟體架構模式,它們在現代軟體開發中都有廣泛的應用。雖然它們在設計理念、實現方式和應用場景上有所不同,但也存在一些聯絡和相互影響的關係。

一、B/S架構與C/S架構的對比

對比維度 C/S架構 B/S架構
互動方式 專用客戶端軟體互動 透過瀏覽器進行互動
維護更新 客戶端需單獨更新和維護 伺服器端統一更新,客戶端無需特別操作
安全性 安全性較高,可實現複雜的安全控制 安全性相對較低,需要透過各種安全措施加以強化
擴充套件性 擴充套件性較差,需在每個客戶端上進行軟體更新 擴充套件性強,只需在伺服器端部署新功能即可
適用場景 企業內部應用,客戶端功能複雜 廣泛用於Web應用開發和網際網路服務
對硬體環境要求 客戶端和伺服器端都需要一定硬體資源,客戶端需具備計算能力和儲存空間,伺服器端需高效能CPU、大容量記憶體等 客戶端只需一個瀏覽器,對硬體要求低,伺服器端需要較高計算能力和儲存空間
個性化能力
響應速度 較慢
跨平臺性 依賴客戶端軟體,跨平臺性較差 基於Web技術,跨平臺性強
軟體重用性 構件重用性不如B/S架構下的構件 構件相對獨立,重用性較好
系統維護 維護和管理難度較大,升級難 維護簡單,系統開銷小

二、B/S架構與C/S架構的聯絡

  1. B/S架構是對C/S架構的改進

    • B/S架構是隨著Internet技術的興起,對C/S架構的一種變化或者改進的架構。
    • 在B/S架構下,使用者工作介面透過WWW瀏覽器來實現,而C/S架構中客戶端通常有專門的使用者介面程式。例如,早期的企業管理系統多采用C/S架構,客戶端程式功能豐富但維護成本高,後來隨著Web技術發展,部分功能遷移到伺服器端,形成B/S架構,降低了客戶端維護成本。
  2. 二者都有客戶端 - 伺服器的互動模式

    • 無論是B/S架構還是C/S架構,都存在客戶端和伺服器端的互動。在C/S架構中,客戶端向伺服器傳送請求,伺服器處理請求並返回結果,如資料庫客戶端軟體向資料庫伺服器請求資料。在B/S架構中,瀏覽器作為客戶端向伺服器傳送請求,伺服器處理後將結果返回給瀏覽器,如使用者在瀏覽器中訪問網頁時,瀏覽器向Web伺服器請求頁面內容。
  3. 在某些場景下的融合應用

    • 一些大型企業應用可能會同時採用B/S和C/S架構的特點。例如,企業內部的辦公系統,對於一些核心業務功能,如資料處理、複雜的業務邏輯計算等,可能採用C/S架構來保證效能和安全性;而對於一些資訊查詢、簡單的流程審批等功能,可以採用B/S架構,方便員工透過瀏覽器隨時隨地訪問,提高系統的易用性和可維護性。
  4. 技術發展促使二者相互借鑑

    • 隨著技術的發展,B/S架構和C/S架構也在不斷演變和融合。例如,B/S架構中的一些技術,如Ajax(Asynchronous JavaScript and XML)技術,可以在一定程度上提高B/S架構應用的響應速度和使用者體驗,這是借鑑了C/S架構中客戶端本地處理的優勢;而C/S架構也在向更加模組化、可維護性強的方向發展,借鑑了B/S架構中伺服器端集中管理的優點。

B/S架構和C/S架構各有優缺點,沒有絕對的哪種更好,而是在不同的應用場景下各有優勢。以下是兩種架構的對比:

對比維度 B/S架構 C/S架構
維護成本 低,只需更新伺服器端 高,每次更新需更新所有客戶端
跨平臺性 強,只需瀏覽器支援 差,需針對不同作業系統開發
個性化能力 低,介面相對簡單 高,介面豐富,操作體驗好
響應速度 較慢,受網路影響大 快,客戶端處理能力強
安全性 較低,資料儲存在伺服器 高,可實現多層認證
適用場景 企業官網、電子商務平臺等 企業內部系統、金融交易系統等
開發成本 相對較低,無需開發多個客戶端版本 高,需針對不同客戶端開發
離線操作 差,依賴網路 強,可離線工作
對伺服器要求 高,資料處理在伺服器端 低,客戶端分擔資料處理
部署難度 低,只需部署伺服器端 高,需在每個客戶端安裝軟體

從上表可以看出,B/S架構在維護成本、跨平臺性、開發成本和部署難度上具有優勢,適合企業官網、電子商務平臺等場景;而C/S架構在個性化能力、響應速度、安全性和離線操作上表現更好,適合企業內部系統、金融交易系統等場景。

選擇建議

  1. B/S架構的適用場景

    • 當需要廣泛的跨平臺支援、較低的維護成本和快速部署時,B/S架構是更好的選擇。例如,一個面向全球使用者的線上教育平臺,使用者可以透過各種裝置和作業系統訪問,B/S架構能夠滿足這種需求。
  2. C/S架構的適用場景

    • 當需要高度個性化的使用者介面、快速響應速度、強大的離線功能和高安全性時,C/S架構更為合適。例如,銀行的網上銀行系統,需要處理大量的交易資料,對安全性和響應速度要求極高,C/S架構能夠更好地滿足這些需求。
  3. 綜合考慮

    • 在實際應用中,也可以考慮結合兩種架構的優點,採用混合架構。例如,對於一個大型企業的資訊系統,可以在內部使用C/S架構來保證資料處理的效率和安全性,同時提供B/S架構的外部介面,方便外部使用者訪問部分資訊。

基礎概念

#一臺主機有兩個重要標識:
(1)mac地址:標記一臺機器的實體地址  (不可變)
(2)ip 地址:#標記一臺機器的邏輯地址 (可變)

#IP地址是指網際網路協議地址(英語:Internet Protocol Address,又譯為網際協議地址),是IP Address的縮寫。ip地址用來標記網路上的每一臺主機,方便在收發資料,網路請求時能夠找到響應;
	
#ip地址分為兩種 ipv4 和 ipv6: 分類ipv4 和 ipv6:	
	ipv4地址是一個32位的二進位制數
	ipv6地址是一個128位的二進位制數
    
    ipv4:  以4段點分十進位制表示   X.X.X.X  => 範圍
        0.0.0.0 ~ 255.255.255.255 地址範圍2^32-1
    ipv6 : 以8段冒分十六進位制表示 X:X:X:X:X:X:X:X => 範圍
        0:0:0:0:0:0:0:0 ~ FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF 地址範圍2^128-1
    ip地址的最後一位0或者255 兩個數字不能用,一般最後一位0表達的是網段,255代表廣播地址

#網段 : 網段的作用,主要用來劃分同一區域裡的某些機器是否能夠互相通訊。在一個網段裡可以不透過因特網,直接對話
       判別的依據:如果IP地址和子網掩碼相與得到的值相同就是同一網段	   
	   
#內網 : 以下地址為預留地址,永遠不會被當做公網ip來分配
    192.168.0.0 - 192.168.255.255
    172.16.0.0 - 172.31.255.255
    10.0.0.0 - 10.255.255.255
    
#外網 :
	在任何地方都可以訪問的就是外網(排除防火牆的因素)
	
#子網掩碼:區分網段和主機
	255.255.255.0   / 255.255.0.0 /  255.0.0.0
	ip1:192.168.10.12  ip2:192.168.1.16
	
#埠:"埠"是英文port的意譯,是具體某個程式與外界通訊的出口。 取值範圍:0~65535 
      使用時至少8000以上    訪問地址加埠:192.168.2.1:8000
      
#區域網:在同一區域內由多臺計算機互聯形成通訊。【具有可重複的內網ip】
#廣域網:在不同區域內有多臺計算機互聯形成通訊。【具有唯一的公網ip】
#交換機:對同一網段的不同機器之間進行資料轉發的裝置     [每一臺機器和交換機相連,形成通訊]
#路由器:對不同網段的不同機器之間進行資料轉發的裝置     [每一個區域網和路由器相連,形成通訊]

#arp協議:每臺主機都有arp快取表 ,主要作用透過ip找mac的一個協議規則 
       【實現方式:透過交換機一次廣播,一次單播找到的】

osi七層模型

人們按照分工不同把網際網路協議從邏輯上劃分了層級: osi4層,osi5層,osi7層 三類模型
image

區域網模型

區域網內,各個主機的通訊

image
image

廣域網模型

廣域網內,各個主機的通訊

image

# # ### 1.網路開發兩大架構
# 網路開發兩大架構:<BS>和<CS>架構
# c是<client>,s是<server>,b是<brower>
#
# 早期資料互動的格式是<沒有網路>的
#
#
# 兩個檔案之間的資料互動需要透過<第三個檔案>
# a,b檔案同時和c檔案互動,
# a檔案把資料先存放c檔案中
# b檔案從c檔案取,反之亦然
#
# <socket> (<套接字>) 是一個<收發資料的工具>
#
# 有了網路之後
# a檔案中的資料,透過網路協議,轉化101010...二進位制進行傳送
# a檔案藉助socket傳送資料
# b檔案藉助socket接受資料
#
# # 二大架構
# c/s 架構 :
# 	c => client (客戶端)
# 	王者榮耀 微信 qq wow dnf ...
# 	s => server (服務端)
# 	天河三號 (百億億次)
#
# B/S 架構 :
# 	b => Brower  (瀏覽器)
# 	谷歌,火狐,360,ie
# 	透過輸入網址,訪問對方的伺服器,對方伺服器響應之後,把資料返回,瀏覽器透過返回的資料,渲染頁面,看到最後的結果
# 	s => server (服務端)
# 	一旦開啟,永不關機(除非當機)
#
# 在未來,更傾向於使用<B/s架構>,成為新的趨勢
# 小程式: 微信小程式, 支付寶小程式
# (1) 省去複雜下載安裝環節,節省手機電腦的空間
# (2) 因為手機帶來的便捷性,隨時隨地使用到想要的應用,提升使用者的滿意度
#
#
# # ### 2.網路的概念
# """
# 網段的作用:
# 			主要用來劃分同一區域裡的某些機器是否能夠互相通訊。
# 			在一個網段裡可以不同過因特網,直接對話
# 判別的依據:
# 			如果IP地址和子網掩碼相與得到的值相同就是同一網段
# """
# """
# 邏輯與
# 全真則真,一假則假
# 邏輯或
# 一真則真,全假則假
# """
#
# ip1: 192.168,11.251
# 子網掩碼:255.255.255.0
# 11000000  10101000  00001011  11111011
# 11111111  11111111  11111111  00000000
# 11000000  10101000  00001011  00000000  => 192.168.11.0 (網段)
#
# ip2: 192.168,12.35
# 子網掩碼:255.255.255.0
# 11000000  10101000  00001100  00100011
# 11111111  11111111  11111111  00000000
# 11000000  10101000  00001100  00000000  => 192.168.12.0 (網段)
#
#
# ip1: 192.168,11.251
# 子網掩碼:255.255.0.0
# 11000000  10101000  00001011  11111011
# 11111111  11111111  00000000  00000000
# 11000000  10101000  00000000  00000000  => 192.168.0.0 (網段)
#
# ip2: 192.168,12.35
# 子網掩碼:255.255.0.0
# 11000000  10101000  00001011  11111011
# 11111111  11111111  00000000  00000000
# 11000000  10101000  00000000  00000000  => 192.168.0.0 (網段)
# 下面的網路相同,意味著可以互相通訊;
#
# # ### (3) 埠
# """埠:具體某個程式與外界通訊的出口   取值範圍:0~65535  """
# 192.168.2.1:8000  訪問這個世界上任何一個電腦裡的任何一個軟體
# 自定義埠時,最好命名8000以上的埠號
# https://blog.csdn.net/l_smalltiger/article/details/81951824
#
#
# 20 : FTP檔案傳輸協議(預設資料口)
# 21 : FTP檔案傳輸協議(控制)
# 22 : SSH遠端登入協議
# 25 : SMTP伺服器所開放的埠,用於傳送郵件
# 80 : http用於網頁瀏覽,木馬Executor開放此埠
# 443: 基於TLS/SSL的網頁瀏覽埠,能提供加密和透過安全埠傳輸的另一種HTTP => HTTPS
# 3306:MySQL開放此埠
#
# # ### (4) osi 網路七層模型
# 應用層 (應用層,表示層,會話層)
# 	封裝資料:
# 		根據不同的協議,封裝不同格式的資料
# 		http  (超文字傳輸協議)
# 		HTTPS (加密傳輸的超文字傳輸協議)
# 		FTP   (檔案傳輸協議)
# 		SMTP  (調子郵件傳輸協議)
#
# 傳輸層:
# 	封裝埠:
# 		指定傳輸協議(TCP協議/UDP協議)
#
# 網路層:
# 	封裝ip:
# 		ipv4版本 / ipv6
#
# 資料鏈路層:
# 	封裝mac地址:
# 		指定mac地址(arp協議[ip->mac] / rarp協議[mac->ip])
#
# 物理層:
# 	打成資料包,變成二進位制的位元組流,透過網路進行傳輸
#
# # ### (5) 交換機與路由器 , 傳送資料包流程
# 交換機: 從下到上拆2層,拆到資料鏈路層
# 路由器: 從下到上拆3層,拆到網路層(得到對應的網段)
#
# arp協議: 透過ip -> mac
# rarp協議: 透過mac -> ip
# """arp協議整體是透過: 一次廣播 + 一次單播 實現"""
#
# # arp協議的完整過程:
# 	電腦a發現目標主機沒有mac,先傳送arp廣播包,把mac標記成全F的廣播地址
# 	交換機接受到arp的廣播包,進行從下到上拆包,拆2層,拆到資料鏈路層看到全F廣播地址,開始廣播
# 	把這個廣播包傳送給每一臺主機
# 	每臺主機得到廣播包後,都開始拆包,如果該資料包找尋的主機不是自己,自動捨棄
# 	路由器得到arp廣播包後,從下到上拆包,拆3層,拆到網路層,得到網段資訊
# 	透過路由器的對照資訊表,找到網段對應的閘道器(介面)
# 	對應閘道器的這臺交換機得到arp廣播包後,從下到上拆包,拆2層,發現全F廣播地址進行廣播
# 	資料庫主機收到廣播包後,依次從下到上拆包,發現自己是目標要找的那臺主機,
# 	把自己的ip->mac對照資訊封裝,變成arp響應包,傳送給對應的交換機
# 	交換機得到arp響應包之後,依次進行單播,返回給最終的原主機
# 	在回來的過程中,所有得到過相應arp廣播包的主機都會自動更新自己的arp解析表,方便下次使用
#
#
#
# # ### (6) TCP/UDP協議:
# # tcp
# TCP(Transmission Control Protocol)一種面向連線的、可靠的、傳輸層通訊協議(比如:打電話)
# 優點:可靠,穩定,傳輸完整穩定,不限制資料大小
# 缺點:慢,效率低,佔用系統資源高,一發一收都需要對方確認
# 應用:Web瀏覽器,電子郵件,檔案傳輸,大量資料傳輸的場景
#
#
# # udp
# UDP(User Datagram Protocol)一種無連線的,不可靠的傳輸層通訊協議(比如:發簡訊)
# 優點:速度快,可以多人同時聊天,耗費資源少,不需要建立連線
# 缺點:不穩定,不能保證每次資料都能接收到
# 應用:IP電話,實時視訊會議,聊天軟體,少量資料傳輸的場景
#
#
# # TCP 三次握手
# 	客戶端傳送一個請求訊息,與服務端建立連線
# 	服務端接受這個請求,發出響應訊息,回應客戶端,也要與客戶端a建立連線(看下a是否同意)
# 	客戶端接受服務端的響應訊息之後,傳送回覆訊息(表達同意,到此客戶端與服務端建立連線成功)
#
# # TCP 傳送資料
# 	每次傳送一次資料,都會對應一個回執訊息,如果傳送方沒有接受到回執訊息,那麼該資料包在傳送一次;
#
#
# # TCP 四次揮手
# 	客戶端向服務端傳送一個斷開連線請求(代表客戶端沒有資料給服務端)
# 	服務端接受請求,發出響應
# 	等到服務端所有資料傳送完畢之後
# 	服務端向客戶端傳送斷開連線請求
# 	客戶端接受請求,發出響應
#
# 	等到2msl,msl(最大報文段生存時間)這麼長時間之後
# 	客戶端與服務端徹底斷開連線

image
image

TCP/UDP協議:

TCP(Transmission Control Protocol)一種面向連線的、可靠的、傳輸層通訊協議(比如:打電話)
優點:可靠,穩定,傳輸完整穩定,不限制資料大小
缺點:慢,效率低,佔用系統資源高,一發一收都需要對方確認
應用:Web瀏覽器,電子郵件,檔案傳輸,大量資料傳輸的場景

UDP(User Datagram Protocol)一種無連線的,不可靠的傳輸層通訊協議(比如:發簡訊)
優點:速度快,可以多人同時聊天,耗費資源少,不需要建立連線
缺點:不穩定,不能保證每次資料都能接收到
應用:IP電話,實時視訊會議,聊天軟體,少量資料傳輸的場景

客戶端和服務端在建立連線時: 三次握手
客戶端和服務端在斷開連線時: 四次揮手
SYN 建立連線
ACK 確認響應
FIN 斷開連線

三次握手:

image

四次揮手:

MSL為最大報文段生存時間
預設規定MSL為2分鐘,但實際應用中常用的是30秒,1分鐘和2分鐘等。

image

整體縮圖

image

socket

socket的意義:通絡通訊過程中,資訊拼接的工具(中文:套接字)

image

關於計算機網路直接看謝希仁 計算機網路得了吧,這東西說不重要也挺重要的,後面
打算講這本書看完並且完成練習,之前在學校上課的時候都不好好聽,哈哈哈。

相關文章