一種內(nèi)存訪問的方法、設(shè)備和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機(jī)領(lǐng)域,尤其涉及一種內(nèi)存訪問的方法、設(shè)備和系統(tǒng)。
【背景技術(shù)】
[0002] 云計算(Cloud Computing)是傳統(tǒng)計算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)發(fā)展融合的新的互聯(lián)網(wǎng) 計算模式。它旨在通過整合數(shù)據(jù)中心資源形成一個具有強(qiáng)大計算能力的系統(tǒng),并以此系統(tǒng) 為用戶提供服務(wù)。而內(nèi)存資源作為資源管理的重要方面直接影響到系統(tǒng)的高效運行,因此 需要對內(nèi)存資源進(jìn)行合理的分配,以使得內(nèi)存資源的分配能夠均衡,并且減少對內(nèi)存資源 的浪費。
[0003] 目前,分布式共享存儲器(Distributed Shared Memorl,簡稱DSM)技術(shù)提供了一 個內(nèi)存資源管理和訪問的方法,它將物理上分布的存儲器在邏輯上實現(xiàn)成一個共享的存儲 器,如圖1所示。這種共享存儲器模式在分布式系統(tǒng)中提供了一個可供系統(tǒng)內(nèi)所有節(jié)點所 共享的存儲器,該共享存儲器可以是一個分頁的虛擬內(nèi)存空間,其中,每一頁的虛擬內(nèi)存空 間可以由單獨的一個節(jié)點的存儲器提供,DSM對整個虛擬內(nèi)存空間進(jìn)行統(tǒng)一編址,以使得所 有的節(jié)點都能夠使用整個共享存儲器,而在DSM中的,每個節(jié)點既可以以存儲器的速度對 該節(jié)點提供的存儲器所形成的單頁虛擬內(nèi)存空間進(jìn)行訪問,也可以對其他遠(yuǎn)端節(jié)點提供的 存儲器所形成的單頁虛擬內(nèi)存空間進(jìn)行訪問。
[0004] 在實現(xiàn)上述DSM的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:DSM通常由 0S或用戶編程庫在軟件層面實現(xiàn),也可依靠特殊網(wǎng)卡或維護(hù)Cache -致性的硬件來實現(xiàn), 這導(dǎo)致DSM的操作開銷和實現(xiàn)成本較大。另外,DSM對內(nèi)存統(tǒng)一編址,對編程人員提供單一 映像。DSM還需要維護(hù)數(shù)據(jù)一致性,且共享數(shù)據(jù)的粒度較小。這些特征使得DSM在數(shù)據(jù)中心 中應(yīng)用負(fù)載動態(tài)變化時,不能很好的支持對資源的靈活調(diào)度。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的實施例提供一種內(nèi)存訪問的方法、設(shè)備和系統(tǒng),減少了系統(tǒng)的操作和維 護(hù)開銷,實現(xiàn)了對內(nèi)存資源的靈活調(diào)度。
[0006] 為達(dá)到上述目的,本發(fā)明的實施例采用如下技術(shù)方案:
[0007] 第一方面,本發(fā)明實施例提供了 一種內(nèi)存訪問的方法,應(yīng)用于云計算網(wǎng)絡(luò)中的請 求節(jié)點側(cè)的云控制設(shè)備,所述方法包括:
[0008] 所述云控制設(shè)備接收所述請求節(jié)點發(fā)送的訪問存儲在貢獻(xiàn)節(jié)點提供給所述請求 節(jié)點使用的內(nèi)存資源的待訪問數(shù)據(jù)的請求報文,其中,所述請求報文包括所述請求節(jié)點的 標(biāo)識信息和所述待訪問數(shù)據(jù)的第一物理地址,所述待訪問數(shù)據(jù)的第一物理地址為所述待訪 問數(shù)據(jù)在所述請求節(jié)點的物理地址;
[0009] 所述云控制設(shè)備根據(jù)所述待訪問數(shù)據(jù)的所述第一物理地址查詢預(yù)設(shè)的第一映射 關(guān)系,獲取所述貢獻(xiàn)節(jié)點的標(biāo)識信息,其中,所述第一映射關(guān)系包括所述貢獻(xiàn)節(jié)點提供的內(nèi) 存資源在所述請求節(jié)點的物理地址和所述貢獻(xiàn)節(jié)點的標(biāo)識信息之間的映射關(guān)系;
[0010] 所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息向所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備 發(fā)送訪問所述待訪問數(shù)據(jù)的訪問請求消息,以使得所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備根據(jù)所述 訪問請求消息中的所述請求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取所述待訪問數(shù)據(jù)的第 二物理地址,并將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至所述貢獻(xiàn)節(jié) 點,使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理地址完成對所 述待訪問數(shù)據(jù)的訪問操作,其中,所述訪問請求消息包括所述請求節(jié)點的標(biāo)識信息,所述第 二映射關(guān)系包括所述貢獻(xiàn)節(jié)點提供的內(nèi)存資源在所述貢獻(xiàn)節(jié)點的物理地址與所述請求節(jié) 點的標(biāo)識信息之間的映射關(guān)系,所述待訪問數(shù)據(jù)的第二物理地址為所述待訪問數(shù)據(jù)在所述 貢獻(xiàn)節(jié)點的物理地址。
[0011] 根據(jù)第一種可能的實現(xiàn)方式,結(jié)合第一方面,所述云控制設(shè)備接收所述請求節(jié)點 發(fā)送的訪問存儲在貢獻(xiàn)節(jié)點提供給所述請求節(jié)點使用的內(nèi)存資源的待訪問數(shù)據(jù)的請求報 文,其中,所述請求報文包括讀訪問請求報文;
[0012] 相應(yīng)的,所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息向所述貢獻(xiàn)節(jié)點側(cè)的云控 制設(shè)備發(fā)送訪問所述待訪問數(shù)據(jù)的訪問請求消息,以使得所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備根 據(jù)所述訪問請求消息中的所述請求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取所述待訪問數(shù) 據(jù)的第二物理地址,并將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至所述 貢獻(xiàn)節(jié)點,使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理地址完 成對所述待訪問數(shù)據(jù)的訪問操作,包括:
[0013] 所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息向所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備 發(fā)送所述待訪問數(shù)據(jù)的讀訪問請求消息,以使得所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備根據(jù)所述讀 訪問請求中的所述請求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取所述待訪問數(shù)據(jù)的第二物 理地址,并將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至所述貢獻(xiàn)節(jié)點, 使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理地址完成對所述 待訪問數(shù)據(jù)的讀取操作,并且將反饋消息傳輸至所述貢獻(xiàn)節(jié)點的云控制設(shè)備,使得所述貢 獻(xiàn)節(jié)點側(cè)的云控制設(shè)備將所述反饋消息發(fā)送至所述請求節(jié)點側(cè)的云控制設(shè)備,其中,所述 反饋消息包括所述貢獻(xiàn)節(jié)點的標(biāo)識信息和所述貢獻(xiàn)節(jié)點讀取的待訪問數(shù)據(jù)。
[0014] 根據(jù)第二種可能的實現(xiàn)方式,結(jié)合第一種可能的實現(xiàn)方式,所述方法還包括:
[0015] 所述云控制設(shè)備接收所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備發(fā)送的所述反饋消息;
[0016] 所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息查找所述第一映射關(guān)系,獲取所述 待訪問數(shù)據(jù)的第一物理地址;
[0017] 所述云控制設(shè)備將所述貢獻(xiàn)節(jié)點讀取的待訪問數(shù)據(jù)和所述待訪問數(shù)據(jù)的第一物 理地址發(fā)送至所述請求節(jié)點,使得所述請求節(jié)點完成對所述待訪問數(shù)據(jù)的讀取。
[0018] 根據(jù)第三種可能的實現(xiàn)方式,結(jié)合第一方面,所述云控制設(shè)備接收所述請求節(jié)點 發(fā)送的訪問存儲在貢獻(xiàn)節(jié)點提供給所述請求節(jié)點使用的內(nèi)存資源的待訪問數(shù)據(jù)的請求報 文,其中,所述請求報文包括寫訪問請求報文以及待寫入的數(shù)據(jù),所述寫訪問請求報文包括 所述請求節(jié)點的標(biāo)識信息和所述待寫入的數(shù)據(jù)的第一物理地址;
[0019] 相應(yīng)的,所述云控制設(shè)備根據(jù)所述待訪問數(shù)據(jù)的所述第一物理地址查詢預(yù)設(shè)的第 一映射關(guān)系,獲取所述貢獻(xiàn)節(jié)點的標(biāo)識信息;
[0020] 所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息向所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備 發(fā)送訪問所述待訪問數(shù)據(jù)的訪問請求消息,以使得所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備根據(jù)所述 訪問請求消息中的所述請求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取所述待訪問數(shù)據(jù)的第 二物理地址,并將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至所述貢獻(xiàn)節(jié) 點,使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理地址完成對所 述待訪問數(shù)據(jù)的訪問操作,包括:
[0021] 所述云控制設(shè)備根據(jù)所述待寫入的數(shù)據(jù)的第一物理地址查詢預(yù)設(shè)的第一映射關(guān) 系,獲取所述貢獻(xiàn)節(jié)點的標(biāo)識信息;
[0022] 所述云控制設(shè)備根據(jù)所述貢獻(xiàn)節(jié)點的標(biāo)識信息向所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備 發(fā)送所述寫訪問請求消息,其中,所述寫訪問請求消息包括所述寫訪問請求報文以及所述 待寫入的數(shù)據(jù),以使得所述貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備根據(jù)所述寫訪問請求消息中的所述請 求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取待寫入的數(shù)據(jù)第二物理地址,并將所述待寫入 的數(shù)據(jù)的第二物理地址和所述待寫入的數(shù)據(jù)傳輸至所述貢獻(xiàn)節(jié)點,使得所述貢獻(xiàn)節(jié)點將所 述待寫入的數(shù)據(jù)寫入所述待寫入的數(shù)據(jù)的第二物理地址中。
[0023] 第二方面,本發(fā)明實施例提供了一種云計算網(wǎng)絡(luò)中內(nèi)存訪問的方法,應(yīng)用于云計 算網(wǎng)絡(luò)中的貢獻(xiàn)節(jié)點側(cè)的云控制設(shè)備,所述方法包括:
[0024] 所述云控制設(shè)備接收請求節(jié)點側(cè)的云控制設(shè)備發(fā)送的待訪問數(shù)據(jù)的訪問請求消 息,其中,所述訪問請求消息包括所述請求節(jié)點的標(biāo)識信息;
[0025] 所述云控制設(shè)備根據(jù)所述請求節(jié)點的標(biāo)識信息查詢預(yù)設(shè)的第二映射關(guān)系,獲取所 述待訪問數(shù)據(jù)的第二物理地址,其中,所述待訪問數(shù)據(jù)的第二物理地址為所述待訪問數(shù)據(jù) 在所述貢獻(xiàn)節(jié)點的物理地址,所述第二映射關(guān)系包括所述貢獻(xiàn)節(jié)點提供的內(nèi)存資源在所述 貢獻(xiàn)節(jié)點的物理地址與所述請求節(jié)點的標(biāo)識信息之間的映射關(guān)系;
[0026] 所述云控制設(shè)備將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至 所述貢獻(xiàn)節(jié)點,以使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理 地址完成對待訪問數(shù)據(jù)的訪問操作。
[0027] 根據(jù)第一種可能的實現(xiàn)方式,結(jié)合第二方面,所述云控制設(shè)備接收請求節(jié)點側(cè)的 云控制設(shè)備發(fā)送的待訪問數(shù)據(jù)的訪問請求消息,其中,所述訪問請求消息包括讀訪問請求 消息;
[0028] 相應(yīng)的,所述云控制設(shè)備將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息 傳輸至所述貢獻(xiàn)節(jié)點,以使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第 二物理地址完成對待訪問數(shù)據(jù)的訪問操作,包括:
[0029] 所述云控制設(shè)備將所述待訪問數(shù)據(jù)的第二物理地址和所述讀訪問請求消息傳輸 至所述貢獻(xiàn)節(jié)點,以使得所述貢獻(xiàn)節(jié)點根據(jù)所述讀訪問請求消息在所述待訪問數(shù)據(jù)的第二 物理地址完成對所述待訪問數(shù)據(jù)的讀取操作,并將反饋消息傳輸至所述云控制設(shè)備,其中, 所述反饋消息包括所述貢獻(xiàn)節(jié)點的標(biāo)識信息和所述貢獻(xiàn)節(jié)點讀取的待訪問數(shù)據(jù)。
[0030] 根據(jù)第二種可能的實現(xiàn)方式,結(jié)合第一種可能的實現(xiàn)方式,所述方法還包括:
[0031] 所述云控制設(shè)備接受所述貢獻(xiàn)節(jié)點傳輸?shù)乃龇答佅ⅲ⒏鶕?jù)所述待訪問數(shù)據(jù) 的第二物理地址查詢所述第二映射關(guān)系,得到所述請求節(jié)點的標(biāo)識信息;
[0032] 所述云控制設(shè)備根據(jù)所述請求節(jié)點的標(biāo)識信息將所述反饋消息發(fā)送至所述請求 節(jié)點側(cè)的云控制設(shè)備,其中所述反饋消息包括所述貢獻(xiàn)節(jié)點的標(biāo)識信息和所述貢獻(xiàn)節(jié)點讀 取的待訪問數(shù)據(jù)。
[0033] 根據(jù)第三種可能的實現(xiàn)方式,結(jié)合第二方面,所述云控制設(shè)備接收請求節(jié)點側(cè)的 云控制設(shè)備發(fā)送的待訪問數(shù)據(jù)的訪問請求消息,其中,所述訪問請求消息包括寫訪問請求 報文和待寫入的數(shù)據(jù);
[0034] 相應(yīng)的,所述云控制設(shè)備根據(jù)所述請求節(jié)點的標(biāo)識信息查詢第二映射關(guān)系,獲取 所述待訪問數(shù)據(jù)的第二物理地址;
[0035] 所述云控制設(shè)備將所述待訪問數(shù)據(jù)的第二物理地址和所述訪問請求消息傳輸至 所述貢獻(xiàn)節(jié)點,以使得所述貢獻(xiàn)節(jié)點根據(jù)所述訪問請求消息在所述待訪問數(shù)據(jù)的第二物理 地址完成對待訪問數(shù)據(jù)的訪問操作,包括:
[0036] 所述云控制設(shè)備根據(jù)所述請求節(jié)點的標(biāo)識信息查詢預(yù)設(shè)的第二映射關(guān)系,獲取所 述待寫入數(shù)據(jù)的第二物