我們常說的四層負載均衡與七層負載均衡,指的就是在這個 OSI 模型的哪一層進行請求轉(zhuǎn)發(fā)。因此要弄懂這個問題,我么你需要先弄懂 OSI 模型。 |
學過計算機網(wǎng)絡(luò)的同學都知道,我們工作、生活所使用的互聯(lián)網(wǎng),其實是通過一個網(wǎng)絡(luò)模型來進行數(shù)據(jù)傳輸?shù)?,這個網(wǎng)絡(luò)模型叫做:OSI 模型(Open Systems Interconnection model)。
而我們常說的四層負載均衡與七層負載均衡,指的就是在這個 OSI 模型的哪一層進行請求轉(zhuǎn)發(fā)。因此要弄懂這個問題,我么你需要先弄懂 OSI 模型。
OSI 模型
計算機網(wǎng)絡(luò) OSI 模型(Open Systems Interconnection model)是一種概念模型,它將電信或計算系統(tǒng)通信功能標準化,而不考慮其內(nèi)部結(jié)構(gòu)或技術(shù)。OSI 模型可以分為七層,如下圖所示。

通過 OSI 七層模型,我們就可以將數(shù)據(jù)從計算機的軟件,通過網(wǎng)線發(fā)送出去,最終被另一臺電腦接收。
四層負載均衡
四層負載均衡,指的是工作在 OSI 的第四層,即傳輸層,其通過 IP + 端口的方式進行路由轉(zhuǎn)發(fā)。其具體實現(xiàn)方式為:通過報文中的 IP 地址和端口,再加上負載均衡設(shè)備所采用的負載均衡算法,最終確定選擇后端哪臺下游服務(wù)器。
以 TCP 為例,客戶端向負載均衡發(fā)送 SYN 請求建立第一次連接。通過配置的負載均衡算法選擇一臺后端服務(wù)器,并且將報文中的 IP 地址信息修改為后臺服務(wù)器的 IP 地址信息,因此 TCP 三次握手連接是與后端服務(wù)器直接建立起來的。
常見的四層負載均衡設(shè)備有:F5、LVS 等。
七層負載均衡
七層負載均衡,指的是工作在 OSI 的第七層,即應(yīng)用層,其一般是基于請求 URL 地址的方式進行代理轉(zhuǎn)發(fā)。七層服務(wù)均衡在應(yīng)用層選擇服務(wù)器,只能先與負載均衡設(shè)備進行 TCP 連接,然后負載均衡設(shè)備再與后端服務(wù)器建立另外一條 TCP 連接通道。因此,七層設(shè)備在網(wǎng)絡(luò)性能損耗會更多一些。
常見的七層負載均衡設(shè)備有:Nginx 等。
總結(jié)
對比一下,它們之間主要的異同:
工作層級不同。四層負載均衡工作在傳輸層,七層負載均衡工作在應(yīng)用層。
建立連接不同。四層負載均衡,客戶端直接與后端服務(wù)器建立連接,七層負載均衡則作為中間用戶與上下游建立連接。
效率不同。四層負載均衡相對效率較高,七層負載均衡效率較低。
靈活性方面。七層負載均衡可以做更多的改造,例如可以對流量進行清洗,避免 DDOS 攻擊。而四層負載均衡,由于是客戶端與后端服務(wù)器直連,負載均衡設(shè)備無法介入。
四七層負載均衡的區(qū)別 | 《Linux就該這么學》 (linuxprobe.com)
好了,這篇文章的內(nèi)容發(fā)貨聯(lián)盟就和大家分享到這里,如果大家網(wǎng)絡(luò)推廣引流創(chuàng)業(yè)感興趣,可以添加微信:80709525 備注:發(fā)貨聯(lián)盟引流學習; 我拉你進直播課程學習群,每周135晚上都是有實戰(zhàn)干貨的推廣引流技術(shù)課程免費分享!