两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法

文檔序號:7589258閱讀:345來源:國知局
專利名稱:實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)連接技術(shù)領(lǐng)域,具體涉及一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法。
背景技術(shù)
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)建設(shè)及應(yīng)用突飛猛進,網(wǎng)絡(luò)用戶不斷增加,網(wǎng)絡(luò)負載均衡設(shè)備也越來越多地應(yīng)用在各行各業(yè)的網(wǎng)絡(luò)中,目前的負載均衡設(shè)備都實現(xiàn)了對于網(wǎng)絡(luò)流量的符合分擔(dān),即利用多種算法將總的訪問流量平均分配到不同的服務(wù)器上。而且還有相應(yīng)的健康性檢測機制,如果某臺真實服務(wù)器不可用了,則連接在這臺設(shè)備上的流量將被分擔(dān)到其它的服務(wù)器上,當(dāng)這臺服務(wù)器又能正常運行之后負載均衡設(shè)備會把網(wǎng)絡(luò)流量重新分配到該服務(wù)器上,但這些流量并非是服務(wù)器不可用之前連接在該服務(wù)器上的流量。在某些特殊領(lǐng)域里(比如銀行、證券等),客戶端會發(fā)出長連接到服務(wù)器建立TCP(傳輸控制協(xié)議)連接之后不斷鏈,始終保持連接狀態(tài)。這些長連接要求分配到不同的服務(wù)器上,如果一臺服務(wù)器不可用了則客戶端軟件會重新發(fā)起連接,負載均衡設(shè)備會將這個連接分配到一個新的服務(wù)器上,當(dāng)原來不可用的服務(wù)器恢復(fù)正常之后,要求將原先連接到該服務(wù)器上、目前已分配到新服務(wù)器上的連接斷鏈,然后重新連接到該服務(wù)器上。
目前的負載均衡設(shè)備都只是實現(xiàn)了對于流量的符合分擔(dān),當(dāng)服務(wù)器在可用->不可用->可用這兩個狀態(tài)之間變化之后,可以將一部分流量重新連接到恢復(fù)正常狀態(tài)的服務(wù)器,保證各服務(wù)器的負載均衡,但是卻無法做到將原來的流量重新連接到恢復(fù)正常狀態(tài)的服務(wù)器上,這樣,一臺本來有負荷的服務(wù)器失效后,負荷全部轉(zhuǎn)移到其他服務(wù)器上,當(dāng)失效的服務(wù)器重新工作后,由于沒有新的長連接產(chǎn)生(因為都是長連接),所以該服務(wù)器就會一直處于沒有負荷的狀態(tài)中,如同虛設(shè)。這樣在某些應(yīng)用領(lǐng)域就無法使用。

發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)的上述缺點,提供一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,以使在服務(wù)器出現(xiàn)狀態(tài)變遷時整體流量仍然能平均分配到不同的有效服務(wù)器上。
一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,所述方法包括步驟A、建立至少一個虛服務(wù),對應(yīng)一個由具有相同服務(wù)功能的至少一個真實服務(wù)器組成的服務(wù)器組;B、為所述虛服務(wù)設(shè)定一個標識字,以標識對應(yīng)的服務(wù)器組中真實服務(wù)器的變化;C、根據(jù)所述標識字判斷所述真實服務(wù)器狀態(tài)是否發(fā)生變化;D、當(dāng)所述真實服務(wù)器狀態(tài)未發(fā)生變化時,由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與所述真實服務(wù)器的連接;E、當(dāng)所述真實服務(wù)器狀態(tài)發(fā)生變化時,根據(jù)所述標識字實現(xiàn)長連接的倒換。
所述步驟D包括D1、在所述網(wǎng)絡(luò)負載均衡設(shè)備上配置所述虛服務(wù)的信息及所述真實服務(wù)器的信息,并建立它們之間的對應(yīng)關(guān)系;D2、根據(jù)所述建立的虛服務(wù)信息與真實服務(wù)器信息的對應(yīng)關(guān)系建立客戶與所述真實服務(wù)器的連接。
所述步驟D1包括配置所述虛服務(wù)的信息包括虛服務(wù)的IP地址、端口號和協(xié)議號;配置所述真實服務(wù)器的信息包括真實服務(wù)器的IP地址、端口號和協(xié)議號。
所述步驟D2包括D21、所述客戶向所述虛服務(wù)發(fā)起訪問請求;D22、所述網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)所述訪問請求找到對應(yīng)的服務(wù)器組,并按預(yù)定算法為所述客戶請求分配一個真實服務(wù)器;D23、建立所述客戶與所述分配的真實服務(wù)器的連接。
所述預(yù)定算法包括源IP地址Hash算法,目的IP地址Hash算法、源IP地址與目的IP地址Hash算法。
所述步驟D23包括D231、根據(jù)所述訪問請求中首包報文信息及所述分配的真實服務(wù)器的信息為本次連接建立客戶與服務(wù)器的對應(yīng)關(guān)系列表;D232、根據(jù)所述建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表連接所述客戶和所述分配的真實服務(wù)器。
所述步驟D23l包括在建立所述客戶與服務(wù)器的對應(yīng)關(guān)系列表時,記錄當(dāng)前所述標識字。
所述客戶與服務(wù)器的對應(yīng)關(guān)系列表包括客戶訪問的源/目的IP地址、源/目的端口號和客戶協(xié)議號,以及所述分配的真實服務(wù)器的地址和端口號;分配的真實服務(wù)器回應(yīng)報文的源/目的IP地址、源/目的端口號和服務(wù)器協(xié)議號,以及經(jīng)過所述網(wǎng)絡(luò)負載均衡設(shè)備后所述回應(yīng)報文需要替換的源IP地址和源端口號。
所述步驟E包括
E1、當(dāng)所述虛服務(wù)中有真實服務(wù)器由不可用變?yōu)榭捎没蛘咝录尤胝鎸嵎?wù)器時,改變所述標識字;E2、所述網(wǎng)絡(luò)負載均衡設(shè)備收到客戶訪問虛服務(wù)的后續(xù)報文后,如果當(dāng)前的標識字與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的標識字不同,則利用所述預(yù)定算法重新分配一個真實的服務(wù)器。
所述步驟E2包括E21、如果分配結(jié)果與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的信息相同,則直接轉(zhuǎn)發(fā)所述后續(xù)報文給所述真實的服務(wù)器;E22、如果分配結(jié)果與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的信息不同,則刪除所述建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表;E23、當(dāng)所述網(wǎng)絡(luò)負載均衡設(shè)備再次收到客戶的后續(xù)報文后,查不到對應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表,則給所述客戶回應(yīng)RST(復(fù)位)報文,通知用戶重新建立連接。
提供一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,以使在服務(wù)器出現(xiàn)狀態(tài)變遷時整體流量仍然能平均分配到不同的有效服務(wù)器上。
利用本發(fā)明,不僅保證了服務(wù)器在出現(xiàn)狀態(tài)變化時整體流量仍然能平均分配到不同的有效服務(wù)器上,而且在服務(wù)器恢復(fù)正常后,如果沒有新的服務(wù)器加入該網(wǎng)絡(luò),則由網(wǎng)絡(luò)負載均衡設(shè)備將原先對應(yīng)于該服務(wù)器的長連接倒換回該服務(wù)器上,如果有新的服務(wù)器加入該網(wǎng)絡(luò)時,則實現(xiàn)長連接的重新分配,保證負載的均衡;同時,本發(fā)明還使得網(wǎng)絡(luò)負載均衡設(shè)備支持長連接倒換功能,可靠實現(xiàn)了服務(wù)器之間的備份,充分保證了長連接數(shù)據(jù)的安全。


圖1是正常情況下三個客戶機分別與兩個服務(wù)器進行連接的示意圖;
圖2是圖1中一臺服務(wù)器不可用之后所有客戶機都連接到另一臺服務(wù)器上的情況示意圖;圖3是當(dāng)圖2中不可用的服務(wù)器恢復(fù)正常之后將原來的連接重新連接到該服務(wù)器的情況示意圖;圖4是本發(fā)明方法中由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與服務(wù)器連接的步驟的流程圖;圖5是圖4所示流程中建立客戶和分配的真實服務(wù)器連接過程中信號的流程示意圖;圖6是本發(fā)明方法中由網(wǎng)絡(luò)負載均衡設(shè)備實現(xiàn)長連接倒換的步驟的流程圖。
具體實施例方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明,下面結(jié)合附圖和實施方式對本發(fā)明作進一步的詳細說明。
參照圖1、圖2和圖3,本發(fā)明方法的實現(xiàn)思路為在正常情況下,使用預(yù)定算法來選擇真實服務(wù)器,客戶機Client1連接到服務(wù)器Server2,客戶機Client2和Client3連接到服務(wù)器Server1,如圖1所示;當(dāng)服務(wù)器Server2由于某種原因不可用之后,客戶機Client1與服務(wù)器Server2的連接就會斷開,然后客戶機Client1重新發(fā)起連接,由于服務(wù)器Server2不可用所以連接到服務(wù)器Server1,如圖2所示;當(dāng)服務(wù)器Server2恢復(fù)正常工作之后網(wǎng)絡(luò)負載均衡設(shè)備會主動將客戶機Client1與服務(wù)器Server1的連接斷開,然后由客戶機Client1重新發(fā)起連接并最終與服務(wù)器Server2建立連接。
本發(fā)明利用網(wǎng)絡(luò)負載均衡設(shè)備實現(xiàn)網(wǎng)絡(luò)長連接的倒換,在有服務(wù)器發(fā)生故障時,將對應(yīng)于該服務(wù)器的長連接倒換到其它有效服務(wù)器上,當(dāng)該服務(wù)器恢復(fù)正常后,再將原先對應(yīng)于該服務(wù)器的長連接倒換回該服務(wù)器上。在有新服務(wù)器加入所述網(wǎng)絡(luò)時,也要重新分配長連接對應(yīng)的服務(wù)器。在上述服務(wù)器的所有變化過程中,始終保持網(wǎng)絡(luò)負載的均衡。
本發(fā)明方案包括以下部分(1)建立至少一個虛服務(wù),對應(yīng)一個由具有相同服務(wù)功能的至少一個真實服務(wù)器組成的服務(wù)器組。也就是說,以組的形式管理網(wǎng)絡(luò)中的真實服務(wù)器,將一個或多個具有相同服務(wù)功能的真實服務(wù)器組成一組,每個服務(wù)器組對應(yīng)一個虛服務(wù)。
(2)為虛服務(wù)設(shè)定一個標識字,以標識服務(wù)器組中真實服務(wù)器的變化。
(3)根據(jù)所述標識字判斷所述真實服務(wù)器狀態(tài)是否發(fā)生變化。
(4)當(dāng)真實服務(wù)器狀態(tài)正常時,由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與真實服務(wù)器的連接。
(5)當(dāng)真實服務(wù)器狀態(tài)發(fā)生變化時,根據(jù)所述標識字實現(xiàn)長連接的倒換。
下面結(jié)合附圖分別介紹真實服務(wù)器狀態(tài)正常情況下由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與真實服務(wù)器的連接的過程以及真實服務(wù)器狀態(tài)發(fā)生變化后由該設(shè)備實現(xiàn)長連接倒換的過程。
參照圖4,圖4描述了由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與服務(wù)器連接的步驟的流程圖。
步驟401在網(wǎng)絡(luò)負載均衡設(shè)備上配置虛服務(wù)的信息及真實服務(wù)器的信息,并建立它們之間的對應(yīng)關(guān)系。其中,虛服務(wù)的信息包括虛服務(wù)的IP地址、端口號和協(xié)議號;真實服務(wù)器的信息包括真實服務(wù)器的IP地址、端口號和協(xié)議號。
步驟402客戶向所述虛服務(wù)發(fā)起訪問請求。
步驟403網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)訪問請求找到對應(yīng)的服務(wù)器組,并按預(yù)定算法為客戶請求分配一個真實服務(wù)器。即網(wǎng)絡(luò)負載均衡設(shè)備收到客戶訪問虛服務(wù)的首包后,判斷報文中目的IP地址、目的端口號以及協(xié)議號是否匹配虛服務(wù)的相關(guān)配置,如果匹配,則按照預(yù)定的算法為本次連接在該虛服務(wù)對應(yīng)的服務(wù)器組中分配一個真實服務(wù)器。比如,可以按照源IP地址Hash算法,目的IP地址Hash算法、源IP地址與目的IP地址Hash算法為本次連接在該虛服務(wù)對應(yīng)的服務(wù)器組中分配一個真實服務(wù)器。
步驟404根據(jù)訪問請求中首包報文信息及分配的真實服務(wù)器的信息為本次連接建立客戶與服務(wù)器的對應(yīng)關(guān)系列表,并在該表中記錄當(dāng)前標識字。該表包括以下信息客戶訪問的源/目的IP地址、源/目的端口號和客戶協(xié)議號,以及所述分配的真實服務(wù)器的地址和端口號;分配的真實服務(wù)器回應(yīng)報文的源/目的IP地址、源/目的端口號和服務(wù)器協(xié)議號,以及經(jīng)過所述網(wǎng)絡(luò)負載均衡設(shè)備后所述回應(yīng)報文需要替換的源IP地址和源端口號。
步驟405根據(jù)建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表連接客戶和分配的真實服務(wù)器。即客戶側(cè)的后續(xù)報文到達網(wǎng)絡(luò)負載均衡設(shè)備后,網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)后續(xù)報文中的信息匹配客戶與服務(wù)器的對應(yīng)關(guān)系列表,獲得對應(yīng)的真實服務(wù)器的地址和端口號;然后將后續(xù)報文中的目的IP地址和目的端口號替換為對應(yīng)的真實服務(wù)器的地址和端口號,并將替換后的報文轉(zhuǎn)發(fā)給對應(yīng)的真實服務(wù)器。同樣,真實服務(wù)器將處理結(jié)果發(fā)送給網(wǎng)絡(luò)負載均衡設(shè)備后,網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)回應(yīng)報文中的信息匹配客戶與服務(wù)器的對應(yīng)關(guān)系列表,獲得對應(yīng)的回應(yīng)報文需要替換的源IP地址和源端口號,并將回應(yīng)報文中的源IP地址和源端口號替換為對應(yīng)的虛服務(wù)的IP地址和虛服務(wù)的端口號,并將替換后的報文轉(zhuǎn)發(fā)給所述客戶。這樣,客戶就無法知道服務(wù)器的真實地址了,保證了服務(wù)器的安全。
在上述步驟404中,也可以按照以下方法建立客戶與服務(wù)器的對應(yīng)關(guān)系,比如,根據(jù)訪問請求中首包報文信息及分配的真實服務(wù)器的信息為本次連接建立一對Cache(高速緩存)客戶端Cache和服務(wù)器端Cache。其中,客戶端Cache內(nèi)容包括客戶訪問的源/目的IP地址、源/目的端口號和協(xié)議號,以及分配的真實服務(wù)器的地址和端口號;服務(wù)器端Cache內(nèi)容包括分配的真實服務(wù)器回應(yīng)報文的源/目的IP地址、源/目的端口號和協(xié)議號,以及經(jīng)過網(wǎng)絡(luò)負載均衡設(shè)備后回應(yīng)報文需要替換的源IP地址和源端口號。
然后,根據(jù)建立的這對Cache連接客戶和分配的真實服務(wù)器。即客戶側(cè)的后續(xù)報文到達網(wǎng)絡(luò)負載均衡設(shè)備后,網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)后續(xù)報文中的信息匹配客戶端Cache,獲得對應(yīng)的真實服務(wù)器的地址和端口號;然后將后續(xù)報文中的目的IP地址和目的端口號替換為客戶端Cache中對應(yīng)的真實服務(wù)器的地址和端口號,并將替換后的報文轉(zhuǎn)發(fā)給對應(yīng)的真實服務(wù)器。同樣,真實服務(wù)器將處理結(jié)果發(fā)送給網(wǎng)絡(luò)負載均衡設(shè)備后,網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)回應(yīng)報文中的信息匹配服務(wù)器端Cache,獲得對應(yīng)的回應(yīng)報文需要替換的源IP地址和源端口號,并將回應(yīng)報文中的源IP地址和源端口號替換為服務(wù)器端Cache中對應(yīng)的虛服務(wù)的IP地址和虛服務(wù)的端口號,并將替換后的報文轉(zhuǎn)發(fā)給所述客戶。
上述連接過程中信號流程如圖5所示。
再參照圖5,圖5描述了圖4中建立客戶和分配的真實服務(wù)器連接過程中信號的流程1.客戶發(fā)送請求報文到網(wǎng)絡(luò)負載均衡設(shè)備;2.網(wǎng)絡(luò)負載均衡設(shè)備用真實服務(wù)器IP地址和端口號替換虛服務(wù)IP地址和虛服務(wù)端口號,將客戶請求發(fā)往真實的服務(wù)器;3.真實服務(wù)器發(fā)送處理結(jié)果回應(yīng)客戶;
4.網(wǎng)絡(luò)負載均衡設(shè)備用虛服務(wù)IP地址和端口號替換真實服務(wù)器IP地址和端口號,將訪問結(jié)果發(fā)往訪問客戶。
上面詳細描述了真實服務(wù)器狀態(tài)正常情況下由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與真實服務(wù)器的連接的過程。
如果由于某種原因,使某臺真實服務(wù)器不可用,則原來連接到該服務(wù)器的上的客戶就會斷開,然后重新發(fā)起連接請求,網(wǎng)絡(luò)負載均衡設(shè)備會根據(jù)目前有效服務(wù)器按預(yù)定算法為新的請求建立新的連接,保證整體流量仍然可以平均分配到不同服務(wù)器上。具體過程是負載均衡器在檢測到服務(wù)器故障后,會將與該服務(wù)器相關(guān)的客戶與服務(wù)器的對應(yīng)關(guān)系列表全部刪除。收到客戶的后續(xù)報文后無法匹配到對應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表,負載均衡器發(fā)送RST(復(fù)位)報文給客戶,客戶收到RST報文后,會馬上重新發(fā)起連接請求。而不必等到發(fā)生故障的服務(wù)器回應(yīng)RST報文,或者客戶根據(jù)TCP協(xié)議重傳報文,直到超時再重建連接。提高了倒換效率。負載均衡設(shè)備為該請求重新分配有效的真實服務(wù)器,按照圖4所示流程建立新的連接。如果網(wǎng)絡(luò)中同時有多個服務(wù)器發(fā)生故障,處理也是一樣的,只要存在有效的服務(wù)器,就會將負載均衡分配到所有有效服務(wù)器上。
當(dāng)不可用服務(wù)器又恢復(fù)正常后,可由網(wǎng)絡(luò)負載均衡設(shè)備實現(xiàn)長連接倒換。具體包括如果沒有新服務(wù)器加入該網(wǎng)絡(luò),則會將原先對應(yīng)于該服務(wù)器的長連接倒換回該服務(wù)器上,保證負載的均衡;如果有新服務(wù)器加入該網(wǎng)絡(luò),為了保證負載的均衡,要重新分配長連接對應(yīng)的服務(wù)器。
通過前面的介紹已經(jīng)得知,網(wǎng)絡(luò)負載均衡設(shè)備對于真實服務(wù)器的管理是以組的形式進行的,也就是說,一個虛服務(wù)中的所有真實服務(wù)器被看作一組,并且為每個這樣的服務(wù)器組建立一個全局變量,也就是前面提到的標識字,每次這個組中某臺真實服務(wù)器由不可用變?yōu)榭捎没蛘哂行碌姆?wù)器加入就將這個值加1。在收到客戶首包建立客戶與服務(wù)器的對應(yīng)關(guān)系列表的時候首先在該列表中記錄這個值,然后收到后續(xù)報文的時候每次都要檢查一下該列表中的這個值和當(dāng)前系統(tǒng)的這個值是否相同。如果相同,則說明真實服務(wù)器沒有狀態(tài)變遷,不進行處理,只需用真實服務(wù)器IP地址和端口號替換虛服務(wù)IP地址和虛服務(wù)端口號后直接轉(zhuǎn)發(fā)該報文即可;如果不相同,則說明服務(wù)器組中的真實服務(wù)器狀態(tài)發(fā)生改變,有兩種情況或者是有新服務(wù)器加入該組,或者是該組中有發(fā)生故障的服務(wù)器又恢復(fù)正常。這時需要利用預(yù)定算法重新分配一臺真實服務(wù)器。如果這次計算的結(jié)果和該列表中記錄的結(jié)果一樣,則說明分配結(jié)果相同,不需要進行處理,只需用真實服務(wù)器IP地址和端口號替換虛服務(wù)IP地址和虛服務(wù)端口號后直接轉(zhuǎn)發(fā)該報文即可;如果這次計算的結(jié)果和該列表中記錄的結(jié)果不一樣,則對應(yīng)于標識字發(fā)生改變的兩個條件同樣表明有兩種情況如果是有新服務(wù)器加入該服務(wù)器組,為了使負載均衡,需要重新分配當(dāng)前的負載;如果是該組中有發(fā)生故障的服務(wù)器又恢復(fù)正常,則需要將原來對應(yīng)于該服務(wù)器的長連接倒換回該服務(wù)器上,同時保證負載的均衡分配。這時要主動刪除已建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表。當(dāng)再次收到客戶的后續(xù)報文時由于查不到相應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表同時又不是首包,所以會給客戶回應(yīng)一個RST(復(fù)位)報文通知客戶重新建立連接。客戶收到RST報文后,會重新發(fā)起連接,這次的連接就會選擇以前使用的服務(wù)器或者新加入的服務(wù)器。這樣,既實現(xiàn)了長連接的倒換,又保證了流量的均衡。其詳細流程參見圖6。
圖6詳細描述了本發(fā)明方法中由網(wǎng)絡(luò)負載均衡設(shè)備實現(xiàn)長連接倒換的步驟的流程步驟601網(wǎng)絡(luò)負載均衡設(shè)備接收客戶的后續(xù)報文;步驟602判斷是否已有對應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表;
如果沒有,則進到步驟604給客戶回應(yīng)RST報文,通知客戶重新建立連接;如果已有,則進到步驟603判斷標識字是否改變,也就是比較客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的標識字與目前系統(tǒng)的服務(wù)器組標識字是否相同;如果相同,則進到步驟607用真實服務(wù)器IP地址和端口號替換虛服務(wù)IP地址和虛服務(wù)端口號后直接轉(zhuǎn)發(fā)后續(xù)報文;如果不相同,則進到步驟605按預(yù)定算法重新分配一個真實服務(wù)器;然后,進到步驟606判斷分配結(jié)果與客戶與服務(wù)器的對應(yīng)關(guān)系列表中的記錄是否相同;如果相同,則進到步驟607用真實服務(wù)器IP地址和端口號替換虛服務(wù)IP地址和虛服務(wù)端口號后直接轉(zhuǎn)發(fā)后續(xù)報文;如果不相同,則進到步驟608刪除已建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表。
當(dāng)再次收到客戶后續(xù)報文時由于查不到對應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表,同時又不是首包,則給客戶回應(yīng)一個RST報文,客戶收到RST報文后會重新發(fā)起連接,負載均衡設(shè)備按照預(yù)定算法保證為這次連接分配以前使用的服務(wù)器或者新加入的服務(wù)器。
在上述描述中曾多次提到為客戶與真實服務(wù)器建立連接時,需要由網(wǎng)絡(luò)負載均衡設(shè)備按照預(yù)定的算法分配一個真實服務(wù)器。在本發(fā)明中,也利用該預(yù)定算法來保證同一客戶在服務(wù)器恢復(fù)正常的情況下分配同一服務(wù)器。下面舉例說明該算法的實現(xiàn)。以IP地址Hash算法為例假設(shè)有三臺真實服務(wù)器A、B、C,那么設(shè)定兩個閾值a1、a2,在收到客戶報文的時候?qū)⒖蛻舻腎P地址(可以是源IP地址、目的IP地址、源IP地址與目的IP地址)提取出來進行Hash運算得到一個值,算法保證同一地址計算得到的值唯一,然后用這個值與設(shè)定的兩個閾值a1、a2相比較,小于a1就選A,大于a1小于a2就選B,大于a2就選C。如果服務(wù)器B不可用了就只剩下A和C,相應(yīng)的閾值也只剩下一個a1,當(dāng)服務(wù)器B恢復(fù)正常之后還是將B放到A和C中間,同時恢復(fù)a1,a2兩個閾值,這樣就能保證在服務(wù)器恢復(fù)正常情況后上次連接它的客戶還能選擇到該服務(wù)器。
雖然通過實施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多變形和變化而不脫離本發(fā)明的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本發(fā)明的精神。
權(quán)利要求
1.一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述方法包括步驟A、建立至少一個虛服務(wù),對應(yīng)一個由具有相同服務(wù)功能的至少一個真實服務(wù)器組成的服務(wù)器組;B、為所述虛服務(wù)設(shè)定一個標識字,以標識對應(yīng)的服務(wù)器組中真實服務(wù)器的變化;C、根據(jù)所述標識字判斷所述真實服務(wù)器狀態(tài)是否發(fā)生變化;D、當(dāng)所述真實服務(wù)器狀態(tài)未發(fā)生變化時,由網(wǎng)絡(luò)負載均衡設(shè)備建立客戶與所述真實服務(wù)器的連接;E、當(dāng)所述真實服務(wù)器狀態(tài)發(fā)生變化時,根據(jù)所述標識字實現(xiàn)長連接的倒換。
2.如權(quán)利要求1所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟D包括D1、在所述網(wǎng)絡(luò)負載均衡設(shè)備上配置所述虛服務(wù)的信息及所述真實服務(wù)器的信息,并建立它們之間的對應(yīng)關(guān)系;D2、根據(jù)所述建立的虛服務(wù)信息與真實服務(wù)器信息的對應(yīng)關(guān)系建立客戶與所述真實服務(wù)器的連接。
3.如權(quán)利要求2所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟D1包括配置所述虛服務(wù)的信息包括虛服務(wù)的IP地址、端口號和協(xié)議號;配置所述真實服務(wù)器的信息包括真實服務(wù)器的IP地址、端口號和協(xié)議號。
4.如權(quán)利要求2或3所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟D2包括D21、所述客戶向所述虛服務(wù)發(fā)起訪問請求;D22、所述網(wǎng)絡(luò)負載均衡設(shè)備根據(jù)所述訪問請求找到對應(yīng)的服務(wù)器組,并按預(yù)定算法為所述客戶請求分配一個真實服務(wù)器;D23、建立所述客戶與所述分配的真實服務(wù)器的連接。
5.如權(quán)利要求4所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述預(yù)定算法包括源IP地址Hash算法,目的IP地址Hash算法、源IP地址與目的IP地址Hash算法。
6.如權(quán)利要求4所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟D23包括D231、根據(jù)所述訪問請求中首包報文信息及所述分配的真實服務(wù)器的信息為本次連接建立客戶與服務(wù)器的對應(yīng)關(guān)系列表;D232、根據(jù)所述建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表連接所述客戶和所述分配的真實服務(wù)器。
7.如權(quán)利要求6所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟D231包括在建立所述客戶與服務(wù)器的對應(yīng)關(guān)系列表時,記錄當(dāng)前所述標識字。
8.如權(quán)利要求6或7所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述客戶與服務(wù)器的對應(yīng)關(guān)系列表包括客戶訪問的源/目的IP地址、源/目的端口號和客戶協(xié)議號,以及所述分配的真實服務(wù)器的地址和端口號;分配的真實服務(wù)器回應(yīng)報文的源/目的IP地址、源/目的端口號和服務(wù)器協(xié)議號,以及經(jīng)過所述網(wǎng)絡(luò)負載均衡設(shè)備后所述回應(yīng)報文需要替換的源IP地址和源端口號。
9.如權(quán)利要求8所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟E包括E1、當(dāng)所述虛服務(wù)中有真實服務(wù)器由不可用變?yōu)榭捎没蛘咝录尤胝鎸嵎?wù)器時,改變所述標識字;E2、所述網(wǎng)絡(luò)負載均衡設(shè)備收到客戶訪問虛服務(wù)的后續(xù)報文后,如果當(dāng)前的標識字與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的標識字不同,則利用所述預(yù)定算法重新分配一個真實的服務(wù)器。
10.如權(quán)利要求9所述的實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,其特征在于,所述步驟E2包括E21、如果分配結(jié)果與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的信息相同,則直接轉(zhuǎn)發(fā)所述后續(xù)報文給所述真實的服務(wù)器;E22、如果分配結(jié)果與所述客戶與服務(wù)器的對應(yīng)關(guān)系列表中記錄的信息不同,則刪除所述建立的客戶與服務(wù)器的對應(yīng)關(guān)系列表;E23、當(dāng)所述網(wǎng)絡(luò)負載均衡設(shè)備再次收到客戶的后續(xù)報文后,查不到對應(yīng)的客戶與服務(wù)器的對應(yīng)關(guān)系列表,則給所述客戶回應(yīng)RST(復(fù)位)報文,通知用戶重新建立連接。
全文摘要
本發(fā)明公開了一種實現(xiàn)網(wǎng)絡(luò)長連接倒換的方法,該方法包括建立至少一個虛服務(wù),對應(yīng)一個由具有相同服務(wù)功能的至少一個真實服務(wù)器組成的服務(wù)器組;為所述虛服務(wù)設(shè)定一個標識字,以標識服務(wù)器組中真實服務(wù)器的變化;根據(jù)所述標識字判斷所述真實服務(wù)器狀態(tài)是否發(fā)生變化;當(dāng)真實服務(wù)器狀態(tài)正常時,建立客戶與真實服務(wù)器的連接;當(dāng)真實服務(wù)器狀態(tài)發(fā)生變化時,根據(jù)標識字實現(xiàn)長連接的倒換。利用本發(fā)明,可以在服務(wù)器出現(xiàn)狀態(tài)變遷時整體流量仍然能平均分配到不同服務(wù)器上,而且保證在服務(wù)器恢復(fù)正常后由網(wǎng)絡(luò)負載均衡設(shè)備實現(xiàn)長連接的倒換。
文檔編號H04L12/28GK1665206SQ20041000832
公開日2005年9月7日 申請日期2004年3月3日 優(yōu)先權(quán)日2004年3月3日
發(fā)明者龔華, 錢劍, 蘭冰 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
武安市| 乌拉特中旗| 化德县| 云阳县| 保亭| 手机| 巴彦淖尔市| 盐边县| 济阳县| 轮台县| 龙胜| 宝清县| 资兴市| 靖江市| 柳州市| 灵山县| 财经| 南投县| 图木舒克市| 南宁市| 永兴县| 尤溪县| 鱼台县| 仙游县| 红安县| 浏阳市| 明光市| 辉县市| 安溪县| 耿马| 探索| 丰顺县| 江阴市| 晴隆县| 都兰县| 平乐县| 东辽县| 横山县| 钟祥市| 阿巴嘎旗| 渭南市|