可擴(kuò)展地址解析的制作方法
【專利摘要】一個實(shí)施例提供了有待由計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)執(zhí)行的子網(wǎng)管理員(SA)代理邏輯。所述SA代理邏輯包括:提供方邏輯,所述提供方邏輯包括與所述計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)通信的相關(guān)聯(lián)子網(wǎng)的路徑記錄信息;以及提供方接口邏輯,所述提供方接口邏輯用于接收來自至少一個應(yīng)用的包括部分地址信息的地址解析請求。所述提供方接口邏輯還用于確定所述計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)的用于啟用與所述地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口。所述提供方邏輯還用于確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)。所述提供方接口邏輯還用于確定至少一個提供方邏輯,所述至少一個提供方邏輯有待利用以獲得與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的所述路徑記錄信息。所述提供方接口邏輯還用于生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使所述至少一個應(yīng)用能夠通過所述至少一個所確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。
【專利說明】
可擴(kuò)展地址解析
技術(shù)領(lǐng)域
[0001]本公開涉及用于交換結(jié)構(gòu)網(wǎng)絡(luò)的可擴(kuò)展地址解析。
【背景技術(shù)】
[0002]交換結(jié)構(gòu)網(wǎng)絡(luò)(如無限帶寬?(IB)網(wǎng)絡(luò))中的名稱和路徑解析已成為難題。并不存在可擴(kuò)展解決方案,并且用于解決與子網(wǎng)管理員相關(guān)聯(lián)的限制的各種變通方案已導(dǎo)致失敗的或降低的性能(例如,復(fù)雜結(jié)構(gòu)拓?fù)渲械慕Y(jié)構(gòu)死鎖)。用于名稱和路徑解析的一些當(dāng)前解決方案包括針對除了遠(yuǎn)程本地標(biāo)識符(LID)之外的所有變量的硬編碼值、如可以在無限帶寬?網(wǎng)絡(luò)標(biāo)準(zhǔn)中發(fā)現(xiàn)的“標(biāo)準(zhǔn)”方法、以及使用分配至IB以解析并建立連接的IB上網(wǎng)際協(xié)議(IPoIB)尋址的RDMA IP CM。這些解決方案并不于為像無限帶寬?網(wǎng)絡(luò)之類的交換結(jié)構(gòu)網(wǎng)絡(luò)提供高速可擴(kuò)展性、性能和容錯。
【附圖說明】
[0003]要求保護(hù)的主題的特征和優(yōu)點(diǎn)將從與其一致的實(shí)施例的以下詳細(xì)描述中變得顯而易見,應(yīng)參照附圖考慮所附描述,在附圖中:
[0004]圖1展示了與本公開的各實(shí)施例一致的網(wǎng)絡(luò)系統(tǒng);
[0005]圖2展示了根據(jù)本公開的一個實(shí)施例的示例地址解析請求消息;
[0006]圖3展示了根據(jù)本公開的一個實(shí)施例的示例地址解析響應(yīng)消息;
[0007]圖4展示了根據(jù)本公開的一個實(shí)施例的另一個示例消息;以及
[0008]圖5是根據(jù)本公開的一個實(shí)施例的操作的流程圖。
[0009]盡管以下【具體實(shí)施方式】將通過參照說明性實(shí)施例來進(jìn)行闡述,但是其許多替代方案、修改和變體將對本領(lǐng)域技術(shù)人員而言顯而易見。
【具體實(shí)施方式】
[0010]通常,本公開涉及網(wǎng)絡(luò)的有效、可擴(kuò)展的地址解析系統(tǒng)。網(wǎng)絡(luò)節(jié)點(diǎn)包括子網(wǎng)管理員(SA)代理邏輯,所述SA代理邏輯包括提供方邏輯,所述提供方邏輯包含關(guān)于與網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信的特定網(wǎng)絡(luò)和/或子網(wǎng)的特定結(jié)構(gòu)信息(例如,路徑記錄信息等)。所述至少一個提供方邏輯提供本地地址解析,而不要求應(yīng)用持續(xù)地或周期地與網(wǎng)絡(luò)和/或子網(wǎng)進(jìn)行通信以解析地址。提供了一種提供方接口,所述提供方接口被配置成用于接收來自一個或多個應(yīng)用的地址解析請求、從多個提供方邏輯當(dāng)中確定合適的提供方邏輯以解析所述請求的地址、并且將所述解析的地址返回至應(yīng)用以啟用所述應(yīng)用通過子網(wǎng)/網(wǎng)絡(luò)將分組路由至目的。所述解析的地址可以采取路徑記錄信息的形式,所述路徑記錄信息可以提供本地端口信息、目的地址信息以及與網(wǎng)絡(luò)/子網(wǎng)結(jié)構(gòu)中的各跳有關(guān)的路徑信息(例如,MTU、服務(wù)層級、分區(qū)等)。除其他項(xiàng)外,提供方接口啟用在節(jié)點(diǎn)上運(yùn)行的應(yīng)用以請求地址解析而不要求應(yīng)用配置有特定的結(jié)構(gòu)協(xié)議,因此使得針對廣泛的應(yīng)用的地址解析透明成為可能。每個提供方邏輯可以例如通過結(jié)構(gòu)管理器、子網(wǎng)管理器等被生成,并且/或者可以使用網(wǎng)絡(luò)/子網(wǎng)結(jié)構(gòu)的預(yù)定知識被生成。在一些實(shí)施例中,提供方邏輯和提供方接口可以在內(nèi)核(OS)空間中由用戶訪問以啟用地址解析例如用于I/o事務(wù)和應(yīng)用、無限帶寬以太網(wǎng)(IB上IP)應(yīng)用、特權(quán)OS用戶應(yīng)用等。
[0011]圖1展示了與本公開的各實(shí)施例一致的網(wǎng)絡(luò)系統(tǒng)100。網(wǎng)絡(luò)系統(tǒng)100通常包括與至少一個網(wǎng)絡(luò)/子網(wǎng)網(wǎng)絡(luò)系統(tǒng)124A、124B.....124M(下文稱為“子網(wǎng)”)進(jìn)行通信的至少一個網(wǎng)絡(luò)節(jié)點(diǎn)元件102(下文稱為“節(jié)點(diǎn)”)。節(jié)點(diǎn)102與子網(wǎng)124A、124B.....124M可以使用交換結(jié)構(gòu)通信協(xié)議(例如,以太網(wǎng)通信協(xié)議、無限帶寬通信協(xié)議、專有交換結(jié)構(gòu)通信協(xié)議等)彼此通信。以太網(wǎng)通信協(xié)議可能能夠使用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)來提供通信。以太網(wǎng)協(xié)議可以遵守或兼容由電氣與電子工程師協(xié)會(IEEE)于2002年3月發(fā)布的題為“IEEE802.3標(biāo)準(zhǔn)”的以太網(wǎng)標(biāo)準(zhǔn)和/或此標(biāo)準(zhǔn)的后續(xù)版本(例如,2012年發(fā)布的以太網(wǎng)IEEE 802.3標(biāo)準(zhǔn))。無限帶寬協(xié)議可以遵守或兼容由無限帶寬行業(yè)協(xié)會(IBTA)于2001年6月發(fā)布的題為“無限帶寬?架構(gòu)規(guī)范”的無限帶寬規(guī)范,卷I,發(fā)行1.2.1和/或此規(guī)范的后續(xù)版本(例如,2008年I月發(fā)布的無限帶寬?架構(gòu),卷I (通用規(guī)范),發(fā)行1.2.1以及2012年11月發(fā)布的卷2(物理層規(guī)范),發(fā)行1.3)。當(dāng)然,在其他實(shí)施例中,交換結(jié)構(gòu)通信協(xié)議可以包括定制和/或?qū)S薪粨Q結(jié)構(gòu)通信協(xié)議和/或其他通信協(xié)議。
[0012]節(jié)點(diǎn)102可以代表計(jì)算機(jī)節(jié)點(diǎn)元件(例如,主機(jī)服務(wù)器系統(tǒng))、交換機(jī)、路由器、集線器、網(wǎng)絡(luò)存儲設(shè)備、機(jī)架、服務(wù)器、數(shù)據(jù)中心、附接于網(wǎng)絡(luò)的設(shè)備、非易失性存儲器(NVM)存儲設(shè)備、基于云的服務(wù)器和/或存儲系統(tǒng)等。系統(tǒng)100可以被配置成用于高性能計(jì)算(HPC)應(yīng)用,例如,大規(guī)模存儲網(wǎng)絡(luò)(例如,云計(jì)算等)和/或其他配置。盡管未在圖1中示出,節(jié)點(diǎn)102可以出于這些目的包括可以存在于計(jì)算機(jī)節(jié)點(diǎn)元件中的電路和/或系統(tǒng),并且可以包括例如系統(tǒng)處理器(例如,多核通用處理器,如由因特爾公司提供的那些處理器等)和系統(tǒng)存儲器。在此描述的邏輯和/或接口可以包括存儲在系統(tǒng)存儲器中的且由處理器電路(如系統(tǒng)處理器)執(zhí)行的可執(zhí)行指令。
[0013]在一些實(shí)施例中,節(jié)點(diǎn)102可以被邏輯地和/或物理地劃分成用戶空間區(qū)域104(例如,應(yīng)用空間)和內(nèi)核區(qū)域106。通常,用戶空間區(qū)域106可以包括一個或多個應(yīng)用,所述一個或多個應(yīng)用通常是在操作系統(tǒng)(OS)內(nèi)核的“外部”執(zhí)行的,并且內(nèi)核區(qū)域可以包括通常被執(zhí)行為OS內(nèi)核的一部分的一個或多個應(yīng)用(內(nèi)核用戶)。
[0014]用戶空間區(qū)域104可以包括一個或多個應(yīng)用,其中一個應(yīng)用在圖1中被指定為應(yīng)用108A。貫穿本公開,應(yīng)用108A被提供作為示例,并且除非相反地聲明,應(yīng)用108A的地址解析操作表示應(yīng)用組可以如何操作。一個或多個應(yīng)用可以包括:例如,消息傳送接口(MPI)應(yīng)用、在大規(guī)模并行應(yīng)用中提供通信協(xié)議的庫緩存應(yīng)用、性能擴(kuò)展消息(PSM)應(yīng)用、可擴(kuò)展結(jié)構(gòu)接口(SFI)應(yīng)用、互聯(lián)網(wǎng)/聯(lián)網(wǎng)應(yīng)用(例如,RDMA協(xié)議應(yīng)用)、可以用于具體操作環(huán)境的定制和/或現(xiàn)成應(yīng)用等。通常,應(yīng)用108A被配置成用于生成有待發(fā)送至一個或多個子網(wǎng)124A、
124B.....124M的分組。節(jié)點(diǎn)102還可以包括至少一個網(wǎng)絡(luò)控制器122 (例如,網(wǎng)絡(luò)接口卡
(NIC))。網(wǎng)絡(luò)控制器122可以包括多個端口 0、1、2.....N。每個端口可以由一個或多個應(yīng)用和/或一個或多個子網(wǎng)124A、124B.....124M使用以提供節(jié)點(diǎn)102與子網(wǎng)124A、124B.....124M之間的物理耦接。端口的結(jié)構(gòu)特征和操作特征可以由上述無限帶寬通信協(xié)議定義,并且/或者由定制和/或?qū)S薪粨Q結(jié)構(gòu)通信協(xié)議定義。
[0015]每個子網(wǎng)124A、124B.....124M代表互連網(wǎng)絡(luò)節(jié)點(diǎn)的結(jié)構(gòu)拓?fù)?。每個子網(wǎng)124A、124B.....124M可以包括對應(yīng)的子網(wǎng)管理邏輯SA 126A、126B.....126M,對應(yīng)的子網(wǎng)管理邏輯SA通??刹僮饕耘渲镁W(wǎng)絡(luò)結(jié)構(gòu)(其可以包括例如設(shè)備/節(jié)點(diǎn)元件發(fā)現(xiàn)、設(shè)備/節(jié)點(diǎn)元件能力和配置的確定等)、將地址分配給節(jié)點(diǎn)和/或節(jié)點(diǎn)與網(wǎng)絡(luò)控制器、對節(jié)點(diǎn)切換元件進(jìn)行編程以提供節(jié)點(diǎn)元件之間的路徑。子網(wǎng)管理(SA)邏輯126A、126B.....126M還被配置成用于生成SA數(shù)據(jù),并且SA數(shù)據(jù)通常包括在對應(yīng)子網(wǎng)124A、124B.....124M內(nèi)的網(wǎng)絡(luò)節(jié)點(diǎn)元件的地址和路徑信息和/或外部地址和路徑信息(例如,DNS信息、TCP/IP網(wǎng)絡(luò)信息等)。
[0016]為了將分組傳輸至一個或多個子網(wǎng),應(yīng)用108A可以生成地址解析請求以使應(yīng)用
108A能夠通過經(jīng)標(biāo)識的子網(wǎng)124A、124B.....124M的結(jié)構(gòu)路由分組。在此使用的“地址解析”
通常被定義為充足的地址信息以使應(yīng)用能夠通過至少一個子網(wǎng)124A、124B.....124M將一個或多個分組路由到至少一個目的節(jié)點(diǎn)。由應(yīng)用108A生成的地址解析請求可以包括例如可以符合標(biāo)準(zhǔn)化格式(例如,無限帶寬函數(shù)調(diào)用格式等)的函數(shù)調(diào)用,因此使能夠支持各種各樣的當(dāng)前應(yīng)用和/或未來應(yīng)用,并且還因此在不要求用于提供結(jié)構(gòu)拓?fù)涞鹊奶囟ㄖR的應(yīng)用的情況下提供地址解析。由應(yīng)用108A生成的地址解析請求可以包括針對目的節(jié)點(diǎn)的不完全的或不準(zhǔn)確的地址信息。例如,應(yīng)用108A可以生成地址解析請求,所述地址解析請求包括目的名稱(例如,表示端口的字符串“hostname”、網(wǎng)絡(luò)標(biāo)簽等)、IP地址、IPv6地址、源地址數(shù)據(jù)、目的地址數(shù)據(jù)和/或其他地址信息。在其他示例中,應(yīng)用108A可以生成地址解析請求,所述地址解析請求包括路徑記錄數(shù)據(jù),所述路徑記錄數(shù)據(jù)提供關(guān)于應(yīng)如何解析地址的“提示”。例如,利用具體的MTU、特定的服務(wù)ID等,這種“提示”可以包括通過結(jié)構(gòu)的一條或多條路徑、在結(jié)構(gòu)的具體分區(qū)之上的路徑。來自應(yīng)用的地址信息通常不足以通過子網(wǎng)將分組正確地路由至目的節(jié)點(diǎn)。為了使應(yīng)用108A能夠?qū)⒎纸M正確地路由至目的節(jié)點(diǎn),地址解析可以包括路徑記錄信息和端口信息。在此使用的“路徑記錄”包括將源節(jié)點(diǎn)與目的節(jié)點(diǎn)進(jìn)行關(guān)聯(lián)的信息(例如,局部標(biāo)識符(LID)信息、全局標(biāo)識符(GID)信息等),并且還可以包括與結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定信息。這種結(jié)構(gòu)特定信息可以例如包括:最大傳輸單元(MTU)、服務(wù)層級信息、分區(qū)信息等。端口信息可以是針對特定端口0、1、2、N的標(biāo)識符。
[0017]因此,節(jié)點(diǎn)102還包括SA代理邏輯115,所述SA代理邏輯通常被配置成用于接收來自應(yīng)用108A的地址解析請求并將路徑記錄信息和/或端口信息返回至應(yīng)用108A以使應(yīng)用
108A能夠通過至少一個目的子網(wǎng)124A、124B.....124M將一個或多個分組路由至一個或多個目的節(jié)點(diǎn)。SA代理邏輯115被配置成用于基于來自應(yīng)用108A的地址解析請求來確定用于連接子網(wǎng)的物理端口(本地端口解析)、解析目的地址(例如,LID或GID信息)并獲得與目的子網(wǎng)相關(guān)聯(lián)的路徑記錄信息。SA代理邏輯115可以包括提供方接口邏輯114和至少一個提供方邏輯,其中之一在圖1中被指定為提供方邏輯116A。
[0018]提供方邏輯116A通常包括與至少一個子網(wǎng)124A、124B.....124M有關(guān)的結(jié)構(gòu)特定路徑記錄信息。在一些實(shí)施例中,每個提供方邏輯116A特定于子網(wǎng)124A、124B.....或124M,
而在其他實(shí)施例中,提供方邏輯可以包括針對多個子網(wǎng)的結(jié)構(gòu)特定路徑記錄信息。在一些實(shí)施例中,每個網(wǎng)絡(luò)控制器122的每個端口0、1、2.....N可以被分配至少一個提供方邏輯
116A。在一個示例中,提供方邏輯116A可以被配置成用于基于來自應(yīng)用108A的地址解析請求查詢相關(guān)聯(lián)的SA邏輯126A、126B、...或126M以檢索與所選子網(wǎng)124A、124B.....124M相關(guān)的當(dāng)前路徑記錄信息。在另一個示例中,提供方邏輯116A可以被配置成用于與相關(guān)聯(lián)的SA邏輯126A、126B、...或126M周期性地進(jìn)行通信并且對針對相關(guān)聯(lián)的子網(wǎng)126A、126B.....126M的路徑記錄信息進(jìn)行高速緩存。在另一個示例中,提供方邏輯116A可以包括針對相關(guān)聯(lián)的子網(wǎng)124A、124B.....124M的“靜止的”路徑記錄信息,例如,在這種情況中,相關(guān)聯(lián)的子網(wǎng)是硬接線的、相對不變的等。提供方邏輯116A可以用針對相關(guān)聯(lián)的子網(wǎng)的路徑記錄信息單獨(dú)地定制并且可以由例如子網(wǎng)設(shè)計(jì)程序、子網(wǎng)管理員等生成。在其他實(shí)施例中,提供方邏輯116A可以包括默認(rèn)的和/或標(biāo)準(zhǔn)化路徑記錄信息,所述路徑記錄信息可以應(yīng)用于各種特定的和/或一般化子網(wǎng)。每個提供方邏輯116A還可以被配置成用于與相關(guān)聯(lián)的SA邏輯126A、
126B.....126M進(jìn)行帶內(nèi)或帶外(OOB)通信以使得例如在地址解析請求不可以由提供方邏輯116A在本地滿足的情況下能夠進(jìn)行地址解析。除了路徑記錄信息之外,提供方邏輯116A可以包括局部標(biāo)識符(LID)信息、IP信息、主機(jī)名稱信息等。例如,SA代理邏輯115的提供方邏輯的集合使得針對節(jié)點(diǎn)102的多個應(yīng)用的本地地址解析成為可能。
[0019]提供方接口邏輯114被配置成用于在應(yīng)用108A(和/或以下描述的應(yīng)用接口110)與提供方邏輯116A之間交換命令和數(shù)據(jù)。提供方接口邏輯114還被配置成用于接收來自應(yīng)用108A的地址解析請求。提供方接口邏輯114還被配置成用于基于例如地址解析請求的源地址信息確定至少一個子網(wǎng)和至少一個相關(guān)聯(lián)的提供方邏輯116A,所述提供方邏輯包括響應(yīng)于來自應(yīng)用108A的請求的路徑記錄信息。應(yīng)用接口邏輯114還被配置成用于分析包含在提供方邏輯116A中的路徑記錄信息以生成對請求應(yīng)用108A的響應(yīng),其中,所述響應(yīng)包括請求的路徑記錄信息。應(yīng)用接口還可以被配置成用于基于地址解析請求確定網(wǎng)絡(luò)控制器122和至少一個端口 O、1、2.....N,所述至少一個端口可以由請求應(yīng)用108A使用以與經(jīng)標(biāo)識的子網(wǎng)124A、124B.....124M進(jìn)行通信。網(wǎng)絡(luò)控制器122和/或端口 0、1、2.....N可以被動態(tài)地添加或從節(jié)點(diǎn)102中去除。提供方接口 114還可以被配置成用于監(jiān)測這種變化并且為提供方邏輯分配/重新分配網(wǎng)絡(luò)控制器122和/或端口 0、1、2.....N。提供方接口邏輯114還可以包括與本地節(jié)點(diǎn)尋址有關(guān)的信息。例如,節(jié)點(diǎn)102可以使端口命名策略成為可能,并且網(wǎng)絡(luò)接口邏輯可以被配置成用于利用本地節(jié)點(diǎn)尋址信息更新提供方邏輯116A以使遠(yuǎn)程節(jié)點(diǎn)能夠解析本地節(jié)點(diǎn)(可能無需涉及SA邏輯)。
[0020]節(jié)點(diǎn)102還可以包括應(yīng)用接口 110,所述應(yīng)用接口通常被配置成用于與應(yīng)用108A和SA代理邏輯115對接、并且對來自應(yīng)用108A和SA代理模塊115的消息進(jìn)行生成和轉(zhuǎn)換。在一些實(shí)施例中,應(yīng)用接口 110通常被配置成用于使應(yīng)用108A能夠使用標(biāo)準(zhǔn)化API(應(yīng)用編程接口)傳達(dá)SA代理邏輯115的特定請求,因此使得在沒有具有那些SA邏輯實(shí)現(xiàn)方式的特定知識的應(yīng)用的情況下能夠利用各種各樣的結(jié)構(gòu)特定SA邏輯實(shí)現(xiàn)方式。應(yīng)用接口 110可以利用進(jìn)程間執(zhí)行(例如,UniX socket)以在應(yīng)用108A與SA代理邏輯115之間進(jìn)行通信。應(yīng)用接口被配置成用于接收來自應(yīng)用108A的地址解析請求并將所述請求格式化成由SA代理邏輯115利用的消息格式。類似地,當(dāng)從SA代理邏輯115接收地址解析響應(yīng)消息時,應(yīng)用接口邏輯110被配置成用于格式化針對應(yīng)用108A的經(jīng)解析的地址信息。
[0021]在一些實(shí)施例中,在內(nèi)核空間106中的一個或多個應(yīng)用(內(nèi)核用戶)可以針對SA代理邏輯115生成地址解析請求。為此,節(jié)點(diǎn)102的內(nèi)核空間106可以包括多個內(nèi)核(OS)用戶118A。例如,內(nèi)核用戶118A可以包括I/O事務(wù)和應(yīng)用、無限帶寬以太網(wǎng)(IB上IP)應(yīng)用、特權(quán)OS用戶應(yīng)用、SCSI RDMA應(yīng)用、I/O應(yīng)用(例如,Luster文件系統(tǒng)應(yīng)用等)、SRP應(yīng)用等。
[0022]每個內(nèi)核用戶118A可以生成類似于以上描述的由至少一個應(yīng)用108A生成的地址解析請求的地址解析請求。內(nèi)核空間106還可以包括內(nèi)核用戶接口邏輯120,所述內(nèi)核用戶接口邏輯通常被配置成用于在至少一個內(nèi)核用戶108A與提供方接口邏輯114之間交換命令和數(shù)據(jù)。如以上所描述的,內(nèi)核用戶接口邏輯120還被配置成用于接收來自內(nèi)核用戶108A的地址解析請求并格式化所述請求消息以使得提供方接口邏輯114能夠響應(yīng)于所述請求提供經(jīng)解析的地址信息。內(nèi)核用戶接口邏輯120還被配置成用于接收來自提供方接口邏輯114的響應(yīng)(即,經(jīng)解析的地址)并將所述響應(yīng)格式化成可由內(nèi)核用戶108A存取的格式。接口邏輯120可以遵守內(nèi)核通信信道協(xié)議,例如,Net I ink接口兼容協(xié)議等。因此,在用戶空間104和內(nèi)核空間106兩者中的應(yīng)用可以有利地被啟用以由節(jié)點(diǎn)102進(jìn)行本地地址解析。在一些實(shí)施例中,內(nèi)核用戶接口邏輯120可以確定提供方接口邏輯114的可用性。如果提供方接口邏輯114
不可用,則內(nèi)核用戶接口邏輯120可以被配置成用于與一個或多個SA邏輯126A、126B.....126M進(jìn)行通信從而為一個或多個內(nèi)核用戶118A提供地址解析。
[0023]圖2展示了根據(jù)本公開的一個實(shí)施例的示例地址解析請求消息200。地址解析請求消息200可以是與上述無限帶寬?通信協(xié)議可兼容或相符的消息格式。繼續(xù)參照圖1,響應(yīng)于來自應(yīng)用108A的地址解析請求,地址解析請求消息200可以由應(yīng)用接口邏輯110生成并且被傳輸至提供方接口邏輯114。地址解析請求消息200通常包括頭部部分202和局部地址數(shù)據(jù)部分204。頭部部分202可以包括指示消息200的協(xié)議版本的版本字段210、指示所執(zhí)行的操作類型(例如,地址解析、性能查詢等)的操作碼字段214、指示消息200的狀態(tài)的狀態(tài)字段218(并且可以由以下描述的響應(yīng)消息使用)、可以用于性能查詢消息發(fā)送的數(shù)據(jù)字段222、216和212、以及指示事務(wù)標(biāo)識符和/或事務(wù)序列的事務(wù)ID(TID)字段224。例如,局部地址數(shù)據(jù)部分204可以包括目的地址信息206和/或源地址數(shù)據(jù)信息208。局部地址數(shù)據(jù)部分204在圖2的右邊部分上被更詳細(xì)地示出并且通??梢园ㄖ甘驹春?或目的信息的標(biāo)志位字段226、指示可以由應(yīng)用108A供應(yīng)的地址信息的類型的類型字段230(例如,名稱、IP地址、IPv6地址、路徑記錄、服務(wù)ID等)、可以在給出的協(xié)議的后續(xù)版本中利用的保留字段226、以及通常包括由應(yīng)用108A供應(yīng)的且如上所述的地址類型的數(shù)據(jù)的信息字段232,此數(shù)據(jù)通常是有待解析的局部地址。在圖2中描繪了請求消息200的示例字節(jié)計(jì)數(shù)(水平軸)和位計(jì)數(shù)(豎直軸)。地址解析請求消息200可以被轉(zhuǎn)發(fā)至提供方接口邏輯114。作為響應(yīng),并且如上所述,提供方接口邏輯114可以分析消息200以從多個提供方當(dāng)中確定利用哪個提供方邏輯108A來解析包含在消息200中的地址。當(dāng)然,圖2的地址解析請求消息200僅被提供作為示例。在其他實(shí)施例中,地址解析請求消息可以與其他通信協(xié)議(例如,以太網(wǎng)通信協(xié)議、定制和/或?qū)S型ㄐ艆f(xié)議等)兼容。
[0024]圖3展示了根據(jù)本公開的一個實(shí)施例的示例地址解析響應(yīng)消息300。地址解析響應(yīng)消息300可以是與上述無限帶寬?通信協(xié)議可兼容或相符的消息格式。繼續(xù)參照圖1和圖2,響應(yīng)于來自應(yīng)用接口邏輯110的地址解析請求消息,地址解析響應(yīng)消息300可以由提供方接口邏輯114生成。地址解析響應(yīng)消息300通常包括頭部部分302和經(jīng)解析的地址數(shù)據(jù)部分304(例如,路由地址數(shù)據(jù))。頭部部分302可以包括以上參照圖2的頭部202描述的字段。經(jīng)解析的地址數(shù)據(jù)部分304可以包括例如路由地址數(shù)據(jù)(例如,路徑記錄信息)等,和/或操作以解析由應(yīng)用108A請求的地址的其他信息。經(jīng)解析的地址數(shù)據(jù)部分304在圖3的右邊部分上被更詳細(xì)地示出,并且通??梢园ㄒ陨蠀⒄請D2的局部地址數(shù)據(jù)部分204頭部202描述的字段,并且還可以包括在信息字段306中的完全的(經(jīng)解析的)路徑記錄信息。以上參照提供方接口邏輯114和提供方邏輯116A描述了信息字段306的經(jīng)解析的地址。在圖3中描繪了響應(yīng)消息300的示例字節(jié)計(jì)數(shù)(水平軸)和位計(jì)數(shù)(豎直軸)。地址解析響應(yīng)消息300可以被轉(zhuǎn)發(fā)至應(yīng)用接口 114,并且進(jìn)而,經(jīng)解析的地址數(shù)據(jù)可以被轉(zhuǎn)發(fā)至請求應(yīng)用108A,從而使得應(yīng)用108A能夠通過確定的子網(wǎng)將分組正確地路由至目的。當(dāng)然,圖3的地址解析響應(yīng)消息300僅被提供作為示例。在其他實(shí)施例中,地址解析響應(yīng)消息可以與其他通信協(xié)議(例如,以太網(wǎng)通信協(xié)議、定制和/或?qū)S型ㄐ艆f(xié)議等)兼容。
[0025]圖4展示了根據(jù)本公開的一個實(shí)施例的另一個示例消息400。消息400的格式既可以用作地址解析請求消息又可以用作地址解析響應(yīng)消息。消息400可以是與上述無限帶寬?通信協(xié)議和/或Netlink通信協(xié)議可兼容或相符的消息格式。繼續(xù)參照圖1,消息400可以由內(nèi)核用戶接口 120響應(yīng)于來自內(nèi)核用戶118A的地址解析請求生成為地址解析請求消息,并且消息400可以由提供了經(jīng)解析的地址信息的提供方接口 114生成為地址解析響應(yīng)消息。消息400通常包括Netlink頭部部分402,所述Netlink頭部部分被配置成用于在系統(tǒng)100的Netlink應(yīng)用(用戶)之間路由Netlink消息(例如,在寄存器Netlink應(yīng)用之間進(jìn)行廣播),以及用于使OS能夠“引導(dǎo)”消息400往返于內(nèi)核用戶接口邏輯120和提供方接口邏輯114。消息400還包括類似于圖2/3的頭部202/302的提供方接口頭部部分404。消息400還包括類似于圖2/3的局部/經(jīng)解析的地址數(shù)據(jù)部分204/304的路徑數(shù)據(jù)部分406,并且包括(在請求消息中的)局部路徑記錄信息或(在響應(yīng)消息中的)經(jīng)解析的路徑記錄信息408 Aetlink頭部部分402可以包括指示消息400的長度(例如,字節(jié))的長度字段410、指示協(xié)議特定消息內(nèi)容的類型字段412、指示消息類型(例如,請求、響應(yīng)、ACK等)的標(biāo)志位字段414、可以定義唯一號從而使得請求與響應(yīng)匹配的序列字段416、以及指示初始化消息的實(shí)體的處理ID(PID)字段418(例如,內(nèi)核用戶可以分配“O”,其他用戶可以分配“I”等)。路徑記錄字段408可以包括局部的或完全的路徑記錄信息。例如,如果消息400用作地址解析請求消息,則路徑記錄字段408可以用如在此所描述的來自內(nèi)核用戶118A的地址數(shù)據(jù)部分地填充。如果消息400用作地址解析響應(yīng)消息,則路徑記錄字段408可以由SA代理邏輯115生成以包括經(jīng)解析的地址信息從而使內(nèi)核用戶能夠通過所選的子網(wǎng)路由分組。在圖4中描繪了響應(yīng)消息400的示例字節(jié)計(jì)數(shù)(水平軸)和位計(jì)數(shù)(豎直軸)。當(dāng)然,圖4的消息格式400僅被提供作為示例。在其他實(shí)施例中,地址解析響應(yīng)消息可以與其他通信協(xié)議(例如,以太網(wǎng)通信協(xié)議、定制和/或?qū)S型ㄐ艆f(xié)議等)兼容。
[0026]圖5是根據(jù)本公開的另一個實(shí)施例的操作的流程圖500。具體地,流程圖500展示了網(wǎng)絡(luò)節(jié)點(diǎn)元件的SA代理邏輯的用于為應(yīng)用(用戶空間應(yīng)用和/或內(nèi)核應(yīng)用)提供地址解析的操作。此實(shí)施例的操作包括接收地址解析請求消息502。地址解析請求消息可以包括不完全的和/或不準(zhǔn)確的地址信息,所述地址信息需要被解析以使應(yīng)用和/或內(nèi)核用戶能夠通過確定的子網(wǎng)將分組路由至目的節(jié)點(diǎn)。操作還包括分析地址解析請求消息并確定消息應(yīng)用于其的目標(biāo)結(jié)構(gòu)、確定針對目標(biāo)結(jié)構(gòu)的提供方邏輯以及與提供方邏輯504相關(guān)聯(lián)的本地端口。操作還包括確定所選擇的提供方邏輯是否可用于響應(yīng)請求506(例如,確定提供方邏輯是否是離線的或以其他方式是不可用的)。如果提供方邏輯可用于響應(yīng)請求,則操作可以包括選擇默認(rèn)提供方邏輯或者指導(dǎo)請求程序與同目標(biāo)子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理員(SA)進(jìn)行通信以獲得地址解析信息516。默認(rèn)的提供方邏輯可以包含與子網(wǎng)有關(guān)的充足的信息以提供請求的地址解析。如果提供方邏輯可用于響應(yīng)請求(506),則操作還可以包括確定提供方邏輯是否能夠用于解析地址508。如果例如因?yàn)樘峁┓竭壿嬀哂胁怀渥愕男畔ⅰ⒆泳W(wǎng)已改變等使得提供方邏輯不能夠解析地址,則操作還可以包括指導(dǎo)請求程序與同目標(biāo)子網(wǎng)相關(guān)聯(lián)的(SA)進(jìn)行通信以獲得地址解析信息518。如果提供方邏輯能夠解析地址(508),則操作還可以包括確定來自提供方邏輯的經(jīng)解析的地址510并且生成包括經(jīng)解析的地址信息的地址解析響應(yīng)消息512。操作還可以包括將地址解析響應(yīng)消息和本地端口信息發(fā)送至請求程序514。地址解析響應(yīng)消息可以包括與經(jīng)標(biāo)識的子網(wǎng)相關(guān)聯(lián)的路徑記錄信息。在此實(shí)施例中,請求程序包括與節(jié)點(diǎn)相關(guān)聯(lián)的至少一個應(yīng)用和/或與節(jié)點(diǎn)的內(nèi)核空間相關(guān)聯(lián)的內(nèi)核用戶。
[0027]雖然圖5的流程圖展示根據(jù)各實(shí)施例的操作,將理解的是,并非圖5中描繪的所有操作對其他實(shí)施例都是必需的。此外,在此充分設(shè)想,在本公開的其他實(shí)施例中,在圖5中描繪的操作和/或在此描述的其他操作可以以未在任何附圖中特別地示出的方式組合,并且這種實(shí)施例可以包括比圖5中展示的更少或更多的操作。因此,涉及未在一張附圖中正確地示出的特征和/或操作的權(quán)利要求被視為在本公開的范圍和內(nèi)容中。
[0028]前述內(nèi)容是非常卓越的,因?yàn)槭纠韵到y(tǒng)架構(gòu)和方法、針對本公開的修改是有可能的。例如,節(jié)點(diǎn)102可以進(jìn)一步包括用于管理系統(tǒng)資源的操作系統(tǒng)(OS,未示出)和在例如節(jié)點(diǎn)102上運(yùn)行的控制任務(wù)。例如,OS可以是使用微軟Windows、HP-UX、Linux或UNIX實(shí)現(xiàn)的,盡管可以使用其他操作系統(tǒng)。在一些實(shí)施例中,OS可以被虛擬機(jī)取代,所述虛擬機(jī)可以針對在一個或多個處理單元上運(yùn)行的各操作系統(tǒng)為底部硬件提供抽象層。操作系統(tǒng)和/或虛擬機(jī)可以實(shí)現(xiàn)一個或多個協(xié)議堆棧。協(xié)議堆??梢詧?zhí)行用于處理分組的一個或多個程序。協(xié)議堆棧的示例是TCP/IP(傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議)協(xié)議堆棧,所述協(xié)議堆棧包括用于處置(例如,處理或生成)分組以在網(wǎng)絡(luò)之上進(jìn)行傳輸和/或接收的一個或多個程序。協(xié)議堆??梢蕴娲乇话ㄔ趯僮酉到y(tǒng)上,如,例如,TCP卸載引擎和/或網(wǎng)絡(luò)控制器122。
[0029]系統(tǒng)存儲器和/或與網(wǎng)絡(luò)控制器(例如,網(wǎng)絡(luò)控制器122)相關(guān)聯(lián)的存儲器可以包括以下類型的存儲器中的一個或多個:半導(dǎo)體固件存儲器、可編程存儲器、非易失性存儲器、只讀存儲器、電可編程存儲器、隨機(jī)存儲器、閃存、磁盤存儲器和/或光盤存儲器?;蛘吒郊拥鼗蛘咛娲?,系統(tǒng)存儲器和/或與網(wǎng)絡(luò)控制器122相關(guān)聯(lián)的存儲器可以包括其他的和/或后來發(fā)展類型的計(jì)算機(jī)可讀存儲器。
[0030]在此描述的操作的實(shí)施例可以在系統(tǒng)中實(shí)現(xiàn),所述系統(tǒng)包括具有單獨(dú)地或組合地存儲在其上的多條指令的一個或多個存儲設(shè)備,當(dāng)這些指令被一個或多個處理器執(zhí)行時執(zhí)行這些方法。例如,處理器可以包括網(wǎng)絡(luò)控制器122中的處理單元和/或可編程電路和/或系統(tǒng)處理器和/或其他處理單元或可編程電路。因此,旨在使得根據(jù)在此描述的這些方法的操作可以跨多個物理設(shè)備(如在若干個不同的物理位置處的處理結(jié)構(gòu))分布。存儲設(shè)備可以包括任何類型的有形的、非瞬態(tài)的存儲設(shè)備,例如,包括以下各項(xiàng)的任何類型的磁盤:軟盤、光盤、壓縮盤-只讀存儲器(CD-ROM)、可復(fù)寫致密盤(CD-RW)、和磁光盤、如只讀存儲器(ROM)的半導(dǎo)體器件、如動態(tài)或靜態(tài)RAM的隨機(jī)存取存儲器(RAM)、可擦可編程只讀存儲器(EPROM)、電可擦可編程只讀存儲器(EEPROM)、閃存、磁卡或光卡、或者適合于電性地、化學(xué)地和/或機(jī)械地存儲指令的任何類型的存儲介質(zhì)。
[0031]圖1的網(wǎng)絡(luò)系統(tǒng)100可以被配置成用于使用支持RDMA的網(wǎng)絡(luò)(如無限帶寬?網(wǎng)絡(luò))通信協(xié)議的進(jìn)行通信。在其他實(shí)施例中,可以使用其他支持RDMA的網(wǎng)絡(luò)協(xié)議,例如,iWARP通信協(xié)議。iWARP通信協(xié)議可以與于2007年發(fā)布的題為“在傳輸控制協(xié)議(TCP)標(biāo)準(zhǔn)上的RDMA(RDMA over Transmiss1n Control Protocol (TCP) standard)” 的由RDMA聯(lián)盟開發(fā)的并且由互聯(lián)網(wǎng)工程任務(wù)組(IETF)維護(hù)且發(fā)布的iWARP標(biāo)準(zhǔn)和/或此標(biāo)準(zhǔn)的后續(xù)版本相符或兼容。
[0032]在一些實(shí)施例中,硬件描述語言可以用于針對在此描述的各模塊和/或電路指定電路和/或邏輯實(shí)現(xiàn)。例如,在一個實(shí)施例中,硬件描述語言可以與超高速集成電路(VHSIC)硬件描述語言(VHDL)相符或兼容,所述硬件描述語言可以使得在此描述的一個或多個電路和/或模塊的半導(dǎo)體制造成為可能。VHDL可以與以下標(biāo)準(zhǔn)相符或兼容:IEEE標(biāo)準(zhǔn)1076-1987、ffiEE標(biāo)準(zhǔn) 1076.2、IEEE1076.1、VHDL-2006的IEEE草案3.0、VHDL-2008的IEEE草案4.0和/或IEEE VHDL標(biāo)準(zhǔn)的其他版本和/或其他硬件描述標(biāo)準(zhǔn)。
[0033]本文使用的“邏輯”可以單獨(dú)地或以任何的組合包括電路、代碼、針對聲明的功能配置的指令集(例如,具體化為軟件、固件等)。例如,在本文的任何實(shí)施例中使用的“電路”可以單獨(dú)地或以任何的組合包括硬接線電路、可編程電路、狀態(tài)機(jī)電路、處理電路和/或存儲由可編程電路執(zhí)行的指令的固件。
[0034]因此,本公開提供了一種示例網(wǎng)絡(luò)節(jié)點(diǎn)元件,所述示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括:網(wǎng)絡(luò)控制器,所述網(wǎng)絡(luò)控制器用于使用交換結(jié)構(gòu)通信協(xié)議與至少一個子網(wǎng)進(jìn)行通信,所述網(wǎng)絡(luò)控制器包括至少一個本地端口 ;提供方邏輯,所述提供方邏輯包括相關(guān)聯(lián)子網(wǎng)的路徑記錄信息;以及提供方接口邏輯,所述提供方接口邏輯用于接收來自包括部分地址信息的所述至少一個應(yīng)用的地址解析請求。所述提供方接口邏輯還用于確定用于啟用與所述地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口。所述提供方邏輯還用于確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)。所述提供方接口邏輯還用于確定至少一個提供方邏輯,所述至少一個提供方邏輯有待利用以獲得與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的所述路徑記錄信息。所述提供方接口邏輯還用于生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使所述至少一個應(yīng)用能夠通過所述至少一個確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。
[0035]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步包括應(yīng)用接口邏輯,所述應(yīng)用接口邏輯用于:接收來自所述至少一個應(yīng)用的地址解析請求消息;生成有待轉(zhuǎn)發(fā)至所述提供方接口邏輯的應(yīng)用解析請求;以及分析所述地址解析響應(yīng)以獲得對來自所述至少一個應(yīng)用的請求的至少一個經(jīng)解析的地址響應(yīng)。
[0036]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:其中,所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶,并且進(jìn)一步包括內(nèi)核用戶接口邏輯,所述內(nèi)核用戶接口邏輯用于:接收來自內(nèi)核用戶的至少一個應(yīng)用的地址解析請求消息;生成有待轉(zhuǎn)發(fā)至所述提供方接口邏輯的應(yīng)用解析請求;以及分析所述地址解析響應(yīng)以獲得對來自所述至少一個應(yīng)用的所述請求的至少一個經(jīng)解析的地址響應(yīng)。
[0037]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述提供方邏輯由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述提供方邏輯用于:對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。
[0038]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述提供方邏輯由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述提供方邏輯用于:與所述SA和/或SM進(jìn)行通信,以在接收到來自所述至少一個應(yīng)用的所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。
[0039]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述部分地址信息是不足以使至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。
[0040]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定信息。
[0041]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述提供方接口邏輯用于:如果所述提供方邏輯不具有對所述地址解析請求的路徑記錄信息響應(yīng),則發(fā)起與所述所確定的子網(wǎng)的通信以獲得經(jīng)解析的地址。
[0042]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述提供方邏輯被分配給至少一個本地端口。
[0043]本公開還提供了一種網(wǎng)絡(luò)節(jié)點(diǎn)元件,所述網(wǎng)絡(luò)節(jié)點(diǎn)元件包括:用于提供與所述計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)通信的相關(guān)聯(lián)子網(wǎng)的路徑記錄信息的裝置;以及用于對接以接收來自包括部分地址信息的至少一個應(yīng)用的地址解析請求的裝置,所述用于對接的裝置還用于確定所述計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)的用于啟用與所述地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口;所述用于對接的裝置還用于確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng);所述用于對接的裝置還用于確定至少一個提供方邏輯,所述至少一個提供方邏輯有待利用以獲得與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的所述路徑記錄信息;所述用于對接的裝置還用于生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使所述至少一個應(yīng)用能夠通過所述至少一個確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。
[0044]另一示例網(wǎng)絡(luò)節(jié)點(diǎn)元件包括前述內(nèi)容,并且進(jìn)一步限定了:所述用于提供的裝置由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述用于提供的裝置用于與所述SA和/或SM進(jìn)行通信,以在接收到來自所述至少一個應(yīng)用的所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。
[0045]本公開還提供了一種用于解析地址的方法,所述方法包括:由網(wǎng)絡(luò)節(jié)點(diǎn)元件確定所述網(wǎng)絡(luò)節(jié)點(diǎn)元件的用于啟用與地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口 ;由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng);由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的路徑記錄信息,其中,所述路徑記錄信息由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件在本地存儲和/或在本地控制;以及由網(wǎng)絡(luò)節(jié)點(diǎn)元件生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括路徑記錄信息以及用于使至少一個應(yīng)用能夠通過所述至少一個確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。
[0046]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述應(yīng)用是用戶空間應(yīng)用。
[0047]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶。
[0048]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述方法進(jìn)一步包括:對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的所述經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。
[0049]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述方法進(jìn)一步包括:與所述SA和/或SM進(jìn)行通信;以及在接收到所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。
[0050]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述部分地址信息是不足以使所述至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。
[0051]另一示例方法包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定
?目息O
[0052]另一示例方法包括前述內(nèi)容,并且進(jìn)一步包括:如果所述路徑記錄信息不響應(yīng)于所述地址解析請求,則發(fā)起與所述所確定的子網(wǎng)的通信以獲得經(jīng)解析的地址。
[0053]本公開還提供了一種系統(tǒng),所述系統(tǒng)包括具有單獨(dú)地或組合地存儲在其上的多條指令的一個或多個存儲設(shè)備,當(dāng)這些指令由一個或多個處理器執(zhí)行時導(dǎo)致以下操作,所述操作包括:確定網(wǎng)絡(luò)節(jié)點(diǎn)元件的用于啟用與地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口;確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng);確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的路徑記錄信息,其中,所述路徑記錄信息在本地被存儲和/或在本地被控制;以及生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括路徑記錄信息以及用于使至少一個應(yīng)用能夠通過至少一個確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。
[0054]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述應(yīng)用是用戶空間應(yīng)用。
[0055]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶。
[0056]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述指令當(dāng)由一個或多個處理器執(zhí)行時導(dǎo)致以下附加操作,所述附加操作包括:對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的所述經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。
[0057]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述指令當(dāng)由一個或多個處理器執(zhí)行時導(dǎo)致以下附加操作,所述附加操作包括:與所述SA和/或SM進(jìn)行通信;以及在接收到所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。
[0058]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述部分地址信息是不足以使所述至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。
[0059]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定
?目息O
[0060]另一示例系統(tǒng)包括前述內(nèi)容,并且進(jìn)一步限定了:所述指令當(dāng)由一個或多個處理器執(zhí)行時導(dǎo)致以下附加操作,所述附加操作包括:如果所述路徑記錄信息不響應(yīng)于所述地址解析請求,則發(fā)起與所述所確定的子網(wǎng)的通信以獲得經(jīng)解析的地址。
[0061]本文已采用的術(shù)語和表達(dá)用作描述術(shù)語且沒有限制,并且在使用這種術(shù)語和表達(dá)時不旨在排除所示且所描述的特征(或其部分)的任何等效方案,并且認(rèn)識到在權(quán)利要求書范圍內(nèi)的各種修改是有可能的。因此,權(quán)利要求書旨在覆蓋所有這種等效方案。
[0062]在此已經(jīng)描述了各種特征、方面和實(shí)施例。如將由本領(lǐng)域技術(shù)人員所理解,特征、方面和實(shí)施例易受與彼此的組合以及受變化和修改的影響。因此,本公開應(yīng)被認(rèn)為包含這種組合、變化和修改。
【主權(quán)項(xiàng)】
1.一種網(wǎng)絡(luò)節(jié)點(diǎn)元件,包括: 網(wǎng)絡(luò)控制器,所述網(wǎng)絡(luò)控制器用于使用交換結(jié)構(gòu)通信協(xié)議與至少一個子網(wǎng)進(jìn)行通信,所述網(wǎng)絡(luò)控制器包括至少一個本地端口; 提供方邏輯,所述提供方邏輯包括相關(guān)聯(lián)子網(wǎng)的路徑記錄信息;以及 提供方接口邏輯,所述提供方接口邏輯用于接收來自至少一個應(yīng)用的包括部分地址信息的地址解析請求,所述提供方接口邏輯還用于確定用于啟用與所述地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口;所述提供方邏輯還用于確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng);所述提供方接口邏輯還用于確定至少一個提供方邏輯,所述至少一個提供方邏輯有待利用以獲得與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的所述路徑記錄信息;所述提供方接口邏輯還用于生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使所述至少一個應(yīng)用能夠通過所述至少一個所確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。2.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,進(jìn)一步包括應(yīng)用接口邏輯,所述應(yīng)用接口邏輯用于:接收來自所述至少一個應(yīng)用的所述地址解析請求消息;生成有待轉(zhuǎn)發(fā)至所述提供方接口邏輯的應(yīng)用解析請求;以及分析所述地址解析響應(yīng)以獲得對來自所述至少一個應(yīng)用的所述請求的至少一個經(jīng)解析的地址響應(yīng)。3.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶,并且所述網(wǎng)絡(luò)節(jié)點(diǎn)元件進(jìn)一步包括內(nèi)核用戶接口邏輯,所述內(nèi)核用戶接口邏輯用于:接收來自內(nèi)核用戶的所述至少一個應(yīng)用的所述地址解析請求消息;生成有待轉(zhuǎn)發(fā)至所述提供方接口邏輯的應(yīng)用解析請求;以及分析所述地址解析響應(yīng)以獲得對來自所述至少一個應(yīng)用的所述請求的至少一個經(jīng)解析的地址響應(yīng)。4.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述提供方邏輯由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述提供方邏輯用于對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。5.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述提供方邏輯由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述提供方邏輯用于與所述SA和/或SM進(jìn)行通信,以便在接收到來自所述至少一個應(yīng)用的所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。6.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述部分地址信息是不足以使所述至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。7.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述所確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定信息。8.如權(quán)利要求1所述的網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述提供方接口邏輯還用于:如果所述提供方邏輯不具有對所述地址解析請求的路徑記錄信息響應(yīng),則發(fā)起與所述所確定的子網(wǎng)之間的通信以獲得經(jīng)解析的地址。9.如權(quán)利要求1所述的網(wǎng)絡(luò),其中,所述提供方邏輯被分配給至少一個本地端口。10.—種網(wǎng)絡(luò)節(jié)點(diǎn)元件,包括: 用于提供與計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)通信的相關(guān)聯(lián)子網(wǎng)的路徑記錄信息的裝置;以及 用于對接以接收來自至少一個應(yīng)用的包括部分地址信息的地址解析請求的裝置,所述用于對接的裝置還用于確定所述計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)的用于啟用與所述地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口;所述用于對接的裝置還用于確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng);所述用于對接的裝置還用于確定至少一個提供方邏輯,所述至少一個提供方邏輯有待利用以獲得與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的所述路徑記錄信息;所述用于對接的裝置還用于生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使所述至少一個應(yīng)用能夠通過所述至少一個所確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。11.所述網(wǎng)絡(luò)節(jié)點(diǎn)元件,其中,所述用于提供的裝置由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述用于提供的裝置用于與所述SA和/或SM進(jìn)行通信,以便在接收到來自所述至少一個應(yīng)用的所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。12.一種用于解析地址的方法,所述方法包括: 由網(wǎng)絡(luò)節(jié)點(diǎn)元件確定所述網(wǎng)絡(luò)節(jié)點(diǎn)元件的用于啟用與地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端口 ; 由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng); 由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的路徑記錄信息,其中,所述路徑記錄信息由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件在本地被存儲和/或在本地被控制;以及 由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使至少一個應(yīng)用能夠通過所述至少一個所確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。13.如權(quán)利要求12所述的方法,其中,所述應(yīng)用是用戶空間應(yīng)用。14.如權(quán)利要求12所述的方法,其中,所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶。15.如權(quán)利要求12所述的方法,其中,所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述方法進(jìn)一步包括:對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的所述經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。16.如權(quán)利要求12所述的方法,其中,所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述方法進(jìn)一步包括:與所述SA和/或SM進(jìn)行通信;以及在接收到所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。17.如權(quán)利要求12所述的方法,其中,所述部分地址信息是不足以使所述至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。18.如權(quán)利要求12所述的方法,其中,所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述所確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定信息。19.如權(quán)利要求12所述的方法,進(jìn)一步包括:如果所述路徑記錄信息不響應(yīng)于所述地址解析請求,則發(fā)起與所述所確定的子網(wǎng)之間的通信以獲得經(jīng)解析的地址。20.—種計(jì)算機(jī)可讀存儲設(shè)備,具有存儲在其上的指令,當(dāng)所述指令由一個或多個處理器執(zhí)行時導(dǎo)致包括以下各項(xiàng)的操作: 確定網(wǎng)絡(luò)節(jié)點(diǎn)元件的用于啟用與地址解析請求相關(guān)聯(lián)的分組路由的至少一個本地端 P; 確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng); 確定與所述地址解析請求相關(guān)聯(lián)的至少一個子網(wǎng)的路徑記錄信息,其中,所述路徑記錄信息在本地被存儲和/或在本地被控制;以及 生成地址解析響應(yīng),所述地址解析響應(yīng)包括經(jīng)解析的地址,所述經(jīng)解析的地址包括所述路徑記錄信息以及用于使至少一個應(yīng)用能夠通過所述至少一個所確定的子網(wǎng)來路由數(shù)據(jù)分組的至少一個本地端口的標(biāo)識。21.如權(quán)利要求20所述的計(jì)算機(jī)可讀存儲設(shè)備,其中,所述應(yīng)用是由所述網(wǎng)絡(luò)節(jié)點(diǎn)元件執(zhí)行的操作系統(tǒng)的內(nèi)核用戶。22.如權(quán)利要求20所述的計(jì)算機(jī)可讀存儲設(shè)備,其中,所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器和/或子網(wǎng)管理員生成,并且其中,所述指令當(dāng)由一個或多個處理器執(zhí)行時導(dǎo)致以下附加操作,所述附加操作包括:對包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的所述經(jīng)解析的地址數(shù)據(jù)進(jìn)行高速緩存。23.如權(quán)利要求20所述的計(jì)算機(jī)可讀存儲設(shè)備,其中,所述路徑記錄信息由與所述子網(wǎng)相關(guān)聯(lián)的子網(wǎng)管理器(SM)和/或子網(wǎng)管理員(SA)生成,并且其中,所述指令當(dāng)由一個或多個處理器執(zhí)行時導(dǎo)致以下附加操作,所述附加操作包括:與所述SA和/或SM進(jìn)行通信;以及在接收到所述地址解析請求之后獲得包括與所述子網(wǎng)相關(guān)聯(lián)的路徑記錄信息的經(jīng)解析的地址數(shù)據(jù)。24.如權(quán)利要求20所述的計(jì)算機(jī)可讀存儲設(shè)備,其中,所述部分地址信息是不足以使所述至少一個應(yīng)用能夠通過所述子網(wǎng)來路由一個或多個分組的信息。25.如權(quán)利要求20所述的計(jì)算機(jī)可讀存儲設(shè)備,其中,所述路徑記錄信息包括將源節(jié)點(diǎn)聯(lián)系到目的節(jié)點(diǎn)的信息以及與所述所確定的子網(wǎng)的結(jié)構(gòu)中的一跳或多跳有關(guān)的結(jié)構(gòu)特定?目息O
【文檔編號】H04L29/10GK105993161SQ201580008518
【公開日】2016年10月5日
【申請日】2015年3月6日
【發(fā)明人】T·里默, I·韋妮, J·弗萊克, K·萬, M·赫弗蒂
【申請人】英特爾公司