專利名稱:均衡基于點(diǎn)對點(diǎn)的網(wǎng)絡(luò)文件系統(tǒng)中的高速緩存負(fù)載的制作方法
技術(shù)領(lǐng)域:
本公開描述了與均衡基于點(diǎn)對點(diǎn)的網(wǎng)絡(luò)文件系統(tǒng)中的高速緩存負(fù)載有關(guān)的系統(tǒng)和技術(shù)。
背景技術(shù):
服務(wù)器系統(tǒng)可以通過網(wǎng)絡(luò)向客戶端系統(tǒng)導(dǎo)出一個(gè)或多個(gè)文件系統(tǒng)。服務(wù)器系統(tǒng)可以包括一個(gè)或多個(gè)數(shù)據(jù)存儲設(shè)備,諸如硬盤驅(qū)動器(HDD)或固態(tài)驅(qū)動器(SSD)。服務(wù)器系統(tǒng)的各種示例包括網(wǎng)絡(luò)附加存儲(NAS)設(shè)備以及配置用于服務(wù)于網(wǎng)絡(luò)文件系統(tǒng)(NFS)的服務(wù)器。服務(wù)于NFS的服務(wù)器可以被稱為NFS服務(wù)器。NFS服務(wù)器頻繁地在數(shù)據(jù)中心中使用以進(jìn)行數(shù)據(jù)訪問和在客戶端之間共享數(shù)據(jù)。多個(gè)客戶端系統(tǒng)可以裝配有由NFS服務(wù)器導(dǎo)出的NFS??蛻舳讼到y(tǒng)可以運(yùn)行NFS 客戶端來與一個(gè)或多個(gè)NFS服務(wù)器連接以裝配一個(gè)或多個(gè)NFS。操作系統(tǒng)可以向一個(gè)或多個(gè)應(yīng)用(諸如web服務(wù)器、電子郵件服務(wù)器、數(shù)據(jù)庫或操作系統(tǒng)過程)提供對本地和網(wǎng)絡(luò)文件系統(tǒng)的訪問。例如,操作系統(tǒng)可以訪問NFS上的一個(gè)或多個(gè)系統(tǒng)文件。通常,應(yīng)用不知道文件系統(tǒng)是網(wǎng)絡(luò)文件系統(tǒng)還是本地文件系統(tǒng)。
發(fā)明內(nèi)容
本公開描述了與網(wǎng)絡(luò)文件系統(tǒng)(NFS)中的高速緩存負(fù)載均衡有關(guān)的系統(tǒng)和技術(shù)。 例如,對與NFS相關(guān)聯(lián)的文件可以跨過NFS的點(diǎn)對點(diǎn)(P2P)客戶端進(jìn)行高速緩存。與NFS 相關(guān)聯(lián)的資源表示高速緩存負(fù)載均衡器,該高速緩存負(fù)載均衡器可以將跨過P2P NFS客戶端高速緩存的文件映射到該文件正被高速緩存的對應(yīng)P2P NFS客戶端地址。在與P2P NFS 客戶端相關(guān)聯(lián)的失敗的情況下,高速緩存負(fù)載均衡器可以向其他P2P NFS客戶端動態(tài)地重新分布在失敗的P2PNFS客戶端高速緩存的文件,并且可以將重新分布的文件重新映射到其當(dāng)前的P2P NFS客戶端地址。這種高速緩存負(fù)載均衡器可以被實(shí)現(xiàn)為與NFS的P2P客戶端通信的設(shè)備的集群。此外,與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群中的某些或所有設(shè)備可以是P2P NFS客戶端。照這樣,與高速緩存負(fù)載均衡器相關(guān)聯(lián)的設(shè)備的集群可以公平地在 P2P NFS客戶端之間分布高速緩存負(fù)載,在與NFS相關(guān)聯(lián)的P2P客戶端失敗的情況下重新均衡高速緩存負(fù)載,以及可以跨越P2P NFS客戶端自適應(yīng)地分布高速緩存負(fù)載。后者可以基于P2P NFS客戶端處的高速緩存活動性和負(fù)載模式來實(shí)現(xiàn)。根據(jù)本公開的一方面,系統(tǒng)包括包含兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群。該集群可與網(wǎng)絡(luò)通信地耦合,該網(wǎng)絡(luò)包括配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)。集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)配置用于維持關(guān)于在網(wǎng)絡(luò)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)高速緩存的文件的信息,以及從該網(wǎng)絡(luò)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)之一接收請求以標(biāo)識網(wǎng)絡(luò)中高速緩存指定文件的至少一個(gè)計(jì)算機(jī)系統(tǒng)。此外,該集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)配置用于響應(yīng)于所接收的請求基于所維持的信息而標(biāo)識網(wǎng)絡(luò)的高速緩存指定文件的,非請求計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)。此外,該集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)配置用于向請求計(jì)算機(jī)系統(tǒng)提供至少涉及網(wǎng)絡(luò)中的標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的信息。這些和其他實(shí)現(xiàn)可以包括一個(gè)或多個(gè)以下特征。在某些實(shí)現(xiàn)中,集群的至少一個(gè)計(jì)算機(jī)系統(tǒng)可以是包括三個(gè)或更多配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)的一部分。在某些實(shí)例中,集群的所有計(jì)算機(jī)系統(tǒng)是包括三個(gè)或更多配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)的一部分。在某些實(shí)例中,請求計(jì)算機(jī)系統(tǒng)沒有包括在集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中。在某些實(shí)現(xiàn)中,所提供的至少涉及網(wǎng)絡(luò)中的標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的信息可以包括與在網(wǎng)絡(luò)中所標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。此外,集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)可以配置用于監(jiān)控網(wǎng)絡(luò)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)的高速緩存負(fù)載,并且響應(yīng)于所提供的涉及高速緩存所指定文件的網(wǎng)絡(luò)的多個(gè)計(jì)算機(jī)系統(tǒng)的信息,基于由所提供的信息涉及的多個(gè)計(jì)算機(jī)系統(tǒng)的相應(yīng)高速緩存負(fù)載來對所提供的信息區(qū)分優(yōu)先次序。在某些實(shí)現(xiàn)中,集群具有將由不是該集群一部分的網(wǎng)絡(luò)中的三個(gè)或更多計(jì)算機(jī)系統(tǒng)使用的單個(gè)標(biāo)識符,并且集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)可以進(jìn)一步配置用于基于對單個(gè)標(biāo)識符的識別來響應(yīng)該請求。在某些實(shí)現(xiàn)中,集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)可以配置用于從請求計(jì)算機(jī)系統(tǒng)接收指定文件是從由所提供的信息涉及的第一計(jì)算機(jī)系統(tǒng)中檢索的通知,并且根據(jù)所接收的通知來更新所維持的信息。該更新可以涉及在請求計(jì)算機(jī)系統(tǒng)處的高速緩存負(fù)載,并且涉及在第一計(jì)算機(jī)系統(tǒng)處的高速緩存活動。在某些實(shí)現(xiàn)中,集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)可以配置用于從請求計(jì)算機(jī)系統(tǒng)接收指定文件不在由所提供的信息涉及的第一計(jì)算機(jī)系統(tǒng)中的通知,并且所指定的文件是從由所提供的信息涉及的第二計(jì)算機(jī)系統(tǒng)中檢索的通知。另外,集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每個(gè)可以配置用于根據(jù)所接收的通知更新所維持的信息。該更新可以涉及在請求計(jì)算機(jī)系統(tǒng)和在第一計(jì)算機(jī)系統(tǒng)處的相應(yīng)高速緩存負(fù)載,并且涉及在第二計(jì)算機(jī)系統(tǒng)處的高速緩存活動。根據(jù)本公開的另一方面,設(shè)備包括存儲器和電路電子部件。該設(shè)備配置用于與包括高速緩存負(fù)載均衡器和三個(gè)或更多設(shè)備(包括該設(shè)備)的網(wǎng)絡(luò)連接。這些設(shè)備配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù),從而使得這些設(shè)備具有與該文件服務(wù)器系統(tǒng)的相應(yīng)連接。電路電子部件配置用于檢測指定文件沒有在設(shè)備的存儲器上進(jìn)行高速緩存,以及響應(yīng)于該檢測向高速緩存負(fù)載均衡器請求標(biāo)識在網(wǎng)絡(luò)中的三個(gè)或更多設(shè)備中高速緩存所指定文件的至少一個(gè)設(shè)備的信息。此外,電路電子部件配置用于從高速緩存負(fù)載均衡器接收包括標(biāo)識在網(wǎng)絡(luò)中三個(gè)或更多設(shè)備中的高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的信息的響應(yīng),并且與從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的一個(gè)或多個(gè)設(shè)備的至少一個(gè)設(shè)備通信以檢索所指定文件。此外,電路電子部件配置用于基于與從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信檢索并高速緩存所指定文件,并且向高速緩存負(fù)載均衡器提供包括設(shè)備與其通信以檢索所指定文件的,由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的標(biāo)識的通知,以及所指定文件在設(shè)備的存儲器上進(jìn)行了高速緩存的確認(rèn)。這些及其他實(shí)現(xiàn)可以包括一個(gè)或多個(gè)以下特征。在某些實(shí)施方式中,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息可以包括與在網(wǎng)絡(luò)中標(biāo)識的一個(gè)或多個(gè)設(shè)備處高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。在這種實(shí)現(xiàn)中,電路電子部件可以配置用于在檢測指定文件沒有在設(shè)備的存儲器上進(jìn)行高速緩存之前,請求訪問指定文件以執(zhí)行給定動作。另外,電路電子部件可以配置用于基于與在至少一個(gè)設(shè)備處高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限符合對應(yīng)于給定動作的權(quán)限來選擇至少一個(gè)設(shè)備進(jìn)行通信。在某些實(shí)例中,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息可以標(biāo)識多個(gè)設(shè)備。在這些實(shí)例中, 電路電子設(shè)備可以配置用于按照基于包括設(shè)備與所標(biāo)識的多個(gè)設(shè)備之間的預(yù)定網(wǎng)絡(luò)跳數(shù)的標(biāo)準(zhǔn)的順序來執(zhí)行與所標(biāo)識的多個(gè)設(shè)備的至少一個(gè)設(shè)備的通信。此外,在這些實(shí)例中,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息包括所標(biāo)識的多個(gè)設(shè)備的相應(yīng)的高速緩存負(fù)載,并且該標(biāo)準(zhǔn)還可以包括所標(biāo)識的多個(gè)設(shè)備的預(yù)定高速緩存負(fù)載級別。在某些實(shí)現(xiàn)中,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第一設(shè)備傳輸?shù)恼埱笠蕴峁┲付ㄎ募约皬陌ㄔ撝付ㄎ募牡谝辉O(shè)備接收的響應(yīng)。另外,對高速緩存負(fù)載均衡器的通知可以包括第一設(shè)備的標(biāo)識。此外,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第一設(shè)備傳輸請求以提供指定文件,從第一設(shè)備接收的響應(yīng)以通知設(shè)備指定文件在第一設(shè)備處缺失。響應(yīng)于從第一設(shè)備接收響應(yīng),該通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第二設(shè)備傳輸請求以提供指定文件。此外,對高速緩存負(fù)載均衡器的通知可以包括第一和第二設(shè)備的標(biāo)識以及指定文件在第一設(shè)備處缺失的信息。在某些情況下,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信還包括從包括指定文件的第二設(shè)備接收的響應(yīng)。在某些其他情況下,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息可以將第一和第二設(shè)備標(biāo)識為網(wǎng)絡(luò)中高速緩存指定文件的僅有的設(shè)備。在這些情況下,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信還可以包括從第二設(shè)備接收的響應(yīng)以通知設(shè)備指定的文件在第二設(shè)備處缺失,并且對高速緩存負(fù)載均衡器的通知還包括指定文件在第二設(shè)備處缺失的信息。在這種情況下,電路電子設(shè)備還可以配置用于響應(yīng)于確定了指定文件在由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的設(shè)備處缺失而向文件服務(wù)器系統(tǒng)請求指定文件。另外,電路電子部件可以配置用于從文件服務(wù)器系統(tǒng)接收包括指定文件的響應(yīng)。在某些實(shí)現(xiàn)中,電路電子部件可以配置用于存儲包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息,該信息標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備。此外,電路電子部件可以配置用于響應(yīng)于嘗試本地訪問指定文件而檢測高速緩存缺失,并且響應(yīng)于檢測到高速緩存缺失在使用所存儲的信息檢索指定文件之前,確定標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息是新的還是舊的。例如,如果標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息被存儲的時(shí)間間隔小于預(yù)定的持續(xù)期間,則該信息可以被認(rèn)為是新的,而如果該信息被存儲的時(shí)間間隔大于或等于預(yù)定的持續(xù)期間,則該信息可以被認(rèn)為是舊的。
在這些實(shí)現(xiàn)中,響應(yīng)于確定結(jié)果為所存儲的信息是舊的,電路電子部件可以配置用于丟棄所存儲的信息,并且向高速緩存負(fù)載均衡器請求標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中當(dāng)前在高速緩存指定文件的至少一個(gè)設(shè)備的信息。此外,在這些實(shí)現(xiàn)中,響應(yīng)于確定結(jié)果為所存儲的信息是新的,電路電子部件可以配置用于與由標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息所涉及的至少一個(gè)設(shè)備通信以檢索指定文件。另外,在這些實(shí)現(xiàn)中,如果設(shè)備只與由存儲信息所涉及的一個(gè)設(shè)備通信,則電路電子部件可以配置用于響應(yīng)于傳達(dá)指定文件在一個(gè)設(shè)備處缺失的通信而丟棄所存儲的信息,并且向高速緩存負(fù)載均衡器請求標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中當(dāng)前高速緩存指定文件的至少一個(gè)設(shè)備的信息。根據(jù)本公開的另一方面,一種方法包括由包括兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群維持關(guān)于在包括配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)處高速緩存的文件的信息。該方法還包括由集群從網(wǎng)絡(luò)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)之一接收請求以標(biāo)識網(wǎng)絡(luò)中高速緩存指定文件的至少一個(gè)計(jì)算機(jī)系統(tǒng)。此外,該方法包括響應(yīng)于所接收的請求而由集群基于所維持的信息標(biāo)識網(wǎng)絡(luò)的高速緩存指定文件的,不是請求計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)。此外,該方法包括由集群向請求計(jì)算機(jī)系統(tǒng)提供至少涉及網(wǎng)絡(luò)中標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的信息。這些及其他實(shí)現(xiàn)可以包括一個(gè)或多個(gè)以下特征。在某些實(shí)現(xiàn)中,集群中的至少一個(gè)計(jì)算機(jī)系統(tǒng)可以是包括配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的三個(gè)或更多的計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)的一部分。例如,集群的所有計(jì)算機(jī)系統(tǒng)可以是包括配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)的一部分。作為另一示例,請求計(jì)算機(jī)系統(tǒng)沒有包括在集群的兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中。在某些實(shí)現(xiàn)中,集群可以具有將由網(wǎng)絡(luò)中不是集群一部分的三個(gè)或更多計(jì)算機(jī)系統(tǒng)使用的單個(gè)標(biāo)識符,照這樣, 該方法可以包括由集群基于對該單個(gè)標(biāo)識符的識別來響應(yīng)請求。在某些實(shí)現(xiàn)中,至少涉及網(wǎng)絡(luò)中標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的所提供的信息可以包括與在網(wǎng)絡(luò)中標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)處高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。在某些實(shí)現(xiàn)中,該方法可以包括由集群監(jiān)控網(wǎng)絡(luò)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)的每個(gè)的高速緩存負(fù)載,以及響應(yīng)于涉及網(wǎng)絡(luò)中高速緩存指定文件的多個(gè)計(jì)算機(jī)系統(tǒng)的所提供的信息,由集群基于由所提供的信息所涉及的多個(gè)計(jì)算機(jī)系統(tǒng)的相應(yīng)的高速緩存負(fù)載來對所提供的信息區(qū)分優(yōu)先次序。在某些實(shí)現(xiàn)中,該方法可以包括由集群從請求計(jì)算機(jī)系統(tǒng)接收指定文件是從由所提供的信息所涉及的第一計(jì)算機(jī)系統(tǒng)檢索的通知,并且由集群根據(jù)所接收的通知來更新所維持的信息。更新可以涉及在請求計(jì)算機(jī)系統(tǒng)處的高速緩存負(fù)載,以及涉及在第一計(jì)算機(jī)系統(tǒng)處的高速緩存活動。在某些實(shí)現(xiàn)中,該方法可以包括由集群從請求計(jì)算機(jī)系統(tǒng)接收指定文件不存在于由所提供的信息所涉及的第一計(jì)算機(jī)系統(tǒng)處以及指定文件是從由所提供的信息所涉及的第二計(jì)算機(jī)系統(tǒng)檢索的通知,以及由集群根據(jù)所接收的通知來更新維持的信息。該更新可以涉及在請求計(jì)算機(jī)系統(tǒng)處和第一計(jì)算機(jī)系統(tǒng)處的相應(yīng)高速緩存負(fù)載,以及涉及在第二計(jì)算機(jī)系統(tǒng)處的高速緩存活動。根據(jù)本公開的另一方面,一種方法包括由設(shè)備檢測指定文件沒有在該設(shè)備處本地高速緩存。該設(shè)備配置用于與包括高速緩存負(fù)載均衡器和三個(gè)或更多設(shè)備(包括該設(shè)備)的網(wǎng)絡(luò)連接。這些設(shè)備配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)。該方法還包括響應(yīng)于檢測由該設(shè)備向高速緩存負(fù)載均衡器請求標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的至少一個(gè)設(shè)備的信息,以及由設(shè)備從高速緩存負(fù)載均衡器接收包括標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的信息的響應(yīng)。此外,該方法包括由該設(shè)備與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的一個(gè)或多個(gè)設(shè)備中的至少一個(gè)設(shè)備通信以檢索指定文件。此外,該方法包括由該設(shè)備基于與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信來檢索并且在該設(shè)備高速緩存指定文件。另外,該方法包括由該設(shè)備向高速緩存負(fù)載均衡器提供包括設(shè)備與其通信以檢索指定文件的,由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的標(biāo)識的通知,以及指定文件在設(shè)備處進(jìn)行了高速緩存的確認(rèn)。這些及其他實(shí)現(xiàn)可以包括一個(gè)或多個(gè)以下特征。在某些實(shí)現(xiàn)中,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息包括與在網(wǎng)絡(luò)中標(biāo)識的一個(gè)或多個(gè)設(shè)備處高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。在這些實(shí)例中,該方法還可以包括在檢測指定文件沒有在該設(shè)備處高速緩存之前,由該設(shè)備請求訪問指定文件以執(zhí)行給定的動作。另外,該方法可以包括由設(shè)備基于與在至少一個(gè)設(shè)備處高速緩存的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限符合對應(yīng)于給定動作的權(quán)限來選擇至少一個(gè)設(shè)備以供進(jìn)行通信。此外,在這些實(shí)例中,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息可以標(biāo)識多個(gè)設(shè)備,并且該方法還可以包括由設(shè)備按照基于包括設(shè)備與所標(biāo)識的多個(gè)設(shè)備之間的預(yù)定網(wǎng)絡(luò)跳數(shù)的標(biāo)準(zhǔn)的順序來執(zhí)行與所標(biāo)識多個(gè)設(shè)備的至少一個(gè)設(shè)備的通信。此外,包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息可以包括所標(biāo)識的多個(gè)設(shè)備的相應(yīng)的高速緩存負(fù)載,并且該標(biāo)準(zhǔn)還可以包括所標(biāo)識的多個(gè)設(shè)備的預(yù)定高速緩存負(fù)載級別。在某些實(shí)現(xiàn)中,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第一設(shè)備傳輸請求以提供指定文件,以及從包括指定文件的第一設(shè)備接收響應(yīng)。另外,向高速緩存負(fù)載均衡器提供通知可以包括發(fā)送第一設(shè)備的標(biāo)識。在某些實(shí)現(xiàn)中,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第一設(shè)備傳輸請求以提供指定文件,以及從第一設(shè)備接收響應(yīng)以通知設(shè)備指定文件在第一設(shè)備處缺失。此外,響應(yīng)于從第一設(shè)備接收響應(yīng),與至少一個(gè)設(shè)備的通信可以包括向由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的第二設(shè)備傳輸請求以提供指定文件。此外,向高速緩存負(fù)載均衡器提供通知可以包括發(fā)送第一和第二設(shè)備的標(biāo)識以及指定文件在第一設(shè)備處缺失的信息。在某些情況下,與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信還可以包括從包括指定文件的第二設(shè)備接收響應(yīng)。在某些其他情況下,當(dāng)包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的信息將第一和第二設(shè)備標(biāo)識為網(wǎng)絡(luò)中高速緩存指定文件的僅有的設(shè)備時(shí),與由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的至少一個(gè)設(shè)備的通信還可以包括從第二設(shè)備接收響應(yīng)以通知設(shè)備指定文件在第二設(shè)備處缺失。在后者情況下,向高速緩存負(fù)載均衡器提供通知還包括發(fā)送指定文件在第二設(shè)備處缺失的信息。此外,在后者情況下,該方法可以包括響應(yīng)于確定指定文件在由從高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的設(shè)備處缺失而由該設(shè)備向文件服務(wù)器系統(tǒng)請求指定文件。另外,該方法可以包括由該設(shè)備從文件服務(wù)器系統(tǒng)接收包括指定文件的響應(yīng)。在某些實(shí)現(xiàn)中,該方法可以包括在設(shè)備處存儲包括在從高速緩存負(fù)載均衡器接收的響應(yīng)中的標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的信息。該方法還可以包括響應(yīng)于嘗試本地訪問指定文件而由該設(shè)備檢測高速緩存缺失。另外,該方法可以包括響應(yīng)于檢測高速緩存缺失,在使用所存儲的信息檢索指定文件之前,由該設(shè)備確定標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息是新的還是舊的。例如,如果標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息被存儲的時(shí)間間隔小于預(yù)定的持續(xù)期間,則該信息可以被認(rèn)為是新的,而如果該信息被存儲的時(shí)間間隔大于或等于預(yù)定的持續(xù)期間,則該信息可以被認(rèn)為是舊的。響應(yīng)于確定所存儲的信息是舊的,該方法可以包括由該設(shè)備丟棄所存儲的信息,并且由該設(shè)備向高速緩存負(fù)載均衡器請求標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中當(dāng)前在高速緩存指定文件的至少一個(gè)設(shè)備的信息。響應(yīng)于確定所存儲的信息是新的,該方法可以包括由該設(shè)備與由標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備中高速緩存指定文件的一個(gè)或多個(gè)設(shè)備的所存儲的信息所涉及的至少一個(gè)設(shè)備通信以檢索指定文件。在某些實(shí)例中,設(shè)備只與所存儲的信息所涉及的一個(gè)設(shè)備通信。在這些情況下,該方法可以包括響應(yīng)于與傳達(dá)指定文件在一個(gè)設(shè)備處缺失的一個(gè)設(shè)備的通信,由該設(shè)備丟棄所存儲的信息,并且由該設(shè)備向高速緩存負(fù)載均衡器請求標(biāo)識網(wǎng)絡(luò)的三個(gè)或更多設(shè)備的當(dāng)前在高速緩存指定文件的至少一個(gè)設(shè)備的信息。所描述的系統(tǒng)和技術(shù)可以在以下中實(shí)現(xiàn)電子電路、計(jì)算機(jī)硬件、固件、軟件或者它們的組合中,諸如本說明書中公開的結(jié)構(gòu)裝置及其結(jié)構(gòu)等同物。這可以包括體現(xiàn)可操作用于使得一個(gè)或多個(gè)數(shù)據(jù)處理裝置執(zhí)行所描述操作的程序的至少一個(gè)計(jì)算機(jī)可讀介質(zhì)。因此,程序?qū)崿F(xiàn)可以通過所公開的方法、系統(tǒng)或裝置實(shí)現(xiàn),而裝置實(shí)現(xiàn)可以通過所公開的系統(tǒng)、計(jì)算機(jī)可讀介質(zhì)或方法實(shí)現(xiàn)。類似地,方法實(shí)現(xiàn)可以通過所公開的系統(tǒng)、計(jì)算機(jī)可讀介質(zhì)或裝置實(shí)現(xiàn),而系統(tǒng)實(shí)現(xiàn)可以通過所公開的方法、計(jì)算機(jī)可讀介質(zhì)或裝置實(shí)現(xiàn)。本說明書中描述的主題的實(shí)現(xiàn)可以配置以便用于實(shí)現(xiàn)一個(gè)或多個(gè)以下潛在優(yōu)勢。 P2P NFS客戶端可以共享和高速緩存數(shù)據(jù)以提高由NFS服務(wù)器導(dǎo)出的NFS的性能。P2P NFS 客戶端可以經(jīng)由高速緩存本地固態(tài)設(shè)備上的數(shù)據(jù)來向運(yùn)行在P2P NFS客戶端主機(jī)上的應(yīng)用提供提高的文件系統(tǒng)性能。此外,P2P NFS客戶端可以經(jīng)由高速緩存本地固態(tài)設(shè)備上的元數(shù)據(jù)來向應(yīng)用提供改進(jìn)的元數(shù)據(jù)性能。此外,這些P2P NFS客戶端可以向應(yīng)用提供透明文件系統(tǒng)訪問而不需要應(yīng)用級變化。此外,P2P NFS客戶端可以減少NFS服務(wù)器工作負(fù)載而不需要NFS服務(wù)器知道P2P層。P2P NFS客戶端還可以通過實(shí)現(xiàn)點(diǎn)對點(diǎn)協(xié)議而彼此協(xié)調(diào)以實(shí)現(xiàn)針對應(yīng)用數(shù)據(jù)的一致分布的高速緩存。另外,P2P NFS客戶端可以使用高速緩存負(fù)載均衡器來優(yōu)化本地高速緩存處的動作及本地高速緩存上的空間。高速緩存負(fù)載均衡器可以實(shí)現(xiàn)為本說明書中描述的設(shè)備的集群,并且可以由P2P NFS客戶端通過與該集群相關(guān)聯(lián)的通過發(fā)現(xiàn)協(xié)議提供的單個(gè)標(biāo)識符 (例如,主要虛擬地址)進(jìn)行訪問。高速緩存負(fù)載均衡器表示沒有單點(diǎn)故障的高度可用資源,這是因?yàn)槿绻骺丶旱奶摂MIP (因特網(wǎng)協(xié)議)地址的節(jié)點(diǎn)停止活動或發(fā)生故障,則與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群的虛擬IP地址會被集群的另一節(jié)點(diǎn)得到并主控。另外, 通過使得單個(gè)系統(tǒng)映像處于設(shè)備的集群的外部,高速緩存負(fù)載均衡器的內(nèi)部組織不需要由 P2P NFS客戶端所知道。這允許與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群的設(shè)備下線和回到線上而不需要P2P NFS客戶端知道或更新與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群的組織。NFS 的P2P客戶端只知道用于聯(lián)系高速緩存負(fù)載均衡器的虛擬IP地址。本說明書中描述的高速緩存負(fù)載均衡器可以在NFS的P2P客戶端之間自適應(yīng)地分布經(jīng)高速緩存的文件。自適應(yīng)高速緩存負(fù)載/活動分布可以由高速緩存負(fù)載均衡器實(shí)現(xiàn), 例如,通過標(biāo)識第一次高速緩存文件的P2P NFS客戶端。在本說明書中,對高速緩存負(fù)載/ 活動的涉及表示高速緩存負(fù)載、高速緩存活動或兩者。此外,高速緩存負(fù)載均衡器可以監(jiān)控并記錄最頻繁高速緩存的文件以及高速緩存最頻繁高速緩存的文件的P2P NFS客戶端。例如,高速緩存負(fù)載均衡器可以不僅監(jiān)控給定文件在P2P NFS客戶端高速緩存,而是還記錄 P2P NFS客戶端高速緩存給定文件的頻率、哪些其他P2P NFS客戶端最頻繁地高速緩存給定文件或兩者。此外,高速緩存負(fù)載均衡器保持追蹤最活躍地高速緩存文件的P2P NFS客戶端,以及在這些活躍的P2P NFS客戶端高速緩存的文件。此外,高速緩存負(fù)載均衡器保持追蹤這樣的P2P NFS客戶端,該P(yáng)2P NFS客戶端是由高速緩存負(fù)載均衡器向該P(yáng)2P NFS客戶端提供的本地存儲的信息(例如,采取高速緩存分組對象形式的元數(shù)據(jù))的頻繁用戶。這些及其他由高速緩存負(fù)載均衡器維持的記錄可以由高速緩存負(fù)載均衡器用于自適應(yīng)地協(xié)調(diào)對與P2P NFS客戶端之間的NFS相關(guān)聯(lián)的文件的高速緩存。另外,當(dāng)P2P NFS客戶端請求訪問指定文件時(shí),由高速緩存負(fù)載均衡器向P2P NFS 客戶端提供的信息除了包括高速緩存指定文件的P2P NFS客戶端的地址之外,還包括在這些P2P NFS客戶端的高速緩存負(fù)載/活動。通過這種方式,請求P2P NFS客戶端可以配置用于從高速緩存指定文件的P2P NFS客戶端中選擇最少負(fù)載/忙碌的P2P NFS客戶端,并且作為結(jié)果,請求P2P NFS客戶端可以在選定的P2P NFS客戶端訪問指定文件或者從選定的P2P NFS客戶端檢索指定文件。這表示了一種機(jī)制,通過該機(jī)制NFS可以基于由高速緩存負(fù)載均衡器提供的即時(shí)或者歷史的高速緩存負(fù)載/活動的信息來自均衡高速緩存P2P NFS 客戶端中的負(fù)載和活動。在附圖及以下描述中闡述了一個(gè)或多個(gè)實(shí)現(xiàn)的細(xì)節(jié)。其他特征和優(yōu)勢可以通過描述和附圖以及通過權(quán)利要求書而變得明顯。
圖IA至圖IG示出了包括點(diǎn)對點(diǎn)(P2P)客戶端和高速緩存負(fù)載均衡器的網(wǎng)絡(luò)文件系統(tǒng)(NFS)的示例的多個(gè)方面。圖2示出了由與基于P2P的NFS相關(guān)聯(lián)的高速緩存負(fù)載均衡器執(zhí)行的過程的示例。圖3示出了由包括高速緩存負(fù)載均衡器的NFS的P2P客戶端執(zhí)行的過程的示例的多個(gè)方面。圖4示出了結(jié)合圖3描述的過程的示例的其他方面。圖5A和圖5B示出了由包括高速緩存負(fù)載均衡器的NFS的P2P客戶端執(zhí)行的過程的另一示例的多個(gè)方面。不同附圖中的相似參考符號指示相似的元素。
具體實(shí)施方式
圖IA示出了網(wǎng)絡(luò)文件系統(tǒng)100的示例,該網(wǎng)絡(luò)文件系統(tǒng)100包括與三個(gè)或更多 NFS客戶端(例如,NFS客戶端110-1、110-2、110-3、110-4、110-5)交換文件數(shù)據(jù)的網(wǎng)絡(luò)文件系統(tǒng)(NFS)服務(wù)器105。NFS客戶端110_1、110_2...可以使用本地高速緩存的文件數(shù)據(jù)以提高文件系統(tǒng)性能,例如,降低NFS服務(wù)器工作負(fù)載、減少訪問時(shí)間延遲或兩者。本公開描述了用于均衡NFS客戶端110-1、110-2...的本地高速緩存以提高文件系統(tǒng)性能的系統(tǒng)和技術(shù)。如在此公開的,NFS客戶端110-1、110-2. · ·包括點(diǎn)對點(diǎn)(P2P)層。照這樣,NFS客戶端110-1、110-2...可以可交換地被稱為基于P2P的NFS客戶端或點(diǎn)。在本說明書中,基于 P2P的NFS客戶端110-1、110-2...可以彼此通信以交換文件數(shù)據(jù),例如,檢索或分布經(jīng)高速緩存的文件數(shù)據(jù)。另外,點(diǎn)110_j(j = 1,2,...)可以基于由配置用于均衡系統(tǒng)100的基于 P2P的客戶端110之間的高速緩存負(fù)載的資源120提供的信息選擇與其他點(diǎn)110-k(k Φ j) 中的哪些點(diǎn)通信。配置用于提供基于文件的數(shù)據(jù)存儲服務(wù)的NFS服務(wù)器105可以在NAS設(shè)備上實(shí)現(xiàn),如圖IB中所示。例如,NAS設(shè)備107可以是連接到網(wǎng)絡(luò)并且包括處理器電子設(shè)備 109(例如,至少一個(gè)中央處理器)的計(jì)算機(jī)系統(tǒng)。此外,NAS設(shè)備107可以運(yùn)行導(dǎo)出網(wǎng)絡(luò)文件系統(tǒng)100的NFS服務(wù)器105。NFS服務(wù)器105可以與點(diǎn)對點(diǎn)(P2P)NFS客戶端110-1、 110-2...通信。另外,NFS服務(wù)器105可以執(zhí)行用戶授權(quán)、認(rèn)證以及向P2P NFS客戶端 110-1,110-2...提供用于鎖定和高速緩存一致性的機(jī)制。NFS客戶端110-l、110-2...可以在本地高速緩存文件數(shù)據(jù)和元數(shù)據(jù)以加速本地應(yīng)用性能。圖IC示出了可操作用于運(yùn)行P2P NFS客戶端110的設(shè)備111的示例。設(shè)備111 可以包括處理器電子設(shè)備113(例如,至少一個(gè)中央處理器)、存儲設(shè)備115和網(wǎng)絡(luò)接口。處理器電子設(shè)備113可以包括一個(gè)或多個(gè)處理器以運(yùn)行在此描述的P2P NFS客戶端110。存儲設(shè)備115可以實(shí)現(xiàn)為包括存儲控制器119和非易失性存儲器117的卡。P2P NFS客戶端 110可以經(jīng)由網(wǎng)絡(luò)接口與網(wǎng)絡(luò)節(jié)點(diǎn)(諸如NFS服務(wù)器105或點(diǎn))進(jìn)行通信。P2P NFS客戶端110可以通過向存儲控制器119發(fā)送命令來將數(shù)據(jù)高速緩存到非易失性存儲器117中。 在某些實(shí)現(xiàn)中,處理器電子設(shè)備113經(jīng)由以下接口與存儲控制器119進(jìn)行通信,該接口為諸如外圍組件互連(PCI)、串行高級技術(shù)附件(SATA)、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、串行連接 SCSI (SAS)、以太網(wǎng)或通用串行總線(USB)。P2P NFS客戶端110可以使用固態(tài)設(shè)備(SSD)來提供用于文件操作的持久高速緩存。例如,非易失性存儲器117可以實(shí)現(xiàn)為固態(tài)驅(qū)動器(SSD)。在某些實(shí)現(xiàn)中,SSD可以包括閃存。閃存是可以電擦除并且重新編程的一類計(jì)算機(jī)存儲器?;贜AND閃存的SSD可以用比某些其他存儲器設(shè)備更低的成本來持久地存儲大量數(shù)據(jù),并且具有比磁盤設(shè)備更快的訪問速度?;贜AND閃存的SSD可以以低成本提供高速隨機(jī)訪問。例如,P2P NFS客戶端110可以使用基于NAND的SSD 117來提供基于閃存的高速緩存系統(tǒng)以加速網(wǎng)絡(luò)文件系統(tǒng)100中的NFS訪問。運(yùn)行在內(nèi)核空間中的P2P NFS客戶端110可以裝配由NFS服務(wù)器105導(dǎo)出的網(wǎng)絡(luò)文件系統(tǒng)100。運(yùn)行在用戶空間中的應(yīng)用106(例如,數(shù)據(jù)庫、電子郵件等)可以生成針對文件的讀取和寫入請求。如果所請求的文件與網(wǎng)絡(luò)文件系統(tǒng)100相關(guān)聯(lián),則此類請求可以由 P2P NFS客戶端110服務(wù)。P2P NFS客戶端110_j (其中j = 1,2,· · ·)可以與另一 P2P NFS 客戶端110-l、110-2...進(jìn)行通信(經(jīng)由圖IA中由長虛線表示的通信信道)以嘗試處理不能在本地服務(wù)的文件系統(tǒng)請求。如果其他P2P NFS客戶端110-1、110-2...中沒有一個(gè)能夠?yàn)樽x取/寫入訪問提供文件的高速緩存版本,則客戶端110-j可以與NFS服務(wù)器105進(jìn)行通信(經(jīng)由圖IA中由短虛線表示的通信信道)以檢索文件。通過這種方式,由P2P NFS 客戶端110-l、110-2...實(shí)現(xiàn)的P2P通信層可以減少NFS服務(wù)器105上的負(fù)載。在某些實(shí)現(xiàn)中,P2P NFS客戶端110-1、110-2...可以基于由所有P2P NFS客戶端 110-1,110-2...已知的一個(gè)或多個(gè)預(yù)定規(guī)則通過分布經(jīng)高速緩存的文件來共享高速緩存負(fù)載。例如,具有標(biāo)識符在第一范圍(例如,以字母從3到C開始的文件名)中的文件可以在第一 P2P NFS客戶端110-1被高速緩存,具有標(biāo)識符在第二范圍(例如,以字母從d到h 開始的文件名)中的文件可以在第二 P2P NFS客戶端110-2被高速緩存等等。作為另一示例,在第一時(shí)間間隔內(nèi)創(chuàng)建的文件(例如,在2011年創(chuàng)建的文件)可以在第一 P2P NFS客戶端110-1被高速緩存,在第二時(shí)間間隔內(nèi)創(chuàng)建的文件(例如,在2010年創(chuàng)建的文件)可以在第二 P2P NFS客戶端110-2被高速緩存等等。通過這種方式,P2P NFS客戶端110-j 可以向已知的特定P2P NFS客戶端請求指定文件,以根據(jù)用于在P2P NFS客戶端110-1、 110-2...之間共享高速緩存負(fù)載的預(yù)定規(guī)則來高速緩存指定文件。然而,如果該特定P2P NFS客戶端下線,則當(dāng)P2P NFS客戶端110-j嘗試與被期待用于高速緩存指定的文件的該特定P2P NFS客戶端通信時(shí),這種P2P請求將會失敗。此外,可能從定義負(fù)載共享規(guī)則后加入NFS100的附加P2P NFS客戶端將仍然不用于高速緩存,盡管附加的P2PNFS客戶端可以與當(dāng)定義負(fù)載共享規(guī)則時(shí)作為NFS 100的一部分的P2P NFS客戶端共享高速緩存負(fù)載。圖IA示出了可以配置為與NFS 100相關(guān)聯(lián)的邏輯資源120的兩個(gè)或更多網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...的集群,以動態(tài)地均衡P2P NFS客戶端110-1、110-2...之間的高速緩存負(fù)載。資源120在此被稱為高速緩存負(fù)載均衡器120,或者簡單地被稱為負(fù)載均衡器120。 高速緩存負(fù)載均衡器120與P2P NFS客戶端110-1、110-2...通信地耦合,從而使得P2P NFS 客戶端110-l、110-2...中的任意一個(gè)可以使用與兩個(gè)或更多網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...的集群相關(guān)聯(lián)的單個(gè)標(biāo)識符(例如,共享的虛擬IP地址128)來與高速緩存負(fù)載均衡器120 進(jìn)行通信。通過這種方式,當(dāng)文件被高速緩存到P2P NFS客戶端110-j或被從P2P NFS客戶端110-j清除(evict)時(shí),該P(yáng)2P NFS客戶端110-j可以通知高速緩存負(fù)載均衡器120。 基于從每個(gè)P2P NFS客戶端110-1、110-2...接收的此類信息,高速緩存負(fù)載均衡器120可以維持關(guān)于在P2P NFS客戶端110-1、110-2...的高速緩存負(fù)載/活動的信息。如稍后在本說明書中所述,所維持的信息可以由高速緩存負(fù)載均衡器120存儲在數(shù)據(jù)結(jié)構(gòu)124中。當(dāng)P2P NFS客戶端110-j查詢哪些P2P NFS客戶端110-1、110-2. · ·高速緩存指定文件時(shí),關(guān)于在P2P NFS客戶端110-1、110-2...處高速緩存負(fù)載/活動的所維持的信息可以由高速緩存負(fù)載均衡器120使用。在這種情況下,高速緩存負(fù)載均衡器120可以通過提供高速緩存指定文件的P2P NFS客戶端的地址以及可選地提供涉及在這些P2P NFS客戶端的高速緩存負(fù)載/活動級別的信息,來響應(yīng)該查詢。通過這種方式,查詢P2P NFS客戶端 110-j可以選擇來與高速緩存指定文件的最少負(fù)載/忙碌的P2P NFS客戶端進(jìn)行通信,從而實(shí)現(xiàn)在P2P NFS客戶端110-1、110-2...之間的高速緩存負(fù)載/活動的自均衡機(jī)制。另外, 關(guān)于在P2P NFS客戶端110-1、110-2...的高速緩存負(fù)載/活動的所維持的信息可以由高速緩存負(fù)載均衡器120使用來在P2P NFS客戶端110-1、110-2之間...自適應(yīng)地分布高速緩存負(fù)載/活動。
圖ID示出了用于實(shí)現(xiàn)與高速緩存負(fù)載均衡器120相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122-1、 122-2...的集群的網(wǎng)絡(luò)節(jié)點(diǎn)122的設(shè)備121的示例。設(shè)備121可以是包括處理器電子設(shè)備127(例如,至少一個(gè)中央處理器)和網(wǎng)絡(luò)接口的計(jì)算機(jī)系統(tǒng)。此外,設(shè)備121可以運(yùn)行網(wǎng)絡(luò)節(jié)點(diǎn)122,該網(wǎng)絡(luò)節(jié)點(diǎn)122是與高速緩存負(fù)載均衡器120相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122-1、 122-2...的集群的一部分。在下文結(jié)合圖IE至圖IG描述了可以用于運(yùn)行網(wǎng)絡(luò)節(jié)點(diǎn)122 的其他設(shè)備。網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...可以彼此進(jìn)行通信(經(jīng)由圖IA中由虛線表示的通信信道)。在某些實(shí)現(xiàn)中,網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...配置用于更新數(shù)據(jù)結(jié)構(gòu)124的相應(yīng)本地(對于網(wǎng)絡(luò)節(jié)點(diǎn)而言)實(shí)例,并且繼而將這些本地實(shí)例同步至單個(gè)數(shù)據(jù)結(jié)構(gòu)124,該單個(gè)數(shù)據(jù)結(jié)構(gòu)1 存儲由高速緩存負(fù)載均衡器120維持的關(guān)于在P2P NFS客戶端110-1、 110-2...處的高速緩存負(fù)載/活動的信息。在其他實(shí)現(xiàn)中,網(wǎng)絡(luò)節(jié)點(diǎn)122-l、122-2...配置用于直接更新單個(gè)數(shù)據(jù)結(jié)構(gòu)124,該單個(gè)數(shù)據(jù)結(jié)構(gòu)IM存儲由高速緩存負(fù)載均衡器120維持的信息。在這兩種實(shí)現(xiàn)中,例如單個(gè)(“主”)數(shù)據(jù)結(jié)構(gòu)1 可以被主控在與主控虛擬IP 地址128的網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...的集群中相同的網(wǎng)絡(luò)節(jié)點(diǎn)上。此外,與高速緩存負(fù)載均衡器120相關(guān)聯(lián)的虛擬IP地址1 可以由網(wǎng)絡(luò)節(jié)點(diǎn) 122-1,122-2...的集群中的節(jié)點(diǎn)122-k(其中k= 1,2,...)來主控。如果主控高速緩存負(fù)載均衡器120的虛擬IP地址1 的網(wǎng)絡(luò)節(jié)點(diǎn)122-k停止活動或發(fā)生故障,則虛擬IP 128 地址由網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...的集群中的另一節(jié)點(diǎn)122-1(其中1興k)得到并主控。 通過這種方式,高速緩存負(fù)載均衡器120表示沒有單點(diǎn)故障的高度可用資源。另外,由于虛擬IP地址1 表示高速緩存負(fù)載均衡器120處于網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...的集群外面的單個(gè)映像,因此P2P NFS客戶端110-1、110-2...沒必要知道高速緩存負(fù)載均衡器120的內(nèi)部組織。這允許與高速緩存負(fù)載均衡器120相關(guān)聯(lián)的集群的設(shè)備下線并回到線上而不需要 P2P NFS客戶端110-1、110-2...來更新高速緩存負(fù)載均衡器120的結(jié)構(gòu)。P2P NFS客戶端 110-1,110-2...只需要知道虛擬IP地址128以聯(lián)系高速緩存負(fù)載均衡器120。該主虛擬地址1 可以由P2P NFS客戶端110-1、110-2...通過用于發(fā)現(xiàn)與高速緩存負(fù)載均衡器120 相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122-l、122-2...的集群的發(fā)現(xiàn)協(xié)議(在本說明書的下文中所述)獲取。如圖IA中所描述,高速緩存負(fù)載均衡器120可以在數(shù)據(jù)結(jié)構(gòu)124中存儲所收集的信息作為監(jiān)控在P2P NFS客戶端110-1、110-2...處的高速緩存活動的一部分。在某些實(shí)現(xiàn)中,數(shù)據(jù)結(jié)構(gòu)1 可以包括多個(gè)表。例如,數(shù)據(jù)結(jié)構(gòu)1 可以是關(guān)系數(shù)據(jù)庫。表124-2可以存儲當(dāng)前在P2P NFS客戶端110-1、110-2...之間高速緩存的文件的集合{. . .,F(xiàn)i,F(xiàn)j, Fk. . . }的標(biāo)識符。在圖IA中所示的網(wǎng)絡(luò)文件系統(tǒng)100的示例中,文件標(biāo)識符可以是NFS文件句柄。表124-4可以存儲與網(wǎng)絡(luò)文件系統(tǒng)100相關(guān)聯(lián)的P2P客戶端110-1、110-2...的地址{IP1,IP2...}。表124-4中的每個(gè)記錄可以包括涉及在相關(guān)聯(lián)P2P NFS客戶端處的高速緩存負(fù)載/活動的字段。例如,P2P NFS客戶端110-1具有地址IPl和對應(yīng)的負(fù)載/活動級別Ll ;P2P NFS客戶端110-2具有地址IP2和對應(yīng)的負(fù)載/活動級別L2等等。例如,負(fù)載/活動級別Lj可以是在P2P NFS客戶端110_j高速緩存的文件的當(dāng)前量(或歷史平均)的量度。作為另一示例,負(fù)載/活動級別Lj可以是在P2P NFS客戶端 110-j的當(dāng)前(或歷史平均)高速緩存活動的量度,其中在P2P NFS客戶端的高速緩存活動可以被定義為在P2P NFS客戶端的文件添加、清除或兩者的速率。作為又一示例,負(fù)載/ 活動級別Lj可以是上述高速緩存負(fù)載/活動度量的組合。此外,高速緩存負(fù)載均衡器120可以將每一個(gè)文件標(biāo)識符{. . . ,Fi,Fj,Fk. . . }映射到高速緩存該一個(gè)文件的對應(yīng)P2P NFS 客戶端。在圖IA中所示的示例中,文件Fi在P2P NFS客戶端110-2被高速緩存;文件Fj 在P2P NFS客戶端110-2和110-5被高速緩存;文件Fk在P2P NFS客戶端110-1、110-2和 110-5被高速緩存等等。此外,表124-6存儲對應(yīng)于當(dāng)前在P2P NFS客戶端110-1、110-2...之間高速緩存的文件的權(quán)限屬性,例如讀取、寫入和鎖定。表1M-6可以由高速緩存負(fù)載均衡器120使用來映射與每一個(gè)文件標(biāo)識符{. . .,F(xiàn)i,F(xiàn)j,F(xiàn)k. . . }相關(guān)聯(lián)的權(quán)限以及高速緩存該一個(gè)文件的對應(yīng)的P2P NFS客戶端。例如,文件Fj當(dāng)前高速緩存在僅能夠用于讀取而訪問的P2P NFS 客戶端110-2處,以及高速緩存在能夠用于讀取、寫入和鎖定訪問的P2P NFS客戶端110-5 處。由高速緩存負(fù)載均衡器120維持作為數(shù)據(jù)結(jié)構(gòu)IM的一部分的另一關(guān)系可以是在每一個(gè)P2P NFS客戶端110-1、110-2...的當(dāng)前高速緩存的文件的映射。在圖IA中所示的示例中,P2P NFS客戶端110-1高速緩存文件1 ;P2P NFS客戶端110-2高速緩存文件Fi、 Fj和1 ;P2P NFS客戶端110-5高速緩存文件Fj和仲。附加表和映射可以包括在數(shù)據(jù)結(jié)構(gòu)1 中。如上文所述,P2P NFS客戶端110-j可以與其他P2P NFS客戶端110-1、110-2...進(jìn)行通信以訪問/檢索沒有本地高速緩存在P2P NFS客戶端110-j處的指定文件。P2P NFS 客戶端110-j可以隨機(jī)地選擇另一 P2P NFS客戶端110-k (其中k ^ j),而無需知道隨機(jī)選擇的P2P NFS客戶端110-k當(dāng)前是否高速緩存指定文件。如果后者沒有高速緩存指定文件,則P2P NFS客戶端110-j可以順序地向其他隨機(jī)選擇的P2P NFS點(diǎn)請求該指定文件,直到其在隨機(jī)選擇的點(diǎn)之一處定位該指定文件。P2P NFS客戶端110-j還可以選擇另一 P2P NFS客戶端110-k (其中k Φ j),基于對指定文件應(yīng)當(dāng)根據(jù)某些靜態(tài)高速緩存分布而被高速緩存在所選擇的P2P NFS客戶端110-k的預(yù)定規(guī)則的了解而向該P(yáng)2P NFS客戶端110_k(其中k興j)請求該指定文件。備選地,P2P NFS客戶端110-j可以利用關(guān)于在P2P NFS客戶端110-1、110-2...處的高速緩存負(fù)載/活動的信息,該信息由高速緩存負(fù)載均衡器120通過向后者請求來維持以從P2P NFS客戶端110-1、110-2...中標(biāo)識當(dāng)前高速緩存指定文件的P2P NFS客戶端。在圖IA中所示的示例中,指定文件是Fj,并且來自P2P NFS客戶端110-1的對高速緩存負(fù)載均衡器120標(biāo)識P2P NFS客戶端110-2、110-3...中當(dāng)前高速緩存指定文件Fj的P2P NFS 客戶端的請求由標(biāo)記為“Α”的實(shí)線箭頭表示。響應(yīng)于來自P2P NFS客戶端110_1的前述請求,高速緩存負(fù)載均衡器120可以提供采取數(shù)據(jù)結(jié)構(gòu)130形式的所請求的信息,該數(shù)據(jù)結(jié)構(gòu)130被稱作與通過請求P2P NFS客戶端110-1而指定的文件Fj相關(guān)聯(lián)的高速緩存分組對象(CGO)。例如,與指定文件Fj相關(guān)聯(lián)的CGO 130可以采取列表或查找表的形式出現(xiàn)。高速緩存負(fù)載均衡器120通過從所存儲的數(shù)據(jù)結(jié)構(gòu)1 至少檢索P2P NFS客戶端110-2、110-3...中當(dāng)前高速緩存指定文件Fj 的P2P NFS客戶端的標(biāo)識符來生成與指定文件Fj相關(guān)聯(lián)的CGO 130,以及當(dāng)在P2P NFS客戶端110-2、110-3...中經(jīng)標(biāo)識的P2P NFS客戶端高速緩存時(shí),生成對應(yīng)于指定文件Fj的實(shí)例的權(quán)限屬性。在某些實(shí)現(xiàn)中,P2P NFS客戶端標(biāo)識符可以是它們的相應(yīng)的IP地址。在圖IA中所示的示例中,CGO 130將P2P NFS客戶端110-2標(biāo)識為高速緩存僅能夠用于讀取訪問的指定文件Fj的實(shí)例;將P2P NFS客戶端110-3標(biāo)識為高速緩存能夠用于讀取或?qū)懭氩僮鱽碓L問的指定文件Fj的另一實(shí)例;以及將P2P NFS客戶端110-5標(biāo)識為高速緩存能夠用于讀取或?qū)懭氩僮鱽碓L問并且可以鎖定的指定文件Fj的另一實(shí)例。此外,在圖IA中所示的示例中,從高速緩存負(fù)載均衡器120向P2P NFS客戶端110-1的響應(yīng)由標(biāo)記為“B”的實(shí)線箭頭表示,并且包括與指定文件Fj相關(guān)聯(lián)的CGO 130??蛇x地,CGO 130可以包括在P2P NFS客戶端110-2、110-3...中當(dāng)前高速緩存指定文件Fj的P2P NFS客戶端的高速緩存負(fù)載/活動的表示。例如,在給定P2P NFS客戶端的高速緩存負(fù)載/活動可以由考慮了以下的加權(quán)表示在給定P2P NFS客戶端高速緩存的文件的量、訪問在給定P2P NFS客戶端高速緩存的文件的速率、經(jīng)高速緩存的指定文件Fj 的實(shí)例的新或舊或者兩者的程度的量度以及其他啟發(fā)。用于生成表示在P2P NFS客戶端 110-2,110-3...中當(dāng)前高速緩存指定文件Fj的P2P NFS客戶端的高速緩存負(fù)載/活動的加權(quán)的這些及其他標(biāo)準(zhǔn)可以由高速緩存負(fù)載均衡器120維持作為規(guī)則1 的一部分。此外, 高速緩存負(fù)載均衡器120可以通過與P2P NFS客戶端110-2、110-3...中當(dāng)前高速緩存指定文件Fj的每個(gè)P2P NFS客戶端相關(guān)聯(lián)的涉及負(fù)載/活動的加權(quán)對包括在CGO 130中的信息排序。在圖IA中所示的示例中,當(dāng)前高速緩存指定文件Fj的最少負(fù)載/活動的P2P NFS 客戶端是P2P NFS客戶端110-3,因此其在CGO 130中位列第一。P2P NFS客戶端110-2和 110-5當(dāng)前也在高速緩存指定文件Fj,并且由于它們分別比P2P NFS客戶端110-3具有更多負(fù)載/活動,因此位列第二和第三。響應(yīng)于接收CGO 130,P2P NFS客戶端110_1可以選擇被標(biāo)識以當(dāng)前高速緩存指定文件的P2P NFS客戶端110-2、110-3、110-5之一。該選擇可以由P2P NFS客戶端110-1基于將在指定文件Fj上執(zhí)行的操作的類型來執(zhí)行。例如,如果運(yùn)行在P2P NFS客戶端110-1 上的應(yīng)用必須從指定文件Fj讀取,則可以選擇CGO 130中標(biāo)識的三個(gè)P2P NFS客戶端中的任意一個(gè)。作為另一示例,如果運(yùn)行在P2P NFS客戶端110-1上的應(yīng)用必須向指定文件Fj 寫入,則可以選擇P2P NFS客戶端110-3和P2P NFS客戶端110-5中的一個(gè)。作為又一示例,如果運(yùn)行在P2P NFS客戶端110-1上的應(yīng)用需要鎖定指定文件Fj,則P2P NFS客戶端 110-1應(yīng)當(dāng)訪問P2P NFS客戶端110-5處的指定文件Fj。前述選擇還可以基于從P2P NFS客戶端110_1到被標(biāo)識以當(dāng)前高速緩存指定文件Fj的P2P NFS客戶端110-2、110-3和110-5的網(wǎng)絡(luò)跳數(shù)。在圖IA中所示的示例中,P2P NFS客戶端110-1可以選擇訪問P2P NFS客戶端110-2處的指定文件Fj,這是因?yàn)閺腜2P NFS客戶端110-1到P2P NFS客戶端110-2的路徑短于(在網(wǎng)絡(luò)跳數(shù)方面)到被標(biāo)識以當(dāng)前高速緩存指定文件Fj的其他兩個(gè)P2P NFS客戶端的路徑。另外,由P2P NFS客戶端110-1對在其中訪問指定文件Fj的P2PNFS客戶端110_2、 110-3和110-5之一的選擇可以基于如在接收的CGO 130中記載的它們的相應(yīng)的高速緩存負(fù)載/活動的級別。在圖IA中所示的示例中,P2P NFS客戶端110-1選擇向P2P NFS客戶端110-3請求指定文件,這是因?yàn)楹笳弑萈2P NFS客戶端110-2和110-5更少負(fù)載/忙碌。 備選地,P2P NFS客戶端110-1可以選擇向具有預(yù)定級別以下的負(fù)載/活動級別的P2P NFS 客戶端110-2、110-3和110-5中的任意一個(gè)請求指定文件。此外,從P2P NFS客戶端110-1 到P2PNFS客戶端110-3的用于檢索指定文件Fj的請求由標(biāo)記為“C”的實(shí)線箭頭表示。響應(yīng)于對檢索指定文件Fj的請求,當(dāng)P2P NFS客戶端110_3當(dāng)前高速緩存指定文件Fj時(shí),P2P NFS客戶端110-1可以從P2P NFS客戶端110-3接收包括指定文件Fj的響應(yīng)。在圖IA中所示的示例中,由P2P NFS客戶端110-1從P2P NFS客戶端110-3接收的響應(yīng)由標(biāo)記為“D”的實(shí)線箭頭表示。響應(yīng)于從P2P NFS客戶端110-3成功檢索指定文件Fj, P2P NFS客戶端110-1可以通知高速緩存負(fù)載均衡器120指定文件Fj檢索自P2P NFS客戶端110-3,并且現(xiàn)在高速緩存在P2P NFS客戶端110-1。在圖IA中所示的示例中,由P2PNFS 客戶端110-1向高速緩存負(fù)載均衡器120傳輸?shù)耐ㄖ蓸?biāo)記為“E”的實(shí)線箭頭表示。高速緩存負(fù)載均衡器120可以使用包括在接收自P2P NFS客戶端110-1中的通知中的信息來更新數(shù)據(jù)結(jié)構(gòu)1 中的適當(dāng)記錄。在這種情況下,高速緩存負(fù)載均衡器120可以至少更新涉及在P2P NFS客戶端110-1處的高速緩存活動和高速緩存負(fù)載(清單)的記錄(其中指定文件Fj現(xiàn)在已經(jīng)被添加),以及涉及在向P2P NFS客戶端110-1提供指定文件Fj的P2P NFS 客戶端110-3處的高速緩存活動的記錄。然而,P2P NFS客戶端110-1可以從P2P NFS客戶端110-3接收指定文件Fj不再高速緩存于此的通知。響應(yīng)于從P2P NFS客戶端110-3檢索指定文件Fj失敗,P2P NFS客戶端110-1可以請求從CG0130中標(biāo)識的其他P2P NFS客戶端110-2和110-5中的一個(gè)檢索指定文件Fj。另外,P2P NFS客戶端110-1可以向高速緩存負(fù)載均衡器120提供與包括在所提供的與指定文件Fj相關(guān)聯(lián)的CGO 130中的信息相反的信息,后者沒有高速緩存在P2P NFS客戶端110-3處。在指定文件可以從其他P2P NFS客戶端110-2和110-5中的一個(gè)檢索的情況下,P2P NFS客戶端110-1可以向高速緩存負(fù)載均衡器120提供從中檢索到指定文件Fj的P2P NFS客戶端的標(biāo)識符,并且后者現(xiàn)在高速緩存在P2P NFS客戶端110-1處。 在這種情況下,高速緩存負(fù)載均衡器120可以至少更新涉及在P2P NFS客戶端110-1(其中指定文件Fj現(xiàn)在已經(jīng)被添加)以及在P2P NFS客戶端110-3(其中指定文件Fj不再被高速緩存)處的高速緩存活動和高速緩存清單的信息。此外,在指定文件無法從P2P NFS客戶端110-2或從P2P NFS客戶端110-5檢索的情況下,P2P NFS客戶端110-1可以從NFS服務(wù)器105檢索指定文件。此外,P2P NFS客戶端110-1可以向高速緩存負(fù)載均衡器120提供指定文件Fj檢索自NFS服務(wù)器105并且現(xiàn)在高速緩存在P2P NFS客戶端110-1處的信息,以及指定文件Fj沒有高速緩存在P2P NFS 客戶端110-2、110-3和110-5中的任何一個(gè)的信息。在這種情況下,高速緩存負(fù)載均衡器 120可以至少更新涉及在P2P NFS客戶端110-1(其中指定文件Fj現(xiàn)在已經(jīng)被添加)以及在P2P NFS客戶端110-2、110-3和110-5(其中指定文件Fj不再被高速緩存)處的高速緩存活動和高速緩存清單的信息。對存儲在數(shù)據(jù)結(jié)構(gòu)124中信息的更新由高速緩存負(fù)載均衡器120按照上述方式來執(zhí)行,使得高速緩存負(fù)載均衡器120能夠知道在P2PNFS客戶端110-l、110-2...之間的高速緩存負(fù)載/活動的當(dāng)前分布。通過這種方式,高速緩存負(fù)載均衡器120可以作為數(shù)據(jù)結(jié)構(gòu)124的一部分或者另外的數(shù)據(jù)結(jié)構(gòu)維持關(guān)于針對給定文件的高速緩存和在某個(gè)P2P NFS客戶端的高速緩存活動的時(shí)間和空間模式的記錄。這種信息(無論是當(dāng)前的還是歷史的)可以由高速緩存負(fù)載均衡器120使用以自適應(yīng)地協(xié)調(diào)NFS 100的P2P客戶端110-1、 110-2...之間的文件的高速緩存。例如,高速緩存負(fù)載均衡器120可以通過標(biāo)識當(dāng)前加入NFS 100并正嘗試第一次高速緩存文件的P2P NFS客戶端來在P2P NFS客戶端110-1、110-2...之間分布經(jīng)高速緩存的文件。在這種情況下,如果P2P NFS客戶端110-j第一次請求訪問指定文件,則高速緩存負(fù)載均衡器120可以向P2P NFS客戶端110-j提供關(guān)于P2P NFS客戶端110-1、110-2...中高速緩存指定文件的其他P2P NFS客戶端的信息,并且可以指示P2P NFS客戶端110-j高速緩存從高速緩存指定文件的其他P2P NFS客戶端110-1、110-2...之一檢索的文件。作為另一示例,高速緩存負(fù)載均衡器120可以通過監(jiān)控和記錄最頻繁高速緩存的文件以及 P2P NFS客戶端110-1、110-2...中高速緩存該最頻繁地高速緩存文件的P2P NFS客戶端來在P2P NFS客戶端110-1、110-2...之間分布經(jīng)高速緩存的文件。在某些實(shí)現(xiàn)中,高速緩存負(fù)載均衡器120可以記錄給定文件當(dāng)前高速緩存在P2P NFS客戶端110-j,并且還可以具有過去P2P NFS客戶端110-j高速緩存指定文件的頻率,以及P2P NFS客戶端110-1、 110-2...中哪些其他P2P NFS客戶端最頻繁地高速緩存指定文件的記錄。在某些實(shí)現(xiàn)中, 高速緩存負(fù)載均衡器120可以追蹤最活躍地高速緩存或具有經(jīng)高速緩存文件的P2PNFS客戶端110-1、110-2...中的P2P NFS客戶端,以及高速緩存在這些活動P2P NFS客戶端的文件。例如,如果存儲在數(shù)據(jù)結(jié)構(gòu)124中的信息指示P2P NFS客戶端110-j在從NFS 100停止工作之前經(jīng)常是給定文件的頻繁用戶,則高速緩存負(fù)載均衡器120可以指示P2PNFS客戶端110-j響應(yīng)于重新加入NFS 100而高速緩存給定文件。作為又一示例,如果P2P NFS客戶端110-j讀取、寫入和鎖定給定文件,則高速緩存負(fù)載均衡器120可以指示P2P NFS客戶端110-j同樣高速緩存給定文件。應(yīng)用程序接口(API)可以用于在高速緩存負(fù)載均衡器120與NFS 100的P2P客戶端110-1、110-2...之間進(jìn)行通信。API可以包括涉及節(jié)點(diǎn)注冊、唯一句柄到位置映射和通知的消息的定義。例如,發(fā)現(xiàn)協(xié)議可以經(jīng)由例程locate_mlb()實(shí)現(xiàn)。P2P NFS客戶端110_j可以通過使用該發(fā)現(xiàn)協(xié)議連接到高速緩存負(fù)載均衡器120。在某些實(shí)現(xiàn)中,P2P NFS客戶端110-j 可以通過向高速緩存負(fù)載均衡器120通知P2P NFS客戶端110-j可以用于高速緩存文件來開始對NFS 100的注冊過程。反過來,高速緩存負(fù)載均衡器120可以通過至少提供與高速緩存負(fù)載均衡器120相關(guān)聯(lián)的虛擬IP地址1 來響應(yīng)P2P NFS客戶端110-j。作為另一示例,例程register_tnode (輸入node_id)可以將句柄返回至變量 rhandle,并且補(bǔ)充的例程unregister_tnode(rhandle)可以由高速緩存負(fù)載均衡器120使用來分別注冊和解注冊P2P NFS客戶端110-j,該P(yáng)2P NFS客戶端110-j分別向NFS 100請求開始工作和停止工作。作為另一示例,例程0bjid_t0_cg0 (輸入uuid_file,輸出*cgo)可以由高速緩存負(fù)載均衡器120使用來生成與由唯一文件句柄imid_file指定的文件相關(guān)聯(lián)的CGO數(shù)據(jù)結(jié)構(gòu)130。如上文所述,CG0130至少包括指定文件與NFS 100的P2P客戶端110_1、110_2. · ·中當(dāng)前高速緩存指定文件的P2P NFS客戶端之間的唯一句柄到位置映射。作為另一示例,例程notify_tn0de (rhandle)可以由高速緩存負(fù)載均衡器120使用來向P2P NFS客戶端110-j傳輸通知。在圖IA中所示的示例中,標(biāo)記為B的通知由高速緩存負(fù)載均衡器120使用來向P2P NFS客戶端110-1提供CGO 130。作為另一示例,例程inform_cgo_add()可以由P2P NFS客戶端110_j使用來在 P2P NFS客戶端110-j向CGO 130主動(proactively)更新/添加高速緩存對象時(shí)通知高速緩存負(fù)載均衡器120。在圖IA中所示的示例中,P2P NFS客戶端110-1可以通過標(biāo)記為E的通知向高速緩存負(fù)載均衡器120通知指定文件Fj的實(shí)例現(xiàn)在高速緩存在P2P NFS客戶端110-1處以及可以由P2P NFS客戶端110-1向?qū)⒃L問新近高速緩存的指定文件Fj的實(shí)例的其他P2P NFS客戶端授予的權(quán)限的類型。作為另一示例,例程inform_cgo_delete()可以由P2P NFS客戶端110-j使用來在 P2P NFS客戶端110-j未能在另一 P2P NFS客戶端110_k(其中k Φ j)找到指定文件時(shí)通知高速緩存負(fù)載均衡器120,即便后者在CGO 130中被標(biāo)識為高速緩存指定文件。在圖IA 中所示的示例中,P2P NFS客戶端110-1可以通過標(biāo)記為E的通知向高速緩存負(fù)載均衡器 120通知沒有在P2P NFS客戶端110-3找到指定文件Fj的實(shí)例,即便CGO 130將P2P NFS 客戶端110-3標(biāo)識為高速緩存指定文件Fj。如上文結(jié)合圖IA和圖ID所述,用于實(shí)現(xiàn)高速緩存負(fù)載均衡器120的集群的網(wǎng)絡(luò)節(jié)點(diǎn)122-1、122-2...可以是專用于高速緩存負(fù)載均衡器120的設(shè)備121。圖IE示出了包括三個(gè)或更多P2P NFS客戶端(例如,P2P NFS客戶端110-1、110-2、110-3、110-4和110-5) 和高速緩存負(fù)載均衡器120’的NFS 100’的示例。兩個(gè)或更多網(wǎng)絡(luò)節(jié)點(diǎn)122-1/110-a、 122-2...的集群可以配置用于提供與NFS 100’相關(guān)聯(lián)的高速緩存負(fù)載均衡器120’。集群中的某些網(wǎng)絡(luò)節(jié)點(diǎn)(例如,122-2、122-3...)可以專用于高速緩存負(fù)載均衡器120’并且可以由類似于圖ID中所示的設(shè)備121的設(shè)備來運(yùn)行。集群中與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的某些其他網(wǎng)絡(luò)節(jié)點(diǎn)(例如,122-1/110-a...)也可以是NFS 100’的P2P客戶端。處于網(wǎng)絡(luò)節(jié)點(diǎn)122-l/110-a、122-2...的集群外部的高速緩存負(fù)載均衡器120’的單個(gè)映像是虛擬IP地址128’。雖然網(wǎng)絡(luò)文件系統(tǒng)100和100’運(yùn)行的節(jié)點(diǎn)總量相同,但是NFS100’運(yùn)行比NFS 100 更多的P2P NFS客戶端。因此,NFS 100’針對相同的總成本比NFS 100具有更多的高速緩存容量。另外,雖然高速緩存負(fù)載均衡器120’比高速緩存負(fù)載均衡器120具有更少的專用網(wǎng)絡(luò)節(jié)點(diǎn),但是NFS 100’運(yùn)行使用與NFS 100的高速緩存負(fù)載均衡器120相同的網(wǎng)絡(luò)節(jié)點(diǎn)總量的高速緩存負(fù)載均衡器120’。因此,與NFS 100’相關(guān)聯(lián)的高速緩存負(fù)載均衡器120’ 可以潛在地具有同與NFS 100相關(guān)聯(lián)的高速緩存負(fù)載均衡器120相當(dāng)?shù)挠?jì)算效果。通過這種方式,NFS 100’潛在地比NFS 100具有更高的成本效益。圖IF示出了可以運(yùn)行與NFS 100,相關(guān)聯(lián)的P2P NFS客戶端110和與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122兩者的設(shè)備121/111的示例。設(shè)備121/111可以在結(jié)構(gòu)上和功能上與圖IC中所示的設(shè)備111類似,并且可以配置用于運(yùn)行處理器電子設(shè)備 113(例如,至少一個(gè)中央處理器)中的P2P NFS客戶端110和應(yīng)用106。應(yīng)用106可以生成針對文件的讀取和寫入請求。P2P NFS客戶端110可以與NFS 100,的任意其他P2P客戶端通信以嘗試處理無法被本地服務(wù)的文件系統(tǒng)請求。在某些實(shí)現(xiàn)中,與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122可以由設(shè)備121/111的處理器電子設(shè)備113運(yùn)行。在其他實(shí)現(xiàn)中,與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122可以由存儲設(shè)備115的存儲控制器119運(yùn)行。在某些其他實(shí)現(xiàn)中,與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122可以由設(shè)備121/111的處理器電子設(shè)備113和由存儲設(shè)備115的存儲控制器119共同運(yùn)行?;氐綀D1E,節(jié)點(diǎn)122-1/110-a作為P2P NFS客戶端,可以與其他P2P NFS客戶端 110-1,110-2...中的任意一個(gè)交換文件(經(jīng)由圖IE中由長虛線表示的通信信道)。另外, 節(jié)點(diǎn)122-1/110-a作為與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的集群的網(wǎng)絡(luò)節(jié)點(diǎn),可以同與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的其他網(wǎng)絡(luò)節(jié)點(diǎn)122-l、122-2...中的任意一個(gè)通信(經(jīng)由圖IE中由虛線表示的通信信道),以更新數(shù)據(jù)結(jié)構(gòu)1M’,該數(shù)據(jù)結(jié)構(gòu)124’存儲由高速緩存負(fù)載均衡器120,維持的關(guān)于在P2PNFS客戶端122-l/110-a、110-l、110-2...處的高速緩存負(fù)載/活動的信息。涉及在P2P NFS客戶端122-1/110-a處的高速緩存負(fù)載/活動的信息采取包括P2P NFS客戶端122-1/110-a的IP地址1 及其相關(guān)聯(lián)的高速緩存負(fù)載/活動度量La的記錄的形式存儲在數(shù)據(jù)結(jié)構(gòu)124’的表124’ -2中。為了進(jìn)一步提高包括高速緩存負(fù)載均衡器的基于P2P的網(wǎng)絡(luò)文件系統(tǒng)的成本效益,可以進(jìn)一步減少與高速緩存負(fù)載均衡器相關(guān)聯(lián)的專用網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)量。圖IG中示出了具有高成本效益的給定NFS。NFS 100”包括三個(gè)或更多P2P NFS客戶端(例如P2P NFS客戶端110-1、110-2、110-3、110-4和110-5)和高速緩存負(fù)載均衡器120”。兩個(gè)或更多網(wǎng)絡(luò)節(jié)點(diǎn)122-l/110-a、122-2/110-b、122-3/110c...的集群可以配置用于提供與NFS 100”相關(guān)聯(lián)的高速緩存負(fù)載均衡器120”。在圖IG中所示的示例中,集群中與高速緩存負(fù)載均衡器120”相關(guān)聯(lián)的所有網(wǎng)絡(luò)節(jié)點(diǎn)(例如,122-l/110-a、122-2/110-b、122-3/110c...)同樣是 NFS 100” 的 P2P 客戶端。處于網(wǎng)絡(luò)節(jié)點(diǎn) 122-l/110-a、122-2/110-b、122-3/110c...的集群外部的高速緩存負(fù)載均衡器120”的單個(gè)映像是虛擬IP地址128”。與高速緩存負(fù)載均衡器120”相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn)122-l/110-a、122-2/110-b、 122-3/llOc...可以由以上結(jié)合圖IF描述的設(shè)備運(yùn)行。節(jié)點(diǎn)122-1/110-a、122-2/110-b、 122-3/llOc...作為P2P NFS客戶端,可以彼此交換文件以及與其他P2P NFS客戶端110-1、 110-2...的任意一個(gè)交換文件(經(jīng)由圖IF中由長虛線表示的通信信道)。另外,節(jié)點(diǎn) 122-l/110-a、122-2/110-b、122-3/110c...作為集群中與高速緩存負(fù)載均衡器120”相關(guān)聯(lián)的網(wǎng)絡(luò)節(jié)點(diǎn),可以彼此通信(經(jīng)由圖IE中由長虛線表示的用于P2P通信的同一通信信道)以更新數(shù)據(jù)結(jié)構(gòu)1對”,該數(shù)據(jù)結(jié)構(gòu)124”存儲了由高速緩存負(fù)載均衡器120”維持的關(guān)于在 P2P NFS 客戶端 122-1/110-a、122-2/110-b、122-3/110c、110-1、110-2. · ·處的高速緩存負(fù)載 / 活動的信息。涉及在 P2P NFS 客戶端 122-1/110-a、122-2/110-b、122-3/110c...處的高速緩存負(fù)載/活動的信息采取以下記錄的形式存儲在數(shù)據(jù)結(jié)構(gòu)1 ”的表124” -2中, 該記錄包括P2P NFS客戶端122-1/110-a的IP地址1 及其相關(guān)聯(lián)的高速緩存負(fù)載/活動度量La、P2P NFS客戶端122-2/110-b的IP地址1 及其相關(guān)聯(lián)的高速緩存負(fù)載/活動度量Lb以及P2P NFS客戶端122-3/110-c的IP地址IPc及其相關(guān)聯(lián)的高速緩存負(fù)載/活動度量Lc。圖2示出了由與基于P2P的NFS相關(guān)聯(lián)的高速緩存負(fù)載均衡器執(zhí)行的過程200的示例。基于P2P的NFS可以包括配置用于高速緩存與該基于P2P的NFS相關(guān)聯(lián)的數(shù)據(jù)的三個(gè)或更多計(jì)算機(jī)系統(tǒng)。包括在基于P2P的NFS中的三個(gè)或更多計(jì)算機(jī)系統(tǒng)中的至少某些系統(tǒng)可以作為如上文結(jié)合圖1A、圖IE和圖IG所述的點(diǎn)進(jìn)行通信。例如,包括在基于P2P的 NFS中的點(diǎn)可以對應(yīng)于上文結(jié)合圖1B、圖IC和圖IF所述的設(shè)備。高速緩存負(fù)載均衡器可以實(shí)現(xiàn)為包括兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群。例如,包括在與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群中的計(jì)算機(jī)系統(tǒng)可以對應(yīng)于上文結(jié)合圖ID和圖IF所述的設(shè)備。該集群與基于P2P 的NFS中的點(diǎn)通信地耦合。在某些實(shí)現(xiàn)中,集群中的至少一個(gè)計(jì)算機(jī)系統(tǒng)還是基于P2P的NFS的P2P客戶端。 在圖IE中所示的示例中,集群中與高速緩存負(fù)載均衡器120’相關(guān)聯(lián)的一個(gè)或多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)同樣是P2P NFS客戶端。在某些實(shí)現(xiàn)中,集群中的所有計(jì)算機(jī)系統(tǒng)都是基于P2P的NFS 的P2P客戶端。在圖IG中所示的示例中,集群中與高速緩存負(fù)載均衡器120”相關(guān)聯(lián)的所有網(wǎng)絡(luò)節(jié)點(diǎn)同樣是P2P NFS客戶端。在210處,關(guān)于高速緩存在基于P2P的NFS的點(diǎn)的文件的信息由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群維持。由集群維持的信息包括高速緩存在基于P2P的NFS的點(diǎn)的文件的標(biāo)識符(例如,NFS文件句柄)。所維持的信息還可以包括針對每個(gè)高速緩存的文件,與對應(yīng)于高速緩存一個(gè)文件的點(diǎn)的經(jīng)高速緩存文件之一相關(guān)聯(lián)的權(quán)限屬性。在某些實(shí)現(xiàn)中, 與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群可以監(jiān)控基于P2P的NFS的每個(gè)點(diǎn)的高速緩存負(fù)載/ 活動。在這種實(shí)現(xiàn)中,所維持的信息可以包括對在基于P2P的NFS的每個(gè)點(diǎn)的經(jīng)監(jiān)控的高速緩存負(fù)載/活動的量度。在圖1A、圖IE和圖IG中所示的示例中,由高速緩存負(fù)載均衡器維持的信息分別存儲在數(shù)據(jù)結(jié)構(gòu)124、124’和124”中。在220處,由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群從基于P2P的NFS的點(diǎn)接收請求來標(biāo)識基于P2P的NFS中高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)。請求點(diǎn)不是集群的一部分。請求可以由集群經(jīng)由應(yīng)用程序接口(API)接收。另外,請求點(diǎn)可以與集群通信以通過使用與該集群相關(guān)聯(lián)的單個(gè)虛擬IP地址來提交前述請求或任何其他通知。在圖1A、圖 IE和圖IG中所示的示例中,高速緩存負(fù)載均衡器分別具有對應(yīng)的虛擬IP地址128、128’和 128”。在225處,響應(yīng)于所接收的請求,基于P2P的NFS中高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群基于所維持的信息進(jìn)行標(biāo)識。在某些實(shí)現(xiàn)中,高速緩存負(fù)載均衡器可以分析所維持的信息以確定已知的當(dāng)前高速緩存指定文件的基于P2P的NFS中的那些點(diǎn)。通過這種方式分析的信息可以聚集到可以向請求點(diǎn)傳輸?shù)臄?shù)據(jù)結(jié)構(gòu)中。在圖IA中所示的示例中,高速緩存負(fù)載均衡器生成可以是列表或查找表的高速緩存分組對象(CGO),其包括指定文件到高速緩存指定文件的點(diǎn)的標(biāo)識符的映射。在230處,由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群向請求點(diǎn)提供至少涉及基于 P2P的NFS中經(jīng)標(biāo)識的一個(gè)或多個(gè)其他點(diǎn)的信息。所提供的信息還可以涉及與高速緩存在基于P2P的NFS中經(jīng)標(biāo)識的一個(gè)或多個(gè)其他點(diǎn)的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。在某些實(shí)現(xiàn)中,響應(yīng)于所提供的涉及高速緩存指定文件的兩個(gè)或更多其他點(diǎn)的信息,集群可以基于由所提供的信息涉及的兩個(gè)或更多其他點(diǎn)的相應(yīng)的高速緩存負(fù)載/活動來對所提供的信息區(qū)分優(yōu)先次序。在圖IA中所示的示例中,高速緩存負(fù)載均衡器可以提供CG0,其中基于對由該CGO涉及的相應(yīng)點(diǎn)的高速緩存負(fù)載/活動的量度對高速緩存指定文件的點(diǎn)的標(biāo)識符進(jìn)行分類。在210’處,在基于P2P的NFS的點(diǎn)之間監(jiān)控高速緩存負(fù)載和活動。高速緩存負(fù)載是指在基于P2P的NFS中的每個(gè)點(diǎn)的高速緩存清單,而高速緩存活動是指在基于P2P的NFS 的每個(gè)點(diǎn)的文件添加、清除或兩者的速率。被收集作為監(jiān)控的一部分的信息由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群維持。關(guān)于在基于P2P的NFS的點(diǎn)處的高速緩存負(fù)載和活動的信息可以由集群通過與基于P2P的NFS的點(diǎn)的通信來收集。如上文結(jié)合圖IA所述,與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群與基于P2P的NFS應(yīng)用的點(diǎn)之間的通信可以經(jīng)由API執(zhí)行。例如,在240處,來自請求點(diǎn)的指定文件檢索自由所提供的信息涉及的第一點(diǎn)的通知可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群來接收。在250處,第一點(diǎn)處的高速緩存活動可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群根據(jù)所接收的通知進(jìn)行更新。該高速緩存活動更新包括第一點(diǎn)已經(jīng)向請求點(diǎn)提供了指定文件的記錄。作為另一示例,在245處,來自請求點(diǎn)的因?yàn)橛伤峁┑男畔⑺婕暗牡谝稽c(diǎn)沒有高速緩存指定文件,因此指定文件檢索自由所提供的信息所涉及的第二點(diǎn)的通知可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群來接收。在255處,在第二點(diǎn)處的高速緩存活動可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群根據(jù)所接收的通知進(jìn)行更新。該高速緩存活動更新包括第二點(diǎn)已經(jīng)向請求點(diǎn)提供了指定文件的記錄。在260處,在第一點(diǎn)處的高速緩存負(fù)載可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群根據(jù)所接收的通知進(jìn)行更新。該高速緩存負(fù)載更新包括第一點(diǎn)已經(jīng)清除了(并且現(xiàn)在沒有高速緩存)指定文件的記錄。另外,在270處,在請求點(diǎn)處的高速緩存負(fù)載可以由與高速緩存負(fù)載均衡器相關(guān)聯(lián)的集群根據(jù)在240處或在245處接收的通知進(jìn)行更新。該高速緩存負(fù)載更新包括請求點(diǎn)已經(jīng)添加了(并且現(xiàn)在正高速緩存)指定文件的記錄。在250處、255處、260處和270處的更新由作為210’的一部分的高速緩存負(fù)載均衡器來執(zhí)行,以維持關(guān)于在基于P2P的NFS 的點(diǎn)之間高速緩存的文件的信息。圖3示出了由包括高速緩存負(fù)載均衡器的基于P2P的NFS的P2P客戶端執(zhí)行的過程300的示例的多個(gè)方面。如上文結(jié)合圖1A、圖IE和圖IG所述,基于P2P的NFS可以包括三個(gè)或更多配置用于高速緩存與該基于P2P的NFS相關(guān)聯(lián)的數(shù)據(jù)的P2P客戶端。例如,包括在基于P2P的NFS中的P2P客戶端(也被稱作點(diǎn))可以對應(yīng)于上文結(jié)合圖1B、圖IC和圖IF所述的設(shè)備。高速緩存負(fù)載均衡器與基于P2P的NFS中的點(diǎn)通信地耦合。上文結(jié)合圖1A、圖1E、圖IG和圖2描述了高速緩存負(fù)載均衡器的功能性實(shí)現(xiàn)的示例。在310處,響應(yīng)于檢測到指定文件沒有在一點(diǎn)高速緩存,該點(diǎn)向與基于P2P的NFS 相關(guān)聯(lián)的高速緩存負(fù)載均衡器請求標(biāo)識基于P2P的NFS中高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息。在圖IA中所示的示例中,P2P NFS客戶端110-1針對P2P NFS客戶端 110-1,110-2...中高速緩存指定文件Fj的P2P NFS客戶端的標(biāo)識向高速緩存負(fù)載均衡器 120傳輸請求“A”。在320處,該點(diǎn)從高速緩存負(fù)載均衡器接收包括標(biāo)識基于P2P的NFS中高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息的響應(yīng)。在圖IA中所示的示例中,P2P NFS客戶端 110-1從高速緩存負(fù)載均衡器120接收響應(yīng)“B”,該響應(yīng)“B”包括標(biāo)識高速緩存指定文件Fj 的 P2P NFS 客戶端 110-2、110-3 和 110-5 的 CGO 130。在330處,該點(diǎn)與由接收自高速緩存負(fù)載均衡器的響應(yīng)所涉及的基于P2P的NFS 的其他點(diǎn)中的至少一個(gè)進(jìn)行通信,以檢索指定文件。在圖IA中所示的示例中,P2P NFS客戶端110-1選擇由接收自高速緩存負(fù)載均衡器120的CGO 130所涉及的P2P NFS客戶端 110-3,然后針對指定文件Fj向所選擇的P2P NFS客戶端110-3傳輸請求“C”。在340處,該點(diǎn)基于與由接收自高速緩存負(fù)載均衡器的響應(yīng)所涉及的基于P2P的 NFS的點(diǎn)中的至少一個(gè)的通信來檢索和本地高速緩存指定文件。在圖IA中所示的示例中, P2P NFS客戶端110-1從P2P NFS客戶端110-3接收包括指定文件Fj的響應(yīng)“D”。在本說明書中結(jié)合圖IA和圖4描述了由P2P NFS客戶端110-1從由CGO 130所涉及的P2P NFS 客戶端110-3或其他P2P NFS客戶端接收其他可能的響應(yīng)。在350處,該點(diǎn)向高速緩存負(fù)載均衡器提供通知,該通知包括(i)由接收自高速緩存負(fù)載均衡器的響應(yīng)所涉及的其他點(diǎn)中的至少一個(gè)的標(biāo)識,該點(diǎn)與該高速緩存負(fù)載均衡器通信以檢索指定文件;以及(ii)指定文件現(xiàn)在高速緩存在該點(diǎn)的確認(rèn)。在圖IA中所示的示例中,P2P NFS客戶端110-1向高速緩存負(fù)載均衡器120傳輸通知“E”以標(biāo)識該P(yáng)2P NFS 客戶端110-1從其獲得指定文件Fj的P2PNFS客戶端110-3,并且確認(rèn)指定文件Fj現(xiàn)在高速緩存在該P(yáng)2P NFS客戶端110-1處。在本說明書中結(jié)合圖IA和圖4描述了由P2P NFS 客戶端110-1向高速緩存負(fù)載均衡器120發(fā)送的其他可能的通知。圖4示出了由包括高速緩存負(fù)載均衡器的基于P2P的NFS中的P2P客戶端執(zhí)行的過程400的另一示例的多個(gè)方面。在某些實(shí)現(xiàn)中,過程400可以對應(yīng)于上文結(jié)合圖3所述的過程300的多個(gè)方面。例如,過程400可以由基于P2P的NFS的點(diǎn)執(zhí)行,該點(diǎn)從高速緩存負(fù)載均衡器接收標(biāo)識基于P2P的NFS中高速緩存指定文件的兩個(gè)或更多其他點(diǎn)的信息。從高速緩存負(fù)載均衡器接收的信息還可以包括與高速緩存在基于P2P的NFS中經(jīng)標(biāo)識的兩個(gè)或更多點(diǎn)的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。在某些實(shí)現(xiàn)中,從高速緩存負(fù)載均衡器接收的信息可以包括經(jīng)標(biāo)識的兩個(gè)或更多設(shè)備的相應(yīng)的高速緩存負(fù)載。在430處,該點(diǎn)向基于P2P的NFS中由接收自高速緩存負(fù)載均衡器的信息所涉及的第一點(diǎn)請求檢索指定文件。該請求點(diǎn)可以基于與高速緩存在第一點(diǎn)的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限滿足給定權(quán)限來選擇用于檢索該指定文件的第一點(diǎn)。給定權(quán)限對應(yīng)于給定動作 (例如,讀取、寫入或鎖定操作),一旦運(yùn)行在該點(diǎn)上的應(yīng)用訪問指定文件,則該應(yīng)用需要執(zhí)行所述給定動作。在某些實(shí)現(xiàn)中,該點(diǎn)可以基于該點(diǎn)與第一點(diǎn)之間的通信信道小于預(yù)定的網(wǎng)絡(luò)跳數(shù)來選擇該第一點(diǎn)以用于檢索指定文件的。在某些實(shí)現(xiàn)中,該點(diǎn)可以基于第一點(diǎn)的高速緩存負(fù)載/活動級別小于預(yù)定級別來選擇該第一點(diǎn)以用于檢索指定文件。在432處,請求點(diǎn)確定該第一點(diǎn)是否高速緩存指定文件。該確定可以基于從該第一點(diǎn)接收的響應(yīng)來進(jìn)行。如果從該第一點(diǎn)接收的響應(yīng)指定該第一點(diǎn)當(dāng)前高速緩存指定文件,則在440’處,請求點(diǎn)從該第一點(diǎn)檢索指定文件。在450’處,請求點(diǎn)向高速緩存負(fù)載均衡器提供請求點(diǎn)已經(jīng)與其通信以檢索指定文件的該第一點(diǎn)的標(biāo)識符。如果從第一點(diǎn)接收的響應(yīng)指定該第一點(diǎn)當(dāng)前缺失指定文件,則在434處,該點(diǎn)向由接收自高速緩存負(fù)載均衡器的信息所涉及的基于P2P的NFS中的第二點(diǎn)請求檢索指定文件。該第二點(diǎn)可以由請求點(diǎn)基于與上文結(jié)合第一點(diǎn)的選擇所述的標(biāo)準(zhǔn)類似的標(biāo)準(zhǔn)進(jìn)行選擇。在436處,請求點(diǎn)確定該第二點(diǎn)是否高速緩存指定文件。該確定可以基于從該第二點(diǎn)接收的響應(yīng)來進(jìn)行。如果從該第二點(diǎn)接收的響應(yīng)指定該第二點(diǎn)當(dāng)前高速緩存指定文件,則在440”處,該請求點(diǎn)從該第二點(diǎn)檢索該指定文件。在450”處,請求點(diǎn)向高速緩存負(fù)載均衡器提供該請求點(diǎn)已經(jīng)與其通信以檢索該指定文件的第二點(diǎn)的標(biāo)識符。如果從該第二點(diǎn)接收的響應(yīng)指定該第二點(diǎn)當(dāng)前缺失該指定文件,則請求點(diǎn)可以根據(jù)434和436向由接收自高速緩存負(fù)載均衡器的信息所涉及的基于P2P的NFS的剩余其他點(diǎn)中的一個(gè)或多個(gè)請求指定文件。出于說明的目的,在圖4中,從高速緩存負(fù)載均衡器接收的信息僅涉及第一點(diǎn)和第二點(diǎn)。在這種情況下,如果從第二點(diǎn)接收的響應(yīng)指示第二點(diǎn)當(dāng)前缺失指定文件,則在 440”’處,請求點(diǎn)從NFS的網(wǎng)絡(luò)文件服務(wù)器檢索指定文件。在460處,請求點(diǎn)向高速緩存負(fù)載均衡器發(fā)送第二點(diǎn)的標(biāo)識符以及指定文件在該第二點(diǎn)缺失的通知。另外,無論請求點(diǎn)是從第二點(diǎn)還是從網(wǎng)絡(luò)文件服務(wù)器檢索(在440”處或在440”’處)指定文件,在465處,該請求點(diǎn)向高速緩存負(fù)載均衡器發(fā)送第一點(diǎn)的標(biāo)識符以及指定文件在該第一點(diǎn)缺失的通知。一旦指定文件由請求P2P客戶端檢索并被本地高速緩存,則運(yùn)行在P2P客戶端的應(yīng)用可以在指定文件上執(zhí)行期望的操作。在某些實(shí)現(xiàn)中,當(dāng)指定文件空閑超過預(yù)定時(shí)間段時(shí),可以將該指定文件從P2P客戶端的本地高速緩存清除。在其他實(shí)現(xiàn)中,指定文件甚至可以在預(yù)定時(shí)間段消逝之前從P2P客戶端的本地高速緩存清除,以騰出空間來高速緩存另一更近期檢索的文件。然而,P2P客戶端可能需要在稍后時(shí)間重新獲得并再次高速緩存該指定文件。為此,P2P客戶端可以再次執(zhí)行上文結(jié)合圖3所述的過程300。作為雙向通信310、320的結(jié)果,請求P2P客戶端從與基于P2P的NFS相關(guān)聯(lián)的高速緩存負(fù)載均衡器接收標(biāo)識基于P2P 的NFS中當(dāng)前高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息。一旦擁有該信息,則請求P2P 客戶端可以執(zhí)行過程300的剩余通信或者過程400的通信,以基于從高速緩存負(fù)載均衡器接收的信息重新獲得指定文件。圖5A和圖5B示出了由包括高速緩存負(fù)載均衡器的基于P2P的NFS的P2P客戶端執(zhí)行的過程500和500’的其他示例的多個(gè)方面。過程500和500’可以由P2P客戶端執(zhí)行以加速重新獲得高速緩存在基于P2P的NFS的其他P2P客戶端的指定文件的過程。重新獲得指定文件的過程500和500’依賴于(i)存儲響應(yīng)于先前請求從高速緩存負(fù)載均衡器接收的標(biāo)識高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息;以及(ii)重新使用所存儲的信息。 通過這種方式,如下文所述無需執(zhí)行雙向通信310、320以重新獲得指定文件。在510和510’處,響應(yīng)于先前的請求從高速緩存負(fù)載均衡器接收的標(biāo)識高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息由基于P2P的NFS的點(diǎn)保存。在圖IA中所示的示例中,CGO 130由請求P2P NFS客戶端110-1從高速緩存負(fù)載均衡器120接收作為雙向通信 (A、B)的結(jié)果。所接收的CGO 130將P2P NFS客戶端110-2、110-3和110-5標(biāo)識為高速緩存指定文件Fj。根據(jù)過程300和400,以及如上文結(jié)合圖IA所述,包括在CGO 130中的信息可以由P2P NFS客戶端110-1使用來從P2P NFS客戶端110-2、110-3和110-5中標(biāo)識為高速緩存指定文件Fj的一個(gè)檢索指定文件。根據(jù)過程500和500’,CGO 130可以由P2P NFS 客戶端110-1保存并稍后重新使用來重新獲得指定文件Fj。注意,除了保存標(biāo)識高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息之外,該點(diǎn)還可以保存標(biāo)識高速緩存另一指定文件的一個(gè)或多個(gè)其他點(diǎn)的信息。在某些實(shí)現(xiàn)中,針對待檢索和在該點(diǎn)高速緩存的多個(gè)文件中的每一個(gè),該點(diǎn)可以保存從高速緩存負(fù)載均衡器接收的最近信息,該信息標(biāo)識了高速緩存多個(gè)文件之一的一個(gè)或多個(gè)其他點(diǎn)。在圖IA中所示的示例中,接收的CGO 130標(biāo)識高速緩存指定文件Fj的P2P NFS客戶端。另一 CGO 130’可以標(biāo)識高速緩存另一指定文件1 的P2P NFS客戶端等等。根據(jù)過程500和500’,CGO 130 可以由P2P NFS客戶端110-1保存并稍后重新使用來重新獲得指定文件Fj ;CG0 130’可以由P2P NFS客戶端110-1保存并稍后重新使用來重新獲得指定文件仲等。在520和520’處,針對指定文件的高速緩存缺失由P2P點(diǎn)檢測,該P(yáng)2P點(diǎn)存儲了先前從高速緩存負(fù)載均衡器接收的信息。如果P2P點(diǎn)已經(jīng)清除了先前高速緩存的指定文件,則可以檢測針對指定文件的高速緩存缺失。在圖IA中所示的示例中,P2P NFS客戶端 110-1已經(jīng)清除了先前高速緩存的指定文件Fj。在這種環(huán)境下,當(dāng)運(yùn)行在P2P NFS客戶端 110-1的應(yīng)用需要訪問指定文件Fj時(shí),P2P NFS客戶端110-1檢測高速緩存缺失。
在525和525’處,存儲先前從高速緩存負(fù)載均衡器接收的信息的P2P點(diǎn)確定與指定文件相關(guān)聯(lián)的所存儲的信息是否為新的。可以基于本地存儲信息的時(shí)間與預(yù)定時(shí)間的比較來進(jìn)行該確定。該預(yù)定時(shí)間可以是預(yù)先確定的,例如10秒、60秒、600秒等。備選地,該預(yù)定時(shí)間可以是計(jì)劃性地(programmatically)確定的。例如,如果該點(diǎn)處的高速緩存活動級別為高,例如,該點(diǎn)經(jīng)歷文件添加、清除或兩者的頻率大于每分鐘1次添加/清除,則預(yù)定時(shí)間可以短,例如10秒;否則,如果該點(diǎn)處的高速緩存活動級別為低,例如,該點(diǎn)經(jīng)歷文件添加、清除或兩者的頻率小于每小時(shí)1次添加/清除,則預(yù)定時(shí)間可以長,例如600秒。照這樣,如果信息已經(jīng)存儲的時(shí)間長于預(yù)定時(shí)間,則所存儲的信息被認(rèn)為是舊的,否則所存儲的信息被認(rèn)為是新的。如果存儲了先前從高速緩存負(fù)載均衡器接收的信息的點(diǎn)確定與該指定文件相關(guān)聯(lián)的所存儲的信息是舊的,則在570和570’處,該點(diǎn)丟棄與指定文件相關(guān)聯(lián)的所存儲的信息。在圖IA中所示的示例中,P2P NFS客戶端110-1可以丟棄標(biāo)識高速緩存指定文件Fj 的P2PNFS客戶端的舊的CGO 130。在該階段,如上文結(jié)合圖3所述,該點(diǎn)可以重新執(zhí)行過程 300。如此,該點(diǎn)可以從高速緩存負(fù)載均衡器接收標(biāo)識當(dāng)前高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的新信息,并且可以從由接收的新信息所標(biāo)識的其他點(diǎn)之一重新獲得指定文件。隨后,該點(diǎn)可以從510或510’處開始重新執(zhí)行過程500或500’,以在將來存儲和重新使用如從高速緩存負(fù)載均衡器接收的與指定文件相關(guān)聯(lián)的新信息來重新獲得指定文件。如果存儲先前從高速緩存負(fù)載均衡器接收的信息的點(diǎn)根據(jù)圖5A中所示的過程 500確定與該指定文件相關(guān)聯(lián)的所存儲的信息是新的,則如上文結(jié)合圖4所述,該點(diǎn)可以重新執(zhí)行過程400。如此,該點(diǎn)可以重新使用標(biāo)識高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的所存儲的信息,并且可以從由所存儲的信息所標(biāo)識的其他點(diǎn)之一重新獲得指定文件。在圖 IA中所示的示例中,P2P NFS客戶端110-1可以使用來自仍然新的CGO 130中標(biāo)識高速緩存指定文件Fj的P2P NFS客戶端的信息來執(zhí)行過程400。隨后,該點(diǎn)可以從510開始重新執(zhí)行過程500,以繼續(xù)在將來存儲并重新使用與指定文件相關(guān)聯(lián)的所存儲的信息來重新獲得指定文件。如果存儲先前從高速緩存負(fù)載均衡器接收的信息的點(diǎn)根據(jù)圖5B中所示的過程 500’確定與該指定文件相關(guān)聯(lián)的所存儲的信息是新的,則該點(diǎn)可以在530處向由該點(diǎn)存儲的信息所涉及的基于P2P的NFS的第一點(diǎn)請求以檢索指定文件。在532處,請求點(diǎn)確定該第一點(diǎn)是否高速緩存指定文件。該確定可以基于從該第一點(diǎn)接收的響應(yīng)來進(jìn)行。如果該響應(yīng)指定該第一點(diǎn)當(dāng)前高速緩存指定文件,則在540處,請求點(diǎn)從該第一點(diǎn)檢索指定文件。在 550處,請求點(diǎn)向高速緩存負(fù)載均衡器提供該請求點(diǎn)與其通信以檢索指定文件的第一點(diǎn)的標(biāo)識符。隨后,該點(diǎn)可以重新執(zhí)行從520’處開始的過程500’,以在將來重新使用與該指定文件相關(guān)聯(lián)的所存儲的信息來重新獲得指定文件。如果響應(yīng)指定第一點(diǎn)當(dāng)前缺失指定文件,則在560處,請求點(diǎn)向高速緩存負(fù)載均衡器發(fā)送該第一點(diǎn)的標(biāo)識符和該指定文件在該第一點(diǎn)缺失的通知。在570’處,該點(diǎn)丟棄與該指定文件相關(guān)聯(lián)的所存儲的信息。在該階段,如上文結(jié)合圖3所述,該點(diǎn)可以重新執(zhí)行過程300。由此,該點(diǎn)可以從高速緩存負(fù)載均衡器接收標(biāo)識當(dāng)前高速緩存指定文件的一個(gè)或多個(gè)其他點(diǎn)的新信息,并且可以從由所接收的新信息所標(biāo)識的其他點(diǎn)中的一個(gè)重新獲得指定文件。隨后,該點(diǎn)可以從510’處開始重新執(zhí)行過程500’,以在將來存儲和重新使用如從高速緩存負(fù)載均衡器接收的與指定文件相關(guān)聯(lián)的新信息來重新獲得指定文件。上文結(jié)合圖IA描述了高速緩存負(fù)載均衡器120可以使用從與P2P NFS客戶端 110-1,110-2...的通信收集的信息來維持關(guān)于針對在某個(gè)P2P NFS客戶端高速緩存給定文件或高速緩存活動的時(shí)間和空間模式的記錄。除了上述模式,高速緩存負(fù)載均衡器120 可以追蹤由文件或P2P NFS客戶端進(jìn)行的本地存儲的信息(例如,CG0)的使用。例如,高速緩存負(fù)載均衡器120可以追蹤是與指定文件相關(guān)聯(lián)的本地存儲的CGO的頻繁用戶的P2P NFS客戶端。作為另一示例,高速緩存負(fù)載均衡器120可以追蹤這樣的文件,針對該文件相關(guān)聯(lián)的CGO最頻繁地存儲在給定P2P NFS客戶端。涉及本地存儲的信息的當(dāng)前或歷史使用的信息還可以由高速緩存負(fù)載均衡器120用于自適應(yīng)地協(xié)調(diào)NFS 100的P2P NFS客戶端 110-1,110-2...之間的文件的高速緩存。上文詳細(xì)描述了若干實(shí)施方式,并且可以進(jìn)行各種修改。所公開的主題(包括本說明書中描述的功能性操作)可以采用電子電路、計(jì)算機(jī)硬件、固件、軟件或其組合來實(shí)現(xiàn),諸如本說明書中公開的結(jié)構(gòu)性裝置以及其結(jié)構(gòu)等同物,潛在地包括可操作用于使得一個(gè)或多個(gè)數(shù)據(jù)處理裝置執(zhí)行所述操作的程序(諸如,在計(jì)算機(jī)可讀介質(zhì)中編碼的程序,該計(jì)算機(jī)可讀介質(zhì)可以是存儲器設(shè)備、存儲設(shè)備、計(jì)算機(jī)可讀存儲襯底(substrate)或其他物理的機(jī)器可讀的介質(zhì)或者它們的一個(gè)或多個(gè)的組合)。術(shù)語“數(shù)據(jù)處理裝置”包括用于處理數(shù)據(jù)的所有裝置、設(shè)備和機(jī)器,通過示例的方式包括可編程處理器、計(jì)算機(jī)或者多個(gè)處理器或計(jì)算機(jī)。裝置除了可以包括硬件以外,還包括為所述計(jì)算機(jī)程序創(chuàng)建執(zhí)行環(huán)境的代碼,例如構(gòu)成處理器固件、協(xié)議棧、數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)或它們的一個(gè)或多個(gè)的組合的代碼。程序(還被稱作計(jì)算機(jī)程序、軟件、軟件應(yīng)用、腳本或代碼)可以采取任何形式的編程語言編寫,包括編譯語言或解釋語言或者說明性語言或過程性語言,并且該編程語言可以采取任何形式部署,包括作為獨(dú)立程序或作為模塊、組件、子例程或者適于在計(jì)算環(huán)境中使用的其他單元。程序沒必要對應(yīng)于文件系統(tǒng)中的文件。程序可以被存儲在持有其他程序或數(shù)據(jù)的文件的一部分中(例如,存儲在標(biāo)記語言文檔中的一個(gè)或多個(gè)腳本)、存儲在專用于所述程序的單個(gè)文件中或者存儲在多個(gè)協(xié)調(diào)文件(例如,存儲一個(gè)或多個(gè)模塊、子程序或代碼部分的文件)中??梢詫⒊绦虿渴鹪谖挥谝粋€(gè)站點(diǎn)或分布在多個(gè)站點(diǎn)并且由通信網(wǎng)絡(luò)互連的一個(gè)計(jì)算機(jī)或多個(gè)計(jì)算機(jī)上來執(zhí)行。雖然本說明書包含許多具體內(nèi)容,但是這些不應(yīng)當(dāng)被解釋為是對所要求保護(hù)范圍的限制,而是可以針對特定實(shí)施方式的特征的描述。在單獨(dú)實(shí)施方式的上下文中,本說明書中描述的某些特征還可以在單個(gè)實(shí)施方式中組合實(shí)現(xiàn)。相反地,在單個(gè)實(shí)施方式的上下文中描述的各種特征還可以在多個(gè)實(shí)施方式中單獨(dú)地或以任何適當(dāng)?shù)淖咏M合來實(shí)現(xiàn)。此外,雖然特征可以在上文被描述為以特定組合作用甚至最初要求如此,但是來自所要求組合中的一個(gè)或多個(gè)特征可以在某種程度上與該組合脫離,并且所要求的組合可以指向子組合或子組合的變體。類似地,雖然操作在附圖中是以特定順序繪制的,但是這不應(yīng)當(dāng)被理解為要求此類操作以所示特定順序或以連續(xù)順序執(zhí)行,或者執(zhí)行所有所示的操作,以達(dá)到期望的結(jié)果。 在某些情況中,多任務(wù)和并行處理可以是有利的。此外,上文所述實(shí)施方式中的各種系統(tǒng)組件的分離不應(yīng)當(dāng)被理解為在所有實(shí)施方式中要求此類分離。其他實(shí)施方式會落入以下權(quán)利要求書的范圍中。
權(quán)利要求
1.一種系統(tǒng),包括包括兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群,所述集群與包括三個(gè)或更多配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)通信地耦合,所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)配置用于維持關(guān)于高速緩存在所述網(wǎng)絡(luò)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)的文件的信息,從所述網(wǎng)絡(luò)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)中的一個(gè)接收對標(biāo)識高速緩存指定文件的所述網(wǎng)絡(luò)中的至少一個(gè)計(jì)算機(jī)系統(tǒng)的請求,響應(yīng)于所接收的請求,基于所維持的信息,標(biāo)識高速緩存所述指定文件的不是請求計(jì)算機(jī)系統(tǒng)的所述網(wǎng)絡(luò)中的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng),以及向所述請求計(jì)算機(jī)系統(tǒng)提供至少涉及所述網(wǎng)絡(luò)中經(jīng)標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的 fn息ο
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述集群中的至少一個(gè)計(jì)算機(jī)系統(tǒng)是包括配置用于高速緩存與所述文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的所述數(shù)據(jù)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)的所述網(wǎng)絡(luò)的一部分。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述集群的所有計(jì)算機(jī)系統(tǒng)是包括配置用于高速緩存與所述文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的所述數(shù)據(jù)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)的所述網(wǎng)絡(luò)的一部分。
4.根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述請求計(jì)算機(jī)系統(tǒng)沒有包括在所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中至少涉及所述網(wǎng)絡(luò)的所述經(jīng)標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的所提供的信息包括與高速緩存在所述網(wǎng)絡(luò)的所述經(jīng)標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的所述指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)還配置用于監(jiān)控所述網(wǎng)絡(luò)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)的高速緩存負(fù)載,以及響應(yīng)于涉及高速緩存所述指定文件的所述網(wǎng)絡(luò)中的多個(gè)計(jì)算機(jī)系統(tǒng)的所述所提供的信息,基于由所述所提供的信息所涉及的所述多個(gè)計(jì)算機(jī)系統(tǒng)中的相應(yīng)的高速緩存負(fù)載來對所述所提供的信息區(qū)分優(yōu)先次序。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)還配置用于從所述請求計(jì)算機(jī)系統(tǒng)接收所述指定文件檢索自由所述所提供的信息所涉及的第一計(jì)算機(jī)系統(tǒng)的通知,以及根據(jù)所接收的通知更新所述所維持的信息,所述更新涉及在所述請求計(jì)算機(jī)系統(tǒng)處的高速緩存負(fù)載以及涉及在所述第一計(jì)算機(jī)系統(tǒng)處的高速緩存活動。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)進(jìn)一步配置用于從所述請求計(jì)算機(jī)系統(tǒng)接收所述指定文件沒有存在于由所述所提供的信息所涉及的第一計(jì)算機(jī)系統(tǒng)處以及所述指定文件檢索自由所述所提供的信息所涉及的第二計(jì)算機(jī)系統(tǒng)的通知,以及根據(jù)所接收的通知更新所述所維持的信息,所述更新涉及在所述請求計(jì)算機(jī)系統(tǒng)和所述第一計(jì)算機(jī)系統(tǒng)處的相應(yīng)的高速緩存負(fù)載以及涉及在所述第二計(jì)算機(jī)系統(tǒng)處的高速緩存活動。
9.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述集群具有將由不是所述集群的一部分的所述網(wǎng)絡(luò)中的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)使用的單個(gè)標(biāo)識符,并且所述集群的所述兩個(gè)或更多計(jì)算機(jī)系統(tǒng)中的每一個(gè)還配置用于基于對所述單個(gè)標(biāo)識符的識別來響應(yīng)所述請求。
10.一種設(shè)備,包括存儲器和電路電子部件,所述設(shè)備配置用于與包括高速緩存負(fù)載均衡器和包括所述設(shè)備的三個(gè)或更多設(shè)備的網(wǎng)絡(luò)連接,所述設(shè)備配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù),從而使得所述設(shè)備具有與所述文件服務(wù)器系統(tǒng)的相應(yīng)連接,所述電路電子部件配置用于檢測指定文件沒有高速緩存在所述設(shè)備的存儲器上,響應(yīng)于所述檢測,向所述高速緩存負(fù)載均衡器請求標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中高速緩存所述指定文件的至少一個(gè)設(shè)備的信息,從所述高速緩存負(fù)載均衡器接收包括標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中高速緩存所述指定文件的一個(gè)或多個(gè)設(shè)備的信息的響應(yīng),與由接收自所述高速緩存負(fù)載均衡器的響應(yīng)所涉及的所述一個(gè)或多個(gè)設(shè)備的至少一個(gè)設(shè)備通信,以檢索所述指定文件,基于與由接收自所述高速緩存負(fù)載均衡器的響應(yīng)所涉及的所述至少一個(gè)設(shè)備的通信, 檢索并高速緩存所述指定文件,以及向所述高速緩存負(fù)載均衡器提供包括從所述設(shè)備與其通信以檢索所述指定文件的所述高速緩存負(fù)載均衡器接收的響應(yīng)所涉及的所述至少一個(gè)設(shè)備的標(biāo)識的通知,以及所述指定文件被高速緩存在所述設(shè)備的存儲器上的確認(rèn)。
11.根據(jù)權(quán)利要求10所述的設(shè)備,其中包括在接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)中的信息包括與高速緩存在所述網(wǎng)絡(luò)的經(jīng)標(biāo)識一個(gè)或多個(gè)設(shè)備的指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限信息,并且所述電路電子部件還配置用于在檢測所述指定文件沒有高速緩存在所述設(shè)備的存儲器上之前,請求訪問所述指定文件以執(zhí)行給定動作,以及基于與高速緩存在所述至少一個(gè)設(shè)備的所述指定文件的實(shí)例相關(guān)聯(lián)的權(quán)限滿足對應(yīng)于所述給定動作的權(quán)限來選擇用于通信的所述至少一個(gè)設(shè)備。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其中包括在接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)中的所述信息標(biāo)識多個(gè)設(shè)備,以及包括所述經(jīng)標(biāo)識的多個(gè)設(shè)備的相應(yīng)高速緩存負(fù)載,以及所述電路電子部件還配置用于按照基于以下標(biāo)準(zhǔn)的順序執(zhí)行與所述經(jīng)標(biāo)識的多個(gè)設(shè)備的所述至少一個(gè)設(shè)備的通信,所述標(biāo)準(zhǔn)包括所述設(shè)備與所述經(jīng)標(biāo)識的多個(gè)設(shè)備之間的預(yù)定網(wǎng)絡(luò)跳數(shù),以及所述經(jīng)標(biāo)識的多個(gè)設(shè)備的預(yù)定高速緩存負(fù)載級別。
13.根據(jù)權(quán)利要求10所述的設(shè)備,其中與由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的所述至少一個(gè)設(shè)備的通信包括向由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的第一設(shè)備傳輸以提供所述指定文件的請求,以及從包括所述指定文件的所述第一設(shè)備接收的響應(yīng),以及對所述高速緩存負(fù)載均衡器的所述通知包括所述第一設(shè)備的標(biāo)識。
14.根據(jù)權(quán)利要求10所述的設(shè)備,其中與由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的所述至少一個(gè)設(shè)備的通信包括向由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的第一設(shè)備傳輸以提供所述指定文件的請求,從第一設(shè)備接收以向所述設(shè)備通知所述指定文件在所述第一設(shè)備缺失的響應(yīng),以及響應(yīng)于從所述第一設(shè)備接收所述響應(yīng),向由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的第二設(shè)備傳輸以提供所述指定文件的請求,以及對所述高速緩存負(fù)載均衡器的通知包括所述第一設(shè)備和所述第二設(shè)備的所述標(biāo)識以及所述指定文件在所述第一設(shè)備缺失的信息。
15.根據(jù)權(quán)利要求14所述的設(shè)備,其中與由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的所述至少一個(gè)設(shè)備的通信還包括從包括所述指定文件的所述第二設(shè)備接收的響應(yīng)。
16.根據(jù)權(quán)利要求14所述的設(shè)備,其中包括在接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)中的所述信息將所述第一設(shè)備和所述第二設(shè)備標(biāo)識為所述網(wǎng)絡(luò)中高速緩存所述指定文件的僅有設(shè)備,與由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的所述至少一個(gè)設(shè)備的所述通信還包括從所述第二設(shè)備接收以用于向所述設(shè)備通知所述指定文件在所述第二設(shè)備缺失的響應(yīng),以及對所述高速緩存負(fù)載均衡器的通知還包括所述指定文件在所述第二設(shè)備缺失的信息,以及所述電路電子部件還配置用于響應(yīng)于確定所述指定文件在由接收自所述高速緩存負(fù)載均衡器的所述響應(yīng)所涉及的所述設(shè)備處缺失,向所述文件服務(wù)器系統(tǒng)請求所述指定文件,以及從所述文件服務(wù)器系統(tǒng)接收包括所述指定文件的響應(yīng)。
17.根據(jù)權(quán)利要求10所述的設(shè)備,其中所述電路電子部件還配置用于存儲包括在從所述高速緩存負(fù)載均衡器接收的標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中高速緩存所述指定文件的所述一個(gè)或多個(gè)設(shè)備的響應(yīng)中的信息, 響應(yīng)于嘗試本地訪問所述指定文件而檢測高速緩存缺失,以及響應(yīng)于檢測到所述高速緩存缺失,在使用所存儲的信息來檢索所述指定文件之前,確定標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中的高速緩存所述指定文件的所述一個(gè)或多個(gè)設(shè)備的所存儲的信息是新的還是舊的,以及如果標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中的高速緩存所述指定文件的所述一個(gè)或多個(gè)設(shè)備的所述所存儲的信息被存儲的時(shí)間間隔小于預(yù)定的持續(xù)期間,則所述信息是新的,而如果所述信息被存儲的時(shí)間間隔大于或等于所述預(yù)定的持續(xù)期間,則所述信息是舊的。
18.根據(jù)權(quán)利要求17所述的設(shè)備,其中響應(yīng)于所述確定的結(jié)果為所述所存儲的信息是舊的,所述電路電子部件配置用于丟棄所述所存儲的信息,以及向所述高速緩存負(fù)載均衡器請求標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中當(dāng)前高速緩存所述指定文件的所述至少一個(gè)設(shè)備的信息;以及響應(yīng)于所述確定的結(jié)果為所述所存儲的信息是新的,所述電路電子部件配置用于與由標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備中高速緩存所述指定文件的所述一個(gè)或多個(gè)設(shè)備的所述所存儲的信息所涉及的至少一個(gè)設(shè)備通信以檢索所述指定文件。
19.根據(jù)權(quán)利要求18所述的設(shè)備,其中所述設(shè)備只與由所述所存儲的信息所涉及的一個(gè)設(shè)備通信,并且所述電路電子部件配置用于響應(yīng)于傳達(dá)所述指定文件在所述一個(gè)設(shè)備處缺失的通信,丟棄所述所存儲的信息,以及向所述高速緩存負(fù)載均衡器請求標(biāo)識所述網(wǎng)絡(luò)的所述三個(gè)或更多設(shè)備當(dāng)前高速緩存所述指定文件的至少一個(gè)設(shè)備的信息。
20.一種方法,包括由包括兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群維持關(guān)于高速緩存在包括三個(gè)或更多配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)的網(wǎng)絡(luò)處的文件的信息;由所述集群從所述網(wǎng)絡(luò)的所述三個(gè)或更多計(jì)算機(jī)系統(tǒng)中的一個(gè)接收對標(biāo)識所述網(wǎng)絡(luò)中高速緩存指定文件的至少一個(gè)計(jì)算機(jī)系統(tǒng)的請求;由所述集群響應(yīng)于所接收的請求,基于所維持的信息標(biāo)識高速緩存所述指定文件的不是請求計(jì)算機(jī)系統(tǒng)的所述網(wǎng)絡(luò)中的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng);以及由所述集群向所述請求計(jì)算機(jī)系統(tǒng)提供至少涉及所述網(wǎng)絡(luò)中經(jīng)標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的信息。
全文摘要
本發(fā)明涉及均衡基于點(diǎn)對點(diǎn)的網(wǎng)絡(luò)文件系統(tǒng)中的高速緩存負(fù)載。更具體地描述了涉及用于均衡基于點(diǎn)對點(diǎn)的網(wǎng)絡(luò)文件系統(tǒng)中的高速緩存負(fù)載的網(wǎng)絡(luò)文件系統(tǒng)的系統(tǒng)和技術(shù)。在一個(gè)方面中,方法包括由包括兩個(gè)或更多計(jì)算機(jī)系統(tǒng)的集群維持關(guān)于高速緩存在包括三個(gè)或更多配置用于高速緩存與文件服務(wù)器系統(tǒng)相關(guān)聯(lián)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)的文件的信息。方法還包括從網(wǎng)絡(luò)的計(jì)算機(jī)系統(tǒng)之一接收用于標(biāo)識網(wǎng)絡(luò)中高速緩存指定文件的至少一個(gè)計(jì)算機(jī)系統(tǒng)的請求。此外,方法包括響應(yīng)于所接收的請求由集群基于所維持的信息來標(biāo)識網(wǎng)絡(luò)中高速緩存指定文件的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)。此外,方法包括由集群向請求計(jì)算機(jī)系統(tǒng)提供至少涉及網(wǎng)絡(luò)中經(jīng)標(biāo)識的一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)的信息。
文檔編號G06F17/30GK102387193SQ201110265700
公開日2012年3月21日 申請日期2011年9月5日 優(yōu)先權(quán)日2010年9月3日
發(fā)明者A·P·戈利, J·B·博哈特, S·班德納帕德海艾 申請人:馬維爾國際貿(mào)易有限公司