TWI400655B - 動態評分負載平衡裝置與方法 - Google Patents

動態評分負載平衡裝置與方法 Download PDF

Info

Publication number
TWI400655B
TWI400655B TW97150735A TW97150735A TWI400655B TW I400655 B TWI400655 B TW I400655B TW 97150735 A TW97150735 A TW 97150735A TW 97150735 A TW97150735 A TW 97150735A TW I400655 B TWI400655 B TW I400655B
Authority
TW
Taiwan
Prior art keywords
server
service
service server
load balancing
servers
Prior art date
Application number
TW97150735A
Other languages
English (en)
Other versions
TW201025137A (en
Inventor
Chih Chiang Yang
Ching Chun Kao
Chia Yuan Yuang
Chien Chen
Original Assignee
Ind Tech Res Inst
Univ Nat Chiao Tung
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ind Tech Res Inst, Univ Nat Chiao Tung filed Critical Ind Tech Res Inst
Priority to TW97150735A priority Critical patent/TWI400655B/zh
Publication of TW201025137A publication Critical patent/TW201025137A/zh
Application granted granted Critical
Publication of TWI400655B publication Critical patent/TWI400655B/zh

Links

Description

動態評分負載平衡裝置與方法
本發明係關於一種動態評分負載平衡(Dynamic Score-Based Load Balancing)裝置與方法。
隨著使用網域名稱解析的人口日益增長,不斷提高單一服務伺服器的效能並無法真正解決服務人口快速增長的問題。取而代之的是同時使用多台服務伺服器來提供服務,藉由有效的策略將網際網路使用者有系統地分配到不同的服務伺服器來取得服務,以維持高服務品質。常見的負載平衡架構例如是使用者端為主(Client-based)、伺服器為主(Server-based)、調度器為主(Dispatcher-based)、以及網域名稱系統(Domain Name System,DNS)為主(DNS-based)的架構。
使用者端為主的架構中,透過使用者端的軟硬體修改,或透過使用者視不同服務伺服器的服務品質來選擇較佳的服務伺服器。伺服器為主的架構中,需有簡單的調度器為主或網域名稱系統為主的架構輔助,先透過簡單的隨機或輪替的方式分配使用者到不同服務伺服器,之後各服務伺服器再透過彼此交換訊息,來決定是否交換工作。調度器為主的架構中,所有服務伺服器以地理集中的方式擺放,並透過一調度器負責接收所有使用者 的請求,再視當時的各服務伺服器狀態來決定要將各使用者請求導向哪一服務伺服器提供服務。
網域名稱系統為主的架構中,各服務伺服器可以地理分散方式來擺放。使用者先對DNS伺服器發出網域名稱解析請求(Domain Name Resolution Request),以取得服務伺服器的IP位址,接著可對此IP位址的服務伺服器發出服務請求以取得服務。DNS可採隨機或是輪替等方式將使用者分配到不同的服務伺服器來進行負載平衡,或是再經由週期性地取得服務伺服器的狀態訊息,如負載狀況、網路狀況等,來有根據地進行負載平衡。
美國專利6,078,943揭露一種動態區間負載平衡(Dynamic Interval-Based Load Balancing)方法與裝置。其網路環境的架構如第一圖的範例所示,使用者端是以連上延伸網域名稱系統(Extended DNS,EDNS)伺服器110所透過的閘道器(Gateway),閘道器1至閘道器N,來劃分群組。EDNS伺服器110具有服務伺服器1至服務伺服器M運算能力的記錄,並且各服務伺服器會週期性地發送狀態訊息給EDNS伺服器。當服務伺服器負載過高時,會告知EDNS伺服器110暫時不要再分配新的使用者群組請求給自己,否則願意接受EDNS伺服器110分配新的使用者群組服務請求給自己。
EDNS伺服器110週期性地向所有服務伺服器收集並統計過去一段時間內,各使用者群組所發出的服務請求數。當有使用者群組向EDNS伺服器110發出網域名稱解析請求時,EDNS伺服器110可依據服務伺服器的狀態決定適當的服務伺服器,並根據該服務伺服器的運算能力,以及該使用者群組的請求發送頻率,計算出一存活時間(Time To Live,TTL)值,並回應該服務伺服器的IP位址,以及對應的TTL值,此TTL值代表該服務伺服器之IP位址的有效時間。也就是說,經過TTL的時間後,若此使用者群組再向該網域名稱的服務伺服器發出請求的話,必須再次向EDNS伺服器110發出網域名稱解析請求,來取得新的服務伺服器的IP位址。
服務伺服器內部會定義一負載緩衝區間,以負載70%到負載90%為例,在第二圖中,橫軸代表服務伺服器的負載,縱軸代表服務伺服器拒絕要求的機率,實線代表服務伺服器拒絕要求的狀態(State),虛線代表服務伺服器接受要求的狀態(State)。如第二圖所示,當服務伺服器的負載低於90%以前,會同意EDNS伺服器110分配使用者給自己,一旦服務伺服器負載高於90%後,則必須要待其負載度低於70%後才會同意EDNS伺服器110分配使用者給自己。若所有的服務伺服器負載皆曾高於90%,而尚未低於70%,則在這段期間內,服務會有短暫中斷的現象。
根據本發明所揭露的實施範例中,可提供一種動態評分負載平衡裝置與方法。
在一實施範例中,所揭露者是有關於一種動態評分負載平衡裝置。此動態評分負載平衡裝置可包含一狀態收集器(State Collector)、一傳遞延遲量測器(Propagation Delay Measure)、一伺服器評分器(Score Calculator)、以及一分數應對器(Score Mapper)。一旦此延伸DNS伺服器收到一本地DNS伺服器發出的請求時,便通知伺服器評分器,伺服器評分器向狀態收集器取得多種狀態訊息,也向傳遞延遲量測器取得不同之服務伺服器與該本地DNS伺服器之間傳遞延遲所量測的資訊,以進行對不同服務伺服器的評分,該分數應對器依評分的結果產生一目標評分值,以選出一服務伺服器並回報其IP位址給此本地DNS伺服器。
在另一實施範例中,所揭露者是有關於一種動態評分負載平衡方法。此方法包含:一EDNS伺服器等待至少一本地DNS伺服器發出網域名稱解析請求;一旦接收到一本地DNS伺服器的網域名稱解析請求時,根據收到的各個服務伺服器的多重狀態訊息與考量各個服務伺服器對此本地DNS伺服器之傳遞延遲時間,進行各個服務伺服器的評分;EDNS伺服器回報一被選出之服務伺服器 的IP位址給此本地DNS伺服器;以及若存在服務伺服器對此本地DNS伺服器之傳遞延遲時間已過期或是初始設定值,則請求各個服務伺服器去量測對此本地DNS伺服器的傳遞延遲時間;否則返回等待至少一本地DNS伺服器發出網域名稱解析請求的步驟。
茲配合下列圖示、實施範例之詳細說明及申請專利範圍,將上述及本發明之其他特徵與優點詳述於後。
第三圖以一範例架構說明本揭露之動態評分負載平衡機制的實施範例所在的網路系統,並且與本發明之某些揭露的實施範例一致。
第三圖之網路系統300的範例架構中,加入使用者端與DNS伺服器之間傳遞延遲時間的考量,使用者端以傳遞延遲時間最短之本地DNS伺服器(Local DNS Server,LDNS Server)為單位劃分群組。也就是說,此網路系統中具有不同使用者群組,這些不同使用者群組是以傳遞延遲時間最短之本地DNS伺服器為單位來劃分的使用者群組。每一使用者只需要知道服務伺服器(Service Server)的一個網域名稱DN,並對這個網域名稱發出一網域名稱解析請求(Internet Service Request)。以使用者端301為例,其發出的網域名稱解析請求301a首先 會到達對應之LDNS伺服器311。
收到網域名稱解析請求301a後,LDNS伺服器311先檢查自己的記錄中是否有網域名稱DN對應且未過期的IP位址。若有,則直接將該IP位址回應給使用者端301;若無,則透過網路將此網域名稱解析請求301a傳送至延伸DNS伺服器310,以取得一個對應的IP位址310a。然後,LDNS伺服器311將取得於EDNS伺服器310的最新IP位址310a回應給使用者端301。有此最新IP位址310a後,使用者端301就可以對最新IP位址310a的服務伺服器發出服務請求。
承上述,本揭露之動態評分負載平衡機制的實施範例可置於此EDNS伺服器310中來運作,將網路系統300中不同使用者群組的服務要求分散至不同的服務伺服器。根據本發明,此動態評分負載平衡機制的實施範例週期性地收集來自網路系統300下各個服務伺服器的多重狀態訊息(Multiple State Status),並透過狀態訊息分析以及考量各服務伺服器對LDNS伺服器之傳遞延遲時間,給與不同服務伺服器的評分(Score)。一旦接受到使用者端的服務請求時,便可依據此評分,有系統地將不同使用者群組分散至不同的服務伺服器接受服務。第四圖是本揭露之動態評分負載平衡裝置的一個範例架構示意圖,並且與本發明之某些揭露的實施範例一致。
第四圖的範例架構中,動態評分負載平衡裝置可包含一狀態收集器402、一傳遞延遲量測器404、一伺服器評分器406、以及一分數應對器408。
一旦EDNS伺服器310收到來自一LDNS伺服器j發出的請求時,便會通知伺服器評分器406。伺服器評分器406向多重狀態收集器402取得來自各服務伺服器的多種狀態訊息402a,也向傳遞延遲量測器404取得服務伺服器與此LDNS伺服器之間傳遞延遲量測資訊404a,來進行對不同服務伺服器的評分,此評分的結果406a並告知分數應對器408。分數應對器408依此評分結果406a產生一目標評分值,以選出一服務伺服器,並將選出之服務伺服器的IP位址408a回報給此LDNS伺服器j。
動態評分負載平衡裝置可位於EDNS伺服器310上,將一網路系統中不同使用者群組的服務要求分散至不同的服務伺服器。
在EDNS伺服器310中,可以透過如LDNS伺服器請求接收器(LDNS Request Receiver)來接收LDNS伺服器發出的網域名稱解析請求,以即時觸發伺服器評分器406來進行評分。而EDNS伺服器310中,也可以透過如管理者(Administrator)410來隨時調整評分計算公式與 機制。
EDNS伺服器310在等待LDNS伺服器i發出網域名稱解析請求310a的過程中,狀態收集器402會週期性地接收各服務伺服器j的多種狀態訊息,包括如服務伺服器j的中央處理單元(Central Processing Unit,CPU)負載Lj 、服務伺服器的頻寬流量(Bandwidth)Bj 、服務伺服器的負載能力(Capacity Ability)CAj 、服務伺服器的服務健康狀態(Service Live)Aj 、服務伺服器的網路連通性(Connectivity)COj 。一旦接收到使用者端LDNS伺服器的網域名稱解析請求時,便會根據這些狀態訊息、各個服務伺服器j與使用者端LDNS伺服器i的傳遞延遲Pij ,透過評分公式為各個服務伺服器評分,再依據評分的狀況給予不同使用者端最適當的網域名稱解析結果。所以,使用者端只需要知道服務伺服器的網域名稱,不須經過任何軟硬體修改或手動設定,即可便利且快速地連結上高度負載平衡的服務伺服器,獲得優質的網際網路服務。
這些狀態訊息的值可定義如下:負載Lj 的值在0與100之間;頻寬流量Bj 的值在0與100之間;負載能力CAj 的值將其正規化(Normalized);服務健康狀態Aj 的值有兩種,一種為存活(Live),另一種為當掉(Dead);網路連通性COj 的值有兩種,一種為連線(Connected),另一種為斷線 (Disconnected);傳遞延遲Pij 的值將其正規化,初始設定值為1。
對各服務伺服器j的評分準則的範例如:(1)剩餘負載程度(即100-Lj )、服務伺服器j的CPU可利用度(即CAj )、以及剩餘頻寬流量(即100-Bj )與服務伺服器j的評分成正比,(2)傳遞延遲Pij 與服務伺服器j的評分成反比,(3)服務伺服器j的服務中止(即服務健康狀態Aj 為當掉)或是服務伺服器j的網路中斷(即網路連通性COj 為斷線)時,服務伺服器j的評分為零。依此評分準則,第五圖是對各個服務伺服器j的一個評分公式範例510,並且與本發明之某些揭露的實施範例一致。
舉例來說,假設目前網路系統300中有三台服務伺服器,其CPU負載Lj 、頻寬流量Bj 、服務健康狀態Aj 、網路連通性COj 、以及負載能力CAj 分別為服務伺服器1=(80,60,1,1,100)、服務伺服器2=(70,70,1,1,120)、服務伺服器3=(60,90,1,1,80),如第六圖之左邊表格所示。各個服務伺服器與各使用者端LDNS伺服器的傳遞延遲Pij 之初始值皆設定為1,如第六圖之右邊表格所示。
若EDNS伺服器還沒有各服務伺服器對當前LDNS伺服器的傳遞延遲紀錄,也就是各個服務伺服器與當前 LDNS伺服器的傳遞延遲時間之初始值皆為1。則以第五圖之公式範例獲得對此三台服務伺服器的評分S (1)、S (2)、與S (3),其中其計算分別如下:S (1)=(100-80)*(100-60)*1*1*100/1=80000,S (2)=(100-70)*(100-70)*1*1*120/1=108000,以及S (3)=(100-60)*(100-90)*1*1*80/1=32000。
一般而言,對一使用者端而言,其使用的LDNS伺服器與此使用者端通常會有相近的地理關係。因此只要量測各個服務伺服器與該使用者端所使用的LDNS伺服器之間的傳遞延遲時間,就可以大致代表各服務伺服器與該使用者端的傳遞延遲時間。而各個服務伺服器與不同LDNS伺服器的傳遞延遲時間並非是EDNS伺服器及服務伺服器一開始就可以得知的。因此每當收到來自新的使用者端LDNS伺服器i的請求時,EDNS伺服器必須請求各個服務伺服器j去量測自己與該LDNS伺服器i的傳遞延遲時間P(i,j)。
由於各個服務伺服器的位置是地理分散的,因此此一動作可能需要花費較長的回應時間,故此時EDNS服務伺服器可以選擇先不考慮各個服務伺服器對該使用者端LDNS伺服器的傳遞延遲時間,也就是假設所有服務伺服器對該使用者端LDNS伺服器的傳遞延遲時間皆相同,來計算各個服務伺服器的分數,然後再從中選出最 適宜的服務伺服器來服務該使用者群組。在回報被選出之最適宜的服務伺服器IP位址時,也同時請求各服務伺服器去量測並回報自己與該使用者端LDNS伺服器的傳遞延遲時間。
如此,當下次再收到來自該使用者端LDNS伺服器的請求時,除了考量各服務伺服器的多重狀態資訊外,也一併考量先前所取得的各服務伺服器對該使用者端LDNS伺服器的傳遞延遲時間,讓使用者端可以快速地連結上高度負載平衡的服務伺服器,獲得高品質且高穩定度的網域名稱解析。當EDNS伺服器認為先前取得的各服務伺服器對某一使用者端LDNS伺服器的傳遞延遲時間數據需要更新時,也可以要求各服務伺服器重新量測並回報自己對該使用者端LDNS伺服器的傳遞延遲時間。
承上述,第七圖以一範例流程說明具有本揭露之動態評分負載平衡機制在EDNS伺服器上的運作,並且與本發明之某些揭露的實施範例一致。參考第七圖的範例流程,一開始時,EDNS伺服器會等待LDNS伺服器發出網域名稱解析請求310a,如步驟705所示。一旦接收到使用者端LDNS伺服器i的網域名稱解析請求310a時,就即時觸發伺服器評分器406,根據收到的各個服務伺服器的多重狀態訊息,進行各個服務伺服器的評 分,如步驟710所示。然後,EDNS伺服器回報被選出之最適宜的服務伺服器的IP位址給LDNS伺服器i,如步驟715所示。LDNS伺服器i將此IP位址回應給使用者端。如此,使用者端就可以對此IP位址發出服務請求。
接下來,EDNS伺服器可以檢查先前取得之各個服務伺服器j與使用者端LDNS伺服器i之間的傳遞延遲時間P(i,j)是否已過期(Expired)或是初始設定值,如步驟720所示。如果是已過期或是初始設定值,則EDNS伺服器請求各個服務伺服器j去量測自己對LDNS伺服器i的傳遞延遲時間P(i,j),如步驟725所示。否則的話,EDNS伺服器返回步驟705,以等待下一次LDNS伺服器發出網域名稱解析請求。也就是說,若存在服務伺服器對此LDNS伺服器之傳遞延遲時間已過期或是初始設定值,則EDNS伺服器請求各個服務伺服器去量測對此LDNS伺服器的傳遞延遲時間;否則EDNS伺服器返回步驟705。
在步驟725中,各個服務伺服器j量測的傳遞延遲時間會回報給EDNS伺服器。
當服器評分器406來算出各個服務伺服器的評分後,如前述第四圖所示,分數應對器408依評分結果先產生一目標評分值,來選出此服務伺服器i。第八圖以第 五圖之評分公式範例,說明分數應對器如何透過隨機對應的方式來選出此服務伺服器,並且與本發明之某些揭露的實施範例一致。
第八圖的範例流程中,如步驟810所示,將評分公式範例算出的各個服務伺服器的評分S (j )作加總,即totalScore ,並隨機產生一個介於1與totalScore 之間的goalScore值,即目標評分值。然後,根據此goalScore值,對應出一適合的服務伺服器,如步驟820所示。
以之前的例子來說明,目前網路系統300中的三台服務伺服器,其分數分別為S (1)=80000、S (2)=108000、以及S (3)=32000,則totalScore =S (1)+S (2)+S (3)=220000,而goalScore為1與totalScore 之間的一隨機值。若此隨機值goalScore是介於1與S (1)之間,即1≦goalScore≦80000,則被選出的是服務伺服器1;若此隨機值goalScore是介於S (1)+1與S (1)+S (2)之間,即80001≦goalScore≦188000,則被選出的是服務伺服器2;若此隨機值goalScore是介於S (1)+S (2)+1與S (1)+S (2)+S (3)之間,即188001≦goalScore≦220000,則被選出的是服務伺服器3。所以此三台服務伺服器中,透過隨機對應,服務伺服器2被選出的機會最高。
假設隨機產生的goalScore是介於80001與188000 之間,則被選出的是服務伺服器2,而EDNS伺服器回報服務伺服器2的IP位址給當前LDNS伺服器。由於EDNS伺服器還沒有各服務伺服器對當前LDNS伺服器的傳遞延遲紀錄,亦即傳遞延遲僅有初始設定值1,則依前述步驟725,EDNS伺服器請求所有服務伺服器j去量測自己對此LDNS伺服器的傳遞延遲時間。
若經量測後得知此三台服務伺服器對該LDNS伺服器的傳遞延遲時間分別為25、50、20,並回報給EDNS伺服器。如第九圖之左邊表格所示,EDNS伺服器依量測後的訊息更新此傳遞延遲的紀錄。則當EDNS伺服器再收到此LDNS伺服器的請求時,便能增加考量此傳遞延遲時間25、50、20,並動態調整對此三台服務伺服器的評分S (1)、S (2)、與S (3),如第九圖之右邊表格所示,以平衡負載的分配。
此評分S (1)、S (2)、與S (3)的計算分別如下:S (1)=(100-80) (100-60) 1 1 100/25=3200,S (2)=(100-70) (100-70) 1 1 120/50=2160,以及S (3)=(100-60) (100-90) 1 1 80/20=1600。則totalScore =S (1)+S (2)+S (3)=6960,而goalScore為1與totalScore 之間的一隨機值。因此,若此隨機值goalScore是介於1與3200之間,則被選出的是服務伺服器1;若此隨機值goalScore是介於3201與5360之間,則被選出的 是服務伺服器2;若此隨機值goalScore是介於5361與6960之間,則被選出的是服務伺服器3。此評分對應如第九圖之右圖所示。所以增加考量對此三台服務伺服器之傳遞延遲時間的訊息後,透過隨機對應,服務伺服器1被選出的機會最高。
由上述範例中,可以發現當服務伺服器的評分越高時,代表此服務伺服器的運算能力或剩餘負載較佳,或是此服務伺服器與當前發出網域名稱解析請求的LDNS間的傳遞延遲時間較短,所以此服務伺服器被選上的機率將較其他服務伺服器高。由於增加各服務伺服器對LDNS伺服器之傳遞延遲時間的考量,當各服務伺服器的負載皆高時,相對較低者仍需協助提供較多的服務給使用者,以平衡負載的分配;而當有兩服務伺服器狀態相似時,傳遞延遲時間較短的服務伺服器將會優先被選擇,來提供使用者快速與優質的服務。
綜上所述,本揭露的實施範例可提供一種位於一EDNS伺服器上的動態評分負載平衡機制。此負載平衡機制週期性地收集來自各個服務伺服器的狀態訊息,透過有效地狀態訊息分析,以及考量各服務伺服器對LDNS伺服器之傳遞延遲時間,給與不同服務伺服器不同的評分。一旦接受到使用者端的服務請求時,便可依據此服務伺服器的評分,有系統地將不同使用者群組分 散至不同的服務伺服器接受服務。而使用者端只需要知道服務伺服器的網域名稱,不須經過任何軟硬體修改或手動設定,即可便利且快速地連結上高度負載平衡的服務伺服器,獲得優質且穩定度佳的網際網路服務。
惟,以上所述者僅為本發明之實施範例,當不能依此限定本發明實施之範圍。即大凡本發明申請專利範圍所作之均等變化與修飾,皆應仍屬本發明專利涵蓋之範圍。
110‧‧‧延伸網域名稱系統伺服器
TTL‧‧‧存活時間值
300‧‧‧網路系統
301‧‧‧使用者端
301a‧‧‧網域名稱解析請求
310‧‧‧延伸DNS伺服器
310a‧‧‧最新IP位址
311‧‧‧本地DNS伺服器
402‧‧‧狀態收集器
404‧‧‧傳遞延遲量測器
406‧‧‧伺服器評分器
408‧‧‧分數應對器
402a‧‧‧多種狀態訊息
404a‧‧‧傳遞延遲量測資訊
406a‧‧‧評分結果
410‧‧‧管理者
408a‧‧‧選出之服務伺服器的IP位址
510‧‧‧評分公式範例
Lj ‧‧‧服務伺服器j的中央處理單元負載
Bj ‧‧‧服務伺服器j的頻寬流量
CAj ‧‧‧服務伺服器j的負載能力
Aj ‧‧‧服務伺服器的服務健康狀態
COj ‧‧‧服務伺服器的網路連通性
Pij ‧‧‧服務伺服器j與使用者端LDNS伺服器i的傳遞延遲
705‧‧‧等待至少一LDNS伺服器發出網域名稱解析的請求
710‧‧‧根據收到的各個服務伺服器的多重狀態訊息,進行各個服務伺服器的評分
715‧‧‧回報被選出之最適宜的服務伺服器j的IP位址給LDNS伺服器i
720‧‧‧檢查傳遞延遲時間P(i,j)是否已過期或是初始設定值?
725‧‧‧請求各個服務伺服器j去量測自己對該LDNS伺服器i的傳遞延遲時間
810‧‧‧將各個服務伺服器的評分S (j )作加總,即totalScore ,並隨機產生一個介於1與totalScore 之間的goalScore值
820‧‧‧根據此goalScore值,對應出一適合的服務伺服器
第一圖是具動態區間負載平衡之網路環境的一個範例架構示意圖。
第二圖是第一圖中服務伺服器之負載與是否接受服務的一個範例關係示意圖。
第三圖以一範例架構說明動態評分負載平衡機制所在的網路系統的一個範例架構示意圖,並且與本發明之某些揭露的實施範例一致。
第四圖是動態評分負載平衡裝置的一個範例架構示意圖,並且與本發明之某些揭露的實施範例一致。
第五圖是對各個服務伺服器評分的一個公式範例,並且與本發明之某些揭露的實施範例一致。
第六圖是不同服務伺服器之多重狀態訊息以及與各使用者端LDNS伺服器的傳遞延遲時間之初始值的範例示意圖,並且與本發明之某些揭露的實施範例一致。
第七圖以一範例流程說明具有動態評分負載平衡機制之EDNS伺服器的運作,並且與本發明之某些揭露的實施範例一致。
第八圖以第五圖之評分公式範例,說明分數應對器如何透過隨機對應的方式來選出此服務伺服器,並且與本發明之某些揭露的實施範例一致。
第九圖是更新傳遞延遲紀錄與動態調整評分計算的一個範例說明,並且與本發明之某些揭露的實施範例一致。
402‧‧‧狀態收集器
404‧‧‧傳遞延遲量測器
406‧‧‧伺服器評分器
408‧‧‧分數應對器
402a‧‧‧多種狀態訊息
404a‧‧‧傳遞延遲量測資訊
406a‧‧‧評分結果
410‧‧‧管理者
408a‧‧‧選出之服務伺服器的IP位址

Claims (15)

  1. 一種動態評分負載平衡裝置,該裝置包含:一狀態收集器;一傳遞延遲量測器;一伺服器評分器;以及一分數應對器;一旦一延伸網域名稱系統(DNS)伺服器收到一本地DNS伺服器發出的請求時,便通知該伺服器評分器,該伺服器評分器向該狀態收集器取得不同之服務伺服器的多種狀態訊息,也向該傳遞延遲量測器取得該不同之服務伺服器與該本地DNS伺服器之間傳遞延遲所量測的資訊,以進行對該不同服務伺服器的評分,該分數應對器依該評分的結果產生一目標評分值,以選出一服務伺服器並回報其IP位址給該本地DNS伺服器,並且被選出之該服務伺服器係透過一種隨機對應而被選出,該隨機對應包括:加總該不同的服務伺服器中各個服務伺服器的評分,並隨機產生一個介於1與評分加總之間的該目標評分值;以及根據該目標評分值,對應出被選出之該服務伺服器;其中當該不同的服務伺服器中的一服務伺服器的服務中止或是該服務伺服器的網路中斷時,該服務伺服器的評分為零。
  2. 如申請專利範圍第1項所述之動態評分負載平衡裝置,該裝置位於該延伸DNS伺服器上,將一網路系統中不同使用者群組的服務要求分散至該不同的服務伺 服器。
  3. 如申請專利範圍第2項所述之動態評分負載平衡裝置,其中該狀態收集器週期性地接收來自該網路系統中各服務伺服器的多種狀態訊息。
  4. 如申請專利範圍第2項所述之動態評分負載平衡裝置,其中該多種狀態訊息包括該網路系統中每一服務伺服器的中央處理單元負載、頻寬流量、負載能力、服務健康狀態、以及網路連通性。
  5. 如申請專利範圍第2項所述之動態評分負載平衡裝置,其中該不同使用者群組係以傳遞延遲時間最短之本地DNS伺服器為單位來劃分的使用者群組。
  6. 如申請專利範圍第1項所述之動態評分負載平衡裝置,其中該延伸DNS伺服器動態調整對該不同之服務伺服器中每一服務伺服器的評分,並且與該不同之服務伺服器中每一服務伺服器的評分成正比的訊息至少包括該服務伺服器的剩餘負載程度、該服務伺服器的中央處理單元可利用度、以及該服務伺服器的剩餘頻寬流量。
  7. 如申請專利範圍第6項所述之動態評分負載平衡裝置,其中與該不同之服務伺服器中每一服務伺服器的評分成反比的訊息至少包括該服務伺服器與該本地DNS伺服器的傳遞延遲時間。
  8. 一種動態評分負載平衡方法,該方法包含:一延伸網域名稱系統(DNS)伺服器等待至少一本地 DNS伺服器發出網域名稱解析請求;一旦接收到一本地DNS伺服器的網域名稱解析請求時,根據收到的不同之服務伺服器的各個服務伺服器的多種狀態訊息與考量各個服務伺服器對該本地DNS伺服器之傳遞延遲時間,進行各個服務伺服器的評分;該延伸DNS伺服器回報一個被選出之服務伺服器的IP位址給該本地DNS伺服器;以及若存在服務伺服器對該本地DNS伺服器之傳遞延遲時間已過期或是初始設定值,則請求各個服務伺服器去量測對該本地DNS伺服器的傳遞延遲時間;否則返回該等待至少一本地DNS伺服器發出網域名稱解析請求的步驟;並且被選出之該服務伺服器係透過一種隨機對應而被選出,該隨機對應包括:加總該不同的服務伺服器中各個服務伺服器的評分,並隨機產生一個介於1與評分加總之間的一目標評分值;以及根據該目標評分值,對應出被選出之該服務伺服器;其中當該不同的服務伺服器中的一服務伺服器的服務中止或是該服務伺服器的網路中斷時,該服務伺服器的評分為零。
  9. 如申請專利範圍第8項所述之動態評分負載平衡方法,其中對各個服務伺服器的評分係根據一評分準則來算出。
  10. 如申請專利範圍第8項所述之動態評分負載平衡方法,其中該延伸DNS伺服器動態調整對該不同之服務伺服器中各個服務伺服器的評分,並且該各個服務伺服器的評分成正比的訊息至少包括該服務伺服器的剩餘負載程度、該服務伺服器的中央處理單元可利用度、以及該服務伺服器的剩餘頻寬流量。
  11. 如申請專利範圍第9項所述之動態評分負載平衡方法,其中該評分準則至少包括:該各個服務伺服器與該本地DNS伺服器的傳遞延遲時間係與該各個服務伺服器的評分成反比。
  12. 如申請專利範圍第8項所述之動態評分負載平衡方法,該方法應用於一延伸網域名稱系統伺服器上,將一網路系統中不同使用者群組的服務要求分散至該不同的服務伺服器。
  13. 如申請專利範圍第12項所述之動態評分負載平衡方法,其中該多種狀態訊息包括該網路系統中每一服務伺服器的中央處理單元負載、頻寬流量、負載能力、服務健康狀態、以及網路連通性。
  14. 如申請專利範圍第8項所述之動態評分負載平衡方法,其中該不同的服務伺服器中各個服務伺服器對該本地DNS伺服器所量測的傳遞延遲資訊係可動態更新的。
  15. 如申請專利範圍第8項所述之動態評分負載平衡方法,其中該各個服務伺服器的評分係透過一種評分計 算公式來算出。
TW97150735A 2008-12-25 2008-12-25 動態評分負載平衡裝置與方法 TWI400655B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW97150735A TWI400655B (zh) 2008-12-25 2008-12-25 動態評分負載平衡裝置與方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW97150735A TWI400655B (zh) 2008-12-25 2008-12-25 動態評分負載平衡裝置與方法

Publications (2)

Publication Number Publication Date
TW201025137A TW201025137A (en) 2010-07-01
TWI400655B true TWI400655B (zh) 2013-07-01

Family

ID=44852466

Family Applications (1)

Application Number Title Priority Date Filing Date
TW97150735A TWI400655B (zh) 2008-12-25 2008-12-25 動態評分負載平衡裝置與方法

Country Status (1)

Country Link
TW (1) TWI400655B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9535775B2 (en) 2014-04-03 2017-01-03 Industrial Technology Research Institute Session-based remote management system and load balance controlling method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10432709B2 (en) 2016-03-28 2019-10-01 Industrial Technology Research Institute Load balancing method, load balancing system, load balancing device and topology reduction method
CN115348234B (zh) * 2022-08-10 2023-11-03 山石网科通信技术股份有限公司 服务器检测方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW565801B (en) * 2002-08-22 2003-12-11 Infowrap Technologies Inc Cluster computer having distributed load balancing system
US6754706B1 (en) * 1999-12-16 2004-06-22 Speedera Networks, Inc. Scalable domain name system with persistence and load balancing
US7272653B2 (en) * 2000-09-28 2007-09-18 International Business Machines Corporation System and method for implementing a clustered load balancer
US7346676B1 (en) * 2000-07-19 2008-03-18 Akamai Technologies, Inc. Load balancing service
TW200830798A (en) * 2006-10-04 2008-07-16 Qualcomm Inc IP flow-based load balancing over a plurality of wireless network links

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754706B1 (en) * 1999-12-16 2004-06-22 Speedera Networks, Inc. Scalable domain name system with persistence and load balancing
US7346676B1 (en) * 2000-07-19 2008-03-18 Akamai Technologies, Inc. Load balancing service
US7272653B2 (en) * 2000-09-28 2007-09-18 International Business Machines Corporation System and method for implementing a clustered load balancer
TW565801B (en) * 2002-08-22 2003-12-11 Infowrap Technologies Inc Cluster computer having distributed load balancing system
TW200830798A (en) * 2006-10-04 2008-07-16 Qualcomm Inc IP flow-based load balancing over a plurality of wireless network links

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9535775B2 (en) 2014-04-03 2017-01-03 Industrial Technology Research Institute Session-based remote management system and load balance controlling method

Also Published As

Publication number Publication date
TW201025137A (en) 2010-07-01

Similar Documents

Publication Publication Date Title
US6965930B1 (en) Methods, systems and computer program products for workload distribution based on end-to-end quality of service
US6178160B1 (en) Load balancing of client connections across a network using server based algorithms
EP1473907B1 (en) Dynamic load balancing for enterprise IP traffic
US7423977B1 (en) Smoothing algorithm for round trip time (RTT) measurements
US20230093389A1 (en) Service request allocation method and apparatus, computer device, and storage medium
US8510434B2 (en) Method, system and DNS server for load balancing network servers
WO2018054307A1 (zh) Cdn业务的处理方法、设备及通信系统
US6862624B2 (en) Method and apparatus for directing a flow of packets based on request and server attributes
US6898635B2 (en) Mobile communication system and method of selecting server in mobile communication system
US20040249939A1 (en) Methods and apparatus for dynamic and optimal server set selection
US8537709B2 (en) Network device, and multi-wide area network interface selection module and method
US20080222291A1 (en) Content delivery network service provider (CDNSP)-managed content delivery network (CDN) for network service provider (NSP)
WO2016074323A1 (zh) 内容分发网络的http调度系统和方法
US20090172157A1 (en) Method and Device for Content Transmission on P2P Network
US20050022203A1 (en) Load balancing
JP2004171572A (ja) サーバ間の負荷分散方法、負荷分散システム、負荷分散サーバおよびプログラム
WO2007032603A1 (en) Load balancing method and apparatus, and software streaming system using the same
EP2789147B1 (en) Method and apparatus for load balancing in communication system
CN110086886B (zh) 动态会话保持方法及装置
TWI400655B (zh) 動態評分負載平衡裝置與方法
CN109151009A (zh) 一种基于mec的cdn节点分配方法和系统
CN103401799A (zh) 负载均衡的实现方法和装置
KR20200018653A (ko) Api 호출들의 프로세싱을 용이하게 하기 위한 가속 시스템
WO2022188591A1 (zh) 一种服务器的选择方法、装置、设备及介质
JP5871908B2 (ja) ネットワーク内部のデータ通信を制御するための方法およびシステム