本發(fā)明涉及通信,尤其是涉及一種數(shù)據(jù)通信方法、系統(tǒng)、電子設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
1、隨著用戶數(shù)據(jù)規(guī)模和高速處理數(shù)據(jù)的需求越來越大,目前會(huì)在同一計(jì)算系統(tǒng)中使用不同類型的計(jì)算單元共同完成任務(wù)。相關(guān)技術(shù)利用pcie(peripheral?componentinterconnect?express,高速串行計(jì)算機(jī)擴(kuò)展總線)?ntb(non-transparent?bridge,非透明橋)技術(shù)實(shí)現(xiàn)各計(jì)算單元之間的p2p(point-to-point,點(diǎn)對(duì)點(diǎn))通信。該方法依賴于pcieswitch(交換機(jī))的ntb控制器的復(fù)雜邏輯,將遠(yuǎn)端節(jié)點(diǎn)地址空間通過ntb映射到本地地址空間來打開點(diǎn)對(duì)點(diǎn)的訪問通路。這種跨域地址映射和中斷機(jī)制都會(huì)引入額外的延時(shí)和硬件開銷,通信效率偏低。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提供了一種數(shù)據(jù)通信方法、系統(tǒng)、電子設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序產(chǎn)品,不僅無需引入額外時(shí)延和硬件開銷,還能有效提高點(diǎn)對(duì)點(diǎn)的通信效率。
2、為解決上述技術(shù)問題,本發(fā)明提供以下技術(shù)方案:
3、本發(fā)明一方面提供了一種數(shù)據(jù)通信方法,應(yīng)用于包括至少兩個(gè)計(jì)算節(jié)點(diǎn),且至少存在兩個(gè)計(jì)算節(jié)點(diǎn)至少包括一組計(jì)算單元的數(shù)據(jù)通信系統(tǒng),同一組計(jì)算單元連接至同一交換機(jī),包括:
4、當(dāng)源計(jì)算單元接收到對(duì)目標(biāo)計(jì)算單元的訪問請(qǐng)求,根據(jù)路由映射關(guān)系、及所述訪問請(qǐng)求攜帶的所述目標(biāo)計(jì)算單元的目標(biāo)資源分配信息,確定所述目標(biāo)計(jì)算單元所屬目標(biāo)交換機(jī)的資源分配信息;所述源計(jì)算單元與所述目標(biāo)計(jì)算單元屬于不同的計(jì)算節(jié)點(diǎn);根據(jù)所述資源分配信息和所述源計(jì)算單元對(duì)應(yīng)的源交換機(jī)的交換機(jī)路由信息,確定中間轉(zhuǎn)發(fā)端口,并通過所述中間轉(zhuǎn)發(fā)端口將所述訪問請(qǐng)求轉(zhuǎn)發(fā)至所述目標(biāo)交換機(jī)的目標(biāo)通信端口;
5、通過所述目標(biāo)通信端口和所述目標(biāo)資源分配信息,將所述訪問請(qǐng)求再次轉(zhuǎn)發(fā)至所述目標(biāo)計(jì)算單元;
6、其中,所述路由映射關(guān)系為同一計(jì)算單元的主機(jī)資源分配信息和交換機(jī)資源分配信息的對(duì)應(yīng)關(guān)系,所述主機(jī)資源分配信息為主機(jī)為計(jì)算單元分配的資源信息,所述交換機(jī)資源分配信息為交換機(jī)為計(jì)算單元分配的資源信息,所述交換機(jī)路由信息包括不同交換機(jī)之間的數(shù)據(jù)通信路徑對(duì)應(yīng)的端口信息。
7、本發(fā)明還提供了一種電子設(shè)備,包括存儲(chǔ)器和處理器,處理器用于執(zhí)行存儲(chǔ)器中存儲(chǔ)的計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述任一種數(shù)據(jù)通信方法的步驟。
8、本發(fā)明還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述任一種數(shù)據(jù)通信方法的步驟。
9、本發(fā)明還提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序/指令,該計(jì)算機(jī)程序/指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述任一種數(shù)據(jù)通信方法的步驟。
10、本發(fā)明最后還提供了一種數(shù)據(jù)通信系統(tǒng),包括具有第一計(jì)算節(jié)點(diǎn)、第二計(jì)算節(jié)點(diǎn)和路由控制器的主機(jī),所述主機(jī)存儲(chǔ)主機(jī)資源分配信息;
11、所述第一計(jì)算節(jié)點(diǎn)至少包第一交換機(jī)與第二交換機(jī);所述第一交換機(jī)至少連接第一計(jì)算單元和第二計(jì)算單元,所述第二交換機(jī)至少連接第三計(jì)算單元和第四計(jì)算單元;所述第一交換機(jī)和第二交換機(jī)均存儲(chǔ)各自的交換機(jī)資源分配信息和交換機(jī)路由信息;
12、所述第二計(jì)算節(jié)點(diǎn)至少包括第三交換機(jī)與第四交換機(jī);所述第三交換機(jī)至少連接第五計(jì)算單元和第六計(jì)算單元,所述第四交換機(jī)至少連接第七計(jì)算單元和第八計(jì)算單元;所述第三交換機(jī)和第四交換機(jī)均存儲(chǔ)各自的交換機(jī)資源分配信息和交換機(jī)路由信息;
13、所述路由控制器,用于在所述第一計(jì)算節(jié)點(diǎn)訪問各計(jì)算單元,或各計(jì)算單元之間互相訪問時(shí),執(zhí)行計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如上任意一種數(shù)據(jù)通信方法的步驟。
14、本發(fā)明提供的技術(shù)方案的優(yōu)點(diǎn)在于,將交換機(jī)為各自所連接的計(jì)算單元分配的資源信息,與主機(jī)為其內(nèi)部所有的計(jì)算單元分配的資源信息進(jìn)行對(duì)應(yīng),通過這地址映射能夠快速定位所要訪問的計(jì)算單元所連接的交換機(jī)的信息。各交換機(jī)之間存在能夠進(jìn)行通信的路由信息,這樣不同交換機(jī)連接的計(jì)算單元便可通過交換機(jī)路由信息實(shí)現(xiàn)快速的端口轉(zhuǎn)發(fā),從而實(shí)現(xiàn)任意計(jì)算單元之間通過單跳或多跳實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的通信,無需借助上游端口轉(zhuǎn)發(fā),且不會(huì)引入額外的硬件開銷和地址轉(zhuǎn)換時(shí)延,有效提高點(diǎn)對(duì)點(diǎn)通信效率。進(jìn)一步的,通過增加交換機(jī)數(shù)量不僅能夠增加計(jì)算節(jié)點(diǎn)所擁有的計(jì)算單元的規(guī)模,還能夠擴(kuò)充主機(jī)中包含的計(jì)算節(jié)點(diǎn)的數(shù)量,在數(shù)據(jù)通信系統(tǒng)的規(guī)模擴(kuò)大的基礎(chǔ)上,仍能實(shí)現(xiàn)任意計(jì)算單元之間的高效路由路徑確定,進(jìn)而提升大規(guī)模的數(shù)據(jù)通信系統(tǒng)的點(diǎn)對(duì)點(diǎn)的通信,為擴(kuò)展多卡的pcie?switch系統(tǒng)拓?fù)涮峁└咝А⒏蜁r(shí)延、靈活可擴(kuò)展的路由部署和管理辦法,從而提高整個(gè)系統(tǒng)的通信效率,還能夠在一定程度上解決計(jì)算單元與主機(jī),計(jì)算單元之間存在并行通信需求的帶寬限制的問題。此外,本發(fā)明還針對(duì)數(shù)據(jù)通信方法提供了相應(yīng)的實(shí)現(xiàn)系統(tǒng)、電子設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步使得方法更具有實(shí)用性,系統(tǒng)、電子設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序產(chǎn)品具有相應(yīng)的優(yōu)點(diǎn)。
1.一種數(shù)據(jù)通信方法,其特征在于,應(yīng)用于包括至少兩個(gè)計(jì)算節(jié)點(diǎn),且至少存在兩個(gè)計(jì)算節(jié)點(diǎn)至少包括一組計(jì)算單元的數(shù)據(jù)通信系統(tǒng),同一組計(jì)算單元連接至同一交換機(jī),包括:
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)通信方法,其特征在于,對(duì)于主機(jī)訪問同一個(gè)計(jì)算節(jié)點(diǎn)內(nèi)的計(jì)算單元,所述訪問請(qǐng)求為所述主機(jī)下發(fā),所述目標(biāo)資源分配信息為所述目標(biāo)計(jì)算單元的目標(biāo)主機(jī)資源分配信息中的部分參數(shù)或全部參數(shù),還包括:
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)通信方法,其特征在于,對(duì)于同一個(gè)計(jì)算節(jié)點(diǎn)內(nèi)的不同計(jì)算單元之間的訪問,所述目標(biāo)資源分配信息為所述目標(biāo)計(jì)算單元的目標(biāo)交換機(jī)資源分配信息中的部分參數(shù)或全部參數(shù),所述源計(jì)算單元與所述目標(biāo)計(jì)算單元屬于同一個(gè)計(jì)算節(jié)點(diǎn),但不連接至同一個(gè)交換機(jī),還包括:
4.根據(jù)權(quán)利要求1所述的數(shù)據(jù)通信方法,其特征在于,不同組計(jì)算單元的交換機(jī)通過目標(biāo)總線相連,所述根據(jù)所述資源分配信息和所述源計(jì)算單元對(duì)應(yīng)的源交換機(jī)的交換機(jī)路由信息,確定中間轉(zhuǎn)發(fā)端口,并通過所述中間轉(zhuǎn)發(fā)端口將所述訪問請(qǐng)求轉(zhuǎn)發(fā)至所述目標(biāo)交換機(jī)的目標(biāo)通信端口,包括:
5.根據(jù)權(quán)利要求1所述的數(shù)據(jù)通信方法,其特征在于,至少存在兩個(gè)交換機(jī)沒有通過目標(biāo)總線相連,所述根據(jù)所述資源分配信息和所述源計(jì)算單元對(duì)應(yīng)的源交換機(jī)的交換機(jī)路由信息,確定中間轉(zhuǎn)發(fā)端口,并通過所述中間轉(zhuǎn)發(fā)端口將所述訪問請(qǐng)求轉(zhuǎn)發(fā)至所述目標(biāo)交換機(jī)的目標(biāo)通信端口,包括:
6.根據(jù)權(quán)利要求1至5任一項(xiàng)所述的數(shù)據(jù)通信方法,其特征在于,所述數(shù)據(jù)通信系統(tǒng)至少存在第一計(jì)算節(jié)點(diǎn)和第二計(jì)算節(jié)點(diǎn),所述第一計(jì)算節(jié)點(diǎn)和所述第二計(jì)算節(jié)點(diǎn)均部署至少一組計(jì)算單元,所述訪問請(qǐng)求為所述第一計(jì)算節(jié)點(diǎn)訪問所述第二計(jì)算節(jié)點(diǎn)的目標(biāo)計(jì)算單元的訪問請(qǐng)求,所述目標(biāo)資源分配信息為所述目標(biāo)計(jì)算單元的目標(biāo)主機(jī)資源分配信息中的部分參數(shù)或全部參數(shù),所述當(dāng)接收到對(duì)目標(biāo)計(jì)算單元的訪問請(qǐng)求之后,還包括:
7.根據(jù)權(quán)利要求1至5任一項(xiàng)所述的數(shù)據(jù)通信方法,其特征在于,所述數(shù)據(jù)通信系統(tǒng)至少存在第一計(jì)算節(jié)點(diǎn)和第二計(jì)算節(jié)點(diǎn),所述第一計(jì)算節(jié)點(diǎn)和所述第二計(jì)算節(jié)點(diǎn)均部署至少一組計(jì)算單元,所述訪問請(qǐng)求為所述第一計(jì)算節(jié)點(diǎn)的第一目標(biāo)計(jì)算單元訪問所述第二計(jì)算節(jié)點(diǎn)的第二目標(biāo)計(jì)算單元的訪問請(qǐng)求,所述目標(biāo)資源分配信息為所述第二目標(biāo)計(jì)算單元的第二目標(biāo)主機(jī)資源分配信息中的部分參數(shù)或全部參數(shù),所述當(dāng)接收到對(duì)目標(biāo)計(jì)算單元的訪問請(qǐng)求之后,還包括:
8.一種電子設(shè)備,其特征在于,包括:
9.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至7任一項(xiàng)所述的數(shù)據(jù)通信方法的步驟。
10.一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序/指令,其特征在于,該計(jì)算機(jī)程序/指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7任一項(xiàng)所述數(shù)據(jù)通信方法的步驟。
11.一種數(shù)據(jù)通信系統(tǒng),其特征在于,包括具有第一計(jì)算節(jié)點(diǎn)、第二計(jì)算節(jié)點(diǎn)和路由控制器的主機(jī),所述主機(jī)存儲(chǔ)主機(jī)資源分配信息;
12.根據(jù)權(quán)利要求11所述的數(shù)據(jù)通信系統(tǒng),其特征在于,所述第一交換機(jī)還配置為:枚舉所連接的各計(jì)算單元,以得到各計(jì)算單元的總線標(biāo)識(shí)信息;為各計(jì)算單元分配地址,以得到各計(jì)算單元的交換機(jī)地址;將所述第一交換機(jī)的交換機(jī)標(biāo)識(shí)信息、各計(jì)算單元的總線標(biāo)識(shí)信息及交換機(jī)地址,填充至交換機(jī)資源分配表的相應(yīng)位置,并作為交換機(jī)資源分配信息存儲(chǔ)至本地;
13.根據(jù)權(quán)利要求11所述的數(shù)據(jù)通信系統(tǒng),其特征在于,所述主機(jī)還配置為:在啟動(dòng)過程中,枚舉內(nèi)部各計(jì)算單元,以得到各計(jì)算單元的主線總線標(biāo)識(shí)信息;為各計(jì)算單元分配地址,以得到各計(jì)算單元的主機(jī)地址;將各計(jì)算單元的主機(jī)總線標(biāo)識(shí)信息及主機(jī)地址,填充至主機(jī)資源分配表的相應(yīng)位置,并作為主機(jī)資源分配信息進(jìn)行存儲(chǔ);
14.根據(jù)權(quán)利要求11至13任一項(xiàng)據(jù)通信系統(tǒng),其特征在于,所述第一計(jì)算節(jié)點(diǎn)和所述第二計(jì)算節(jié)點(diǎn)各自作為超節(jié)點(diǎn);
15.根據(jù)權(quán)利要求14所述的數(shù)據(jù)通信系統(tǒng),其特征在于,所述第一交換機(jī)的交換機(jī)路由信息包括第二交換機(jī)通信路由信息、第三交換機(jī)通信路由信息和第四交換機(jī)通信路由信息;