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