在用于中間件和應(yīng)用執(zhí)行的工程系統(tǒng)中提供數(shù)據(jù)服務(wù)的系統(tǒng)和方法
【專利說明】在用于中間件和應(yīng)用執(zhí)行的工程系統(tǒng)中提供數(shù)據(jù)服務(wù)的系統(tǒng)和方法
[0001 ]版權(quán)聲明
[0002]本專利文件的公開的一部分包含受版權(quán)保護(hù)的材料。版權(quán)人不反對任何人對專利文檔或?qū)@_進(jìn)行如出現(xiàn)在專利和商標(biāo)局的專利文件或記錄中那樣的傳真復(fù)制,但在其它情況下保留其它所有版權(quán)。
技術(shù)領(lǐng)域
[0003]本發(fā)明總體上涉及計(jì)算機(jī)系統(tǒng),更具體地涉及用于中間件和應(yīng)用執(zhí)行或中間件機(jī)器環(huán)境的工程系統(tǒng)。
【背景技術(shù)】
[0004]互聯(lián)網(wǎng)絡(luò)在下一代超級(jí)計(jì)算機(jī)、集群和數(shù)據(jù)中心中起著有益的作用。例如,InfiniBand(IB)技術(shù)作為云計(jì)算結(jié)構(gòu)的基礎(chǔ)已見有增多的部署。隨著較大的云計(jì)算架構(gòu)的引入,與傳統(tǒng)網(wǎng)絡(luò)和存儲(chǔ)相關(guān)聯(lián)的性能和管理瓶頸已經(jīng)成為一個(gè)顯著的問題。
[0005]這是本發(fā)明的實(shí)施方式旨在解決的大體領(lǐng)域。
【發(fā)明內(nèi)容】
[0006]本文描述的是能夠在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的方法和系統(tǒng),所述網(wǎng)絡(luò)環(huán)境諸如用于中間件和應(yīng)用執(zhí)行或中間件機(jī)器環(huán)境的工程系統(tǒng)。所述系統(tǒng)能夠在所述網(wǎng)絡(luò)環(huán)境中的節(jié)點(diǎn)上提供數(shù)據(jù)服務(wù)部件。所述網(wǎng)絡(luò)環(huán)境可以包括多個(gè)經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)互聯(lián)的節(jié)點(diǎn)。此外,所述系統(tǒng)能夠使用本機(jī)數(shù)據(jù)包轉(zhuǎn)發(fā)機(jī)制將所述網(wǎng)絡(luò)結(jié)構(gòu)中的數(shù)據(jù)流引導(dǎo)至所述節(jié)點(diǎn)上的所述數(shù)據(jù)服務(wù)部件。然后,所述系統(tǒng)能夠使用所述數(shù)據(jù)服務(wù)部件來處理所述網(wǎng)絡(luò)結(jié)構(gòu)中的所述數(shù)據(jù)流中的一個(gè)或多個(gè)數(shù)據(jù)包。此外,所述數(shù)據(jù)服務(wù)部件能夠提供所述數(shù)據(jù)服務(wù),其可以是軟件防火墻(FWL)服務(wù)或業(yè)務(wù)路由服務(wù),其對源和目的地的應(yīng)用工作負(fù)載都是透明的。
[0007]—種系統(tǒng)和方法能夠在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)。子網(wǎng)管理器能夠從源節(jié)點(diǎn)接收路徑記錄解析請求,其中所述源節(jié)點(diǎn)使用所述路徑記錄解析請求來獲取目的地節(jié)點(diǎn)的地址。此外,所述子網(wǎng)管理器能夠向所述源節(jié)點(diǎn)提供中間節(jié)點(diǎn)的地址,其中所述中間節(jié)點(diǎn)提供所述數(shù)據(jù)服務(wù)。隨后,所述源節(jié)點(diǎn)能夠基于所述中間節(jié)點(diǎn)的地址,向所述中間節(jié)點(diǎn)發(fā)送數(shù)據(jù)流中的一個(gè)或多個(gè)數(shù)據(jù)包。
[0008]—種系統(tǒng)和方法能夠在網(wǎng)絡(luò)環(huán)境中支持?jǐn)?shù)據(jù)服務(wù)地址解析。中間節(jié)點(diǎn)能夠從源節(jié)點(diǎn)接收輸入數(shù)據(jù)包,其中所述輸入數(shù)據(jù)包以目的地節(jié)點(diǎn)為目標(biāo),并且其中所述輸入數(shù)據(jù)包包括用于所述目的地節(jié)點(diǎn)的全局標(biāo)識(shí)符和用于所述中間節(jié)點(diǎn)的本地標(biāo)識(shí)符。此外,所述中間節(jié)點(diǎn)能夠基于用于所述目的地節(jié)點(diǎn)的全局標(biāo)識(shí)符,獲取用于所述目的地節(jié)點(diǎn)的本地尋址信息。然后,所述中間節(jié)點(diǎn)能夠基于所獲取的用于所述目的地節(jié)點(diǎn)的本地尋址信息,向所述目的地節(jié)點(diǎn)發(fā)送輸出數(shù)據(jù)包。
[0009]—種系統(tǒng)和方法能夠在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)。所述網(wǎng)絡(luò)環(huán)境可以包括節(jié)點(diǎn),其支持能夠提供數(shù)據(jù)服務(wù)的數(shù)據(jù)服務(wù)部件。此外,可以在網(wǎng)絡(luò)設(shè)備上提供過濾器,所述網(wǎng)絡(luò)設(shè)備例如是與所述節(jié)點(diǎn)相關(guān)聯(lián)的主機(jī)通道適配器(HCA)。所述網(wǎng)絡(luò)設(shè)備操作為使用過濾器來識(shí)別一個(gè)或多個(gè)以所述數(shù)據(jù)服務(wù)部件為目標(biāo)而無協(xié)議終止的數(shù)據(jù)包。此外,所述過濾器能夠轉(zhuǎn)發(fā)所述一個(gè)或多個(gè)數(shù)據(jù)包至所述數(shù)據(jù)服務(wù)部件。
【附圖說明】
[0010]圖1示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)服務(wù)裝置的示意圖。
[0011]圖2示出了根據(jù)本發(fā)明實(shí)施方式的使用外部網(wǎng)絡(luò)連接用以在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的示意圖。
[0012]圖3示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供用于嵌入連線(bumpon thewire,BoW)模式的數(shù)據(jù)服務(wù)的示意圖。
[0013]圖4示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供軟件防火墻(FWL)的示意圖。
[0014]圖5示出了根據(jù)本發(fā)明實(shí)施方式的示例性工程系統(tǒng)的示意圖。
[0015]圖6例示了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)服務(wù)的示例性流程圖。
[0016]圖7示出了根據(jù)本發(fā)明實(shí)施方式的網(wǎng)絡(luò)環(huán)境中的子網(wǎng)管理器(SA)的示意圖。
[0017]圖8示出了根據(jù)本發(fā)明實(shí)施方式的支持用于在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的控制流的示意圖。
[0018]圖9示出了根據(jù)本發(fā)明實(shí)施方式的支持用于在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的數(shù)據(jù)流的示意圖。
[0019]圖10例示了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中控制用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)流的示例性流程圖。
[0020]圖11示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中使用InfiniBand(IB)尋址來訪問數(shù)據(jù)服務(wù)的數(shù)據(jù)包格式的示意圖。
[0021]圖12示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中的中間節(jié)點(diǎn)上處理數(shù)據(jù)包的示意圖。
[0022]圖13示出了根據(jù)本發(fā)明實(shí)施方式的支持在網(wǎng)絡(luò)環(huán)境中的連接管理的示意圖。
[0023]圖14例示了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中支持用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)服務(wù)地址解析的示例性流程圖。
[0024]圖15示出了根據(jù)本發(fā)明實(shí)施方式的支持用于在虛擬環(huán)境中提供數(shù)據(jù)服務(wù)的主機(jī)通道適配器(HCA)過濾的示意圖。
[0025]圖16示出了根據(jù)本發(fā)明實(shí)施方式的支持用于在非虛擬環(huán)境中提供數(shù)據(jù)服務(wù)的主機(jī)通道適配器(HCA)過濾的示意圖。
[0026]圖17例示了根據(jù)本發(fā)明實(shí)施方式的支持用于在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的HCA過濾的示例性流程圖。
【具體實(shí)施方式】
[0027]本文描述的是能夠在用于中間件和應(yīng)用執(zhí)行(或中間件機(jī)器環(huán)境)的工程系統(tǒng)中提供一個(gè)或多個(gè)數(shù)據(jù)服務(wù)的系統(tǒng)和方法。
[0028]用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)服務(wù)
[0029]根據(jù)本發(fā)明實(shí)施方式,數(shù)據(jù)服務(wù)部件(諸如數(shù)據(jù)服務(wù)裝置和/或數(shù)據(jù)服務(wù)服務(wù)器)能夠在網(wǎng)絡(luò)環(huán)境中提供各種類型的數(shù)據(jù)服務(wù),所述網(wǎng)絡(luò)環(huán)境例如是用于中間件和應(yīng)用執(zhí)行(或中間件機(jī)器環(huán)境)的工程系統(tǒng)。
[0030]圖1示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供用于處理本機(jī)數(shù)據(jù)的數(shù)據(jù)服務(wù)裝置的示意圖。如圖1所示,多個(gè)節(jié)點(diǎn),例如節(jié)點(diǎn)A 111至D 114,能夠在網(wǎng)絡(luò)環(huán)境100中例如經(jīng)INFINIBAND(IB)結(jié)構(gòu)101相互連接。
[0031]此外,位于節(jié)點(diǎn)C113上的數(shù)據(jù)服務(wù)部件110能夠在IB結(jié)構(gòu)101上提供各種用于數(shù)據(jù)流的數(shù)據(jù)服務(wù)。例如,節(jié)點(diǎn)A 111和節(jié)點(diǎn)B 112之間的數(shù)據(jù)流可以是本機(jī)數(shù)據(jù)流。本機(jī)數(shù)據(jù)流可以訪問或消費(fèi)由位于中間節(jié)點(diǎn)C 113上的數(shù)據(jù)服務(wù)部件110提供的數(shù)據(jù)服務(wù)。從而,可以處理IB結(jié)構(gòu)101中的本機(jī)數(shù)據(jù)而無需離開IB結(jié)構(gòu)101。
[0032]根據(jù)本發(fā)明實(shí)施方式,數(shù)據(jù)服務(wù)部件110能夠提供軟件防火墻(FWL)服務(wù),其可以用來在網(wǎng)絡(luò)環(huán)境100中監(jiān)視和檢查所有類型的網(wǎng)絡(luò)業(yè)務(wù)。此外,數(shù)據(jù)服務(wù)部件110可以用于其它目的,例如在網(wǎng)絡(luò)環(huán)境中執(zhí)行業(yè)務(wù)路由。
[0033]此外,可以在同一IB結(jié)構(gòu)101中部署數(shù)據(jù)服務(wù)部件的多個(gè)實(shí)例(或多個(gè)數(shù)據(jù)服務(wù)部件),用以提供高可用性(HA)并提高性能。如圖1所示,另一個(gè)數(shù)據(jù)服務(wù)部件120可以位于IB結(jié)構(gòu)101上的節(jié)點(diǎn)D114上。數(shù)據(jù)服務(wù)部件110和數(shù)據(jù)服務(wù)部件120 二者可以同時(shí)在IB結(jié)構(gòu)101上運(yùn)行。
[0034]根據(jù)本發(fā)明實(shí)施方式,數(shù)據(jù)服務(wù)部件或者可以專用于提供數(shù)據(jù)服務(wù),或者可以配置成與其他應(yīng)用虛擬服務(wù)器共享同一物理機(jī)。如圖1所示,宿存(host)數(shù)據(jù)服務(wù)部件110的節(jié)點(diǎn)C 113可以宿存應(yīng)用服務(wù)器130。這樣,節(jié)點(diǎn)C 113可以用來支持不同的應(yīng)用工作負(fù)載。例如,節(jié)點(diǎn)C 113可以宿存運(yùn)行這些應(yīng)用工作負(fù)載的虛擬機(jī)。另一方面,宿存數(shù)據(jù)服務(wù)部件120的節(jié)點(diǎn)D 114可以專用于提供數(shù)據(jù)服務(wù)。
[0035]此外,系統(tǒng)可以在網(wǎng)絡(luò)環(huán)境100中支持不同的拓?fù)浣Y(jié)構(gòu)。例如,節(jié)點(diǎn)C113除了作為用于支持其它節(jié)點(diǎn)之間通信的中間節(jié)點(diǎn)外,還可以即充當(dāng)源節(jié)點(diǎn)又充當(dāng)目的地節(jié)點(diǎn)。因此,單個(gè)節(jié)點(diǎn)C 113可以支持不同類型的工作負(fù)載,包括源工作負(fù)載、目的地工作負(fù)載以及數(shù)據(jù)服務(wù)裝置工作負(fù)載。
[0036]根據(jù)本發(fā)明實(shí)施方式,系統(tǒng)可以在虛擬機(jī)(VM)中部署數(shù)據(jù)服務(wù)部件110或120作為虛擬環(huán)境中的虛擬裝置(即數(shù)據(jù)服務(wù)裝置)。另選地,系統(tǒng)可以在節(jié)點(diǎn)上物理部署數(shù)據(jù)服務(wù)裝置110或120作為非虛擬環(huán)境中的數(shù)據(jù)服務(wù)服務(wù)器。
[0037]此外,可以選擇性地將IB結(jié)構(gòu)101中的業(yè)務(wù)引導(dǎo)至數(shù)據(jù)服務(wù)部件110或120用于進(jìn)行數(shù)據(jù)處理(例如,基于對目標(biāo)端點(diǎn)解析地址的評估)。例如,可以使用用于本機(jī)數(shù)據(jù)包轉(zhuǎn)發(fā)機(jī)制的不同路由算法引導(dǎo)數(shù)據(jù)包至節(jié)點(diǎn)C 113(或節(jié)點(diǎn)D 114)。此外,可以基于VM的解析(resolut1n)選擇性地引導(dǎo)IB結(jié)構(gòu)101中的業(yè)務(wù)至數(shù)據(jù)服務(wù)裝置。
[0038]圖2示出了根據(jù)本發(fā)明實(shí)施方式的采用外部網(wǎng)絡(luò)連接用以在網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)服務(wù)的示意圖。如圖2所示,多個(gè)節(jié)點(diǎn),如節(jié)點(diǎn)A 211至B 212,可以在網(wǎng)絡(luò)環(huán)境200中例如經(jīng)INFINIBAND(IB)結(jié)構(gòu)201互相連接。
[0039]根據(jù)本發(fā)明實(shí)施方式,可以在外部網(wǎng)絡(luò)202(例如,外部以太網(wǎng)絡(luò))中提供數(shù)據(jù)服務(wù)服務(wù)器210。在這種情況下,數(shù)據(jù)流在被外部網(wǎng)絡(luò)202中的數(shù)據(jù)服務(wù)服務(wù)器210處理而后返回至IB結(jié)構(gòu)201之前,可能需要離開IB結(jié)構(gòu)201。
[0040]此外,系統(tǒng)可以使用不同的機(jī)制用來將外部網(wǎng)絡(luò)202中的數(shù)據(jù)服務(wù)服務(wù)器210連接至IB結(jié)構(gòu)201。如圖2所示,數(shù)據(jù)服務(wù)服務(wù)器210可以經(jīng)以太網(wǎng)交換機(jī)220連接至IB結(jié)構(gòu)201。另選地,數(shù)據(jù)服務(wù)服務(wù)器210可以經(jīng)以太網(wǎng)鏈路230連接至IB結(jié)構(gòu)201上的節(jié)點(diǎn)B 212而連接至IB結(jié)構(gòu)201。
[0041]圖3示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供用于嵌入連線模式(BoW)的數(shù)據(jù)服務(wù)的示意圖。如圖3所示,能夠在網(wǎng)絡(luò)環(huán)境300中提供各種數(shù)據(jù)服務(wù)(例如防火墻服務(wù))的數(shù)據(jù)服務(wù)服務(wù)器311,可以位于中間節(jié)點(diǎn)310上。
[0042]根據(jù)本發(fā)明實(shí)施方式,中間節(jié)點(diǎn)310可以物理地位于通信雙方(或端點(diǎn))之間,例如位于節(jié)點(diǎn)A 301和節(jié)點(diǎn)B 302之間。這樣,節(jié)點(diǎn)A 301和節(jié)點(diǎn)B 302之間的數(shù)據(jù)流可能被迫通過中間節(jié)點(diǎn)310上的數(shù)據(jù)服務(wù)服務(wù)器311。
[0043]此外,中間節(jié)點(diǎn)310可以包括另一個(gè)應(yīng)用服務(wù)器312。在這種情況下,系統(tǒng)可以使用反向過濾規(guī)則,用于確定數(shù)據(jù)流中的哪些數(shù)據(jù)包應(yīng)該由數(shù)據(jù)服務(wù)服務(wù)器311來處理。
[0044]圖4示出了根據(jù)本發(fā)明實(shí)施方式的在網(wǎng)絡(luò)環(huán)境中提供軟件防火墻(FWL)的示意圖。如圖4所示,多個(gè)節(jié)點(diǎn),例如節(jié)點(diǎn)A 411至D 414,可以在網(wǎng)絡(luò)環(huán)境400中例如經(jīng)INFINIBAND(IB)結(jié)構(gòu)401相互連接。
[0045]此外,可以在IB結(jié)構(gòu)401中部署多個(gè)軟件FWL裝置,用以提供高可用性(HA)并提高性能。例如,F(xiàn)WL 410可以位于節(jié)點(diǎn)C 413上,而FWL 420可以位于節(jié)點(diǎn)D 414上。
[0046]如圖4所示,可以將IB結(jié)構(gòu)401中節(jié)點(diǎn)A 411和節(jié)點(diǎn)B 412之間的業(yè)務(wù)引導(dǎo)至FWL410進(jìn)行檢查,而無須離開IB結(jié)構(gòu)401C3FWL 410可以確定是將從源節(jié)點(diǎn)A 411接收到的數(shù)據(jù)包轉(zhuǎn)發(fā)至目的地節(jié)點(diǎn)B 412,還是丟棄數(shù)據(jù)包。
[0047]根據(jù)本發(fā)明實(shí)施方式,F(xiàn)WL 410可以監(jiān)視和檢查IB結(jié)構(gòu)401中各種類型的業(yè)務(wù)。例如,在Oracle Exalogic工程系統(tǒng)中的IB業(yè)務(wù)可以包括IFINIBAND上的互聯(lián)網(wǎng)協(xié)議(IPoIB)業(yè)務(wù)、IFINIBAND上的以太網(wǎng)(EoIB)業(yè)務(wù)、專用虛擬互聯(lián)(PVI)業(yè)務(wù)、套接字(socket)直接協(xié)議(SDP)業(yè)務(wù)以及用戶空間/遠(yuǎn)程直接存儲(chǔ)器存取(RDMA)業(yè)務(wù)。此類業(yè)務(wù)可以基于各種傳輸協(xié)議,例如不可靠數(shù)據(jù)報(bào)(UD)傳輸協(xié)議、可靠連接(RC)傳輸協(xié)議、不可靠連接(UC)傳輸協(xié)議、可靠數(shù)據(jù)報(bào)(RD)傳輸協(xié)議以及原始傳輸協(xié)議。
[0048]圖5示出了根據(jù)本發(fā)明實(shí)施方式的示例性工程系統(tǒng)的示意圖。如圖5所示,示例性工程系統(tǒng)500可以包括多個(gè)節(jié)點(diǎn),例如節(jié)點(diǎn)A 511至D 514,這多個(gè)節(jié)點(diǎn)使用多個(gè)交換機(jī)A501至B 502相互連接。
[0049]根據(jù)本發(fā)明實(shí)施方式,可以成對部署數(shù)據(jù)服務(wù)部件(例如,防火墻(FWL)裝置),用以在工程系統(tǒng)500中支持高可用性(HA)和提高性能。
[0050]如圖5所示,可以在節(jié)點(diǎn)A 511上部署包含應(yīng)用服務(wù)器的應(yīng)用VM 541,以及可以在節(jié)點(diǎn)B 512上部署包含另一應(yīng)用服務(wù)器的應(yīng)用VM 542。此外,可以在節(jié)點(diǎn)C 513上部署包含F(xiàn)WL裝置的FWL VM 543,以及可以在節(jié)點(diǎn)D 514上部署包含另一FWL裝置的FWL VM 544。
[0051]此外,節(jié)點(diǎn)A 511至D 514中的每一個(gè)都可以使用一個(gè)或多個(gè)主機(jī)通道適配器(HCA)用以連接至網(wǎng)絡(luò)。例如,節(jié)點(diǎn)A 511使用HCA A 521,節(jié)點(diǎn)B 512使用HCA B 522,節(jié)點(diǎn)C513使用HCA C 523以及節(jié)點(diǎn)D 514使用HCA D 524。
[0052]如圖5所示,HCA A 521至HCA D 524中的每一個(gè)都可以具備兩個(gè)端口(例如,端口 I和端口 2)。為了在網(wǎng)絡(luò)環(huán)境500中支持高可用性(HA),系統(tǒng)可以經(jīng)不同的交換機(jī)A 501至B502,連接不同的用于節(jié)點(diǎn)A 511至D 514的HCA端口。
[0053]根據(jù)本發(fā)明實(shí)施方式,同一節(jié)點(diǎn)上的不同HCA端口可以獨(dú)立地指派給每個(gè)FWL HA對中的不同成員。例如,在IB子網(wǎng)中的子網(wǎng)管理器(SA)在指派FWL目的地本地標(biāo)識(shí)符(DLID)時(shí),可以知道HA對。
[0054]如圖5所示,節(jié)點(diǎn)A 511至D 514上的所有的端口 I可以連接至交換機(jī)A 501,而節(jié)點(diǎn)A 511至D 514上