張瑛
摘要:隨著網(wǎng)絡(luò)的各個(gè)核心部分業(yè)務(wù)量的提高,訪問量和數(shù)據(jù)流量的增長,其處理能力和計(jì)算強(qiáng)度也相應(yīng)增大,使得單一設(shè)備根本無法承擔(dān)。在這種情況下,我們可以使用負(fù)載均衡技術(shù)。它能將大量的并發(fā)訪問或數(shù)據(jù)流量分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上進(jìn)行分別處理,或是將單個(gè)重負(fù)載的運(yùn)算分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上做并行處理,從而使系統(tǒng)處理能力得到大幅度提高。本文從不同層次角度探討了負(fù)載均衡技術(shù)的實(shí)現(xiàn)方法,并給出了實(shí)際配置案例。
關(guān)鍵詞:負(fù)載均衡 鏈路聚合 均衡策略
TP393.09
Internet的規(guī)模每一百天就會增長一倍,客戶都希望能夠獲得不間斷可用性及較快的系統(tǒng)反應(yīng)時(shí)間,但是隨著網(wǎng)絡(luò)的業(yè)務(wù)量的提高、信息量的加重,單一設(shè)備根本無法承擔(dān)。在此情況下,如果扔掉現(xiàn)有設(shè)備去做大量的硬件升級,這樣將造成現(xiàn)有資源的浪費(fèi)。于是,負(fù)載均衡機(jī)制應(yīng)運(yùn)而生。
負(fù)載均衡(Load Balance)建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上,它提供了一種廉價(jià)有效透明的方法擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性。
根據(jù)OSI參考模型,一個(gè)網(wǎng)絡(luò)可以分為七個(gè)層面。我們從不同的層面著手,解決負(fù)載均衡的方法也就各異。在一般情況下,普遍都是通過傳輸鏈路聚合技術(shù)、借助更高層網(wǎng)絡(luò)交換技術(shù)和設(shè)置服務(wù)器集群策略等幾個(gè)角度來實(shí)現(xiàn)。
1.數(shù)據(jù)鏈路層均衡技術(shù)
傳輸鏈路的備份是提高網(wǎng)絡(luò)系統(tǒng)可用性的重要方法。目前的技術(shù)中,以生成樹協(xié)議(STP)和鏈路聚合(Link Aggregation)技術(shù)應(yīng)用最為廣泛。
1) 生成樹技術(shù)
生成樹協(xié)議(Spanning Tree)提供了鏈路間的冗余方案,允許交換機(jī)間存在多條鏈路作為主鏈路的備份。網(wǎng)絡(luò)創(chuàng)建時(shí),網(wǎng)絡(luò)的所有節(jié)點(diǎn)間可以存在多條路徑,生成樹算法計(jì)算出最佳路徑,在網(wǎng)絡(luò)中定義了一個(gè)樹,并且強(qiáng)制其他的路徑處于備用狀態(tài)。
當(dāng)發(fā)現(xiàn)生成樹中一部分網(wǎng)絡(luò)不可達(dá),或發(fā)生了某種變化時(shí),生成樹算法就會重新計(jì)算生成樹拓?fù)?,并且通過啟動備份路徑來重新建立連接。生成樹技術(shù)要防止局域網(wǎng)中產(chǎn)生環(huán)路,因?yàn)榄h(huán)路會使網(wǎng)絡(luò)發(fā)生故障。原始生成樹協(xié)議 IEEE 802.1D通常在50秒內(nèi)就可以恢復(fù)一個(gè)鏈接故障[融合時(shí)間=(2xForward_Delay)+Max_Age]。當(dāng)設(shè)計(jì)此協(xié)議時(shí),這種停機(jī)還是可接受的,但是當(dāng)前的關(guān)鍵任務(wù)應(yīng)用(如語音和視頻)卻要求更快速的網(wǎng)絡(luò)融合。為此,IEEE委員會開發(fā)了新標(biāo)準(zhǔn),在IEEE 802.1w中定義的快速生成樹協(xié)議(RSTP)以減少停機(jī)的時(shí)間。
2)鏈路聚合技術(shù)
鏈路聚合技術(shù)亦稱主干技術(shù)(Trunking)或捆綁技術(shù)(Bonding),其實(shí)質(zhì)是將兩臺設(shè)備間的數(shù)條物理鏈路“組合”成邏輯上的一條數(shù)據(jù)通路,稱為一條聚合鏈路,鏈路聚合成員彼此互為冗余和動態(tài)備份。實(shí)現(xiàn)的目標(biāo)是提高鏈路可用性、線性增加帶寬、分擔(dān)負(fù)載、實(shí)現(xiàn)自動配置、快速收斂、保證傳輸質(zhì)量、對上層用戶透明、向下兼容等等。交換機(jī)之間多條物理鏈路組成一條聚合鏈路。該鏈路在邏輯上是一個(gè)整體,內(nèi)部的組成和傳輸數(shù)據(jù)的細(xì)節(jié)對上層服務(wù)是透明的。
2.高層負(fù)載均衡技術(shù)技術(shù)
高層負(fù)載均衡技術(shù)通常操作于網(wǎng)絡(luò)的第四層或第七層。第四層負(fù)載均衡將一個(gè)Internet上合法注冊的IP地址映射為多個(gè)內(nèi)部服務(wù)器的IP地址,對每次TCP連接請求動態(tài)使用其中一個(gè)內(nèi)部IP地址,達(dá)到負(fù)載均衡的目的。第七層負(fù)載均衡控制應(yīng)用層服務(wù)的內(nèi)容,提供了一種對訪問流量的高層控制方式,適合對HTTP服務(wù)器群的應(yīng)用。
1)DNS負(fù)載均衡
DNS負(fù)載均衡技術(shù)是在DNS服務(wù)器中為同一個(gè)主機(jī)名配置多個(gè)IP地址,在應(yīng)答DNS查詢時(shí),DNS服務(wù)器對每個(gè)查詢將以DNS文件中主機(jī)記錄的IP地址按順序返回不同的解析結(jié)果,將客戶端的訪問引導(dǎo)到不同的機(jī)器上去,使得不同的客戶端訪問不同的服務(wù)器,從而達(dá)到負(fù)載均衡的目的。
在win2000 server下實(shí)現(xiàn)DNS負(fù)載均衡的過程是:
在DNS服務(wù)配置控制臺中打開相應(yīng)DNS 服務(wù)器的“屬性”,在“高級”選項(xiàng)卡的“服務(wù)器選項(xiàng)”中,選中“啟用循環(huán)”復(fù)選框。
打開正向搜索區(qū)域的相應(yīng)區(qū)域(如test.com),新建主機(jī)添加主機(jī) (A) 資源記錄,記錄如下:
www IN A 192.1.1.1
www IN A 192.1.1.2
www IN A 192.1.1.3
可以看到的區(qū)別是在NT下一個(gè)主機(jī)名“www”對應(yīng)多個(gè)IP地址記錄。
2)NAT負(fù)載均衡
NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換Network Address Translation)簡單地說就是將一個(gè)IP地址轉(zhuǎn)換為另一個(gè)IP地址,一般用于未經(jīng)注冊的內(nèi)部地址與合法的、已獲注冊的Internet IP地址間進(jìn)行轉(zhuǎn)換。
NAT負(fù)載均衡將一個(gè)外部IP地址映射為多個(gè)內(nèi)部IP地址,對每次連接請求動態(tài)地轉(zhuǎn)換為一個(gè)內(nèi)部服務(wù)器的地址,將外部連接請求引到轉(zhuǎn)換得到地址的那個(gè)服務(wù)器上,從而達(dá)到負(fù)載均衡的目的。
3)反向代理負(fù)載均衡
普通代理方式是代理內(nèi)部網(wǎng)絡(luò)用戶訪問internet上服務(wù)器的連接請求,客戶端必須指定代理服務(wù)器,并將本來要直接發(fā)送到internet上服務(wù)器的連接請求發(fā)送給代理服務(wù)器處理。反向代理(Reverse Proxy)方式是指以代理服務(wù)器來接受internet上的連接請求,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請求連接的客戶端,此時(shí)代理服務(wù)器對外就表現(xiàn)為一個(gè)服務(wù)器。
反向代理負(fù)載均衡技術(shù)是把將來自internet上的連接請求以反向代理的方式動態(tài)地轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的多臺服務(wù)器進(jìn)行處理,從而達(dá)到負(fù)載均衡的目的。
參考書目:
1. 華為3COM技術(shù)有限公司,華為3COM網(wǎng)絡(luò)學(xué)院教材,2004年12月,P255-259,P273-280
2. 丁宇,中文Windows server 2003網(wǎng)絡(luò)管理與網(wǎng)站構(gòu)建,冶金工業(yè)出版社,2005年2月,P150-210
3. Http://www1.r189.com/article/new02/200508/147.htm 使用DNS服務(wù)器實(shí)現(xiàn)負(fù)載均衡endprint