本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)轉(zhuǎn)發(fā)方法和系統(tǒng)。
背景技術(shù):
在云平臺(tái)負(fù)載均衡過程中,為了實(shí)現(xiàn)多運(yùn)營(yíng)商的接入,需要多個(gè)vpn(virtualprivatenetwork,虛擬專用網(wǎng)絡(luò))路由轉(zhuǎn)發(fā)表來隔離運(yùn)營(yíng)商。每個(gè)vpn路由轉(zhuǎn)發(fā)表需要單獨(dú)部署虛擬負(fù)載均衡器,以為運(yùn)營(yíng)商的流量數(shù)據(jù)提供負(fù)載均衡服務(wù)。若云平臺(tái)有m個(gè)租戶,每個(gè)租戶需要接入n個(gè)運(yùn)營(yíng)商,那么需要部署m*n個(gè)虛擬負(fù)載均衡器提供負(fù)載均衡服務(wù)。此時(shí),虛擬負(fù)載均衡器的數(shù)目與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān),導(dǎo)致云平臺(tái)所需虛擬負(fù)載均衡器過多,虛擬負(fù)載均衡器的資源利用率低。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的在于提供一種數(shù)據(jù)轉(zhuǎn)發(fā)方法和系統(tǒng),旨在解決現(xiàn)有的虛擬負(fù)載均衡器的資源利用率低的技術(shù)問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種數(shù)據(jù)轉(zhuǎn)發(fā)方法,所述數(shù)據(jù)轉(zhuǎn)發(fā)方法包括步驟:
當(dāng)虛擬負(fù)載均衡器vlb從前端子接口接收到linux虛擬服務(wù)器lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs,其中,所述vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,所述一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口;
所述rs接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb;
所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述當(dāng)vlb從前端子接口接收到lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給rs的步驟包括:
當(dāng)所述vlb的協(xié)議層從所述前端子接口接收到所述lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為所述待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息;
將含有所述第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb的應(yīng)用層,以供所述應(yīng)用層接收所述待響應(yīng)數(shù)據(jù)包,將所述第一標(biāo)識(shí)信息從所述待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過所述后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs;
所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs的步驟包括:
所述vlb的應(yīng)用層接收所述應(yīng)答數(shù)據(jù)包,根據(jù)預(yù)設(shè)參數(shù)設(shè)置與所述第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息;
根據(jù)所述第二標(biāo)識(shí)信息選擇路由表,根據(jù)所述路由表將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs的步驟包括:
所述vlb接收所述應(yīng)答數(shù)據(jù)包,更改所述應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包;
將更改后的所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述當(dāng)vlb從前端子接口接收到lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs的步驟之前,還包括:
當(dāng)所述lvs接收到所述待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇所述vlb;
修改所述待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb。
優(yōu)選地,所述當(dāng)所述lvs接收到所述待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇所述vlb的步驟之前,還包括:
當(dāng)防火墻接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將所述待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī);
所述交換機(jī)接收所述待響應(yīng)數(shù)據(jù)包,根據(jù)調(diào)度算法選擇等價(jià)路由,將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述lvs。
此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng),所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)包括虛擬負(fù)載均衡器vlb、應(yīng)用服務(wù)器rs和linux虛擬服務(wù)器lvs;
所述vlb用于當(dāng)從前端子接口接收到所述lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs,其中,所述vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,所述一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口;
所述rs用于接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb;
所述vlb還用于接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述vlb包括:
添加模塊,用于當(dāng)協(xié)議層從所述前端子接口接收到所述lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為所述待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息;
發(fā)送模塊,用于將含有所述第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb的應(yīng)用層,以供所述應(yīng)用層接收所述待響應(yīng)數(shù)據(jù)包,將所述第一標(biāo)識(shí)信息從所述待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過所述后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs;
接收模塊,用于接收所述應(yīng)答數(shù)據(jù)包;
設(shè)置模塊,用于據(jù)預(yù)設(shè)參數(shù)設(shè)置與所述第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息;
選擇模塊,用于根據(jù)所述第二標(biāo)識(shí)信息選擇路由表;
所述發(fā)送模塊還用于根據(jù)所述路由表將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述vlb還用于接收所述應(yīng)答數(shù)據(jù)包,更改所述應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包;將更改后的所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
優(yōu)選地,所述lvs還用于當(dāng)接收到所述待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇所述vlb;修改所述待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb。
優(yōu)選地,所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)還包括交換機(jī)和防火墻;
所述防火墻用于當(dāng)接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將所述待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī);
所述交換機(jī)用于接收所述待響應(yīng)數(shù)據(jù)包,根據(jù)調(diào)度算法選擇等價(jià)路由,將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述lvs。
本發(fā)明通過當(dāng)虛擬負(fù)載均衡器vlb從前端子接口接收到linux虛擬服務(wù)器lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs,其中,所述vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,所述一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口;所述rs接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb;所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。實(shí)現(xiàn)了在云平臺(tái)負(fù)載均衡過程中,虛擬負(fù)載均衡器的數(shù)目不再與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān),提高了虛擬負(fù)載均衡器的資源利用率。
附圖說明
圖1為本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)方法第一實(shí)施例的流程示意圖;
圖2為本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)方法第二實(shí)施例的流程示意圖;
圖3為本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)較佳實(shí)施例的功能模塊示意圖。
本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明提供一種數(shù)據(jù)轉(zhuǎn)發(fā)方法。
參照?qǐng)D1,圖1為本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)方法第一實(shí)施例的流程示意圖。
在本實(shí)施例中,提供了數(shù)據(jù)轉(zhuǎn)發(fā)方法的實(shí)施例,需要說明的是,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
所述數(shù)據(jù)轉(zhuǎn)發(fā)方法包括:
步驟s10,當(dāng)虛擬負(fù)載均衡器vlb從前端子接口接收到linux虛擬服務(wù)器lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs,其中,所述vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,所述一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口。
當(dāng)vlb(virtualloadbalancer,虛擬負(fù)載均衡器)從前端子接口接收到lvs(linuxvirtualserver,linux開源的負(fù)載均衡模塊)發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過與前端子接口對(duì)應(yīng)的后端子接口將待響應(yīng)數(shù)據(jù)包發(fā)送給rs(realserver,應(yīng)用服務(wù)器)。其中,一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口,即一個(gè)前端子接口和第一后端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商流量的出入口??梢岳斫獾氖?,對(duì)應(yīng)于一個(gè)vlb中的前向網(wǎng)口,設(shè)置了多個(gè)前端子接口;一個(gè)vlb中的后向網(wǎng)口,設(shè)置了多個(gè)后端子接口,即一個(gè)vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,后向網(wǎng)口對(duì)應(yīng)著至少一個(gè)后端子接口。
步驟s20,所述rs接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb。
步驟s30,所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
當(dāng)rs接收到vlb發(fā)送的待響應(yīng)數(shù)據(jù)包后,響應(yīng)待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,并將應(yīng)答數(shù)據(jù)包從與前端子接口對(duì)應(yīng)的后端子接口發(fā)送給vlb。vlb接收rs發(fā)送的應(yīng)答數(shù)據(jù)包,將應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs。
在本實(shí)施例中,若要為m個(gè)租戶提供負(fù)載均衡服務(wù),且每個(gè)租戶接入了n個(gè)運(yùn)營(yíng)商,則只需要m個(gè)負(fù)載均衡器即可,相比現(xiàn)有方案需要m*n個(gè)虛擬負(fù)載均衡器(每個(gè)租戶的每個(gè)運(yùn)營(yíng)商都需要對(duì)應(yīng)著一個(gè)虛擬負(fù)載均衡器)而言,所需虛擬負(fù)載均衡器的數(shù)量少很多。在本發(fā)明中,虛擬負(fù)載均衡器的數(shù)目不再與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān)??梢岳斫獾氖?,一個(gè)租戶可對(duì)應(yīng)一個(gè)虛擬負(fù)載均衡器即可,不管該租戶是否接入多個(gè)運(yùn)營(yíng)商。
在本實(shí)施例中,以租戶或租戶的負(fù)載均衡服務(wù)為單位分配vlb,簡(jiǎn)化了負(fù)載均衡系統(tǒng)的管理邏輯。
進(jìn)一步地,所述步驟s10包括:
步驟a,當(dāng)所述vlb的協(xié)議層從所述前端子接口接收到所述lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為所述待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息。
步驟b,將含有所述第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb的應(yīng)用層,以供所述應(yīng)用層接收所述待響應(yīng)數(shù)據(jù)包,將所述第一標(biāo)識(shí)信息從所述待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過所述后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs。
進(jìn)一步地,當(dāng)vlb的協(xié)議層從前端子接口接收到lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息,將含有第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給vlb的應(yīng)用層。vlb的應(yīng)用層接收待響應(yīng)數(shù)據(jù)包,將第一標(biāo)識(shí)信息從待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過與前端子接口對(duì)應(yīng)的后端子接口將待響應(yīng)數(shù)據(jù)包發(fā)送給rs。需要說明的是,在為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息過程中,設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的參數(shù)。默認(rèn)路由是一種特殊的靜態(tài)路由,指的是當(dāng)路由表中與數(shù)據(jù)包的目的地址之間沒有匹配的表項(xiàng)時(shí)路由器能夠做出的選擇。
進(jìn)一步地,所述步驟s30包括:
步驟c,所述vlb的應(yīng)用層接收所述應(yīng)答數(shù)據(jù)包,根據(jù)預(yù)設(shè)參數(shù)設(shè)置與所述第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息。
步驟d,根據(jù)所述第二標(biāo)識(shí)信息選擇路由表,根據(jù)所述路由表將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
當(dāng)vlb的應(yīng)用層接收到rs發(fā)送的應(yīng)答數(shù)據(jù)包時(shí),根據(jù)預(yù)設(shè)參數(shù)設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息。vlb的應(yīng)用層根據(jù)第二標(biāo)識(shí)信息選擇路由表,根據(jù)路由表將應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs。需要說明的是,預(yù)設(shè)參數(shù)即為在為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息過程中,所設(shè)置的與第一標(biāo)識(shí)信息對(duì)應(yīng)的參數(shù),通過預(yù)設(shè)參數(shù),可設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息。在本實(shí)施例中,與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息可理解為第二標(biāo)識(shí)信息與第一標(biāo)識(shí)信息相同,也可理解為第二標(biāo)識(shí)信息和第一標(biāo)識(shí)信息之間存在映射關(guān)系。
需要說明的是,為了防止傳輸過程中待響應(yīng)數(shù)據(jù)包被改變,以及rs響應(yīng)該待響應(yīng)數(shù)據(jù)包時(shí),由于待響應(yīng)數(shù)據(jù)包中含有第一標(biāo)識(shí)信息,從而得到錯(cuò)誤的應(yīng)答數(shù)據(jù)包,所以第一標(biāo)識(shí)信息只存在linux內(nèi)核的協(xié)議棧中,即存在linux內(nèi)核的協(xié)議層中,當(dāng)待響應(yīng)數(shù)據(jù)包到了vlb的應(yīng)用層就不會(huì)再攜帶第一標(biāo)識(shí)信息了。
進(jìn)一步地,所述步驟s30還包括:
步驟e,所述vlb接收所述應(yīng)答數(shù)據(jù)包,更改所述應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包;
步驟f,將更改后的所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。
當(dāng)vlb接收到應(yīng)答數(shù)據(jù)包后,更改應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包,將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs,以使應(yīng)答數(shù)據(jù)包能按照正確的路徑發(fā)送出去。進(jìn)一步地,在vlb將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs過程中,具體是根據(jù)應(yīng)答數(shù)據(jù)包中的第二標(biāo)識(shí)信息將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs。
本實(shí)施例通過當(dāng)虛擬負(fù)載均衡器vlb從前端子接口接收到linux虛擬服務(wù)器lvs發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs,其中,一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口;所述rs接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb;所述vlb接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs。實(shí)現(xiàn)了在云平臺(tái)負(fù)載均衡過程中,虛擬負(fù)載均衡器的數(shù)目不再與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān),提高了虛擬負(fù)載均衡器的資源利用率。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)方法第二實(shí)施例。
所述數(shù)據(jù)轉(zhuǎn)發(fā)方法第二實(shí)施例與所述數(shù)據(jù)轉(zhuǎn)發(fā)方法第一實(shí)施例的區(qū)別在于,參照?qǐng)D2,所述數(shù)據(jù)轉(zhuǎn)發(fā)方法還包括:
步驟s40,當(dāng)所述lvs接收到所述待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇所述vlb。
步驟s50,修改所述待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb。
當(dāng)lvs接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇vlb。具體地,是由lvs中的ipvs(ipvirtualserver,ip虛擬服務(wù)器)接收待響應(yīng)數(shù)據(jù)包。當(dāng)lvs接收到待響應(yīng)數(shù)據(jù)包時(shí),修改待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的待響應(yīng)數(shù)據(jù)包發(fā)送給所選擇的vlb。在本實(shí)施例中,lvs通過dr(directrouting)的方式將待響應(yīng)數(shù)據(jù)的mac(mediumaccesscontrol,媒體訪問控制)地址修改vlb的mac地址,以使vlb可以接收到待響應(yīng)數(shù)據(jù)包。
進(jìn)一步地,所述數(shù)據(jù)轉(zhuǎn)發(fā)方法還包括:
步驟g,當(dāng)防火墻接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將所述待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī)。
步驟h,所述交換機(jī)接收所述待響應(yīng)數(shù)據(jù)包,根據(jù)調(diào)度算法選擇等價(jià)路由,將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述lvs。
進(jìn)一步地,當(dāng)防火墻接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換為預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī)。當(dāng)交換機(jī)接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇等價(jià)路由,將待響應(yīng)數(shù)據(jù)包發(fā)送給lvs。具體地,通過dnat(destinationnetworkaddresstranslation,目的地址轉(zhuǎn)換)將待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換為vip:vport形式的目的地址。
在本實(shí)施例中,調(diào)度算法包括靜態(tài)調(diào)度算法和動(dòng)態(tài)調(diào)度算法,動(dòng)態(tài)調(diào)度算法包括但不限于lc(least-connection,最少連接)算法和lblc(locality-basedleastconnection,基于局部性的最少連接)算法,靜態(tài)調(diào)度算法包括但不限于dh(destinationhashing,目標(biāo)地址散列)算法、sh(sourcehashing,源地址散列)算法和rr(roundrobin,輪詢調(diào)度)算法。
輪詢調(diào)度算法的原理是每一次把來自用戶的請(qǐng)求輪流分配給內(nèi)部中的服務(wù)器,從1開始,直到n(內(nèi)部服務(wù)器個(gè)數(shù)),然后重新開始循環(huán)。源地址散列調(diào)度算法是根據(jù)請(qǐng)求的源ip(internetprotocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址,作為散列鍵(hashkey)從靜態(tài)分配的散列表找出對(duì)應(yīng)的服務(wù)器,若該服務(wù)器是可用的并且沒有超負(fù)荷,將請(qǐng)求發(fā)送到該服務(wù)器,否則返回空。目標(biāo)地址散列調(diào)度算法是一種靜態(tài)映射算法,通過一個(gè)散列(hash)函數(shù)將一個(gè)目標(biāo)ip地址映射到一臺(tái)服務(wù)器。最少連接調(diào)度算法是通過服務(wù)器當(dāng)前所活躍的連接數(shù)來估計(jì)服務(wù)器的負(fù)載均衡,調(diào)度器需要記錄各個(gè)服務(wù)器已建立連接的數(shù)目,當(dāng)一個(gè)請(qǐng)求被調(diào)度到某臺(tái)服務(wù)器,其連接數(shù)加1,當(dāng)連接中止或超時(shí),其連接數(shù)減一,在系統(tǒng)實(shí)現(xiàn)時(shí),我們也引入當(dāng)服務(wù)器的權(quán)值為0時(shí),表示該服務(wù)器不可用而不被調(diào)度?;诰植啃缘淖钌龠B接算法是針對(duì)請(qǐng)求報(bào)文的目標(biāo)ip地址的負(fù)載均衡調(diào)度。
本實(shí)施例通過當(dāng)lvs接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇vlb,以實(shí)現(xiàn)lvs將待響應(yīng)數(shù)據(jù)包發(fā)送給當(dāng)前負(fù)荷較小的vlb。
本發(fā)明進(jìn)一步提供一種數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)。
參照?qǐng)D3,圖3為本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)的較佳實(shí)施例的功能模塊示意圖。
需要強(qiáng)調(diào)的是,對(duì)本領(lǐng)域的技術(shù)人員來說,圖3所示模塊圖僅僅是一個(gè)較佳實(shí)施例的示例圖,本領(lǐng)域的技術(shù)人員圍繞圖3所示的數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)的模塊,可輕易進(jìn)行新的模塊的補(bǔ)充;各模塊的名稱是自定義名稱,僅用于輔助理解該數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)的各個(gè)程序功能塊,不用于限定本發(fā)明的技術(shù)方案,本發(fā)明技術(shù)方案的核心是,各自定義名稱的模塊所要達(dá)成的功能。
在本實(shí)施例中,所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)包括虛擬負(fù)載均衡器vlb10、應(yīng)用服務(wù)器rs20和linux虛擬服務(wù)器lvs30。
所述vlb10用于當(dāng)從前端子接口接收到所述lvs30發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs20,其中,一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口。
當(dāng)vlb10(virtualloadbalancer,虛擬負(fù)載均衡器)從前端子接口接收到lvs30(linuxvirtualserver,linux開源的負(fù)載均衡模塊)發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過與前端子接口對(duì)應(yīng)的后端子接口將待響應(yīng)數(shù)據(jù)包發(fā)送給rs20(realserver,應(yīng)用服務(wù)器)。其中,一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口,即一個(gè)前端子接口和第一后端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商流量的出入口??梢岳斫獾氖牵瑢?duì)應(yīng)于一個(gè)vlb10中的前向網(wǎng)口,設(shè)置了多個(gè)前端子接口;一個(gè)vlb10中的后向網(wǎng)口,設(shè)置了多個(gè)后端子接口。
所述rs20用于接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb10。
所述vlb10還用于接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs30。
當(dāng)rs20接收到vlb10發(fā)送的待響應(yīng)數(shù)據(jù)包后,響應(yīng)待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,并將應(yīng)答數(shù)據(jù)包從與前端子接口對(duì)應(yīng)的后端子接口發(fā)送給vlb10。vlb10接收rs20發(fā)送的應(yīng)答數(shù)據(jù)包,將應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs。
在本實(shí)施例中,若要為m個(gè)租戶提供負(fù)載均衡服務(wù),且每個(gè)租戶接入了n個(gè)運(yùn)營(yíng)商,則只需要m個(gè)負(fù)載均衡器即可,相比現(xiàn)有方案需要m*n個(gè)虛擬負(fù)載均衡器(每個(gè)租戶的每個(gè)運(yùn)營(yíng)商都需要對(duì)應(yīng)著一個(gè)虛擬負(fù)載均衡器)而言,所需虛擬負(fù)載均衡器的數(shù)量少很多。在本發(fā)明中,虛擬負(fù)載均衡器的數(shù)目不再與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān)。可以理解的是,一個(gè)租戶可對(duì)應(yīng)一個(gè)虛擬負(fù)載均衡器即可,不管該租戶是否接入多個(gè)運(yùn)營(yíng)商,即一個(gè)vlb的前向網(wǎng)口對(duì)應(yīng)著至少一個(gè)前端子接口,后向網(wǎng)口對(duì)應(yīng)著至少一個(gè)后端子接口。
在本實(shí)施例中,以租戶或租戶的負(fù)載均衡服務(wù)為單位分配vlb,簡(jiǎn)化了負(fù)載均衡系統(tǒng)的管理邏輯。
進(jìn)一步地,所述vlb10包括:
添加模塊,用于當(dāng)協(xié)議層從所述前端子接口接收到所述lvs30發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為所述待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息。
發(fā)送模塊,用于將含有所述第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb10的應(yīng)用層,以供所述應(yīng)用層接收所述待響應(yīng)數(shù)據(jù)包,將所述第一標(biāo)識(shí)信息從所述待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過所述后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述rs20。
進(jìn)一步地,當(dāng)vlb10的協(xié)議層從前端子接口接收到lvs30發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息,將含有第一標(biāo)識(shí)信息的待響應(yīng)數(shù)據(jù)包發(fā)送給vlb10的應(yīng)用層。vlb10的應(yīng)用層接收待響應(yīng)數(shù)據(jù)包,將第一標(biāo)識(shí)信息從待響應(yīng)數(shù)據(jù)包中刪除,并根據(jù)默認(rèn)路由,通過與前端子接口對(duì)應(yīng)的后端子接口將待響應(yīng)數(shù)據(jù)包發(fā)送給rs20。需要說明的是,在為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息過程中,設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的參數(shù)。默認(rèn)路由是一種特殊的靜態(tài)路由,指的是當(dāng)路由表中與數(shù)據(jù)包的目的地址之間沒有匹配的表項(xiàng)時(shí)路由器能夠做出的選擇。
接收模塊,用于接收所述應(yīng)答數(shù)據(jù)包;
設(shè)置模塊,用于據(jù)預(yù)設(shè)參數(shù)設(shè)置與所述第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息,將所述第二標(biāo)識(shí)信息作為所述應(yīng)答數(shù)據(jù)包的標(biāo)識(shí)信息。
選擇模塊,用于根據(jù)所述第二標(biāo)識(shí)信息選擇路由表。
所述發(fā)送模塊還用于根據(jù)所述路由表將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs30。
當(dāng)vlb10的應(yīng)用層接收到rs20發(fā)送的應(yīng)答數(shù)據(jù)包時(shí),根據(jù)預(yù)設(shè)參數(shù)設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息。vlb10的應(yīng)用層根據(jù)第二標(biāo)識(shí)信息選擇路由表,根據(jù)路由表將應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs30。需要說明的是,預(yù)設(shè)參數(shù)即為在為待響應(yīng)數(shù)據(jù)包添加第一標(biāo)識(shí)信息過程中,所設(shè)置的與第一標(biāo)識(shí)信息對(duì)應(yīng)的參數(shù),通過預(yù)設(shè)參數(shù),可設(shè)置與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息。在本實(shí)施例中,與第一標(biāo)識(shí)信息對(duì)應(yīng)的第二標(biāo)識(shí)信息可理解為第二標(biāo)識(shí)信息與第一標(biāo)識(shí)信息相同,也可理解為第二標(biāo)識(shí)信息和第一標(biāo)識(shí)信息之間存在映射關(guān)系。
需要說明的是,為了防止傳輸過程中待響應(yīng)數(shù)據(jù)包被改變,以及rs響應(yīng)該待響應(yīng)數(shù)據(jù)包時(shí),由于待響應(yīng)數(shù)據(jù)包中含有第一標(biāo)識(shí)信息,從而得到錯(cuò)誤的應(yīng)答數(shù)據(jù)包,所以第一標(biāo)識(shí)信息只存在linux內(nèi)核的協(xié)議棧中,即存在linux內(nèi)核的協(xié)議層中,當(dāng)待響應(yīng)數(shù)據(jù)包到了vlb10的應(yīng)用層就不會(huì)再攜帶第一標(biāo)識(shí)信息了。
進(jìn)一步地,所述vlb10還用于接收所述應(yīng)答數(shù)據(jù)包,更改所述應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包;將更改后的所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs30。
當(dāng)vlb10接收到應(yīng)答數(shù)據(jù)包后,更改應(yīng)答數(shù)據(jù)包的源地址和目的地址,得到更改后的應(yīng)答數(shù)據(jù)包,將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs30,以使應(yīng)答數(shù)據(jù)包能按照正確的路徑發(fā)送出去。進(jìn)一步地,在vlb10將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs30過程中,具體是根據(jù)應(yīng)答數(shù)據(jù)包中的第二標(biāo)識(shí)信息將更改后的應(yīng)答數(shù)據(jù)包從接收待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給lvs30。
本實(shí)施例通過當(dāng)虛擬負(fù)載均衡器vlb10從前端子接口接收到linux虛擬服務(wù)器lvs30發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),通過后端子接口將所述待響應(yīng)數(shù)據(jù)包發(fā)送給應(yīng)用服務(wù)器rs20,其中,一個(gè)前端子接口對(duì)應(yīng)著一個(gè)運(yùn)營(yíng)商的數(shù)據(jù)接口;所述rs20接收并響應(yīng)所述待響應(yīng)數(shù)據(jù)包,得到應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從所述后端子接口發(fā)送到所述vlb10;所述vlb10接收所述應(yīng)答數(shù)據(jù)包,將所述應(yīng)答數(shù)據(jù)包從接收所述待響應(yīng)數(shù)據(jù)包的前端子接口發(fā)送給所述lvs30。實(shí)現(xiàn)了在云平臺(tái)負(fù)載均衡過程中,虛擬負(fù)載均衡器的數(shù)目不再與運(yùn)營(yíng)商的個(gè)數(shù)正相關(guān),提高了虛擬負(fù)載均衡器的資源利用率。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)第二實(shí)施例。
所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)第二實(shí)施例與所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)第一實(shí)施例的區(qū)別在于,所述lvs30還用于當(dāng)接收到所述待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇所述vlb10;修改所述待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述vlb10。
當(dāng)lvs30接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇vlb10。具體地,是由lvs30中的ipvs(ipvirtualserver,ip虛擬服務(wù)器)接收待響應(yīng)數(shù)據(jù)包。當(dāng)lvs30接收到待響應(yīng)數(shù)據(jù)包時(shí),修改待響應(yīng)數(shù)據(jù)包的物理地址,將修改后的待響應(yīng)數(shù)據(jù)包發(fā)送給所選擇的vlb10。在本實(shí)施例中,lvs30通過dr(directrouting)的方式將待響應(yīng)數(shù)據(jù)的mac(mediumaccesscontrol,媒體訪問控制)地址修改vlb10的mac地址,以使vlb10可以接收到待響應(yīng)數(shù)據(jù)包。
進(jìn)一步地,所述數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)還包括交換機(jī)和防火墻;
所述防火墻用于當(dāng)接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將所述待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的所述待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī);
所述交換機(jī)用于接收所述待響應(yīng)數(shù)據(jù)包,根據(jù)調(diào)度算法選擇等價(jià)路由,將所述待響應(yīng)數(shù)據(jù)包發(fā)送給所述lvs30。
進(jìn)一步地,當(dāng)防火墻接收到客戶端發(fā)送的待響應(yīng)數(shù)據(jù)包時(shí),將待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換為預(yù)設(shè)形式的目的地址,并將轉(zhuǎn)換目的地址后的待響應(yīng)數(shù)據(jù)包發(fā)送給交換機(jī)。當(dāng)交換機(jī)接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇等價(jià)路由,將待響應(yīng)數(shù)據(jù)包發(fā)送給lvs30。具體地,通過dnat(destinationnetworkaddresstranslation,目的地址轉(zhuǎn)換)將待響應(yīng)數(shù)據(jù)包的目的地址轉(zhuǎn)換為vip:vport形式的目的地址。
在本實(shí)施例中,調(diào)度算法包括靜態(tài)調(diào)度算法和動(dòng)態(tài)調(diào)度算法,動(dòng)態(tài)調(diào)度算法包括但不限于lc(least-connection,最少連接)算法和lblc(locality-basedleastconnection,基于局部性的最少連接)算法,靜態(tài)調(diào)度算法包括但不限于dh(destinationhashing,目標(biāo)地址散列)算法、sh(sourcehashing,源地址散列)算法和rr(roundrobin,輪詢調(diào)度)算法。
輪詢調(diào)度算法的原理是每一次把來自用戶的請(qǐng)求輪流分配給內(nèi)部中的服務(wù)器,從1開始,直到n(內(nèi)部服務(wù)器個(gè)數(shù)),然后重新開始循環(huán)。源地址散列調(diào)度算法是根據(jù)請(qǐng)求的源ip(internetprotocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址,作為散列鍵(hashkey)從靜態(tài)分配的散列表找出對(duì)應(yīng)的服務(wù)器,若該服務(wù)器是可用的并且沒有超負(fù)荷,將請(qǐng)求發(fā)送到該服務(wù)器,否則返回空。目標(biāo)地址散列調(diào)度算法是一種靜態(tài)映射算法,通過一個(gè)散列(hash)函數(shù)將一個(gè)目標(biāo)ip地址映射到一臺(tái)服務(wù)器。最少連接調(diào)度算法是通過服務(wù)器當(dāng)前所活躍的連接數(shù)來估計(jì)服務(wù)器的負(fù)載均衡,調(diào)度器需要記錄各個(gè)服務(wù)器已建立連接的數(shù)目,當(dāng)一個(gè)請(qǐng)求被調(diào)度到某臺(tái)服務(wù)器,其連接數(shù)加1,當(dāng)連接中止或超時(shí),其連接數(shù)減一,在系統(tǒng)實(shí)現(xiàn)時(shí),我們也引入當(dāng)服務(wù)器的權(quán)值為0時(shí),表示該服務(wù)器不可用而不被調(diào)度。基于局部性的最少連接算法是針對(duì)請(qǐng)求報(bào)文的目標(biāo)ip地址的負(fù)載均衡調(diào)度。
本實(shí)施例通過當(dāng)lvs30接收到待響應(yīng)數(shù)據(jù)包時(shí),根據(jù)調(diào)度算法選擇vlb10,以實(shí)現(xiàn)lvs30將待響應(yīng)數(shù)據(jù)包發(fā)送給當(dāng)前負(fù)荷較小的vlb10。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。