基于DNS的GSLB工作原理
下面我們對基于DNS的GSLB的工作原理進行簡單介紹。
上圖中,中心控制節(jié)點配置一臺GSLB Controller及數(shù)臺指定域名(abc.com)的授權(quán)DNS服務(wù)器,GSLB Controller除了進行GSLB控制外還可以對DNS服務(wù)器及其他應(yīng)用服務(wù)器進行負載均衡。設(shè)置2個站點(以中國電信和中國網(wǎng)通為例)提供應(yīng)用服務(wù)。其工作流程如下:
1) 用戶發(fā)起請求訪問http://www.abc.com,關(guān)于www.abc.com 的DNS請求被送往 Local DNS服務(wù)器;
2) Local DNS通過根DNS服務(wù)器查詢到abc.com 的授權(quán)DNS服務(wù)器,Local DNS向授權(quán)DNS服務(wù)器發(fā)DNS請求。
3) GSLB Controller 截獲DNS服務(wù)器返回的應(yīng)答,并基于一組策略選擇最佳的站點VIP 地址,返回給Local DNS服務(wù)器。
GSLB Controller也可以根據(jù)事先定義的策略返回CNAME記錄,在大規(guī)模的多級GSLB設(shè)計中會用到這種方式。Local DNS會遞歸發(fā)送DNS請求到負責(zé)指定CNAME域的下一級GSLB Controller。
4) Local DNS服務(wù)器返回該DNS應(yīng)答到用戶。
5) 用戶根據(jù)解析到的IP地址建立連接進行正常訪問。
從GSLB處理流程可以看出,其核心在GSLB策略。接下來簡單介紹一下常用的一些GSLB策略。
1) 各內(nèi)容站點的“健康狀況”
GSLB Controller對各內(nèi)容站點負載均衡設(shè)備上定義的VIP或服務(wù)器(沒有本地負載均衡的情況)進行第四層TCP/UDP健康檢查和第七層應(yīng)用健康檢查。未能通過健康檢查的站點不會被選為最佳的內(nèi)容節(jié)點。
2) 地理區(qū)域或用戶自定義區(qū)域
一個區(qū)域為若干條IP地址前綴。根據(jù)用戶本地DNS的IP地址,將特定IP范圍的用戶優(yōu)先分配到某個通過健康檢查的站點。值得一提的是,由于DNS本身的工作原理所限,GSLB Controller只能看到用戶本地DNS的IP地址,而不是用戶終端的IP地址。當(dāng)用戶使用錯誤的本地DNS(如教育網(wǎng)用戶配置網(wǎng)通的DNS服務(wù)器)時,GSLB Controller返回的DNS應(yīng)答將不是最佳的站點。這是基于DNS的GSLB的一個弱點,但由于絕大部分運營商現(xiàn)在限制其他運營商的客戶使用自己的DNS,出現(xiàn)這種錯誤配置的比例非常小。
3) IP地址權(quán)重
可以為DNS應(yīng)答中的每個IP地址分配權(quán)重,權(quán)重決定與其他候選IP相比分配到該IP的流量比例。
4) 站點(Site)權(quán)重
可以為每個Site分配權(quán)重,權(quán)重決定與其他候選Site相比分配到該Site的流量比例。
5) 會話能力閾值
通過廠商自由的GSLB協(xié)議,GSLB Controller可以獲得每個站點負載均衡設(shè)備當(dāng)前可用會話數(shù)和會話表大小的最大值,當(dāng)前會話數(shù)/最大會話數(shù)比值超過定義的閾值時,該站點不再被選擇。
6) 活動服務(wù)器
指一個GSLB節(jié)點綁定到一個VIP上的活動真實服務(wù)器數(shù)量??梢耘渲貌呗詢?yōu)先選擇活動服務(wù)器最多的IP地址。
7) 往返時間(RTT)
RTT策略是基于區(qū)域之外最常用的策略。有兩種模式的RTT測量:Active RTT測量與Passive RTT測量。在實際部署中,由于網(wǎng)絡(luò)限制和性能原因,Active RTT往往無法使用,Passive RTT更實用一些。
a) Active RTT 測量
- 當(dāng)GSLB Controller收到來自LDNS的DNS請求時,GSLB Controller會通知所有站點負載均衡設(shè)備對該LDNS進行RTT測量。根據(jù)采集到的RTT值,GSLB Controller會選擇RTT值最小的站點的VIP返回給LDNS。
- 由于Active RTT采用DNS Query或ICMP進行RTT測量,在有些網(wǎng)絡(luò)中可能會被安全策略所過濾而無法工作。
- Active RTT測量會產(chǎn)生額外的DNS Query或ICMP流量,在有些網(wǎng)絡(luò)中用戶不希望有太多類似的非用戶流量。
b) Passive RTT測量
- Passive RTT測量不會主動去進行測量,也不會產(chǎn)生額外的數(shù)據(jù)流量,而是在用戶向返回的VIP建立連接時進行采集。
- Passive RTT測量指從內(nèi)容站點收到一個用戶發(fā)出連接請求(發(fā)送TCN SYN)到接收到用戶的確認(收到TCP ACK)所經(jīng)歷的時間。而不是簡單的PING的響應(yīng)時間,可以更精確的衡量訪問最快的站點。
- Passive RTT的測量值真正反映了用戶的上網(wǎng)感受 ,在運營商網(wǎng)絡(luò)中也不會產(chǎn)生額外流量。也不會受到其他運營商或網(wǎng)絡(luò)的安全策略的影響。
與基于區(qū)域的策略相同,用戶配置錯誤的DNS時,基于RTT的選擇也將不是最佳的。
8) 當(dāng)前可用會話數(shù)
9) 站點管理優(yōu)先級(Admin Preference)
為每個站點預(yù)設(shè)優(yōu)先級,選擇優(yōu)先級較高的站點。
10) 最少選擇
選擇從前被選擇的次數(shù)最少的節(jié)點。
11) 輪詢(Round Robin)
采用輪詢方式選擇站點。
總結(jié)
盡管基于DNS的GSLB在特殊情況下(用戶配置錯誤DNS)準(zhǔn)確性會降低,但其豐富的策略、可擴展的性能、適用任何IP應(yīng)用協(xié)議、不受互聯(lián)網(wǎng)訪問策略影響以及無改變的業(yè)務(wù)流程等優(yōu)勢使其成為最主流的GSLB技術(shù),諸多廠家也都在這一技術(shù)上不斷進行完善。
頁次:2/2 首頁 上一頁 下一頁 尾頁 Go: |