實(shí)現(xiàn)負(fù)載均衡功能的淺析
負(fù)載均衡技術(shù)應(yīng)用于很多領(lǐng)域,那么對(duì)于軟件方面,有些軟解也是具備負(fù)載均衡功能的。那么,我們就為大家介紹一下如何實(shí)現(xiàn)防火墻的負(fù)載均衡功能如何設(shè)置實(shí)現(xiàn)。具體內(nèi)容請(qǐng)見(jiàn)下文。
一、TOS產(chǎn)品負(fù)載均衡功能實(shí)現(xiàn)簡(jiǎn)介:
TOS產(chǎn)品負(fù)載均衡功能實(shí)現(xiàn)的是一種服務(wù)器集群技術(shù),防火墻可以對(duì)訪問(wèn)服務(wù)器的請(qǐng)求進(jìn)行處理,根據(jù)服務(wù)器的狀況把請(qǐng)求調(diào)度到服務(wù)器集群中的某一臺(tái)真實(shí)服務(wù)器上去,從而實(shí)現(xiàn)了大流量下服務(wù)請(qǐng)求連接的負(fù)載分擔(dān)。
在這種集群服務(wù)器的環(huán)境下,客戶端只能看到一臺(tái)虛擬的服務(wù)器,對(duì)外表現(xiàn)為一臺(tái)服務(wù)器。TOS設(shè)備能無(wú)縫地將網(wǎng)絡(luò)請(qǐng)求調(diào)度到真實(shí)服務(wù)器上,從而使得服務(wù)器集群的結(jié)構(gòu)對(duì)客戶是透明的??蛻粼L問(wèn)集群系統(tǒng)提供的網(wǎng)絡(luò)服務(wù)就像訪問(wèn)一臺(tái)高性能、高可用的服務(wù)器一樣??蛻舫绦虿皇芊?wù)器集群的影響,不需作任何修改。
而且,TOS設(shè)備的這種集群技術(shù)具有一定的備份機(jī)制,即可以配置一臺(tái)“虛擬服務(wù)器”作為其他“虛擬服務(wù)器”的備份,如果主服務(wù)器組宕掉了,作為備份的服務(wù)器組可以接替它提供相同的服務(wù)。
二、負(fù)載均衡的應(yīng)用:
在高速網(wǎng)絡(luò)中,服務(wù)器如果不具備大量并發(fā)訪問(wèn)能力,必然成為提供服務(wù)的瓶頸。如果客戶的增多導(dǎo)致通信量超出服務(wù)器所能承受的范圍,此服務(wù)器必然是一臺(tái)宕機(jī)。因此可以考慮將多個(gè)相同的服務(wù)器連成一個(gè)系統(tǒng),并通過(guò)軟件技術(shù)把連接請(qǐng)求按某一種算法分給這個(gè)服務(wù)器群組,那么這個(gè)系統(tǒng)就具有了處理大量請(qǐng)求的能力。這就可以用負(fù)載均衡來(lái)實(shí)現(xiàn)。
在這種情況下,每個(gè)主機(jī)運(yùn)行一個(gè)所需服務(wù)器程序的獨(dú)立拷貝,諸如Web、FTP、Telnet或e-mail服務(wù)器程序。對(duì)于流量較大的服務(wù)如FTP或Web服務(wù)而言,程序的一個(gè)拷貝運(yùn)行在群集內(nèi)所有的主機(jī)上,通過(guò)負(fù)載均衡把工作負(fù)載在這些主機(jī)間進(jìn)行分配。而對(duì)于其他服務(wù)(例如e-mail),需要一臺(tái)主機(jī)處理就夠了,針對(duì)這些服務(wù),網(wǎng)絡(luò)負(fù)載均衡允許網(wǎng)絡(luò)通訊量流到一個(gè)主機(jī)上,并在該主機(jī)發(fā)生故障時(shí)將通訊量移至其他主機(jī)。
以上功能一般可以通過(guò)負(fù)載均衡器來(lái)實(shí)現(xiàn)。而在TOS防火墻中,我們已經(jīng)集成了這種負(fù)載均衡功能并得到了很好的實(shí)現(xiàn)。作為用戶來(lái)說(shuō),既可以通過(guò)防火墻來(lái)保證內(nèi)部服務(wù)器的安全性,又可以在一定程度上節(jié)省資金,省去購(gòu)買(mǎi)專(zhuān)門(mén)的負(fù)載均衡器的費(fèi)用,應(yīng)該是一個(gè)比較理想的選擇。
三、TOS負(fù)載均衡的技術(shù)實(shí)現(xiàn):
TOS產(chǎn)品負(fù)載均衡功能是通過(guò)NAT(Network Address Translation)技術(shù)來(lái)實(shí)現(xiàn)的。TOS產(chǎn)品作為地址轉(zhuǎn)換網(wǎng)關(guān),可以將一個(gè)外部IP地址映射為多個(gè)內(nèi)部IP地址,對(duì)每次連接請(qǐng)求動(dòng)態(tài)使用其中一個(gè)內(nèi)部地址,達(dá)到負(fù)載均衡的目的。
TOS對(duì)連接請(qǐng)求進(jìn)行分配的方式稱為均衡算法,目前TOS產(chǎn)品支持的均衡算法有6種。用戶可以根據(jù)不同的需求配置均衡算法,以便適應(yīng)不同的環(huán)境,將服務(wù)請(qǐng)求合理地分配給群組中的服務(wù)器進(jìn)行處理。
1.TOS支持的6種均衡算法如下:
a)輪叫(Round Robin):即把服務(wù)請(qǐng)求輪流地分配到群組中的服務(wù)器上去,每臺(tái)真實(shí)服務(wù)器分配到需要處理的服務(wù)任務(wù)的幾率都是一樣的;
b)加權(quán)輪叫(Weighted Round Robin):根據(jù)不同服務(wù)器的處理能力,可以給處理能力強(qiáng)的服務(wù)器配置相對(duì)較大的權(quán)值,TOS會(huì)根據(jù)權(quán)值分配給此服務(wù)器較重的服務(wù)處理任務(wù);
c)最少鏈接(Least Connections):TOS根據(jù)連接表的情況,把新的服務(wù)請(qǐng)求連接分配給當(dāng)前連接較少的服務(wù)器,避免出現(xiàn)部分服務(wù)器很忙而另外一些很空閑的情況;
d)加權(quán)最少鏈接(Weighted Least Connections):除了考慮服務(wù)器當(dāng)前的處理連接數(shù)目,還考慮服務(wù)器的處理能力,通過(guò)給服務(wù)器配置不同的權(quán)值來(lái)體現(xiàn)。比如說(shuō):
A
w=40
當(dāng)前連接數(shù)5;
B
w=10
當(dāng)前連接數(shù)5,則當(dāng)有新的連接請(qǐng)求時(shí),是這么分配新連接的:要保證二者的連接比是4:1,A的連接漲到20,為B連接數(shù)的4倍,然后B漲到6,接著A漲到24,為6的四倍,28——>7,32——>8,36——>9,……
e)源地址散列(Source Hashing):根據(jù)服務(wù)請(qǐng)求連接的源IP地址進(jìn)行hash運(yùn)算,把此連接調(diào)度到某臺(tái)真實(shí)服務(wù)器上去;
f)目標(biāo)地址散列(Destination Hashing):根據(jù)服務(wù)請(qǐng)求的目的IP地址進(jìn)行hash運(yùn)算,把連接調(diào)度到某臺(tái)真實(shí)服務(wù)器上去。源和目的hash算法適用于大流量時(shí)服務(wù)請(qǐng)求連接的IP較多叫分散的情況。
2.TOS對(duì)真實(shí)服務(wù)器的探測(cè):
真實(shí)主機(jī)有宕機(jī)或超負(fù)載等情況下,不能繼續(xù)將請(qǐng)求調(diào)度到該服務(wù)器。TOS設(shè)備會(huì)根據(jù)配置,定時(shí)探測(cè)真實(shí)服務(wù)器的實(shí)際情況,并根據(jù)情況重新分配負(fù)載。如果服務(wù)器宕機(jī)或無(wú)相應(yīng),會(huì)將服務(wù)器標(biāo)示為不可用,在均衡過(guò)程中,不計(jì)算該服務(wù)器;反之,不可用的服務(wù)器變?yōu)榭捎煤?,均衡?dòng)作會(huì)按照新的虛擬服務(wù)器組成進(jìn)行分配。
TOS中實(shí)現(xiàn)的探測(cè)算法:
1.不做探測(cè);
2.主機(jī)是否宕機(jī);
3.主機(jī)服務(wù)是否可用。