四層負載均衡和七層負載均衡的區別

2022-06-24 12:51:10 字數 1699 閱讀 2010

關於負載均衡,經常聽到四層負載均衡和七層負載均衡的說法,他們之間有什麼關係和區別呢,今天就簡單總結概括下。

用一句話來說,四層負載均衡就是工作在計算機網路osi七層分層的第四層(傳輸層)的,七層負載軍和則是工作在第七層(應用層)的

也就是說,四層負載均衡是基於ip+埠的負載均衡,七層負載均衡是基於url等應用層資訊的負載均衡。

同理,還有基於mac位址的二層負載均衡和基於ip位址的三層負載均衡。

在實際應用中,比較常見的就是四層負載及七層負載。這裡也重點說下這兩種負載。

所謂的四到七層負載均衡,就是在對後台的伺服器進行負載均衡時,依據四層的資訊或七層的資訊來決定怎麼樣**流量。 比如四層的負載均衡,就是通過發布三層的ip位址(vip),然後加四層的埠號,來決定哪些流量需要做負載均衡,對需要處理的流量進行nat處理,**至後台伺服器,並記錄下這個tcp或者udp的流量是由哪台伺服器處理的,後續這個連線的所有流量都同樣**到同一臺伺服器處理。七層的負載均衡,就是在四層的基礎上(沒有四層是絕對不可能有七層的),再考慮應用層的特徵,比如同乙個web伺服器的負載均衡,除了根據vip加80埠辨別是否需要處理的流量,還可根據七層的url、瀏覽器類別、語言來決定是否要進行負載均衡。舉個例子,如果你的web伺服器分成兩組,一組是中文語言的,一組是英文語言的,那麼七層負載均衡就可以當使用者來訪問你的網域名稱時,自動辨別使用者語言,然後選擇對應的語言伺服器組進行負載均衡處理。

負載均衡器通常稱為四層交換機七層交換機。那麼四層和七層兩者到底區別在**?

1. 技術原理區別

以常見的tcp為例,負載均衡裝置在接收到第乙個來自客戶端的syn 請求時,即通過上述方式選擇乙個最佳的伺服器,並對報文中目標ip位址進行修改(改為後端伺服器ip),直接**給該伺服器。tcp的連線建立,即三次握手是客戶端和伺服器直接建立的,負載均衡裝置只是起到乙個類似路由器的**動作。在某些部署情況下,為保證伺服器回包可以正確返回給負載均衡裝置,在**報文的同時可能還會對報文原來的源位址進行修改。

四層和七層交換機原理

以常見的tcp為例,負載均衡裝置如果要根據真正的應用層內容再選擇伺服器,只能先**最終的伺服器和客戶端建立連線(三次握手)後,才可能接受到客戶端傳送的真正應用層內容的報文,然後再根據該報文中的特定字段,再加上負載均衡裝置設定的伺服器選擇方式,決定最終選擇的內部伺服器。負載均衡裝置在這種情況下,更類似於乙個**伺服器。負載均衡和前端的客戶端以及後端的伺服器會分別建立tcp連線。所以從這個技術原理上來看,七層負載均衡明顯的對負載均衡裝置的要求更高,處理七層的能力也必然會低於四層模式的部署方式。

2.應用場景區別

七層因為可以**任意修改和處理使用者的請求,所以可以使整個應用更加智慧型化和安全,代價就是設計和配置會更複雜。所以是否有必要使用七層負載均衡是乙個需要權衡的問題。

現在的7層負載均衡,主要還是著重於應用http協議,所以其應用範圍主要是眾多的**或者內部資訊平台等基於b/s開發的系統。 4層負載均衡則對應其他tcp應用,例如基於c/s開發的erp等系統。

**:

四層負載均衡和七層負載均衡

第一,技術原理上的區別。所謂四層負載均衡,也就是主要通過報文中的目標位址和埠,再加上負載均衡裝置設定的伺服器選擇方式,決定最終選擇的內部伺服器。以常見的 tcp為例,負載均衡裝置 在接收到第乙個來自客戶端的 syn請求時 即通過上述方式選擇乙個最佳的伺服器,並對報文中目標 ip位址進行修改 改為後端...

負載均衡總結 四層負載均衡和七層負載均衡的區別

一 四層負載和七層負載的對比 在osi七層模型的第4層工作,即tcp層,其不會理解上層的協議如 http ftp等.由上圖,在四層負載裝置中,把client傳送的報文目標位址 原來是負載均衡裝置的ip位址 根據均衡裝置設定的選擇web伺服器的規則選擇對應的web伺服器ip位址,這樣client就可以...

四層負載均衡與七層負載均衡

1 四層負載均衡與七層負載均衡區別 個人理解 網路七層協議包括,應用層 第七層 表示層,會話層,傳輸成 第四層 網路層,資料鏈路層,物理層。所謂的七層和四層負載均衡就是指基於哪一層做的負載均衡。nginx反向 就是一種七層負載均衡,可以通過使用者的請求url來進行劃分 lvs就屬於四層負載均衡,是基...