一種跨idc的數(shù)據(jù)傳輸系統(tǒng)及方法
【技術領域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)數(shù)據(jù)處理的技術領域,具體地涉及一種跨IDC的數(shù)據(jù)傳輸系統(tǒng)及方法,即在本地互聯(lián)網(wǎng)數(shù)據(jù)中心(IDC,Internet Data Center)和異地互聯(lián)網(wǎng)數(shù)據(jù)中心之間進行信息的交互。
【背景技術】
[0002]數(shù)據(jù)源和數(shù)據(jù)宿(本地IDC和異地IDC)之間需要進行大量的消息交互,因此需要建立信息交互服務,為不同服務應用之間提供信息交互渠道,保證雙方數(shù)據(jù)的實時性。
[0003]現(xiàn)有的技術方案有如下幾種:
[0004]1.直接針對不同服務建立連接,各自進行數(shù)據(jù)同步。
[0005]2.建立代理服務,對數(shù)據(jù)進行統(tǒng)一處理。
[0006]現(xiàn)有技術存在的不足為:
[0007]方案I需建立大量連接,管理不便,當進行跨IDC傳輸時需要將大量服務器暴露在外網(wǎng)之中,維護不便,當一方服務變更時,另一方需要相應調(diào)整,適應性差。
[0008]方案2建立代理服務,增加了靈活性,減少了服務器直接暴露在公網(wǎng)中的危險,但是需要代理服務器集群以保證服務可用性,大幅增加了服務的成本。當進行復雜通信時仍需在數(shù)據(jù)源和數(shù)據(jù)宿之間建立網(wǎng)絡連接,進行直接通信。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的技術解決問題是:克服現(xiàn)有技術的不足,提供一種跨IDC的數(shù)據(jù)傳輸系統(tǒng),其減少了系統(tǒng)損耗,增加大幅增加數(shù)據(jù)吞吐量和資源利用率,有效提高服器利用率。
[0010]本發(fā)明的技術解決方案是:這種跨IDC的數(shù)據(jù)傳輸系統(tǒng),其包括生產(chǎn)者服務器、消費者服務器、本地IDC轉發(fā)服務器、異地IDC轉發(fā)服務器、本地路由器、異地路由器;生產(chǎn)者服務器發(fā)出的信息通過本地路由器轉為數(shù)據(jù)包后發(fā)送到本地IDC轉發(fā)服務器,本地IDC轉發(fā)服務器采用U1機制改寫數(shù)據(jù)包的報頭并處理后通過廣域網(wǎng)發(fā)送到異地IDC轉發(fā)服務器,異地IDC轉發(fā)服務器根據(jù)本地的對照信息將數(shù)據(jù)包的數(shù)據(jù)恢復后發(fā)送到消費者服務器;消費者服務器的返回信息通過異地路由器轉為數(shù)據(jù)包后發(fā)送到異地IDC轉發(fā)服務器,異地IDC轉發(fā)服務器采用u1機制改寫數(shù)據(jù)包的報頭并處理后通過廣域網(wǎng)發(fā)送到本地IDC轉發(fā)服務器,本地IDC轉發(fā)服務器根據(jù)本地的對照信息將數(shù)據(jù)包的數(shù)據(jù)恢復后發(fā)送到生產(chǎn)者服務器。
[0011]還提供了一種跨IDC的數(shù)據(jù)傳輸方法,該方法包括以下步驟:
[0012](I)數(shù)據(jù)中心IDC之間約定數(shù)據(jù)服務器對應關系,建立服務映射表,同時修改本地路由上的路由表,將異地IDC服務IP映射到本地的轉發(fā)服務器上;異地IDC也需要修改路由表,與本地相對應;
[0013](2)同時啟動本地IDC轉發(fā)服務器和異地IDC轉發(fā)服務器,每個轉發(fā)服務器接收來自生產(chǎn)者服務器的數(shù)據(jù)包,修改數(shù)據(jù)包報頭,報頭添加原始目的地址信息按照規(guī)則進行數(shù)據(jù)包的壓縮、過濾,然后發(fā)送消息至異地IDC轉發(fā)服務器;
[0014](3)異地IDC轉發(fā)服務器讀取數(shù)據(jù)包報文中原始目的地址信息,修改報頭及報文,將消息發(fā)送到消費者服務器;
[0015](4)消費者服務器響應消息后將返回響應信息;
[0016](5)異地IDC轉發(fā)服務器讀取響應信息,修改數(shù)據(jù)包報頭,報頭添加原始目的地址信息按照規(guī)則進行數(shù)據(jù)包的壓縮、過濾,然后發(fā)送消息至本地IDC轉發(fā)服務器;
[0017](6)本地IDC轉發(fā)服務器讀取數(shù)據(jù)包報文中原始目的地址信息,修改報頭及報文,將消息發(fā)送到生產(chǎn)者服務器。
[0018]還提供了一種跨IDC的數(shù)據(jù)傳輸方法,該方法包括以下步驟:
[0019](I)生產(chǎn)者服務器發(fā)送信息,消息正常發(fā)出,dst 20.1.0.1,src 10.0.0.1 ;
[0020](II)在網(wǎng)關處dstl0.1.0.1綁定DPDK Serverl的macl處,消息發(fā)送至本地IDC轉發(fā)服務器;
[0021 ] (III)本地IDC轉發(fā)服務器處理該消息,消息處理為dst 68.20.1.1,src68.10.1.1,目的mac地址為路由mac地址;
[0022](IV)消息發(fā)送至廣域網(wǎng);
[0023](V)消息自廣域網(wǎng)接收;
[0024](VI)路由根據(jù)IP地址將消息發(fā)送到異地IDC轉發(fā)服務器;
[0025](VII)異地IDC轉發(fā)服務器接收處理該消息,消息處理為dst 10.1.0.1,src30.1.0.1 ;
[0026](VIII)消費者服務器接收到消息 dst 10.1.0.1, src 30.1.0.1 ;
[0027](IX)消費者服務器處理消息,返回信息dst 30.1.0.1, src 10.1.0.1 ;
[0028](X)網(wǎng)關處dst30.1.0.1綁定異地IDC轉發(fā)服務器的macl處,消息發(fā)送至異地IDC轉發(fā)服務器;
[0029](XI)異地IDC轉發(fā)服務器處理該消息,消息處理為dst 68.10.1.1,src68.20.1.1,目的mac地址為路由mac地址;
[0030](XII)消息發(fā)送至廣域網(wǎng);
[0031](XIII)消息自廣域網(wǎng)接收;
[0032](XIV)路由根據(jù)IP地址將消息發(fā)送到本地IDC轉發(fā)服務器;
[0033](XV)本地IDC轉發(fā)服務器處理消息,消息處理為dst 10.0.0.1, src 20.1.0.1 ;
[0034](XVI)消息根據(jù)IP地址發(fā)送至生產(chǎn)者服務器。
[0035]本發(fā)明利用Linux提供了 U1機制可以使網(wǎng)卡運行繞過內(nèi)核態(tài),減少中斷發(fā)生,提高網(wǎng)卡效率,提高數(shù)據(jù)發(fā)送能力;在此基礎上建立數(shù)據(jù)轉發(fā)中心可以將數(shù)據(jù)集中轉發(fā),實現(xiàn)數(shù)據(jù)跨IDC傳輸,利用壓縮技術提高數(shù)據(jù)發(fā)送能力;在數(shù)據(jù)發(fā)送和接收端同時采用這種架構可以實現(xiàn)數(shù)據(jù)中心的統(tǒng)一數(shù)據(jù)交互,大大減少網(wǎng)絡傳輸所需服務器,實現(xiàn)統(tǒng)一管理,有效降低實施及監(jiān)控的成本;采用u1機制的轉發(fā)服務器可以直接改寫數(shù)據(jù)包包頭,實現(xiàn)代理功能,轉發(fā)服務器充分利用自身的計算能力;因此減少了系統(tǒng)損耗,增加大幅增加數(shù)據(jù)吞吐量和資源利用率,有效提高服器利用率。
【附圖說明】
[0036]圖1為根據(jù)本發(fā)明的跨IDC的數(shù)據(jù)傳輸系統(tǒng)的結構示意圖。
[0037]圖2為根據(jù)本發(fā)明的跨IDC的數(shù)據(jù)傳輸方法的流程圖。
[0038]圖3為根據(jù)本發(fā)明的本地IDC轉發(fā)服務器和異地IDC轉發(fā)服務器所執(zhí)行步驟的流程圖。
【具體實施方式】
[0039]如圖1所示,這種跨IDC的數(shù)據(jù)傳輸系統(tǒng),其包括生產(chǎn)者服務器、消費者服務器、本地IDC轉發(fā)服務器、異地IDC轉發(fā)服務器、本地路由器、異地路由器;生產(chǎn)者服務器發(fā)出的信息通過本地路由器轉為數(shù)據(jù)包后發(fā)送到本地IDC轉發(fā)服務器,本地IDC轉發(fā)服務器采用u1機制改寫數(shù)據(jù)包的報頭并處理后通過廣域網(wǎng)發(fā)送到異地IDC轉發(fā)服務器,異地IDC轉發(fā)服務器根據(jù)本地的對照信息將數(shù)據(jù)包的數(shù)據(jù)恢復后發(fā)送到消費者服務器;消費者服務器的返回信息通過異地路由器轉為數(shù)據(jù)包后發(fā)送到異地IDC轉發(fā)服務器,異地IDC轉發(fā)服務器采用u1機制改寫數(shù)據(jù)包的報頭并處理后通過廣域網(wǎng)發(fā)送到本地IDC轉發(fā)服務器,本地IDC轉發(fā)服務器根據(jù)本地的對照信息將數(shù)據(jù)包的數(shù)據(jù)恢復后發(fā)送到生產(chǎn)者服務器。
[0040]如圖2所示,還提供了一種跨IDC的數(shù)據(jù)傳輸方法,該方法包括以下步驟:
[0041](I)數(shù)據(jù)中心IDC之間約定數(shù)據(jù)服務器對應關系,建立服務映射表,同時修改本地路由上的路由表,將異地IDC服務IP映射到本地的轉發(fā)服務器上;異地IDC也需要修改路由表,與本地相對應;
[0042](2)同時啟動本地IDC轉發(fā)服務器和異地IDC轉發(fā)服務器,每個轉發(fā)服務器接收來自生產(chǎn)者服務器的數(shù)據(jù)包,修改數(shù)據(jù)包報頭,報頭添加原始目的地址信息按照規(guī)則進行數(shù)據(jù)包的壓縮、過濾,然后發(fā)送消息至異地IDC轉發(fā)服務器;
[0043](3)異地IDC轉發(fā)服務器讀取數(shù)據(jù)包報文中原始目的地址信息,修改報頭及報文,將消息發(fā)送到消費者服務器;
[0044](4)消費者服務器響應消息后將返回響應信息;
[0045](5)異地IDC轉發(fā)服務器讀取響應信息,修改數(shù)據(jù)包報頭,報頭添加原始目的地址信息按照規(guī)則進行數(shù)據(jù)包的壓縮、過濾,然后發(fā)送消息至本地IDC轉發(fā)服務器;
[0046](6)本地IDC轉發(fā)服務器讀取數(shù)據(jù)包報文中原始目的地址信息,修改報頭及報文,將消息發(fā)送到生產(chǎn)者服務器。
[0047]還提供了一種跨IDC的數(shù)據(jù)傳輸方法,該方法包括以下步驟:
[0048](I)生產(chǎn)者服務器發(fā)送信息,消息正常發(fā)出,dst 20.1.0.1,src 10.0.0.1 ;
[0049](II)在網(wǎng)關處dstl0.1.0.1綁定DPDK Serverl的macl處,消息發(fā)送至本地IDC轉發(fā)服務器;
[0050](III)本地IDC轉發(fā)服務器處理該消息,消息處理為dst 68.20.1.1,src68.10.1.1,目的mac地址為路由mac地址;
[0051](IV)消息發(fā)送至廣域網(wǎng);
[0052](V)消息自廣域網(wǎng)接收;
[0053](VI)路由根據(jù)IP地址將消息發(fā)送到異地IDC轉發(fā)服務器;
[0054](VII)異地IDC轉發(fā)服務器接收處理該消息,消息處理為dst 10.1.0.1,src30.1.0.1 ;
[0055](VIII)消費者服務器接收到消息 dst 10.1.0.1, src 30.