本公開總體上涉及計(jì)算機(jī)網(wǎng)絡(luò),更特別地涉及一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的系統(tǒng)、方法、裝置、計(jì)算設(shè)備、計(jì)算設(shè)備集群、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以及計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
1、隨著科技進(jìn)步,人工智能(artificial?intelligence,ai)、大數(shù)據(jù)分析、高性能計(jì)算等應(yīng)用的快速發(fā)展。特別地,生成式人工智能應(yīng)用的規(guī)?;l(fā)展極大地提升了對(duì)大規(guī)模計(jì)算的需求。例如,e級(jí)(每秒浮點(diǎn)運(yùn)算百億億次)超算涉及數(shù)萬(wàn)級(jí)節(jié)點(diǎn)的計(jì)算系統(tǒng)規(guī)模,這對(duì)于計(jì)算系統(tǒng)整體的網(wǎng)絡(luò)性能、成本及功耗均提出了更高的要求和更大的挑戰(zhàn)。
2、例如,隨著計(jì)算系統(tǒng)的網(wǎng)絡(luò)規(guī)模增大,組網(wǎng)跳數(shù)增加、時(shí)延增大、擁塞加劇,導(dǎo)致網(wǎng)絡(luò)帶寬利用率急劇降低。例如,目前常規(guī)的數(shù)據(jù)中心網(wǎng)絡(luò)設(shè)備能耗占比為20%-30%,網(wǎng)絡(luò)成本占比10%-20%。進(jìn)而,對(duì)于支持10e級(jí)超算的計(jì)算系統(tǒng),系統(tǒng)規(guī)模將達(dá)數(shù)十萬(wàn)節(jié)點(diǎn),網(wǎng)絡(luò)需提供50萬(wàn)端口接入能力,系統(tǒng)能耗預(yù)計(jì)高達(dá)50mw(兆瓦)。因此,對(duì)于大規(guī)模計(jì)算系統(tǒng)而言,網(wǎng)絡(luò)成本和功耗面臨巨大挑戰(zhàn),而如何有效降低網(wǎng)絡(luò)成本和功耗成為了需要進(jìn)一步研究的課題。
技術(shù)實(shí)現(xiàn)思路
1、根據(jù)本公開的一些實(shí)施例,提供了一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的系統(tǒng)、方法、裝置、計(jì)算設(shè)備、計(jì)算設(shè)備集群、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以及計(jì)算機(jī)程序產(chǎn)品。
2、在本公開的第一方面,提供了一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的系統(tǒng)。所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合。根據(jù)本公開的實(shí)施例,通過(guò)環(huán)繞網(wǎng)絡(luò)嵌套于全互連網(wǎng)絡(luò)的整體拓?fù)浣Y(jié)構(gòu),能夠利用環(huán)繞網(wǎng)絡(luò)拓?fù)涞亩嗦窂教匦耘c全互連網(wǎng)絡(luò)拓?fù)涞娜滞ㄐ盘匦?,提供適合于高帶寬、低延遲、高吞吐需求的大規(guī)模組網(wǎng)。
3、在一些實(shí)施例中,所述第一數(shù)量的節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中以相鄰節(jié)點(diǎn)互連的方式互相連接,以構(gòu)成所述第一層拓?fù)渚W(wǎng)絡(luò),并且所述第二數(shù)量的第一節(jié)點(diǎn)群組在所述第二層拓?fù)渚W(wǎng)絡(luò)中以彼此互連的方式互相連接,以構(gòu)成所述第二層拓?fù)渚W(wǎng)絡(luò),所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)在所述通信網(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)基于所述第一端口集合的端口編號(hào)和所述第二端口集合的端口編號(hào)來(lái)確定。根據(jù)本公開的實(shí)施例,通過(guò)進(jìn)一步利用環(huán)繞網(wǎng)絡(luò)拓?fù)涞牡投丝诼酚善鲾U(kuò)展特性來(lái)確定第一層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo),并且以全互連網(wǎng)絡(luò)拓?fù)鋵?duì)應(yīng)各層的端口確定各層中的節(jié)點(diǎn)坐標(biāo),從而簡(jiǎn)單地確定節(jié)點(diǎn)在整個(gè)通信網(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo),由此能夠適合于大規(guī)模組網(wǎng)中的坐標(biāo)識(shí)別和路徑搜索,從而有效地降低組網(wǎng)的物理成本和功耗的同時(shí),大幅地提高組網(wǎng)通信效率、減少通信延遲、增加網(wǎng)絡(luò)吞吐率。
4、在一些實(shí)施例中,所述多個(gè)計(jì)算節(jié)點(diǎn)包括源節(jié)點(diǎn)和目的節(jié)點(diǎn),其中:所述源節(jié)點(diǎn)包括用于所述第一層拓?fù)渚W(wǎng)絡(luò)的第一源端口集合和用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二源端口集合,其中所述第一源端口集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一源端口,所述第二源端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二源端口,其中所述第一源端口具有第一源端口編號(hào),所述第二源端口具有第二源端口編號(hào),所述目的節(jié)點(diǎn)包括用于所述第一層拓?fù)渚W(wǎng)絡(luò)的第一目的端口集合和用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二目的端口集合,其中所述第一目的端口集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一目的端口,所述第二目的端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二目的端口,其中所述第一目的端口具有第一目的端口編號(hào),所述第二目的端口具有第二目的端口編號(hào)。所述源節(jié)點(diǎn)執(zhí)行如下操作:獲取所述源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào);獲取所述目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及基于確定的所述數(shù)據(jù)路由路徑,向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)。根據(jù)本公開的實(shí)施例,能夠利用環(huán)繞網(wǎng)絡(luò)拓?fù)涞牡投丝诼酚善鲾U(kuò)展特性和多路徑特性與全互連網(wǎng)絡(luò)拓?fù)涞娜滞ㄐ盘匦?,適合于大規(guī)模模型中ring?all-reduce通信算法的流水并行和數(shù)據(jù)并行的要求,從而針對(duì)大規(guī)模組網(wǎng)的情形,能夠有效地降低組網(wǎng)的物理成本和功耗的同時(shí),大幅地提高組網(wǎng)通信效率、減少通信延遲、增加網(wǎng)絡(luò)吞吐率。
5、在一些實(shí)施例中,所述源節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)由第一源端口編號(hào)集合指示,所述第一源端口編號(hào)集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的各個(gè)維度分別對(duì)應(yīng)的第一源端口和的第一源端口編號(hào),所述目的節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)由第一目的端口編號(hào)集合指示,所述第一目的端口編號(hào)集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的各個(gè)維度分別對(duì)應(yīng)的第一目的端口和的第一目的端口編號(hào),所述源節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一源端口編號(hào)集合和所述第二源端口編號(hào)指示,其中所述第二源端口編號(hào)基于所述第一源端口集合中的第一源端口的第一源端口編號(hào)而被確定,所述目的節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一目的端口編號(hào)集合和所述第二目的端口編號(hào)指示,其中所述第二目的端口編號(hào)基于所述第一目的端口集合中的第一目的端口的第一目的端口編號(hào)而被確定。根據(jù)本公開的實(shí)施例,數(shù)據(jù)通信系統(tǒng)中的節(jié)點(diǎn)坐標(biāo)可以以端口的方式予以確定,以實(shí)現(xiàn)具有確定性的拓?fù)涮卣?,從而能夠迅速地?jì)算最短路由路由,以有效地促進(jìn)硬件實(shí)現(xiàn)。
6、在一些實(shí)施例中,確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑包括:基于所述源節(jié)點(diǎn)的第二源端口編號(hào)與所述目的節(jié)點(diǎn)的第二目的端口編號(hào),確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)是否處于同一第一節(jié)點(diǎn)群組,其中屬于所述第一節(jié)點(diǎn)群組的多個(gè)節(jié)點(diǎn)處于同一第一層拓?fù)渚W(wǎng)絡(luò);如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)處于同一第一節(jié)點(diǎn)群組,則執(zhí)行用于所述第一層拓?fù)渚W(wǎng)絡(luò)的第一數(shù)據(jù)路由處理;如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)不處于同一第一節(jié)點(diǎn)群組,則執(zhí)行用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二數(shù)據(jù)路由處理。根據(jù)本公開的實(shí)施例,對(duì)于基于torus網(wǎng)絡(luò)拓?fù)浜蚮ull-mesh網(wǎng)絡(luò)拓?fù)涞臄?shù)據(jù)通信系統(tǒng),可以快速地確定從源節(jié)點(diǎn)至目標(biāo)節(jié)點(diǎn)之間的最短路徑路由,以提高數(shù)據(jù)路由效率。
7、在一些實(shí)施例中,所述第一層拓?fù)渚W(wǎng)絡(luò)的所述多個(gè)維度包括第一維度、第二維度以及第三維度,所述第一源端口集合包括與所述第一維度、所述第二維度以及所述第三維度分別對(duì)應(yīng)的正向第一源端口和負(fù)向第一源端口,其中所述第一數(shù)據(jù)路由處理包括:針對(duì)所述第一維度、所述第二維度以及所述第三維度中的每個(gè)維度,確定所述源節(jié)點(diǎn)的對(duì)應(yīng)維度的第一源端口編號(hào)與所述目的節(jié)點(diǎn)的對(duì)應(yīng)維度的第一目的端口編號(hào)之間的偏移。如果所述偏移大于或等于閾值,并且所述源節(jié)點(diǎn)的對(duì)應(yīng)維度的第一源端口編號(hào)小于或等于所述目的節(jié)點(diǎn)的對(duì)應(yīng)維度的第一目的端口編號(hào),則在該對(duì)應(yīng)維度上從所述源節(jié)點(diǎn)的負(fù)向第一源端口向所述目的節(jié)點(diǎn)的正向第一源端口發(fā)送數(shù)據(jù);或者,如果所述偏移大于或等于閾值,并且所述源節(jié)點(diǎn)的對(duì)應(yīng)維度的第一源端口編號(hào)大于所述目的節(jié)點(diǎn)的對(duì)應(yīng)維度的第一目的端口編號(hào),則在該對(duì)應(yīng)維度上從所述源節(jié)點(diǎn)的正向第一源端口向所述目的節(jié)點(diǎn)的負(fù)向第一目的端口發(fā)送數(shù)據(jù)?;蛘?,如果所述偏移小于所述閾值,并且所述源節(jié)點(diǎn)的對(duì)應(yīng)維度的第一源端口編號(hào)小于或等于所述目的節(jié)點(diǎn)的對(duì)應(yīng)維度的第一目的端口編號(hào),則在該對(duì)應(yīng)維度上從所述源節(jié)點(diǎn)的正向第一源端口向所述目的節(jié)點(diǎn)的負(fù)向第一目的端口發(fā)送數(shù)據(jù);或者,如果所述偏移小于閾值,并且如果所述源節(jié)點(diǎn)的對(duì)應(yīng)維度的第一源端口編號(hào)小于或等于所述目的節(jié)點(diǎn)的對(duì)應(yīng)維度的第一目的端口編號(hào),則從在該對(duì)應(yīng)維度上從所述源節(jié)點(diǎn)的負(fù)向第一源端口向所述目的節(jié)點(diǎn)的正向第一源端口發(fā)送數(shù)據(jù)。根據(jù)本公開的實(shí)施例,能夠直接基于與端口和維度對(duì)應(yīng)的節(jié)點(diǎn)坐標(biāo)實(shí)現(xiàn)在第一層拓?fù)渚W(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)路由,以快速地實(shí)現(xiàn)具有最低通信時(shí)延的最短距離通信。
8、在一些實(shí)施例中,所述多個(gè)計(jì)算節(jié)點(diǎn)還包括跳轉(zhuǎn)節(jié)點(diǎn),其中所述跳轉(zhuǎn)節(jié)點(diǎn)包括用于第一層拓?fù)渚W(wǎng)絡(luò)的第一跳轉(zhuǎn)端口集合和用于第二層拓?fù)渚W(wǎng)絡(luò)的第二跳轉(zhuǎn)端口集合,其中所述第一跳轉(zhuǎn)端口集合包括與第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一跳轉(zhuǎn)端口,所述第二跳轉(zhuǎn)端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二跳轉(zhuǎn)端口,其中所述第一跳轉(zhuǎn)端口具有第一跳轉(zhuǎn)端口編號(hào),所述第二跳轉(zhuǎn)端口具有第二跳轉(zhuǎn)端口編號(hào)。所述第二數(shù)據(jù)路由處理包括:確定所述源節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組之間是否存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路。如果存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述源節(jié)點(diǎn)的第二源端口向所述目的節(jié)點(diǎn)的第二目的端口發(fā)送數(shù)據(jù),并且在所述源節(jié)點(diǎn)的第一源端口集合與所述目的節(jié)點(diǎn)的第一目的端口集合之間執(zhí)行所述第一數(shù)據(jù)路由處理。如果不存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述源節(jié)點(diǎn)的第二源端口向所述第二層拓?fù)渚W(wǎng)絡(luò)中的跳轉(zhuǎn)節(jié)點(diǎn)的第二跳轉(zhuǎn)端口發(fā)送數(shù)據(jù),以從所述跳轉(zhuǎn)節(jié)點(diǎn)的第二跳轉(zhuǎn)端口向所述目的節(jié)點(diǎn)的第二目的端口轉(zhuǎn)發(fā)所述數(shù)據(jù),其中所述跳轉(zhuǎn)節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組之間存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,并且其中在所述源節(jié)點(diǎn)的第一源端口集合與所述跳轉(zhuǎn)節(jié)點(diǎn)的第一跳轉(zhuǎn)端口集合之間和在所述跳轉(zhuǎn)節(jié)點(diǎn)的第一跳轉(zhuǎn)端口集合與所述目的節(jié)點(diǎn)的第一目的端口集合之間執(zhí)行所述第一數(shù)據(jù)路由處理。根據(jù)本公開的實(shí)施例,能夠跨越不同類型的拓?fù)渚W(wǎng)絡(luò),直接基于與端口和不同類型的拓?fù)渚W(wǎng)絡(luò)分別對(duì)應(yīng)的節(jié)點(diǎn)坐標(biāo)實(shí)現(xiàn)在各層拓?fù)渚W(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)路由,以快速地實(shí)現(xiàn)具有最低通信時(shí)延的最短距離通信。
9、在一些實(shí)施例中,所述通信網(wǎng)絡(luò)還包括第三層拓?fù)渚W(wǎng)絡(luò),其中所述第二層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第三層拓?fù)渚W(wǎng)絡(luò),所述第三層拓?fù)渚W(wǎng)絡(luò)基于由第三數(shù)量的第二節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第三數(shù)量的第二節(jié)點(diǎn)群組在所述第三層拓?fù)渚W(wǎng)絡(luò)中以彼此互連的方式互相連接,以構(gòu)成所述第三層拓?fù)渚W(wǎng)絡(luò),其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合、與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合以及與所述第三層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第三端口集合,所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)在所述通信網(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)基于所述第一端口集合的端口編號(hào)、所述第二端口集合的端口編號(hào)以及所述第三端口集合的端口編號(hào)來(lái)確定。
10、在一些實(shí)施例中,所述源節(jié)點(diǎn)還包括第三源端口集合,所述第三源端口集合包括用于第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三源端口,其中所述第三源端口具有第三源端口編號(hào),并且所述源節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一源端口編號(hào)集合、所述第二源端口編號(hào)和所述第三源端口編號(hào)指示,其中所述第三源端口編號(hào)基于所述第一源端口集合中的第一源端口的第一源端口編號(hào)以及所述第二源端口集合中的第二源端口的第二源端口編號(hào)而被確定,所述目的節(jié)點(diǎn)還包括第三目的端口集合,所述第三目的端口集合包括用于所述第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三目的端口,其中所述第三目的端口具有第三目的端口編號(hào),并且所述目的節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一目的端口編號(hào)集合、所述第二目的端口編號(hào)和所述第三目的端口編號(hào)指示,其中所述第三目的端口編號(hào)基于所述第一目的端口集合中的第一目的端口的第一目的端口編號(hào)以及所述第二目的端口集合中的第二目的端口的第二目的端口編號(hào)而被確定,并且其中確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑還包括:基于所述第一源端口編號(hào)集合、所述第二源端口編號(hào)、所述第三源端口編號(hào)、所述第一目的端口編號(hào)集合、所述第二目的端口編號(hào)以及所述第三目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑。根據(jù)本公開的實(shí)施例,能夠以低成本、低功耗的方式進(jìn)一步實(shí)現(xiàn)網(wǎng)絡(luò)擴(kuò)展,以應(yīng)對(duì)不同網(wǎng)絡(luò)規(guī)模的數(shù)據(jù)路由系統(tǒng)。
11、在一些實(shí)施例中,確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑還包括:基于所述源節(jié)點(diǎn)的第三源端口編號(hào)與所述目的節(jié)點(diǎn)的第三目的端口編號(hào),確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)是否處于同一第二節(jié)點(diǎn)群組,其中屬于所述第二節(jié)點(diǎn)群組的多個(gè)第一節(jié)點(diǎn)群組處于同一第二層拓?fù)渚W(wǎng)絡(luò);如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)不處于同一第二節(jié)點(diǎn)群組,則執(zhí)行用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二數(shù)據(jù)路由處理;如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)處于同一第二節(jié)點(diǎn)群組,則執(zhí)行用于所述第三層拓?fù)渚W(wǎng)絡(luò)的第三數(shù)據(jù)路由處理。根據(jù)本公開的實(shí)施例,對(duì)于基于torus網(wǎng)絡(luò)拓?fù)浜投鄬拥膄ull-mesh網(wǎng)絡(luò)拓?fù)涞臄?shù)據(jù)通信系統(tǒng),可以快速地確定從源節(jié)點(diǎn)至目標(biāo)節(jié)點(diǎn)之間的最短路徑路由,以提高數(shù)據(jù)路由效率。
12、在一些實(shí)施例中,所述跳轉(zhuǎn)節(jié)點(diǎn)還包括第三跳轉(zhuǎn)端口集合,所述第三跳轉(zhuǎn)端口包括用于所述第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三跳轉(zhuǎn)端口,其中所述第三跳轉(zhuǎn)端口具有第三跳轉(zhuǎn)端口編號(hào),所述第三數(shù)據(jù)路由處理包括:確定所述源節(jié)點(diǎn)所屬的第二節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第二節(jié)點(diǎn)群組之間是否存在所述第三層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路。如果存在所述第三層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述源節(jié)點(diǎn)的第三源端口向所述目的節(jié)點(diǎn)的第三目的端口發(fā)送數(shù)據(jù),并且基于所述源節(jié)點(diǎn)的第二源端口編號(hào)與所述目的節(jié)點(diǎn)的第二目的端口編號(hào),確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)是否處于同一第一節(jié)點(diǎn)群組,以確定執(zhí)行用于所述第一層拓?fù)渚W(wǎng)絡(luò)的第一數(shù)據(jù)路由處理或者執(zhí)行用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二數(shù)據(jù)路由處理。如果不存在所述第三層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述源節(jié)點(diǎn)的第三源端口向所述第三層拓?fù)渚W(wǎng)絡(luò)的跳轉(zhuǎn)節(jié)點(diǎn)的第三跳轉(zhuǎn)端口發(fā)送數(shù)據(jù),以從所述跳轉(zhuǎn)節(jié)點(diǎn)的第三跳轉(zhuǎn)端口向所述目的節(jié)點(diǎn)的第三目的端口轉(zhuǎn)發(fā)所述數(shù)據(jù),其中所述跳轉(zhuǎn)節(jié)點(diǎn)所屬的第二節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第二節(jié)點(diǎn)群組之間存在所述第三層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路。在一些實(shí)施例中,所述多個(gè)計(jì)算節(jié)點(diǎn)還包括擺渡節(jié)點(diǎn),其中所述擺渡節(jié)點(diǎn)包括用于第一層拓?fù)渚W(wǎng)絡(luò)的第一擺渡端口集合、用于第二層拓?fù)渚W(wǎng)絡(luò)的第二擺渡端口集合和用于第三層拓?fù)渚W(wǎng)絡(luò)的第三跳轉(zhuǎn)端口集合,其中所述第一擺渡端口集合包括與第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一擺渡端口,所述第二擺渡端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二擺渡端口,所述第二擺渡端口包括用于所述第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三擺渡端口,其中所述第一擺渡端口具有第一擺渡端口編號(hào),所述第二擺渡端口具有第二擺渡端口編號(hào),所述第三擺渡端口具有第三擺渡端口編號(hào)。如果不存在所述第三層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則所述第三數(shù)據(jù)路由處理還包括:基于所述跳轉(zhuǎn)節(jié)點(diǎn)的第二跳轉(zhuǎn)端口編號(hào)與所述目的節(jié)點(diǎn)的第二目的端口編號(hào),確定所述跳轉(zhuǎn)節(jié)點(diǎn)與所述目的節(jié)點(diǎn)是否處于同一第一節(jié)點(diǎn)群組;如果確定所述跳轉(zhuǎn)節(jié)點(diǎn)與所述目的節(jié)點(diǎn)處于同一第一節(jié)點(diǎn)群組,則執(zhí)行所述第一數(shù)據(jù)路由處理;如果確定所述跳轉(zhuǎn)節(jié)點(diǎn)與所述目的節(jié)點(diǎn)不處于同一第一節(jié)點(diǎn)群組,則確定所述跳轉(zhuǎn)節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組之間是否存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路。如果存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述跳轉(zhuǎn)節(jié)點(diǎn)的第二跳轉(zhuǎn)端口向所述目的節(jié)點(diǎn)的第二目的端口發(fā)送數(shù)據(jù),并且在所述跳轉(zhuǎn)節(jié)點(diǎn)的第一跳轉(zhuǎn)端口集合與所述目的節(jié)點(diǎn)的第一目的端口集合之間執(zhí)行所述第一數(shù)據(jù)路由處理。如果不存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,則從所述跳轉(zhuǎn)節(jié)點(diǎn)的第二跳轉(zhuǎn)端口向所述第二層拓?fù)渚W(wǎng)絡(luò)中的擺渡節(jié)點(diǎn)的第二擺渡端口發(fā)送數(shù)據(jù),以從所述擺渡節(jié)點(diǎn)的第二擺渡端口向所述目的節(jié)點(diǎn)的第二目的端口轉(zhuǎn)發(fā)所述數(shù)據(jù),其中所述擺渡節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組與所述目的節(jié)點(diǎn)所屬的第一節(jié)點(diǎn)群組之間存在所述第二層拓?fù)渚W(wǎng)絡(luò)中的直達(dá)鏈路,其中在所述跳轉(zhuǎn)節(jié)點(diǎn)的第一跳轉(zhuǎn)端口集合與所述擺渡節(jié)點(diǎn)的第一擺渡端口集合之間和在所述擺渡節(jié)點(diǎn)的第一擺渡端口集合與所述目的節(jié)點(diǎn)的第一目的端口集合之間執(zhí)行所述第一數(shù)據(jù)路由處理。根據(jù)本公開的實(shí)施例,可以跨越不同類型的拓?fù)渚W(wǎng)絡(luò)以及不同層級(jí)的拓?fù)渚W(wǎng)絡(luò),基于具有確定性的拓?fù)涮卣鞯墓?jié)點(diǎn)坐標(biāo)來(lái)確定從源節(jié)點(diǎn)至目標(biāo)節(jié)點(diǎn)之間的最短路徑路由,以實(shí)現(xiàn)具有最低通信時(shí)延的最短距離通信的同時(shí),有效地促進(jìn)硬件實(shí)現(xiàn)。
13、在一些實(shí)施例中,與所述第一層拓?fù)渚W(wǎng)絡(luò)的所述多個(gè)維度中的每個(gè)維度對(duì)應(yīng)的正向第一端口和負(fù)向第一端口被配置有第一虛通道和第二虛通道。如果所述源節(jié)點(diǎn)的第一源端口編號(hào)小于或等于所述目的節(jié)點(diǎn)的第一目的端口編號(hào),則從所述源節(jié)點(diǎn)的正向第一源端口的第一虛通道向所述目的節(jié)點(diǎn)的負(fù)向第一目的端口的第一虛通道發(fā)送數(shù)據(jù)。如果所述源節(jié)點(diǎn)的第一端口編號(hào)大于所述目的節(jié)點(diǎn)的第一端口編號(hào),則從所述源節(jié)點(diǎn)的正向第一源端口的第二虛通道向所述目的節(jié)點(diǎn)的負(fù)向第一目的端口的第二虛通道發(fā)送數(shù)據(jù)。在一些實(shí)施例中,與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口被配置有第三虛通道和第四虛通道,與所述第三層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第三端口被配置有第五虛通道和第六虛通道。針對(duì)所述第二層拓?fù)渚W(wǎng)絡(luò)的全局路由,從所述源節(jié)點(diǎn)的第二源端口的第三虛通道向所述目的節(jié)點(diǎn)的第二目的端口的第三虛通道發(fā)送數(shù)據(jù),針對(duì)所述第二層拓?fù)渚W(wǎng)絡(luò)的首次全局路由,從所述源節(jié)點(diǎn)的第二源端口的第四虛通道向所述目的節(jié)點(diǎn)的第二目的端口的第四虛通道發(fā)送數(shù)據(jù)。針對(duì)所述第三層拓?fù)渚W(wǎng)絡(luò)的全局路由,從所述源節(jié)點(diǎn)的第三源端口的第五虛通道向所述目的節(jié)點(diǎn)的第三目的端口的第五虛通道發(fā)送數(shù)據(jù),針對(duì)所述第三層拓?fù)渚W(wǎng)絡(luò)的首次全局路由,從所述源節(jié)點(diǎn)的第三源端口的第六虛通道向所述目的節(jié)點(diǎn)的第三目的端口的第六虛通道發(fā)送數(shù)據(jù)。根據(jù)本公開的實(shí)施例,利用虛擬通道進(jìn)行數(shù)據(jù)路由的端口交錯(cuò),能夠有效地避免各層級(jí)拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)間的通信依賴成環(huán)問(wèn)題,從而不會(huì)導(dǎo)致死鎖的產(chǎn)生。
14、在一些實(shí)施例中,所述第一層拓?fù)渚W(wǎng)絡(luò)包括構(gòu)成所述第一節(jié)點(diǎn)群組的27個(gè)節(jié)點(diǎn),所述第二層拓?fù)渚W(wǎng)絡(luò)包括構(gòu)成第二節(jié)點(diǎn)群組的28個(gè)所述第一節(jié)點(diǎn)群組,所述第三層拓?fù)渚W(wǎng)絡(luò)包括757個(gè)所述第二節(jié)點(diǎn)群組。其中,所述第一源端口集合包括6個(gè)第一源端口,所述6個(gè)第一源端口包括與三維環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的三個(gè)維度分別對(duì)應(yīng)的3個(gè)正向第一源端口和3個(gè)負(fù)向第一源端口,所述第二源端口集合包括用于全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)互連的1個(gè)第二源端口,所述第三源端口集合包括用于全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)互連的1個(gè)第三源端口。其中,所述第一目的端口集合包括6個(gè)第一目的端口,所述6個(gè)第一目的端口包括與三維環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的三個(gè)維度分別對(duì)應(yīng)的3個(gè)正向第一目的端口和3個(gè)負(fù)向第一目的端口,所述第二目的端口集合包括用于全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)互連的1個(gè)第二目的端口,所述第三目的端口集合包括用于全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)互連的1個(gè)第三目的端口。根據(jù)本公開的實(shí)施例,能夠特別地適合于采用了ring?all-reduce通信算法的ai大模型的全局通信,以有效地實(shí)現(xiàn)e級(jí)超算組網(wǎng)需求的同時(shí),有效降低網(wǎng)絡(luò)直徑、降低通信延遲。
15、在本公開的第二方面,提供了一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的方法。所述多個(gè)計(jì)算節(jié)點(diǎn)包括源節(jié)點(diǎn)和目的節(jié)點(diǎn),其中:所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合,所述源節(jié)點(diǎn)包括具有第一源端口編號(hào)的第一源端口集合和第二源端口編號(hào)的第二源端口集合,所述目的節(jié)點(diǎn)包括具有第一目的端口編號(hào)的第一目的端口集合和第二目的端口編號(hào)的第二目的端口集合。所述方法包括:所述源節(jié)點(diǎn)基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;所述源節(jié)點(diǎn)基于確定的所述數(shù)據(jù)路由路徑,向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)向所述目的節(jié)點(diǎn)發(fā)送數(shù)據(jù);以及所述目的節(jié)點(diǎn)接收來(lái)自所述源節(jié)點(diǎn)的所述數(shù)據(jù)。
16、在一些實(shí)施例中,所述第一數(shù)量的節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中以相鄰節(jié)點(diǎn)互連的方式互相連接,以構(gòu)成所述第一層拓?fù)渚W(wǎng)絡(luò),并且所述第二數(shù)量的第一節(jié)點(diǎn)群組在所述第二層拓?fù)渚W(wǎng)絡(luò)中以彼此互連的方式互相連接,以構(gòu)成所述第二層拓?fù)渚W(wǎng)絡(luò),其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)在所述通信網(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)基于所述第一端口集合的端口編號(hào)和所述第二端口集合的端口編號(hào)來(lái)確定,其中所述第一源端口集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一源端口,所述第二源端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二源端口,并且所述第一目的端口集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的維度對(duì)應(yīng)的多個(gè)第一目的端口,所述第二目的端口集合包括用于所述第二層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第二目的端口。
17、在一些實(shí)施例中,所述源節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)由第一源端口編號(hào)集合指示,所述第一源端口編號(hào)集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的各個(gè)維度分別對(duì)應(yīng)的第一源端口和的第一源端口編號(hào),所述目的節(jié)點(diǎn)在所述第一層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)由第一目的端口編號(hào)集合指示,所述第一目的端口編號(hào)集合包括與所述第一層拓?fù)渚W(wǎng)絡(luò)的各個(gè)維度分別對(duì)應(yīng)的第一目的端口和的第一目的端口編號(hào),所述源節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一源端口編號(hào)集合和所述第二源端口編號(hào)指示,其中所述第二源端口編號(hào)基于所述第一源端口集合中的第一源端口的第一源端口編號(hào)而被確定,所述目的節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一目的端口編號(hào)集合和所述第二目的端口編號(hào)指示,其中所述第二目的端口編號(hào)基于所述第一目的端口集合中的第一目的端口的第一目的端口編號(hào)而被確定。
18、在一些實(shí)施例中,確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑包括:基于所述源節(jié)點(diǎn)的第二源端口編號(hào)與所述目的節(jié)點(diǎn)的第二目的端口編號(hào),確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)是否處于同一第一節(jié)點(diǎn)群組,其中屬于所述第一節(jié)點(diǎn)群組的多個(gè)節(jié)點(diǎn)處于同一第一層拓?fù)渚W(wǎng)絡(luò);如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)處于同一第一節(jié)點(diǎn)群組,則執(zhí)行用于所述第一層拓?fù)渚W(wǎng)絡(luò)的第一數(shù)據(jù)路由處理;如果確定所述源節(jié)點(diǎn)與所述目的節(jié)點(diǎn)不處于同一第一節(jié)點(diǎn)群組,則執(zhí)行用于所述第二層拓?fù)渚W(wǎng)絡(luò)的第二數(shù)據(jù)路由處理。
19、在一些實(shí)施例中,所述通信網(wǎng)絡(luò)還包括第三層拓?fù)渚W(wǎng)絡(luò),其中所述第二層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第三層拓?fù)渚W(wǎng)絡(luò),所述第三層拓?fù)渚W(wǎng)絡(luò)基于由第三數(shù)量的第二節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第三數(shù)量的第二節(jié)點(diǎn)群組在所述第三層拓?fù)渚W(wǎng)絡(luò)中以彼此互連的方式互相連接,以構(gòu)成所述第三層拓?fù)渚W(wǎng)絡(luò),其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合、與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合以及與所述第三層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第三端口集合,所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)在所述通信網(wǎng)絡(luò)中的節(jié)點(diǎn)坐標(biāo)基于所述第一端口集合的端口編號(hào)、所述第二端口集合的端口編號(hào)以及所述第三端口集合的端口編號(hào)來(lái)確定。
20、在一些實(shí)施例中,所述源節(jié)點(diǎn)還包括第三源端口集合,所述第三源端口集合包括用于第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三源端口,其中所述第三源端口具有第三源端口編號(hào),并且所述源節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一源端口編號(hào)集合、所述第二源端口編號(hào)和所述第三源端口編號(hào)指示,其中所述第三源端口編號(hào)基于所述第一源端口集合中的第一源端口的第一源端口編號(hào)以及所述第二源端口集合中的第二源端口的第二源端口編號(hào)而被確定,所述目的節(jié)點(diǎn)還包括第三目的端口集合,所述第三目的端口集合包括用于所述第三層拓?fù)渚W(wǎng)絡(luò)中的節(jié)點(diǎn)連接的至少一個(gè)第三目的端口,其中所述第三目的端口具有第三目的端口編號(hào),并且所述目的節(jié)點(diǎn)在所述多個(gè)計(jì)算節(jié)點(diǎn)中的節(jié)點(diǎn)坐標(biāo)由所述第一目的端口編號(hào)集合、所述第二目的端口編號(hào)和所述第三目的端口編號(hào)指示,其中所述第三目的端口編號(hào)基于所述第一目的端口集合中的第一目的端口的第一目的端口編號(hào)以及所述第二目的端口集合中的第二目的端口的第二目的端口編號(hào)而被確定,并且其中確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑還包括:基于所述第一源端口編號(hào)集合、所述第二源端口編號(hào)、所述第三源端口編號(hào)、所述第一目的端口編號(hào)集合、所述第二目的端口編號(hào)以及所述第三目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑。
21、在本公開的第三方面,提供了一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的裝置。所述裝置至少與所述源節(jié)點(diǎn)對(duì)應(yīng),其中:所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合,所述源節(jié)點(diǎn)包括具有第一源端口編號(hào)的第一源端口集合和第二源端口編號(hào)的第二源端口集合,所述目的節(jié)點(diǎn)包括具有第一目的端口編號(hào)的第一目的端口集合和第二目的端口編號(hào)的第二目的端口集合。所述裝置包括:編號(hào)獲取模塊,所述編號(hào)獲取模塊被配置為獲取所述源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào),并且獲取所述目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);路徑確定模塊,所述路徑確定模塊被配置為基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及數(shù)據(jù)傳輸模塊,所述數(shù)據(jù)傳輸模塊被配置為基于確定的所述數(shù)據(jù)路由路徑,向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)。
22、在本公開的第三方面的另一側(cè)面,提供了一種用于多個(gè)計(jì)算節(jié)點(diǎn)之間的數(shù)據(jù)路由的裝置。所述多個(gè)計(jì)算節(jié)點(diǎn)包括源節(jié)點(diǎn)和目的節(jié)點(diǎn),所述裝置至少與所述目的節(jié)點(diǎn)對(duì)應(yīng),其中:所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合,所述源節(jié)點(diǎn)包括具有第一源端口編號(hào)的第一源端口集合和第二源端口編號(hào)的第二源端口集合,所述目的節(jié)點(diǎn)包括具有第一目的端口編號(hào)的第一目的端口集合和第二目的端口編號(hào)的第二目的端口集合。所述裝置包括數(shù)據(jù)傳輸模塊,所述數(shù)據(jù)傳輸模塊被配置為接收基于從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑傳輸?shù)臄?shù)據(jù),其中所述數(shù)據(jù)路由路徑基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào)確定。
23、在本公開的第四方面,提供了一種計(jì)算設(shè)備,所述計(jì)算設(shè)備為多個(gè)計(jì)算節(jié)點(diǎn)中數(shù)據(jù)路由的源節(jié)點(diǎn),所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合,所述計(jì)算設(shè)備包括具有第一源端口編號(hào)的第一源端口集合和第二源端口編號(hào)的第二源端口集合,所述多個(gè)計(jì)算節(jié)點(diǎn)中與所述源節(jié)點(diǎn)對(duì)應(yīng)的目的節(jié)點(diǎn)包括具有第一目的端口編號(hào)的第一目的端口集合和第二目的端口編號(hào)的第二目的端口集合。所述計(jì)算設(shè)備包括:處理器;以及存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有指令,所述指令在被所述處理器執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行:獲取所述源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào),并且獲取所述目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及基于確定的所述數(shù)據(jù)路由路徑,向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)。在一些實(shí)施例中,計(jì)算設(shè)備可以是服務(wù)器,例如是中心服務(wù)器、邊緣服務(wù)器,或者是本地?cái)?shù)據(jù)中心中的本地服務(wù)器。在一些實(shí)施例中,計(jì)算設(shè)備也可以是臺(tái)式機(jī)、筆記本電腦或者智能手機(jī)等終端設(shè)備。
24、在本公開的第四方面的另一側(cè)面,提供了一種計(jì)算設(shè)備,所述計(jì)算設(shè)備是包括源節(jié)點(diǎn)和目的節(jié)點(diǎn)的多個(gè)計(jì)算節(jié)點(diǎn)中的所述目的節(jié)點(diǎn),所述多個(gè)計(jì)算節(jié)點(diǎn)位于至少包括第一層拓?fù)渚W(wǎng)絡(luò)和第二層拓?fù)渚W(wǎng)絡(luò)的通信網(wǎng)絡(luò),其中所述第一層拓?fù)渚W(wǎng)絡(luò)嵌套于所述第二層拓?fù)渚W(wǎng)絡(luò),所述第一層拓?fù)渚W(wǎng)絡(luò)基于由第一數(shù)量的節(jié)點(diǎn)構(gòu)成的環(huán)繞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第一數(shù)量的節(jié)點(diǎn)構(gòu)成與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一節(jié)點(diǎn)群組,所述第二層拓?fù)渚W(wǎng)絡(luò)基于由第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成的全互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所述第二數(shù)量的第一節(jié)點(diǎn)群組構(gòu)成與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二節(jié)點(diǎn)群組,其中所述多個(gè)計(jì)算節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)至少包括與所述第一層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第一端口集合和與所述第二層拓?fù)渚W(wǎng)絡(luò)對(duì)應(yīng)的第二端口集合,所述計(jì)算設(shè)備包括具有第一源端口編號(hào)的第一源端口集合和第二源端口編號(hào)的第二源端口集合,所述目的節(jié)點(diǎn)包括具有第一目的端口編號(hào)的第一目的端口集合和第二目的端口編號(hào)的第二目的端口集合。所述計(jì)算設(shè)備包括:處理器;以及存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有指令,所述指令在被所述處理器執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行:接收基于從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑傳輸?shù)臄?shù)據(jù),其中所述數(shù)據(jù)路由路徑基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào)確定。
25、在本公開的第五方面,提供了一種計(jì)算設(shè)備集群,其特征在于,包括至少一個(gè)根據(jù)本公開的第四方面及另一側(cè)面的計(jì)算設(shè)備,每個(gè)計(jì)算設(shè)備包括處理器和存儲(chǔ)器,所述至少一個(gè)計(jì)算設(shè)備的處理器用于執(zhí)行所述至少一個(gè)計(jì)算設(shè)備的存儲(chǔ)器中存儲(chǔ)的指令,以使得所述計(jì)算設(shè)備集群執(zhí)行:獲取源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào),并且獲取目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及基于確定的所述數(shù)據(jù)路由路徑,從所述源節(jié)點(diǎn)向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù),或者接收基于從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑傳輸?shù)臄?shù)據(jù)。在一些實(shí)施例中,計(jì)算設(shè)備集群包括一個(gè)計(jì)算設(shè)備。在另一些實(shí)施例中,計(jì)算設(shè)備集群包括多個(gè)計(jì)算設(shè)備。
26、在本公開的第六方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有指令,所述指令在被根據(jù)本公開的第四方面及另一側(cè)面的計(jì)算設(shè)備執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行:獲取源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào),并且獲取目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及基于確定的所述數(shù)據(jù)路由路徑,從所述源節(jié)點(diǎn)向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù),或者接收基于從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑傳輸?shù)臄?shù)據(jù)。在一些實(shí)施例中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是非瞬態(tài)的。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括但不限于易失性存儲(chǔ)器(例如隨機(jī)訪問(wèn)存儲(chǔ)器)、非易失性存儲(chǔ)器(例如快閃存儲(chǔ)器、硬盤(hard?disk?drive,hdd)、固態(tài)盤(solid?state?drive,ssd)等)。
27、在本公開的第七方面,提供了一種計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述計(jì)算機(jī)程序產(chǎn)品包括指令,所述指令在被根據(jù)本公開的第四方面及另一側(cè)面的計(jì)算設(shè)備執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行:獲取源節(jié)點(diǎn)的第一源端口編號(hào)和第二源端口編號(hào),并且獲取目的節(jié)點(diǎn)的第一目的端口編號(hào)和第二目的端口編號(hào);基于所述第一源端口編號(hào)、所述第二源端口編號(hào)、所述第一目的端口編號(hào)以及所述第二目的端口編號(hào),確定從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑;以及基于確定的所述數(shù)據(jù)路由路徑,從所述源節(jié)點(diǎn)向所述目的節(jié)點(diǎn)發(fā)送所述數(shù)據(jù),或者接收基于從所述源節(jié)點(diǎn)至所述目的節(jié)點(diǎn)的數(shù)據(jù)路由路徑傳輸?shù)臄?shù)據(jù)。在一些實(shí)施例中,程序產(chǎn)品可以包括一個(gè)或多個(gè)軟件安裝包,在需要使用前述第一方面或其可能的變形提供的方法的情況下,可以下載或拷貝軟件安裝包并在計(jì)算設(shè)備上執(zhí)行。