負載均衡就是一種計算機網(wǎng)絡(luò )技術(shù),用來(lái)在多個(gè)計算機(計算機集群)、網(wǎng)絡(luò )連接、CPU、磁碟驅動(dòng)器或其它資源中分配負載,以達到最佳化資源使用、最大化吞吐率、最小化響應時(shí)間、同時(shí)避免過(guò)載的目的。這種計算機技術(shù)的實(shí)現方式有多種。其中最常用的是四層和七層負載均衡。
一、負載均衡的分類(lèi)
1、二層負載均衡。負載均衡服務(wù)器對外依然提供一個(gè)VIP(虛IP),集群中不同的機器采用相同IP地址,但機器的MAC地址不一樣。當負載均衡服務(wù)器接受到請求之后,通過(guò)改寫(xiě)報文的目標MAC地址的方式將請求轉發(fā)到目標機器實(shí)現負載均衡。三層負載均衡和二層負載均衡類(lèi)似,負載均衡服務(wù)器對外依然提供一個(gè)VIP(虛IP),但集群中不同的機器采用不同的IP地址。當負載均衡服務(wù)器接受到請求之后,根據不同的負載均衡算法,通過(guò)IP將請求轉發(fā)至不同的真實(shí)服務(wù)器。四層負載均衡2、四層負載均衡。工作在OSI模型的傳輸層,由于在傳輸層,只有TCP/UDP協(xié)議,這兩種協(xié)議中除了包含源IP、目標IP以外,還包含源端口號及目的端口號。四層負載均衡服務(wù)器在接受到客戶(hù)端請求后,以后通過(guò)修改數據包的地址信息(IP 端口號)將流量轉發(fā)到應用服務(wù)器。
3、七層負載均衡。七層負載均衡工作在OSI模型的應用層,應用層協(xié)議較多,常用http、radius、DNS等。七層負載就可以基于這些協(xié)議來(lái)負載。這些應用層協(xié)議中會(huì )包含很多有意義的內容。比如同一個(gè)Web服務(wù)器的負載均衡,除了根據IP加端口進(jìn)行負載外,還可根據七層的URL、瀏覽器類(lèi)別、語(yǔ)言來(lái)決定是否要進(jìn)行負載均衡。
二、四層和七層兩者的區別
負載均衡設備也常被稱(chēng)為”四到七層交換機”,那么四層和七層兩者到底區別在哪里?
1、技術(shù)原理上的區別。
所謂四層負載均衡,也就是主要通過(guò)報文中的目標地址和端口,再加上負載均衡設備設置的服務(wù)器選擇方式,決定最終選擇的內部服務(wù)器。
以常見(jiàn)的TCP為例,負載均衡設備在接收到第一個(gè)來(lái)自客戶(hù)端的SYN 請求時(shí),即通過(guò)上述方式選擇一個(gè)最佳的服務(wù)器,并對報文中目標IP地址進(jìn)行修改(改為后端服務(wù)器IP),直接轉發(fā)給該服務(wù)器。TCP的連接建立,即三次握手是客戶(hù)端和服務(wù)器直接建立的,負載均衡設備只是起到一個(gè)類(lèi)似路由器的轉發(fā)動(dòng)作。在某些部署情況下,為保證服務(wù)器回包可以正確返回給負載均衡設備,在轉發(fā)報文的同時(shí)可能還會(huì )對報文原來(lái)的源地址進(jìn)行修改。
所謂七層負載均衡,也稱(chēng)為“內容交換”,也就是主要通過(guò)報文中的真正有意義的應用層內容,再加上負載均衡設備設置的服務(wù)器選擇方式,決定最終選擇的內部服務(wù)器。
以常見(jiàn)的TCP為例,負載均衡設備如果要根據真正的應用層內容再選擇服務(wù)器,只能先代理最終的服務(wù)器和客戶(hù)端建立連接(三次握手)后,才可能接受到客戶(hù)端發(fā)送的真正應用層內容的報文,然后再根據該報文中的特定字段,再加上負載均衡設備設置的服務(wù)器選擇方式,決定最終選擇的內部服務(wù)器。負載均衡設備在這種情況下,更類(lèi)似于一個(gè)代理服務(wù)器。負載均衡和前端的客戶(hù)端以及后端的服務(wù)器會(huì )分別建立TCP連接。所以從這個(gè)技術(shù)原理上來(lái)看,七層負載均衡明顯的對負載均衡設備的要求更高,處理七層的能力也必然會(huì )低于四層模式的部署方式。
2,應用場(chǎng)景的需求。
七層應用負載的好處,是使得整個(gè)網(wǎng)絡(luò )更”智能化“。例如訪(fǎng)問(wèn)一個(gè)網(wǎng)站的用戶(hù)流量,可以通過(guò)七層的方式,將對圖片類(lèi)的請求轉發(fā)到特定的圖片服務(wù)器并可以使用緩存技術(shù);將對文字類(lèi)的請求可以轉發(fā)到特定的文字服務(wù)器并可以使用壓縮技術(shù)。當然這只是七層應用的一個(gè)小案例,從技術(shù)原理上,這種方式可以對客戶(hù)端的請求和服務(wù)器的響應進(jìn)行任意意義上的修改,極大的提升了應用系統在網(wǎng)絡(luò )層的靈活性。很多在后臺,例如Nginx或者Apache上部署的功能可以前移到負載均衡設備上,例如客戶(hù)請求中的Header重寫(xiě),服務(wù)器響應中的關(guān)鍵字過(guò)濾或者內容插入等功能。
另外一個(gè)常常被提到功能就是安全性。網(wǎng)絡(luò )中最常見(jiàn)的SYN Flood攻擊,即黑客控制眾多源客戶(hù)端,使用虛假I(mǎi)P地址對同一目標發(fā)送SYN攻擊,通常這種攻擊會(huì )大量發(fā)送SYN報文,耗盡服務(wù)器上的相關(guān)資源,以達到Denial of Service(DoS)的目的。從技術(shù)原理上也可以看出,四層模式下這些SYN攻擊都會(huì )被轉發(fā)到后端的服務(wù)器上;而七層模式下這些SYN攻擊自然在負載均衡設備上就截止,不會(huì )影響后臺服務(wù)器的正常運營(yíng)。另外負載均衡設備可以在七層層面設定多種策略,過(guò)濾特定報文,例如SQL Injection等應用層面的特定攻擊手段,從應用層面進(jìn)一步提高系統整體安全。
現在的7層負載均衡,主要還是著(zhù)重于應用HTTP協(xié)議,所以其應用范圍主要是眾多的網(wǎng)站或者內部信息平臺等基于B/S開(kāi)發(fā)的系統。 4層負載均衡則對應其他TCP應用,例如基于C/S開(kāi)發(fā)的ERP等系統。
3,七層應用需要考慮的問(wèn)題。
1:是否真的必要,七層應用的確可以提高流量智能化,同時(shí)必不可免的帶來(lái)設備配置復雜,負載均衡壓力增高以及故障排查上的復雜性等問(wèn)題。在設計系統時(shí)需要考慮四層七層同時(shí)應用的混雜情況。
2:是否真的可以提高安全性。例如SYN Flood攻擊,七層模式的確將這些流量從服務(wù)器屏蔽,但負載均衡設備本身要有強大的抗DDoS能力,否則即使服務(wù)器正常而作為中樞調度的負載均衡設備故障也會(huì )導致整個(gè)應用的崩潰。
3:是否有足夠的靈活度。七層應用的優(yōu)勢是可以讓整個(gè)應用的流量智能化,但是負載均衡設備需要提供完善的七層功能,滿(mǎn)足客戶(hù)根據不同情況的基于應用的調度。最簡(jiǎn)單的一個(gè)考核就是能否取代后臺Nginx或者Apache等服務(wù)器上的調度功能。能夠提供一個(gè)七層應用開(kāi)發(fā)接口的負載均衡設備,可以讓客戶(hù)根據需求任意設定功能,才真正有可能提供強大的靈活性和智能性。
負載均衡服務(wù)支持四層和七層會(huì )話(huà)保持技術(shù),可以通過(guò)多種負載算法將請求轉發(fā)到不同上, 在后端云服務(wù)器宕機時(shí),會(huì )自動(dòng)將對應節點(diǎn)從負載均衡的轉發(fā)列表中移出,保證服務(wù)的高可用,可針對負載均衡規格、帶寬進(jìn)行變更操作,靈活滿(mǎn)足業(yè)務(wù)需求:http://wap.friendlycc.com.cn/
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站