專利名稱:目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電信,具體地涉及用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法,且更具體地涉及在目錄服務(wù)器側(cè)強(qiáng)制執(zhí)行的LDAP互斥機(jī)制。本發(fā)明還涉及目錄數(shù)據(jù)庫、計(jì)算機(jī)程序、計(jì)算機(jī)程序產(chǎn)品、客戶端和通信系統(tǒng)。
背景技術(shù):
當(dāng)前,針對將要到來的3GPP版本9,正在對第3代合作伙伴項(xiàng)目(3GPP)用戶數(shù)據(jù)匯聚(UDC,3GPP術(shù)語)進(jìn)行標(biāo)準(zhǔn)化。提出了核心網(wǎng)(CN)IOO中的圖I所示的新的架構(gòu),其中,將不同網(wǎng)絡(luò)單元的訂戶服務(wù)相關(guān)數(shù)據(jù)和商務(wù)邏輯加以分離。這樣,將用戶數(shù)據(jù)倉庫102(UDR,3GPP術(shù)語)用作集中式數(shù)據(jù)庫,使得不同的應(yīng)用前端106至110可以訪問用戶數(shù)據(jù)(通過新的“Ud”參考點(diǎn)112)。需要最小化由于引入UDC而產(chǎn)生的對現(xiàn)有網(wǎng)絡(luò)的影響。
當(dāng)應(yīng)用UDC架構(gòu)時,諸如歸屬位置寄存器(HLR)/歸屬訂戶服務(wù)器(HSS)、認(rèn)證中心(AuC)、應(yīng)用服務(wù)器、供應(yīng)(provisioning)系統(tǒng)等等之類的功能實(shí)體保持應(yīng)用邏輯,但是他們不持久地本地存儲用戶數(shù)據(jù)。在UDC架構(gòu)中,將這些無數(shù)據(jù)功能實(shí)體統(tǒng)稱為應(yīng)用前端(FE) 106 至 110?,F(xiàn)在已同意(階段3活動正在進(jìn)行中)輕量級目錄訪問協(xié)議(LDAP,互聯(lián)網(wǎng)工程任務(wù)組(IETF)標(biāo)準(zhǔn))作為要在針對CRUD(創(chuàng)建、讀取、更新、刪除)操作的Ud接口中使用的數(shù)據(jù)訪問協(xié)議。根據(jù)UDC架構(gòu)原則,每個應(yīng)用-FE可以在任何時間管理任何訂戶相關(guān)的請求。且對于很多應(yīng)用,可以并發(fā)地(即并行地)針對相同訂戶管理多于ー個應(yīng)用相關(guān)的過程(即,操作)。因此,可以存在以下情況兩個(或更多)不同的應(yīng)用-FE實(shí)例正在管理針對嚴(yán)格相同的數(shù)據(jù)(即,在UDR中管理的嚴(yán)格相同的訂戶目錄條目/屬性)的兩個(或更多)不同的應(yīng)用相關(guān)請求。例如,ー個3G移動訂戶正在歸屬網(wǎng)絡(luò)上移動(因此,在核心網(wǎng)內(nèi)部發(fā)出‘‘位置更新”過程,以更新訂戶位置),且同時相同的訂戶正在調(diào)用“訂戶過程”以改變針對(之前激活的)“無應(yīng)答時的呼叫轉(zhuǎn)移”補(bǔ)充服務(wù)的重定向號碼。在前述示例中,兩個不同的HLR-FE實(shí)例(管理發(fā)出的“移動應(yīng)用部分(MAP,SS7棧)位置更新”過程的實(shí)例和管理調(diào)用的訂戶過程的實(shí)例)正在同吋/接近同時嘗試訪問并修改在UDR中的嚴(yán)格相同的數(shù)據(jù)。存在很多其他的可以發(fā)生這種類型情況的網(wǎng)絡(luò)使用情況。根據(jù)第一示例,供應(yīng)-FE實(shí)體可以嘗試更新訂戶簡檔(作為從客戶管理系統(tǒng)(CAS)接收到供應(yīng)命令的結(jié)果),且同時應(yīng)用-FE正在嘗試更新嚴(yán)格相同的數(shù)據(jù)(或某些共同的部分)。根據(jù)第二示例,來自兩個不同應(yīng)用的兩個不同的FE實(shí)例可以嘗試修改相同訂戶簡檔的某些共同(對于兩個應(yīng)用而言)的數(shù)據(jù)。注意到在前述示例列表中的第一使用情況(UC)(調(diào)用供應(yīng)-FE實(shí)例)可能是發(fā)生的最一般的UC (因?yàn)槠渑c以下過程無關(guān)應(yīng)用允許或不允許從兩個或更多不同F(xiàn)E實(shí)例并行處理兩個或更多與嚴(yán)格相同的訂戶相關(guān)的過程)。在所有這些類型的情況下,如果在UDR中不能保障某種互斥機(jī)制,則“數(shù)據(jù)一致性”問題可能發(fā)生,如圖2的序列圖更好地示出(將其作為圖形化示例) 具體地,這種有問題的情況可能源于兩個客戶端(如HLR-FE 206和供應(yīng)-FE 208)都請求修改目錄數(shù)據(jù)庫(如UDR 202)處的數(shù)據(jù)條目。圖2的示例序列圖的步驟如下所述在第一步驟216中,HLR-FE 206從訂戶具體接收MAP位置更新。在另ー步驟218中,HLR-FE 206請求讀取與該訂戶相關(guān)聯(lián)的訂戶簡檔,且HLR-FE 206向UDR 202發(fā)送相應(yīng)的LDAP搜索請求。因此,UDR 202向進(jìn)行請求的HLR-FE 206發(fā)送相應(yīng)的簡檔數(shù)據(jù)。于是,在另ー步驟220中,HLR-FE 206執(zhí)行應(yīng)用相關(guān)邏輯,并可以具體地處理接收到的該訂戶的簡檔數(shù)據(jù)。在下ー步驟222中,供應(yīng)-FE 208從CAS具體接收供應(yīng)命令。在下ー步驟224中,供應(yīng)-FE 208請求讀取與訂戶相關(guān)聯(lián)的訂戶簡檔,井向UDR 202發(fā)送相應(yīng)的LDAP搜索請 求。因此,UDR 202向進(jìn)行請求的供應(yīng)-FE 206發(fā)送相應(yīng)的簡檔數(shù)據(jù)。于是,在另ー步驟226中,供應(yīng)-FE 206執(zhí)行應(yīng)用相關(guān)邏輯,并可以具體地處理接收到的該訂戶的簡檔數(shù)據(jù)。在步驟228中,供應(yīng)-FE 208通過發(fā)送相應(yīng)的LDAP修改請求,請求更新在UDR 202處存儲的訂戶簡檔。因此,M)R 202更新該訂戶簡檔,井向供應(yīng)-FE 208發(fā)送與更新過程相關(guān)的信息,具體地,已更新的訂戶簡檔。在步驟230中,HLR-FE 206通過發(fā)送相應(yīng)的LDAP修改請求,也請求更新在UDR202處存儲的訂戶簡檔。因此,UDR 202也更新該訂戶簡檔,井向供應(yīng)-FE 208發(fā)送與更新過程相關(guān)的信息,具體地,已更新的訂戶簡檔。從而,在圖2的步驟228中,(由供應(yīng)-FE 208)更新訂戶簡檔,使得由HLR-FE實(shí)例206管理的(在步驟216中讀取的)簡檔從該時刻起變?yōu)椤袄稀钡暮啓n。由HLR-FE 206在步驟230中發(fā)出的最終更新操作并未考慮到在步驟228中所引入的改變,因此存在數(shù)據(jù)一致性風(fēng)險(例如,在步驟228中引入的某些屬性值可能在步驟230中被覆蓋;備選地或附加地,在步驟228和230中,可以更新不同的數(shù)據(jù)(但是依然相關(guān)),使得可以“破壞”應(yīng)用級別上的數(shù)據(jù)一致性)。為了避免這些情況,當(dāng)前已針對LDAP提出了一些解決方案,然而它們都具有同樣的問題,因?yàn)樗鼈內(nèi)家笤贚DAP客戶端中的用于幫助LDAP目錄服務(wù)器(即,UDR)來檢測更新沖突的特殊行為(以便能夠觸發(fā)與這些解決方案中每個解決方案相關(guān)聯(lián)的互斥算法)。在所有這些解決方案中,LDAP服務(wù)器(即,必須確保其正在存儲的數(shù)據(jù)的數(shù)據(jù)一致性屬性的服務(wù)器)不是決定何時必須觸發(fā)互斥機(jī)制的實(shí)體;最終,應(yīng)用-FE才是決定何時觸發(fā)互斥機(jī)制的實(shí)體(還提供所需數(shù)據(jù),以執(zhí)行相關(guān)聯(lián)的互斥算法)。缺陷可以是這些解決方案僅對干“帶圍墻的花園”環(huán)境(即LDAP目錄服務(wù)器和LDAP客戶端二者都屬于相同運(yùn)營商域的情況)有效,因?yàn)椤敖鉀Q方案所有者”要求對LDAP客戶端行為的嚴(yán)格控制。另ー缺陷可以是這些解決方案是容易出錯的解決方案,因?yàn)樗鼈円蕾囉诿總€單體LDAP客戶端的正確行為。又ー缺陷可以是在部署的分層架構(gòu)中集成應(yīng)用-FE可能是困難的、昂貴的、且消耗時間的,因?yàn)檫@些FE中包括的LDAP客戶端必須適于遵守所需的正確行為。此外,這些解決方案可以伴隨著未解決的供貨商可互操作性問題,以及在嘗試將部署的UDR與3PP應(yīng)用-FE集成時所要解決的其他障礙。
發(fā)明內(nèi)容
本發(fā)明的目標(biāo)可以是提供用于管理在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法、目錄數(shù)據(jù)庫、計(jì)算機(jī)程序、計(jì)算機(jī)程序產(chǎn)品、客戶端和通信系統(tǒng),它們可以允許在目錄數(shù)據(jù)庫處的數(shù)據(jù)一致性,特別是在一個客戶端或不同客戶端對目錄數(shù)據(jù)庫進(jìn)行多個次修改訪問的情況下。為了實(shí)現(xiàn)上面定義的目標(biāo)目的,提供了根據(jù)獨(dú)立權(quán)利要求的用于管理在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法、目錄數(shù)據(jù)庫、計(jì)算機(jī)程序、計(jì)算機(jī)程序產(chǎn)品、客戶端和通信系統(tǒng)。根據(jù)本發(fā)明的示例方面,提供一種用于管理在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。具體地在目錄數(shù)據(jù)庫處執(zhí)行的所述方法包括以下步驟在第ー步驟中,將所述數(shù)據(jù)條目與表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的所述數(shù)據(jù)條目的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)。在另ー步驟中,從客戶端接收修改所述數(shù)據(jù)條目的請求。在又ー步驟中,與所述請求相關(guān)聯(lián)地從所述客戶端接收表示所述數(shù)據(jù)條目在所述 目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息。所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài)。在又ー步驟中,如果關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的所述第一當(dāng)前存儲狀態(tài)和從所述客戶端接收的所述第二當(dāng)前存儲狀態(tài)確定所述第一狀態(tài)信息和所述第二狀態(tài)信息匹配,則根據(jù)所述請求來修改所述數(shù)據(jù)條目。根據(jù)本發(fā)明的另ー示例方面,一種目錄數(shù)據(jù)庫適于執(zhí)行上述用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的步驟。根據(jù)本發(fā)明的另ー示例方面,一種要由目錄數(shù)據(jù)庫的處理單元執(zhí)行的計(jì)算機(jī)程序包括適于執(zhí)行上述用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的步驟的代碼。根據(jù)本發(fā)明的另一方面,提供ー種用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。具體地在客戶端處執(zhí)行的所述方法包括以下步驟。接收表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息?;谒龅谝粻顟B(tài)信息,將表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息與修改所述數(shù)據(jù)條目的請求相關(guān)聯(lián)。所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài)。此外,發(fā)送與所述第二狀態(tài)信息相關(guān)聯(lián)地修改所述數(shù)據(jù)條目的請求。根據(jù)本發(fā)明的另ー示例方法,一種客戶端適于執(zhí)行上段中描述的用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的步驟。根據(jù)本發(fā)明的另ー示例方面,ー種通信系統(tǒng)包括均如前所述的目錄數(shù)據(jù)庫和至少一個客戶端。在從屬權(quán)利要求中定義了以下各項(xiàng)的其他實(shí)施例用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法、目錄數(shù)據(jù)庫、計(jì)算機(jī)程序、計(jì)算機(jī)程序產(chǎn)品、客戶端以及通信系統(tǒng)。
下面將參考示例來更詳細(xì)地描述本發(fā)明的實(shí)施例,但是本發(fā)明的范圍不局限于這些示例。圖I是示出了采用3GPP用戶數(shù)據(jù)匯聚的通信架構(gòu)的框圖。圖2是示出了在HLR前端實(shí)體、供應(yīng)前端實(shí)體和用戶數(shù)據(jù)倉庫之間的通信的流程圖。圖3是示出了根據(jù)本發(fā)明的示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的流程圖。圖4是示出了根據(jù)本發(fā)明的另ー示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的流程圖。圖5是示出了根據(jù)本發(fā)明的另ー示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的流程圖。 圖6是示出了根據(jù)本發(fā)明的另ー示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的流程圖。圖7示出了框圖,該框圖示出了根據(jù)本發(fā)明的示例實(shí)施例的目錄數(shù)據(jù)庫的構(gòu)成。圖8示出了框圖,該框圖示出了根據(jù)本發(fā)明的示例實(shí)施例的客戶端的構(gòu)成。
具體實(shí)施例方式附圖中的說明是示意性的。在不同附圖中,相似或相同的単元具有相同的附圖標(biāo)記。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。ー種用于管理在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)的方法可以包括具體地在目錄數(shù)據(jù)庫處執(zhí)行的以下步驟將所述數(shù)據(jù)條目與表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián),從客戶端接收修改所述數(shù)據(jù)條目的請求,與所述請求相關(guān)聯(lián)地從所述客戶端接收表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息,所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài),以及如果關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的所述第一當(dāng)前存儲狀態(tài)和從所述客戶端接收的所述第二當(dāng)前存儲狀態(tài)確定所述第一狀態(tài)信息和所述第二狀態(tài)信息匹配,則根據(jù)所述請求來修改所述數(shù)據(jù)條目。該方法可以幫助目錄數(shù)據(jù)庫針對并發(fā)數(shù)據(jù)訪問場景來強(qiáng)制執(zhí)行數(shù)據(jù)完整性。為了更好的說明,下面描述示例和解釋-目錄數(shù)據(jù)庫的示例可以是UDR或LDAP服務(wù)器。-可以將“目錄數(shù)據(jù)庫”理解為特殊倉庫技術(shù),其以邏輯和分級的方式對管理的數(shù)據(jù)對象(包括其自身的(關(guān)聯(lián)的)屬性實(shí)例)進(jìn)行組織。3GPP UDC版本9將UDR功能單元定義為對于所有應(yīng)用前端(FE)實(shí)例都共同的“目錄數(shù)據(jù)庫”。-數(shù)據(jù)條目的示例可以是訂戶簡檔。-注意到在ー些示例目錄數(shù)據(jù)庫中,可以將數(shù)據(jù)條目表示為目錄條目。-注意到可以將單一訂戶簡檔定義和管理(在目錄DB中)為單一“目錄條目”或目錄條目的集合(由于目錄DB不對“目錄條目”是什么強(qiáng)加任何語義限制)。
-表示在目錄數(shù)據(jù)庫處的數(shù)據(jù)條目(例如,特定的“目錄條目”)的當(dāng)前存儲狀態(tài)的信息的示例是entryDigest(條目摘要)值。-EntryDigest可以是以單一意思方式來表示在該目錄條目中包含的屬性實(shí)例中存儲的當(dāng)前值的值(或值的集合)。例如,可以從在涉及的目錄條目中所有包含的屬性值中獲得(與每個目錄條目相關(guān)聯(lián)的)摘要值。-修改請求的示例可以是LDAP修改請求。-匹配的示例可以是如果確定第一和第二當(dāng)前狀態(tài)信息相同(這是典型情況),其他條件可以用于匹配。例如,第一當(dāng)前狀態(tài)信息可以表示與第二當(dāng)前狀態(tài)信息相匹配的間隔,即,第二當(dāng)前狀態(tài)信息被確定落入所述間隔中。然而,由于實(shí)現(xiàn)的容易性以及安全性原因,“相等匹配”可以是優(yōu)選的,因?yàn)闄z查從執(zhí)行的上一次讀操作開始是否已由任何其他客戶端更新了目錄條目是非常合適的條件。具體地在圖5的檢查框(checkbox) 562中示出了匹配檢查的示例,即,“在(條目“,的)屬性“ entryDigest”中存儲的當(dāng)前值是否等于在斷言過濾器中接收到的〈值〉”。如果將其評估為“是”,即確定匹配,則修改數(shù)據(jù)條目,即, “處理接收到的LDAP修改請求操作”,具體地如圖5中框564所示。如果將其評估為“否”,確定不匹配,則拒絕接收到的修改請求操作,具體地如圖5中框576所示(還參見下面呈現(xiàn)的權(quán)利要求3以及具體地參見圖5的描述)。具體地,作為表示數(shù)據(jù)條目的當(dāng)前存儲狀態(tài)的信息的示例的“entryDigest”可以是與數(shù)據(jù)條目(具體地,數(shù)據(jù)條目的對象)相關(guān)聯(lián)的參數(shù)(具體地,操作屬性)。具體地,可以由目錄數(shù)據(jù)庫內(nèi)部管理entryDigest。例如,目錄數(shù)據(jù)庫可以確定要與數(shù)據(jù)條目關(guān)聯(lián)存儲的entryDigest的值。具體地,可以在數(shù)據(jù)條目的創(chuàng)建時將entryDigest分配給數(shù)據(jù)條目,或在數(shù)據(jù)條目的配置時(例如在修改數(shù)據(jù)條目的值時)可以分配entryDigest。具體地,可以使用基于數(shù)據(jù)條目的內(nèi)容(具體地基干與數(shù)據(jù)條目相關(guān)聯(lián)的另ー參數(shù)(具體地,屬性))向EntryDigest (參數(shù))分配單ー意思值的函數(shù),來產(chǎn)生entryDigest值。具體地,可以在entryDigest的產(chǎn)生過程中排除或不考慮entryDigest的值。具體地,這種函數(shù)可以是散列函數(shù),且entryDigest的值可以是數(shù)(具體地,整數(shù))。接下來,將描述用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的示例實(shí)施例。然而,這些實(shí)施例也適用于如在“發(fā)明內(nèi)容”部分和“具體實(shí)施方式
”部分中描述的相應(yīng)目錄數(shù)據(jù)庫、相應(yīng)通信系統(tǒng)、相應(yīng)計(jì)算機(jī)程序、相應(yīng)計(jì)算機(jī)程序產(chǎn)品、相應(yīng)客戶端方法、以及相應(yīng)客戶端。該方法還可以包括以下步驟獲得表示在所述目錄數(shù)據(jù)庫處的修改后的數(shù)據(jù)條目的修改后的當(dāng)前存儲狀態(tài)的第三狀態(tài)信息,以及將所述修改后的數(shù)據(jù)條目與所述第三狀態(tài)信息相關(guān)聯(lián)。示例可以如下所述在根據(jù)修改請求修改了數(shù)據(jù)條目之后,第三狀態(tài)信息取代第一狀態(tài)信息。該“修改后的當(dāng)前存儲狀態(tài)”表示在應(yīng)用所請求的更新之后的數(shù)據(jù)條目的當(dāng)前存儲狀態(tài)。該方法還可以包括以下步驟從所述客戶端或另ー客戶端接收修改在所述目錄數(shù)據(jù)庫處的所述數(shù)據(jù)條目的另ー請求,與所述另ー請求相關(guān)聯(lián)地從所述客戶端或所述另ー客戶端接收表示所述數(shù)據(jù)條目的在所述目錄數(shù)據(jù)庫處的第四當(dāng)前存儲狀態(tài)的第四狀態(tài)信息,所述第四當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目可用于所述客戶端或所述另ー客戶端的最新可用當(dāng)前存儲狀態(tài),關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的修改后的當(dāng)前存儲狀態(tài)和從所述客戶端接收的所述第四當(dāng)前存儲狀態(tài)確定所述修改后的狀態(tài)信息與所述第四狀態(tài)信息不匹配,以及通過不修改修改后的數(shù)據(jù)條目來拒絕另一修改請求。該方法還可以包括以下步驟驗(yàn)證所述客戶端和/或所述另ー客戶端是否在所述目錄數(shù)據(jù)庫處針對應(yīng)用以下一項(xiàng)或多項(xiàng)進(jìn)行了注冊匹配確定步驟、修改步驟和拒絕步驟。示例可以是類似干“要在LDAP客戶端“c”上應(yīng)用互斥(mutex)機(jī)制? ”的檢查,具體地如圖5中檢查框556所示。目錄數(shù)據(jù)庫可以接收客戶端和/或另ー客戶端的客戶端識別數(shù)據(jù),以執(zhí)行驗(yàn)證步驟,例如,以確定客戶端“c”是否真的是“c”或客戶端“c”是否屬于被授權(quán)進(jìn)行這些操作的客戶端的組。具體地,還可以將該互斥機(jī)制表示為互斥控制(Ctrl)機(jī)制。該方法還可以包括以下步驟驗(yàn)證所述數(shù)據(jù)條目是否在所述目錄數(shù)據(jù)庫處針對應(yīng)用以下一項(xiàng)或多項(xiàng)進(jìn)行了注冊匹配確定步驟、修改步驟和拒絕步驟。
該數(shù)據(jù)條目可以與標(biāo)識符相關(guān)聯(lián),該標(biāo)識符指示必須在實(shí)際處理或進(jìn)行至確定匹配的步驟之前執(zhí)行該驗(yàn)證,以及取決于該驗(yàn)證檢查的結(jié)果,目錄數(shù)據(jù)庫進(jìn)行對數(shù)據(jù)條目的修改或?qū)φ埱蟮木芙^。這種標(biāo)識符的示例可以僅僅是表示與數(shù)據(jù)條目相關(guān)聯(lián)的任何當(dāng)前存儲狀態(tài)的任何狀態(tài)信息的存在性,備選地,其可以是具有指示需要驗(yàn)證的預(yù)定義值(例如,永久性)的額外標(biāo)識符,例如,標(biāo)志(flag)。示例可以是類似干“在條目“e”上應(yīng)用互斥機(jī)制? ”的檢查,具體地如圖5中檢查框558所示。可以在數(shù)據(jù)條目創(chuàng)建時創(chuàng)建標(biāo)識符,并將其與數(shù)據(jù)條目相關(guān)聯(lián)。還可以在任何時刻(只要數(shù)據(jù)條目已經(jīng)存在)配置該標(biāo)識符,以指示是否應(yīng)用所述操作。該方法還可以包括以下步驟管理所述第一狀態(tài)信息和/或所述第三狀態(tài)信息,使得所述客戶端和所述另ー客戶端中的任何客戶端不能修改所述第一狀態(tài)信息和/或所述第二狀態(tài)信息。具體地,所述目錄數(shù)據(jù)庫可以確定是否“在條目“e”中執(zhí)行某種改變”,且可以相應(yīng)地更新條目“e”中的entryDigest值,并可以存儲更新后的值,如圖5的檢查框566和框568所示。該方法還可以包括以下步驟向所述客戶端和所述另ー客戶端分別發(fā)送在包括所述第一狀態(tài)信息、所述第二狀態(tài)信息、所述第三狀態(tài)信息和所述第四狀態(tài)信息在內(nèi)的組中的至少ー個狀態(tài)信息,所述客戶端和所述另ー客戶端分別被配置為處理接收到的至少ー個狀態(tài)信息,以與請求修改的所述請求和所述另ー請求分別相關(guān)聯(lián)地向所述目錄數(shù)據(jù)庫發(fā)送。例如,在圖6中的步驟684或690中,向作為另ー客戶端和客戶端的示例的HLR-FE和供應(yīng)-FE分別發(fā)送作為狀態(tài)信息的示例的條目摘要信息。在該方法中,可以根據(jù)LDAP來執(zhí)行涉及在所述目錄數(shù)據(jù)庫和所述客戶端和/或所述另ー客戶端之間的接收和/或發(fā)送的至少ー個步驟。在該方法中,所述修改請求和/或所述另一修改請求可以包括LDAP斷言控制,所述LDAP斷言控制分別包括所述第二狀態(tài)信息和所述第四狀態(tài)信息。在本申請的上下文中,術(shù)語“LDAP斷言控制”可以與術(shù)語“LDAP斷言擴(kuò)展控制”作為同義詞來使用。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的目錄數(shù)據(jù)庫。所述目錄數(shù)據(jù)庫可以適于執(zhí)行上述用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。具體地,所述目錄數(shù)據(jù)庫可以適于將所述數(shù)據(jù)條目與表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)。另外,所述目錄數(shù)據(jù)庫可以適于從客戶端接收修改所述數(shù)據(jù)條目的請求,以及與所述請求相關(guān)聯(lián)地從所述客戶端接收表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息。所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài)。另外,所述目錄數(shù)據(jù)庫可以適于如果關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的所述第一當(dāng)前存儲狀態(tài)和從所述客戶端接收的所述第二當(dāng)前存儲狀態(tài)可以確定所述第一狀態(tài)信息和所述第二狀態(tài)信息匹配,則根據(jù)所述請求來修改所述數(shù)據(jù)條目。本發(fā)明還涉及包括軟件代碼的部分在內(nèi)的計(jì)算機(jī)程序,以在目錄數(shù)據(jù)庫處操作時實(shí)現(xiàn)上述方法。可以將所述計(jì)算機(jī)程序存儲在計(jì)算機(jī)可讀介質(zhì)上。計(jì)算機(jī)可讀介質(zhì)可以是目錄數(shù)據(jù)庫中的或位于外部的永久性或可重寫存儲器。還可以經(jīng)由例如電纜或無線鏈路將所述計(jì)算機(jī)程序作為信號序列傳輸至目錄數(shù)據(jù)庫。要由目錄數(shù)據(jù)庫的處理單元執(zhí)行的計(jì)算機(jī)程序可以包括適于執(zhí)行上述用于在目 錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法的步驟的代碼。計(jì)算機(jī)程序產(chǎn)品可以包括如上所述的計(jì)算機(jī)程序。 下面,將用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法描述為具體地由客戶端來執(zhí)行。所述方法可以包括以下步驟接收表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息,基于所述第一狀態(tài)信息,將表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息與修改所述數(shù)據(jù)條目的請求相關(guān)聯(lián),所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài),以及發(fā)送與所述第二狀態(tài)信息相關(guān)聯(lián)地修改所述數(shù)據(jù)條目的請求。接下來,將解釋在之前段落中描述的方法的示例實(shí)施例。然而,這些實(shí)施例也適用于如在“發(fā)明內(nèi)容”部分和“具體實(shí)施方式
”部分中描述的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理 的相應(yīng)方法、相應(yīng)目錄數(shù)據(jù)庫、相應(yīng)計(jì)算機(jī)程序、相應(yīng)計(jì)算機(jī)程序產(chǎn)品、相應(yīng)客戶端、以及相應(yīng)通信系統(tǒng)。該方法可以包括其他步驟在所述客戶端的存儲單元中存儲所述第一狀態(tài)信息,以及從所述存儲単元中檢索所述第一狀態(tài)信息,以及將所述第二狀態(tài)信息基于所述第一狀態(tài)ィ目息??梢愿鶕?jù)輕量級目錄訪問協(xié)議來執(zhí)行涉及在所述目錄數(shù)據(jù)庫和所述客戶端之間的接收和/或發(fā)送的至少ー個步驟。因此,修改請求可以包括輕量級目錄訪問協(xié)議斷言控制,所述輕量級目錄訪問協(xié)議斷言控制包括所述第二狀態(tài)信息。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的客戶端。所述客戶端可以適于執(zhí)行如上面針對客戶端所述的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。具體地,所述客戶端可以適于接收表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息,基于所述第一狀態(tài)信息,將表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息與修改所述數(shù)據(jù)條目的請求相關(guān)聯(lián),所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端可用的最新可用當(dāng)前存儲狀態(tài),以及發(fā)送與所述第二狀態(tài)信息相關(guān)聯(lián)地修改所述數(shù)據(jù)條目的請求。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的通信系統(tǒng)。通信系統(tǒng)可以包括根據(jù)如上所述的本發(fā)明的示例實(shí)施例的目錄數(shù)據(jù)庫和也如上所述的至少ー個客戶端。此外,所述通信系統(tǒng)可以包括請求修改在所述目錄數(shù)據(jù)庫處的所述數(shù)據(jù)條目的另ー客戶端。具體地,所述客戶端和/或所述另ー客戶端可以與修改所述數(shù)據(jù)條目的(另一)請求相關(guān)聯(lián)地發(fā)送相應(yīng)的狀態(tài)信息。具體地,所述通信系統(tǒng)中的通信可以基于LDAP。可以在用戶數(shù)據(jù)合并(UDC)解決方案中的中央用戶數(shù)據(jù)庫(CUDB)中實(shí)現(xiàn)本發(fā)明,存儲針對應(yīng)用(例如,HLR、AuC、HSS等等)的與用戶應(yīng)用相關(guān)的數(shù)據(jù)。CUDB可以扮演商務(wù)UDC解決方案中的(3GPP標(biāo)準(zhǔn))UDR角色。參見圖3和4,將分別描述根據(jù)本發(fā)明的第一和第二示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。圖3示出了在目錄數(shù)據(jù)庫302、客戶端306、以及另一客戶端308之間傳輸消息以及在相應(yīng)設(shè)備處執(zhí)行操作的第一實(shí)施例。目錄數(shù)據(jù)庫302、客戶端306和另ー客戶端308形成了通信系統(tǒng)314。
在目錄數(shù)據(jù)庫302處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)。具體地,之前已由目錄數(shù)據(jù)庫302產(chǎn)生第一狀態(tài)信息。在其他步驟332和334中,目錄數(shù)據(jù)庫302向客戶端306和另ー客戶端308分別發(fā)送數(shù)據(jù)條目的第一狀態(tài)信息??蛻舳?06和另ー客戶端308可以在客戶端306和另ー客戶端308各自的存儲單元中分別存儲接收到的第一狀態(tài)信息。接下來,在步驟336中,客戶端306發(fā)送包括第二狀態(tài)信息在內(nèi)的修改數(shù)據(jù)條目的請求。第二狀態(tài)信息是如下基于第一狀態(tài)信息的客戶端308從存儲単元中檢索第一狀態(tài)信息,并基于檢索到的第一狀態(tài)信息來獲得第二狀態(tài)信息。第二狀態(tài)信息表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫302處的第二當(dāng)前存儲狀態(tài),其中,第二當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目對于客戶端306可用的最新可用當(dāng)前存儲狀態(tài)。在該實(shí)施例中,第一和第二狀態(tài)信息可以相同。在下ー步驟338中,目錄數(shù)據(jù)庫302執(zhí)行對在目錄數(shù)據(jù)庫302處的第一狀態(tài)信息和來自(具體地為接收)客戶端306的接收到的第二狀態(tài)信息的匹配的確定。根據(jù)該實(shí)施例,第二狀態(tài)信息等于第一狀態(tài)信息,匹配確定是肯定的。具體地,可以將該確定評估為“是”。然后目錄數(shù)據(jù)庫302執(zhí)行對在目錄數(shù)據(jù)庫302處的數(shù)據(jù)條目的修改,且具體地更新在數(shù)據(jù)條目中存儲的相應(yīng)數(shù)據(jù),例如值。這導(dǎo)致在目錄數(shù)據(jù)庫302處的修改后的數(shù)據(jù)條目。此外,目錄數(shù)據(jù)庫302執(zhí)行對與數(shù)據(jù)條目相關(guān)聯(lián)的第一狀態(tài)信息的修改,導(dǎo)致與修改后的數(shù)據(jù)條目相關(guān)聯(lián)的第三狀態(tài)信息。接下來,在步驟342中,另ー客戶端308向目錄數(shù)據(jù)庫302發(fā)送修改數(shù)據(jù)條目的另ー請求。另ー請求包括第四狀態(tài)信息。第四狀態(tài)信息是如下基于第一狀態(tài)信息的另ー客戶端308從其存儲單元中檢索第一狀態(tài)信息,并基于檢索到的第一狀態(tài)信息獲得第四狀態(tài)信息。第四狀態(tài)信息表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫302處的第四當(dāng)前存儲狀態(tài),其中,第四當(dāng)前存儲裝置指示數(shù)據(jù)條目對于另一客戶端308可用的最新可用當(dāng)前存儲狀態(tài)。在本實(shí)施例中,第一和第四狀態(tài)信息也可以相同。在下ー步驟344中,目錄數(shù)據(jù)庫302執(zhí)行對在目錄數(shù)據(jù)庫302處的第三狀態(tài)信息和來自(具體地為接收)另ー客戶端308的接收到的第四狀態(tài)信息的不匹配的確定。根據(jù)該實(shí)施例,第四狀態(tài)信息等于已經(jīng)過期的、且同時已被第三狀態(tài)信息所替換的第一狀態(tài)信息,匹配確定不是肯定的。具體地,可以將該確定評估為“否”。在下ー步驟346中,則目錄數(shù)據(jù)庫302拒絕從另一客戶端308接收的另一修改請求。在步驟348和350中,目錄數(shù)據(jù)庫302向客戶端306和另ー客戶端308分別發(fā)送修改后的數(shù)據(jù)條目的第三狀態(tài)信息。然后客戶端306和另ー客戶端308可以在其存儲單元中存儲接收到的第三狀態(tài)信息。圖4示出了在目錄數(shù)據(jù)庫402、客戶端406、以及另一客戶端408之間傳輸消息以及在相應(yīng)設(shè)備處執(zhí)行操作的第二實(shí)施例。目錄數(shù)據(jù)庫402、客戶端406和另ー客戶端408形成了通信系統(tǒng)414。在第一步驟430中,目錄數(shù)據(jù)庫402將目錄數(shù)據(jù)庫402處的數(shù)據(jù)條目與表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫402處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)。具體地,之前已由 目錄數(shù)據(jù)庫402產(chǎn)生第一狀態(tài)信息。在下ー步驟431中,客戶端406向目錄數(shù)據(jù)庫402發(fā)送讀取數(shù)據(jù)條目的請求。在步驟432中,目錄數(shù)據(jù)庫402向客戶端406發(fā)送包括與數(shù)據(jù)條目相關(guān)聯(lián)的第一狀態(tài)信息和具體地?cái)?shù)據(jù)條目的數(shù)據(jù)在內(nèi)的讀取響應(yīng)消息??蛻舳?06可以在客戶端406的存儲單元中存儲接收到的第一狀態(tài)信息。在下ー步驟433中,另ー客戶端408向目錄數(shù)據(jù)庫402發(fā)送讀取數(shù)據(jù)條目的請求。在步驟434中,目錄數(shù)據(jù)庫402向另ー客戶端406發(fā)送包括數(shù)據(jù)條目的第一狀態(tài)信息和具體地?cái)?shù)據(jù)條目的數(shù)據(jù)在內(nèi)的讀取響應(yīng)消息。另ー客戶端406也可以在另一客戶端406的存儲單元中存儲接收到的第一狀態(tài)信息。接下來,在步驟436中,客戶端306發(fā)送包括第二狀態(tài)信息在內(nèi)的修改數(shù)據(jù)條目的請求。如上面參考圖3所述的,第二狀態(tài)信息基于第一狀態(tài)信息,并標(biāo)識數(shù)據(jù)條目在目錄數(shù)據(jù)庫402處的第二當(dāng)前存儲狀態(tài),其中,第二當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目對于客戶端406可用的最新可用當(dāng)前存儲狀態(tài)。在該實(shí)施例中,第一和第二狀態(tài)信息可以包括不同的格式,這可以是由于將第二狀態(tài)信息基于第一狀態(tài)信息的過程所產(chǎn)生的。在下ー步驟438中,目錄數(shù)據(jù)庫402執(zhí)行對在目錄數(shù)據(jù)庫402處的第一狀態(tài)信息和來自(具體地為接收)客戶端406的接收到的第二狀態(tài)信息的匹配的確定。根據(jù)該實(shí)施例,第二狀態(tài)信息等于第一狀態(tài)信息,匹配確定是肯定的。具體地,如以參考圖3所聲明的,這對應(yīng)于導(dǎo)致“是”的確定。在下ー步驟440中,則目錄數(shù)據(jù)庫402執(zhí)行對在目錄數(shù)據(jù)庫402處的數(shù)據(jù)條目的修改,且具體地更新在數(shù)據(jù)條目中存儲的相應(yīng)數(shù)據(jù),例如值。這導(dǎo)致在目錄數(shù)據(jù)庫402處的修改后的數(shù)據(jù)條目。此外,目錄數(shù)據(jù)庫402執(zhí)行對與數(shù)據(jù)條目相關(guān)聯(lián)的第一狀態(tài)信息的修改,導(dǎo)致與修改后的數(shù)據(jù)條目相關(guān)聯(lián)的第三狀態(tài)信息。在另ー步驟441中,則目錄數(shù)據(jù)庫402向客戶端302發(fā)送修改響應(yīng),且具體地使用序列“結(jié)果0K”來肯定應(yīng)答對數(shù)據(jù)條目的已執(zhí)行的修改。接下來,在步驟442中,另ー客戶端408發(fā)送包括第四狀態(tài)信息在內(nèi)的修改數(shù)據(jù)條目的另ー請求。如參考圖3的步驟342所解釋的,第四狀態(tài)信息是基于第一狀態(tài)信息的,且表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫402處的第四當(dāng)前存儲狀態(tài),其中,第四當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目對于另一客戶端408可用的最新可用當(dāng)前存儲狀態(tài)。在本實(shí)施例中,第一和第四狀態(tài)信息可以包括不同的格式,這可以是由于將第二狀態(tài)信息基于第一狀態(tài)信息的過程所產(chǎn)生的。在下ー步驟444中,目錄數(shù)據(jù)庫402執(zhí)行對在目錄數(shù)據(jù)庫402處的第三狀態(tài)信息和來自(具體地為接收)另ー客戶端408的接收到的第四狀態(tài)信息的不匹配的確定。根據(jù)該實(shí)施例,第四狀態(tài)信息等于已經(jīng)過期的、且同時已被第三狀態(tài)信息所替換的第一狀態(tài)信息,匹配確定不是肯定的。具體地,評估確定結(jié)果為“否”。在步驟446中,目錄數(shù)據(jù)庫402相應(yīng)地拒絕另一修改請求。因此,在步驟452中,目錄數(shù)據(jù)庫402向另ー客戶端408發(fā)送包括內(nèi)容“拒絕結(jié)果”在內(nèi)的修改響應(yīng),以向另ー客戶端408指示匹配確定的結(jié)果不是肯定的,且具體地拒絕對另ー修改請求的處理。在第二實(shí)施例中(圖4),如客戶端406、408所請求的,目錄服務(wù)器402僅向客戶端406,408發(fā)送數(shù)據(jù)(這是來自“客戶端” 406和“另ー客戶端” 408的第一讀取請求的原因, 因此他們可以獲得當(dāng)前的“第I存儲狀態(tài)”,具體地如圖4的步驟431至434所說明的)。在圖3中,在第一實(shí)施例中(取代實(shí)施例2(圖4)的具有請求-響應(yīng)的拉回機(jī)制),使用推送機(jī)制,例如目錄數(shù)據(jù)庫302向客戶端306、308推送數(shù)據(jù)條目的第I狀態(tài)信息,類似于第3狀態(tài)信息,具體地如步驟332、334、348、350所說明的。要注意,數(shù)據(jù)條目的狀態(tài)信息優(yōu)選地可與客戶端306、308、406、408處的數(shù)據(jù)條目相關(guān),以使得客戶端306、308、406、408能夠?qū)顟B(tài)信息與以下信息相關(guān)聯(lián)與在包括狀態(tài)信息在內(nèi)的修改數(shù)據(jù)條目的請求中請求修改所針對的數(shù)據(jù)條目相關(guān)的信息。由于是目錄302、402(DB)將該值與和條目相關(guān)聯(lián)的當(dāng)前存儲狀態(tài)進(jìn)行比較(在“客戶端” 306、406的情況下是第I存儲狀態(tài)信息,以及在“另ー客戶端” 308、408的情況下是第3存儲狀態(tài)信息,具體地如圖3和4的步驟338、344、438、444所說明的),客戶端/另一客戶端306、308、406、408發(fā)送之前讀取的第一存儲狀態(tài)(附加到修改請求,作為第2/第4存儲狀態(tài)信息,具體地如圖3和4的步驟336、342、436、442所說明的)。客戶端306、308、406、408接收數(shù)據(jù)條目的第I狀態(tài)信息,并在存儲單元中存儲該信息。當(dāng)需要修改數(shù)據(jù)條目吋,客戶端306、308、406、408檢索所存儲的狀態(tài)信息,并將其與修改數(shù)據(jù)條目的請求相關(guān)聯(lián)(例如,將其附加或包括到請求中),以及將其發(fā)送至目錄數(shù)據(jù)庫302、402,以請求修改數(shù)據(jù)條目(具體地,如圖3和4的步驟336、342、436、442所說明的)。通常,第I和第2以及第4狀態(tài)信息是相同的,例如具有相同的值。然而,可以存在第I和第2以及第I和第4狀態(tài)信息不相同的實(shí)現(xiàn),例如,相應(yīng)信息具有不同的格式,以例如將第I狀態(tài)信息在相應(yīng)客戶端306、308、406、408處分別存儲為第2狀態(tài)信息和第4狀態(tài)信息。在下ー步驟中,根據(jù)存儲的格式來檢索它們(具體地,分別是第一、第二和第四狀態(tài)信息),并將它們關(guān)聯(lián)(例如,附加或包括)到相應(yīng)的修改請求消息,并發(fā)送至被配置為不管不同格式而分別確定匹配和不匹配的目錄數(shù)據(jù)庫302、402 (具體地,如圖3和4中步驟336、338、342、344、436、438、442、444所說明的)。客戶端306、308、406、408可以具有與圖7所示的目錄數(shù)據(jù)庫DBll類似的結(jié)構(gòu)特征。在第二實(shí)施例中(圖4),從客戶端406、408要求修改響應(yīng)(指示成功或錯誤),所以可以完成“修改過程”(具體地,如圖4的步驟441、452中所說明)。在第一實(shí)施例中,可以通過發(fā)送第3狀態(tài)信息來暗示修改響應(yīng)(指示成功和錯誤)(具體地,如圖3的步驟348、350所說明的),使得客戶端306、308具有根據(jù)針對該數(shù)據(jù)條目的稍后修改請求的修改而可用的最當(dāng)前的狀態(tài)信息(未示出)。從目錄數(shù)據(jù)庫302向客戶端306和另ー客戶端308發(fā)送的第一實(shí)施例中的消息可以包括與第二實(shí)施例中一樣的信息,以分別顯式地指示成功和失敗。下面,將參考圖5、6和7來描述·根據(jù)本發(fā)明的其他示例實(shí)施例的用于在目錄數(shù)據(jù)庫處的數(shù)據(jù)管理的方法。在根據(jù)本發(fā)明的示例實(shí)施例的方法中,主要的目標(biāo)是定義LDAP可用互斥機(jī)制,其在LDAP目錄服務(wù)器側(cè)(即,UDR)中管理、執(zhí)行以及強(qiáng)制執(zhí)行,并且不依賴于所有完全的LDAP客戶端遵守正確的行為(因?yàn)閺腖DAP目錄服務(wù)器側(cè)也識別和拒絕“錯誤的”客戶端行為)。具體地,當(dāng)接收修改在目錄數(shù)據(jù)庫處的數(shù)據(jù)條目的請求時,可能存在用于在目錄數(shù)據(jù)庫處進(jìn)行數(shù)據(jù)管理的需要,具體地,與是否根據(jù)目錄數(shù)據(jù)庫提出的約束向目錄數(shù)據(jù)庫發(fā)出接收到的修改請求無關(guān)。具體地,在該上下文中,術(shù)語“客戶端的正確行為”可以表示客戶端發(fā)送根據(jù)目錄數(shù)據(jù)庫提出的約束的相應(yīng)修改請求,且術(shù)語“客戶端的錯誤行為”可以表示客戶端發(fā)送未根據(jù)目錄數(shù)據(jù)庫所提出的約束的相應(yīng)修改請求。本發(fā)明不限于符合3GPP UDC版本9的環(huán)境。其對于目錄數(shù)據(jù)庫的任何實(shí)現(xiàn)都有效,大體是基于LDAP的環(huán)境,其中,必須控制客戶端的并發(fā)性(為了說明,本發(fā)明完全基于LDAP概念,但不限于此)。在呈現(xiàn)的解決方案中,是LDAP目錄服務(wù)器側(cè)對可能出現(xiàn)數(shù)據(jù)一致性風(fēng)險的這些條目強(qiáng)制執(zhí)行互斥(mutex)機(jī)制,且(僅)針對所選LDAP客戶端。并且這是在與來自向這些目錄條目發(fā)出“LDAP修改請求”操作的LDAP客戶端的正確或錯誤行為無關(guān)地情況下完成的。具體地,目錄數(shù)據(jù)庫(比如LDAP服務(wù)器)可以確保根據(jù)目錄數(shù)據(jù)庫的配置從客戶端(如LDAP客戶端)接收的修改請求可以導(dǎo)致對修改請求的正確處理。因此,為了滿足目錄數(shù)據(jù)庫的具體配置的要求,可以將發(fā)出修改請求的客戶端修改為能夠發(fā)送正確的修改請求(根據(jù)目錄數(shù)據(jù)庫配置)。具體地,在該上下文中,術(shù)語“客戶端的正確行為”可以表示客戶端發(fā)送根據(jù)與對接收到的修改請求的處理或不處理相關(guān)聯(lián)的目錄數(shù)據(jù)庫的配置的相應(yīng)修改請求,以及術(shù)語“客戶端的錯誤行為”可以表示客戶端發(fā)送未根據(jù)與對接收到的修改請求的處理或不處理相關(guān)聯(lián)的目錄數(shù)據(jù)庫的配置的相應(yīng)修改請求。具體地,目錄數(shù)據(jù)庫的配置可以具體地表示如上定義的用于應(yīng)用互斥機(jī)制的客戶端的注冊、根據(jù)如上定義的互斥機(jī)制的可修改的數(shù)據(jù)條目的配置、以及在從客戶端發(fā)送修改請求時將修改請求與狀態(tài)信息(如“ entryDigest”值)相關(guān)聯(lián)。具體地,客戶端的正確和錯誤行為可以分別表示客戶端發(fā)送與狀態(tài)信息相關(guān)聯(lián)和不與狀態(tài)信息相關(guān)聯(lián)的修改請求。下面,描述用于正確實(shí)現(xiàn)該機(jī)制的在(i)配置階段[步驟I]、(ii)供應(yīng)階段[步驟2]和(iii)業(yè)務(wù)階段[步驟3]處的所需步驟。在[步驟I]配置階段中,執(zhí)行LDAP目錄服務(wù)器側(cè)中的LDAP客戶端“互斥配置”。為了建立針對標(biāo)準(zhǔn)LDAP目錄服務(wù)器的LDAP會話,始終需要某些客戶端配置存儲在LDAP目錄服務(wù)器側(cè)(例如,要由LDAP客戶端在LDAP會話建立時使用的至少“用戶名”和加密或摘要“密碼”)。提出了包括一些新的配置數(shù)據(jù)(例如,在存儲客戶證書的目錄條目中),其中,指定針對從這些客戶端中的每個客戶端發(fā)出的“LDAP修改請求”是否必須應(yīng)用(或必須不應(yīng)用)互斥機(jī)制。建議的實(shí)現(xiàn)可以包括在要添加到客戶端-證書目錄條目中的新的輔助對象類(objectclass)中包含的新LDAP屬性類型(attributeType)(語法布爾型)。如果該屬性不存在,或如果其被設(shè)為值“偽”,則對于從該LDAP客戶端發(fā)出的更新操作,將不應(yīng)用互斥。在[步驟2]供應(yīng)階段中,執(zhí)行在目錄條目創(chuàng)建時的LDAP條目“互斥啟用”。對于創(chuàng)建的每個新的目錄條目(通過“LDAP添加請求”操作),規(guī)定是否要求(或不要求)對向該條目發(fā)出的“LDAP修改請求”操作執(zhí)行互斥。在條目中要求互斥機(jī)制的情況下,僅在從一被配置為“針對其進(jìn)行檢查”的“LDAP”客戶端發(fā)出的針對該條目的修改操作時才應(yīng)用(參見上面[步驟I]和下面[步驟3]中的一般算法)。此外,對于這些目錄條目中的每ー個目錄條目,目錄服務(wù)器必須管理(內(nèi)部)某些數(shù)據(jù)(此處稱為“entryDigest”數(shù)據(jù)),該數(shù)據(jù)存儲以下值 -不能被任何LDAP客戶端修改(但是始終可以被讀取-當(dāng)不被從任何訪問控制指令(ACI)所限制時-如果是,通過“LDAP搜索請求”操作,通過LDAP客戶端)。注意到將始終有可能定義(通過配置過程)某個特權(quán)用戶(其被允許請求“更新/設(shè)置”該內(nèi)部數(shù)據(jù)(例如,供應(yīng)實(shí)體、目錄根用戶等等)),然而對干“普通”(即不是這種特權(quán))客戶端,修改是不可能的。-每次對相關(guān)聯(lián)的條目正確應(yīng)用“LDAP修改請求”操作時被內(nèi)部更新(因此在內(nèi)部“ entryDigest”元素中存儲的值將表示當(dāng)前的目錄條目內(nèi)容,一旦改變了在相同條目中包含的其他屬性類型中的至少ー個中的某些存儲值,就改變其值)。建議的實(shí)現(xiàn)可以包括被定義(和管理)為由目錄服務(wù)器內(nèi)部維護(hù)的、且LDAP客戶端不能修改的操作屬性的“entryDigest” (參見在http://tools. ietf. org/html/rfc4512#section-3. 4上可找到的LDAP目錄信息模型(IETF RFC 4512)中的第3. 4節(jié))。將要添加(或不添加)到每個創(chuàng)建的目錄條目中的新的輔助對象類中可以包含它。當(dāng)該新的對象類將出現(xiàn)在目錄條目中時,其將意味著針對向該條目發(fā)出的更新操作必須強(qiáng)制執(zhí)行互斥機(jī)制。可以用語法“整數(shù),存儲根據(jù)整個當(dāng)前條目內(nèi)容計(jì)算出的散列值”來定義“entryDigest” 屬性類型。在[步驟3]業(yè)務(wù)階段中,執(zhí)行在LDAP服務(wù)器側(cè)處的“互斥”強(qiáng)制執(zhí)行。當(dāng)在LDAP目錄服務(wù)器中接收到“LDAP修改請求”操作時,如果(當(dāng)且僅當(dāng))以下兩個條件匹配,則應(yīng)用互斥機(jī)制I、從已被配置為必須針對從其發(fā)出的操作應(yīng)用互斥檢查的LDAP客戶端接收到它(參見[步驟I])。2、針對該互斥檢查,已配置了目標(biāo)目錄條目(在創(chuàng)建時)(參見[步驟2])。在該情況下(但是僅在該情況下),要求在目錄服務(wù)器中接收到的每個“LDAP修改請求”操作包括“LDAP斷言控制”。在http://tools. ietf. org/html/rfc4528上可以找到LDAP斷言控制(IETF RFC4528),其內(nèi)容以引用的方式并入本文中,其描述到由LDAP客戶端發(fā)出的“LDAP修改請求”操作可以包括斷言控制以及在LDAP服務(wù)器側(cè)要檢查的條件;如果不滿足該條件,可以拒絕整個“LDAP修改請求”操作。因此,新的“LDAP斷言擴(kuò)展控制”包含以下斷言條件
“entryDigest = <last-entryDigest-read-value-for-target_entry>,,如果在接收到的“LDAP修改請求”操作中不包括該等式過濾器,則拒絕整個修改請求。如果在LDAP斷言中包括的等式過濾器評估為“偽”,則拒絕整個修改操作(根據(jù)RFC 4528)。如果LDAP斷言中包括的等式過濾器評估為“真”,則正常處理接收到的“LDAP修改請求”操作(根據(jù) LDAP :在 http://tools. ietf. org/html/rfc4511 上可找到的協(xié)議(IETF RFC 4511)),其內(nèi)容以引用的方式并入本文中,且如果(在目標(biāo)條目中)最終添加/刪除/替換了ー些值,則產(chǎn)生新的值(由目錄服務(wù)器內(nèi)部產(chǎn)生),并將其存儲為該目錄條目的新的計(jì)算出的“entryDigest”數(shù)據(jù)。參見圖5,示出了整個流程圖,其描述了針對正在接收到的每個“LDAP修改請求”操作在LDAP目錄服務(wù)器側(cè)處所需的額外處理步驟。具體地,圖5示出了根據(jù)本發(fā)明的另ー示例實(shí)施例的用于數(shù)據(jù)管理的方法的過程。由目錄數(shù)據(jù)庫來執(zhí)行這些過程步驟。在由框554指示的第一步驟中,從名為“c”的LDAP客戶端接收針對名為“e”的目錄條目的LDAP修改請求操作。在由檢查框556指示的下ー步驟中,確定是否對LDAP客戶端“c”應(yīng)用互斥機(jī)制。如果該確定是肯定的且導(dǎo)致“是”,則在由檢查框558指示的下一歩驟中,確定是否對條目“e”應(yīng)用互斥機(jī)制。如果該確定是肯定的且導(dǎo)致“是”,則在由檢查框560指示的下ー步驟中,確定接收到的操作是否包括攜帶過濾器“entryDigest =值”的LDAP斷言控制。如果檢查框560的確定是肯定的且導(dǎo)致“是”,則在由檢查框562指示的下ー步驟中,確定在與條目“ e”相關(guān)聯(lián)的屬性“ entryDigest”中存儲的當(dāng)前值是否等于(作為匹配的示例)在斷言過濾器中接收到的具體〈値〉。如果該確定是肯定的且因此導(dǎo)致“是”,則在由框564指示的下ー步驟中,相應(yīng)地處理接收到的LDAP修改請求操作。接下來,在由檢查框566指示的步驟中,進(jìn)ー步確定在條目“e”中是否已執(zhí)行了某個(些)改變。如果該確定是肯定的且導(dǎo)致“是”,則在由框568指示的下ー步驟中,產(chǎn)生條目“e”中的“entryDigest”屬性的新值,并將其與改變后的條目“e”相關(guān)聯(lián)地存儲。之后,過程如圓570所指示地結(jié)束。取決于檢查框556、558、560、562、566的確定結(jié)果,還可以執(zhí)行以下步驟,其中,關(guān)于檢查框556和558,在由“否(備選I)”和“否(備選2)”表示的2個實(shí)施例之間加以區(qū)分。在根據(jù)檢查框556和558的確定之ー不是肯定的且導(dǎo)致“否(備選I) ”的情況下,過程可以進(jìn)行至框564,且可以相應(yīng)處理接收到的LDAP修改請求操作。之后,過程可以如所述ー樣的進(jìn)行。備選地,在根據(jù)檢查框556和558的確定之ー不是肯定的且導(dǎo)致“否(備選2) ”的情況下,方法進(jìn)行至由框572指示的步驟,其中,處理接收到的LDAP修改請求操作。之后,方法可以如圓574所指示地結(jié)束。對于兩個備選,根據(jù)檢查框556和558的確定可以幫助區(qū)分與客戶端類型(注冊客戶端對非注冊客戶端)和被請求修改的數(shù)據(jù)條目的類型(配置用于根據(jù)互斥方法來修改的數(shù)據(jù)條目和未配置用于根據(jù)互斥方法來修改的數(shù)據(jù)條目)相關(guān)的目錄數(shù)據(jù)庫的預(yù)配置。備選I和備選2都導(dǎo)致對接收到的LDAP修改請求操作的處理。然而,對于備選1,根據(jù)556額外檢查是否已改變了條目“e”,且如果是,則如框568所指示的,修改entryDigest屬性并將其與改變后的條目“ e”相關(guān)聯(lián)地存儲。盡管備選2可能對于傳統(tǒng)實(shí)現(xiàn)是令人感興趣的,但備選I更安全且提供了更好的數(shù)據(jù)一致性。因此備選I符合任何接收到的LDAP斷言所需的一般過程,然而此處缺少檢查框562的步驟,因?yàn)樵凇胺?備選I) ”的情況下,不需要針對未啟用互斥的客戶端和目錄條目來檢查在檢查框562中規(guī)定的條件。此外,在根據(jù)檢查框560的確定不是肯定的情況下,該方法可以進(jìn)行至由框576指示的步驟,其中,拒絕接收到的LDAP修改請求操作。之后,該方法可以如圓578所指示的結(jié)束。從而,根據(jù)檢查框560的確定可以幫助區(qū)分具有“正確行為”和“錯誤行為”的客戶端,例如,以在發(fā)送了具有過濾器和不具有過濾器的修改請求的客戶端之間進(jìn)行區(qū)分。此外,在根據(jù)檢查框562的確定不是肯定的且導(dǎo)致“否”的情況下,該方法可以進(jìn)行至由框576和圓578所指示的步驟,即,拒絕接收到的LDAP修改請求操作且方法停止。 此外,在根據(jù)檢查框566的確定不是肯定的且導(dǎo)致“否”的情況下,該方法可以直接進(jìn)行至圓570,并可以相應(yīng)結(jié)束。注意到根據(jù)檢查框562、框564、576和圓578的步驟的集合可以表示任何接收到的LDAP斷言所需的一般過程。這些步驟可以具體地對應(yīng)于對接收到的斷言過濾器的檢查。此處,該集合由580來表示且由虛線來指示。注意到,可以針對目錄條目的屬性而不是目錄條目本身來執(zhí)行上述確定。參見圖6,所示序列圖示出了參考圖5所具體描述的機(jī)制如何能夠檢測到?jīng)_突。具體地,在目錄數(shù)據(jù)庫602、客戶端606和另ー客戶端608之間傳輸相應(yīng)消息,以及在相應(yīng)設(shè)備處執(zhí)行操作。此處,僅為了說明的目的,將客戶端606體現(xiàn)為HLR-FE實(shí)體,且將另ー客戶端608體現(xiàn)為供應(yīng)-FE實(shí)體。目錄數(shù)據(jù)庫602、客戶端606、以及另一客戶端608形成了通信系統(tǒng)614。在第一步驟682中,HLR-FE 606從訂戶具體地接收MAP位置更新。接下來,在步驟684中,從HLR-FE 606向UDR 602發(fā)送用于讀取訂戶簡檔的LDAP搜索請求。注意到已從UDR 602請求了當(dāng)前的“ entryDigest”值,使得UDR 602可以僅向HLR-FE 606發(fā)送與所請求的訂戶簡檔相關(guān)的信息。接下來,在步驟686中,HLR-FE 606具體地基于接收到的訂戶簡檔信息,執(zhí)行與應(yīng)用相關(guān)的邏輯。在下ー步驟688中,供應(yīng)-FE 608從CAS具體地接收供應(yīng)命令。在下ー步驟690中,供應(yīng)-FE 608向UDR 602發(fā)送用于讀取具體地存儲在UDR602中的訂戶簡檔的LDAP搜索請求。此處,已向UDR602請求了當(dāng)前的“entryDigest”值,使得UDR 602可以相應(yīng)地向供應(yīng)-FE 608發(fā)送與訂戶簡檔相關(guān)的數(shù)據(jù)以及之前請求的entryDigest 值。在下ー步驟692中,供應(yīng)-FE 608執(zhí)行與應(yīng)用相關(guān)的邏輯。在下ー步驟694中,供應(yīng)-FE 608向TOR 602發(fā)送用于更新訂戶簡檔的LDAP修改請求消息。在所發(fā)送的請求消息中,還包括斷言控制過濾器“entryDigest =在步驟690中讀取的值”。
在下ー步驟696中,UDR 602執(zhí)行斷言檢查(例如,使用圖5的檢查框562所說明的步驟)。所執(zhí)行的斷言檢查是肯定的,以相應(yīng)處理所請求的修改操作(例如,如圖5的框564所指示的)。此外,在更新在UDR 602處的數(shù)據(jù)條目中存儲的訂戶簡檔時,還更新該數(shù)據(jù)條目的“entryDigest”值的值(類似于圖5的檢查框566和框568)。在下ー步驟中,可以從UDR 602向供應(yīng)-FE 608發(fā)送更新后的訂戶簡檔的信息和更新后的“entryDigest”值。在下ー步驟698中,HLR-FE 606向TOR 602發(fā)送用于更新訂戶簡檔的LDAP修改請求。在該請求消息中包括斷言控制過濾器“entryDigest =在步驟684中讀取的值”。接下來,在步驟699中,UDR 602執(zhí)行斷言檢查(例如,使用在圖5的檢查框562中說明的步驟),并評估接收到的“entryDigest”值與UDR 602中可用的“entryDigest”值不匹配。因此,拒絕所請求的修改操作,例如根據(jù)框576和圓578。此外,不更新數(shù)據(jù)條目的“entryDigest” 值。 在下ー步驟中,UDR 602相應(yīng)地向HLR-FE 606通知拒絕的修改請求。此外,注意到執(zhí)行步驟686,同時執(zhí)行步驟690至696。注意到在圖6中,已假定⑴針對目標(biāo)條目,已啟用了互斥機(jī)制以及(ii)已配置了 2個LDAP客戶端606、608 (HLR-FE 606和供應(yīng)-FE 608),使得必須對它們應(yīng)用互斥。一旦已解釋了本互斥機(jī)制,依然可以包括某些擴(kuò)展/改進(jìn)。這些擴(kuò)展和改進(jìn)不改變所述互斥方法,但是可以被視為該互斥方法的其他實(shí)施例。在修改中,(每個目錄條目-在條目創(chuàng)建吋-或可以在目錄服務(wù)器級別上-在配置吋),可以將屬性類型的集合(來自可以在目錄條目中包含的那些屬性類型)定義為在改變包含的值時,不觸發(fā)任何“entryDigest ”更新。具體地,目錄條目可以與多個屬性或?qū)傩灶愋拖嚓P(guān)聯(lián)。ー個屬性類型(例如,目錄條目的屬性類型“e”)或多個屬性類型可以與entryDigest相關(guān)聯(lián)。然而,多個屬性類型的集合可以不與entryDigest相關(guān)聯(lián)。因此,對ー個或多個屬性類型的修改可以強(qiáng)制對entryDigest值的更新,但是對屬性類型的定義集合的修改可以不強(qiáng)制對entryDigest的更新操作。從而,可以在互斥機(jī)制中實(shí)現(xiàn)如果在基于上述屬性類型的定義所具體獲得的列表中不包括某些屬性類型,則互斥機(jī)制將不“分析”僅請求更新這些屬性類型(中的ー些)的任何“LDAP修改請求”操作。具體地,當(dāng)接收修改請求吋,目錄數(shù)據(jù)庫可以僅對于那些被配置為應(yīng)用與entryDigest相關(guān)聯(lián)的互斥機(jī)制的屬性類型才應(yīng)用互斥機(jī)制。在互斥機(jī)制中,可以忽略那些未被配置為應(yīng)用互斥機(jī)制的屬性類型(且從而不與entryDigest相關(guān)聯(lián))。此外,可以針對每個目錄條目定義多于ー個“entryDigest”元素,其中,每個“entryDigest”元素可以與該條目中包含的屬性類型的子集相關(guān)聯(lián)。具體地,目錄條目與多于ー個屬性或?qū)傩灶愋拖嚓P(guān)聯(lián)。這些屬性類型的組與entryDigest相關(guān)聯(lián),且剩余的屬性類型可以與另一 entryDigest相關(guān)聯(lián)。在修改屬性類型的組中的ー個屬性類型的情況下,可以更新與屬性類型的組相關(guān)聯(lián)的entryDigest的值,而不更新另ー個entryDigest的值。因此,在修改剩余屬性類型(之一)的情況下,可以更新與剩余屬性類型相關(guān)聯(lián)的另ー entryDigest的值,而不更新entryDigest的值。
從而,定義的屬性類型的每個組被針對其關(guān)聯(lián)的“ entryDigest”元素所“支配”,其可以允許在每個目錄條目中的某種更細(xì)顆粒的互斥機(jī)制。這可以允許增加并行的水平,且不將在該上下文中定義的互斥機(jī)制與目錄條目的范圍綁定。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的目錄數(shù)據(jù)庫的構(gòu)成。在第一示例實(shí)施例中,目錄數(shù)據(jù)庫可以包括接收單元、存儲單元、處理單元以及可選地發(fā)送単元。參見圖7,將解釋根據(jù)本發(fā)明的另ー示例實(shí)施例的目錄數(shù)據(jù)庫DBll的構(gòu)成。在圖7中示出了包括接收單元RUlI、處理單元PUlI、存儲單元SUlI和發(fā)送單元TUlI在內(nèi)的目錄數(shù)據(jù)庫DBll的實(shí)施例。接收單元RUll可以適于接收消息和信息,如修改請求和狀態(tài)信息,存儲單元SUll可以適于(永久性或臨時性)在目錄中存儲數(shù)據(jù)條目以及狀態(tài)信息和標(biāo)識符等等,以及發(fā)送単元TUll可以適于發(fā)送消息和信息,如向客戶端發(fā)送信息,以及處理單元PUll可以適于處理接收信息和消息以及發(fā)送信息和消息,并在目錄數(shù)據(jù)庫DBll處的存儲單元SUll的目錄中存儲或檢索或修改數(shù)據(jù)條目。 處理單元PUl I可以適于將數(shù)據(jù)條目與表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)。接收單元RUll可以適于從客戶端接收修改該數(shù)據(jù)條目的請求。接收單元RUll還可以適于與該請求相關(guān)聯(lián)地從客戶端接收表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息,第二當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目對于客戶端可用的最新可用當(dāng)前存儲狀態(tài)。處理單元PUl I可以適于如果處理単元PUl I關(guān)于數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)和從客戶端接收的第二當(dāng)前存儲狀態(tài)確定第一狀態(tài)信息和第二狀態(tài)信息匹配,則根據(jù)該請求來修改數(shù)據(jù)條目。根據(jù)實(shí)施例,處理單元TOll可以適于獲得表示修改后的數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的修改后的當(dāng)前存儲狀態(tài)的第三狀態(tài)信息,并將修改后的數(shù)據(jù)條目與第三狀態(tài)信息相關(guān)聯(lián)。根據(jù)另ー實(shí)施例,接收單元RUll可以適于從客戶端或另ー客戶端接收修改數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的另ー請求,以及與另ー請求相關(guān)聯(lián)地從客戶端或另ー客戶端接收表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第四當(dāng)前存儲狀態(tài)的第四狀態(tài)信息,第四當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目可用于客戶端或另ー客戶端的最新可用當(dāng)前存儲狀態(tài)。處理單元PUll可以適于關(guān)于數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的修改后的當(dāng)前存儲狀態(tài)和從客戶端接收到的第四當(dāng)前存儲狀態(tài)確定修改后的狀態(tài)信息與第四狀態(tài)信息不匹配,以及通過不修改修改后的數(shù)據(jù)條目來拒絕另一修改請求。根據(jù)另ー實(shí)施例,處理單元TOll可以適于驗(yàn)證客戶端和/或另ー客戶端是否在目錄數(shù)據(jù)庫中針對應(yīng)用匹配確定步驟、修改步驟和拒絕步驟中的一個或多個進(jìn)行了注冊。根據(jù)另ー實(shí)施例,處理單元TOll可以適于驗(yàn)證數(shù)據(jù)條目是否在目錄數(shù)據(jù)庫中針對應(yīng)用匹配確定步驟、修改步驟和拒絕步驟中的一個或多個進(jìn)行了注冊。根據(jù)另ー實(shí)施例,處理單元TOll可以適于管理第一狀態(tài)信息和/或第三狀態(tài)信息,使得客戶端和另ー客戶端中的任何客戶端都不能修改第一狀態(tài)信息和/或第三狀態(tài)信
O根據(jù)另ー實(shí)施例,發(fā)送單元TUll可以適于向客戶端和另ー客戶端分別發(fā)送在包括第一狀態(tài)信息、第二狀態(tài)信息、第三狀態(tài)信息和第四狀態(tài)信息在內(nèi)的組中的至少ー個狀態(tài)信息,客戶端和另ー客戶端分別被配置為處理接收到的至少ー個狀態(tài)信息,以與針對請求修改的請求和另ー請求分別相關(guān)聯(lián)地向目錄數(shù)據(jù)庫發(fā)送。根據(jù)另ー實(shí)施例,處理單元TOll可以適于根據(jù)輕量級目錄訪問協(xié)議來執(zhí)行涉及在目錄數(shù)據(jù)庫和客戶端和/或另ー客戶端之間的接收和/或發(fā)送的至少ー個步驟。因此,修改請求和/或另一修改請求可以包括輕量級目錄訪問協(xié)議斷言控制,輕量級目錄訪問協(xié)議斷言控制分別包括第二狀態(tài)信息和第四狀態(tài)信息。下面,將描述根據(jù)本發(fā)明的示例實(shí)施例的客戶端的構(gòu)成。在第一示例實(shí)施例中,客戶端可以包括接收單元、處理單元和發(fā)送單元,以及可能的存儲單元。參見圖8,將解釋根據(jù)本發(fā)明的另ー示例實(shí)施例的客戶端CL12的構(gòu)成??蛻舳薈L12可以具有與圖7所示的目錄數(shù)據(jù)庫DBll和上述相似的結(jié)構(gòu)特征。 客戶端CL12的實(shí)施例包括與圖7中針對目錄數(shù)據(jù)庫DBll所述相類似的接收單元RU12、處理單元PU12、存儲單元SU12以及發(fā)送單元TU12。接收單元RU12可以適于接收消息和信息,存儲單元SU12可以適于(永久性或臨時性)存儲信息(如數(shù)據(jù)條目的狀態(tài)信息),以及發(fā)送単元TU12可以適于發(fā)送消息和信息,以及處理單元TO12可以適于處理接收信息和消息以及發(fā)送信息和消息,并存儲或檢索存儲單元SU12中的信息。具體地,接收單元RU12可以適于接收表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息。處理單元PU12可以適于基于第一狀態(tài)信息,將表示數(shù)據(jù)條目在目錄數(shù)據(jù)庫處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息與修改數(shù)據(jù)條目的請求相關(guān)聯(lián),第ニ當(dāng)前存儲狀態(tài)指示數(shù)據(jù)條目對于客戶端可用的最新可用當(dāng)前存儲狀態(tài)。此外,發(fā)送單元TU12可以適于向目錄數(shù)據(jù)庫發(fā)送與第二狀態(tài)信息相關(guān)聯(lián)的修改數(shù)據(jù)條目的請求。根據(jù)實(shí)施例,處理單元TO12可以適于在客戶端的存儲單元SU12中存儲第一狀態(tài)信息,以及從存儲單元SU12中檢索第一狀態(tài)信息,以及將第二狀態(tài)信息基于第一狀態(tài)信息,即,可以用以下方式來處理檢索到的第一狀態(tài)信息其形成了第二狀態(tài)信息的基礎(chǔ),例如,可以將第一狀態(tài)信息格式化為第二狀態(tài)信息。如上面已經(jīng)詳細(xì)解釋的,第一和第二狀態(tài)信息可以相同,即從存儲單元SU12檢索到的信息形成了第二狀態(tài)信息的相同基礎(chǔ)。根據(jù)實(shí)施例,處理單元PU12可以適于根據(jù)輕量級目錄訪問協(xié)議來執(zhí)行涉及在目錄數(shù)據(jù)庫和客戶端之間的接收和/或發(fā)送的至少ー個步驟。因此,修改請求包括輕量級目錄訪問協(xié)議斷言控制,輕量級目錄訪問協(xié)議斷言控制包括第二狀態(tài)信息。下面,將描述本發(fā)明的一些優(yōu)點(diǎn)。在目錄數(shù)據(jù)庫側(cè)的目錄服務(wù)器側(cè)上控制互斥機(jī)制,且與正確/錯誤的LDAP客戶端行為無關(guān)。從而,由目錄數(shù)據(jù)庫而不是客戶端來具體地觸發(fā)或發(fā)起互斥機(jī)制,因?yàn)槟夸浄?wù)器可以設(shè)置與互斥機(jī)制結(jié)合使用的數(shù)據(jù)條目和客戶端相關(guān)的目錄數(shù)據(jù)庫的預(yù)配置。不需要對LDAP協(xié)議進(jìn)行改變,因?yàn)榭梢允褂门c在LDAP相關(guān)的RFC中定義的LDAP消息、操作和序列嚴(yán)格相同的LDAP消息、操作和序列。因此,從協(xié)議的角度來說,可以確保后向兼容性。新的互斥方法還允許基于訪問目錄服務(wù)的應(yīng)用的性質(zhì)(即,來自“應(yīng)用側(cè)”的并發(fā)要求)和/或正在被訪問的目錄服務(wù)器中存儲的數(shù)據(jù)的性質(zhì)(即,來自“數(shù)據(jù)側(cè)”的并發(fā)要求),來管理不同的并發(fā)水平,例如,它們都來自相同的目錄服務(wù)器以及在相同的時間上。此夕卜,在與3GPP UDC版本9中當(dāng)今管理的基于“LDAP交易”的解決方案進(jìn)行比較時,可以增加 并發(fā)性/并行性。
權(quán)利要求
1.一種用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫(302、402、602、DB11)處的數(shù)據(jù)管理的方法,所述方法包括以下步驟 -將所述數(shù)據(jù)條目與表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)(330、430),-從客戶端(306、406、606、CL12)接收(336、436、554、694)修改所述數(shù)據(jù)條目的請求,-與所述請求相關(guān)聯(lián)地從所述客戶端(306、406、606、CL12)接收(336、436、694)表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息,所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端(306、406、606、CL12)可用的最新可用當(dāng)前存儲狀態(tài),以及 -如果關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的所述第一當(dāng)前存儲狀態(tài)和從所述客戶端(306、406、606、CL12)接收的所述第二當(dāng)前存儲狀態(tài)確定所述第一狀態(tài)信息和所述第二狀態(tài)信息匹配,則根據(jù)所述請求來修改(340、440、564、696)所述數(shù)據(jù)條目。
2.根據(jù)權(quán)利要求I所述的方法,還包括以下步驟 -獲得(340、440、658、696)表示修改后的數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的修改后的當(dāng)前存儲狀態(tài)的第三狀態(tài)信息,以及 -將所述修改后的數(shù)據(jù)條目與所述第三狀態(tài)信息相關(guān)聯(lián)(340、440、568、696)。
3.根據(jù)權(quán)利要求2所述的方法,還包括以下步驟 -從所述客戶端(306、406、606、CL12)或另ー客戶端(308、408、608、CL12)接收(342、442,698)用于修改所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的所述數(shù)據(jù)條目的另ー請求, -與所述另ー請求相關(guān)聯(lián)地從所述客戶端(306、406、606、CL12)或所述另ー客戶端(308、408、608、CL12)接收(342、442、698)表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的第四當(dāng)前存儲狀態(tài)的第四狀態(tài)信息,所述第四當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目可用于所述客戶端(306、406、606、CL12)或所述另ー客戶端(308、408、608、CL12)的最新可用當(dāng)前存儲狀態(tài), -關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的修改后的當(dāng)前存儲狀態(tài)和從所述客戶端(306、406、606、CL12)接收的所述第四當(dāng)前存儲狀態(tài)確定(344、444、699)所述修改后的狀態(tài)信息與所述第四狀態(tài)信息不匹配,以及 -通過不修改修改后的數(shù)據(jù)條目來拒絕(346、446、699)所述另一修改請求。
4.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,還包括以下步驟 -驗(yàn)證(556)所述客戶端(306、406、606、CL12)和/或所述另ー客戶端(308、408、608、CL12)是否在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處針對應(yīng)用以下一項(xiàng)或多項(xiàng)進(jìn)行了注冊匹配確定步驟、修改步驟和拒絕步驟。
5.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,還包括以下步驟 -驗(yàn)證(558)所述數(shù)據(jù)條目是否在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處針對應(yīng)用以下一項(xiàng)或多項(xiàng)進(jìn)行了注冊匹配確定步驟、修改步驟和拒絕步驟。
6.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,還包括以下步驟 -管理所述第一狀態(tài)信息和/或所述第三狀態(tài)信息,使得所述客戶端(306、406、606、CL12)和所述另ー客戶端(308、408、608、CL12)中的任何客戶端不能修改所述第一狀態(tài)信息和/或所述第二狀態(tài)息。
7.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,還包括以下步驟 -向所述客戶端(306、406、606、CL12)和所述另ー客戶端(308、408、608、CL12)分別發(fā)送(332、334、348、350、432、434)在包括所述第一狀態(tài)信息、所述第二狀態(tài)信息、所述第三狀態(tài)信息和所述第四狀態(tài)信息在內(nèi)的組中的至少ー個狀態(tài)信息,所述客戶端(306、406、606、CL12)和所述另ー客戶端(308、408、608、CL12)分別被配置為處理接收到的至少ー個狀態(tài)信息,以與請求修改的所述請求和所述另ー請求分別相關(guān)聯(lián)地向所述目錄數(shù)據(jù)庫(302、402、602、DB11)發(fā)送。
8.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,其中,根據(jù)輕量級目錄訪問協(xié)議來執(zhí)行涉及在所述目錄數(shù)據(jù)庫(302、402、602、DB11)和所述客戶端(306、406、606、CL12)和/或所述另ー客戶端(308、408、608、CL12)之間的接收和/或發(fā)送的至少ー個步驟。
9.根據(jù)權(quán)利要求8所述的方法,其中,所述修改請求和/或所述另一修改請求包括輕量級目錄訪問協(xié)議斷言控制,所述輕量級目錄訪問協(xié)議斷言控制分別包括所述第二狀態(tài)信息和所述第四狀態(tài)信息。
10.一種目錄數(shù)據(jù)庫(302、402、602、DB11),適于執(zhí)行根據(jù)前述權(quán)利要求中任一項(xiàng)所述的步驟。
11.根據(jù)權(quán)利要求10所述的目錄數(shù)據(jù)庫(302、402、602、DB11),所述目錄數(shù)據(jù)庫(DBll)包括接收單元(RUll)、存儲單元(SUll)、處理單元(PUll)和可選的發(fā)送単元(TUll)。
12.—種要由目錄數(shù)據(jù)庫(302、402、602、DB11)的處理單元(PUll)執(zhí)行的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括適于執(zhí)行根據(jù)權(quán)利要求I至9中任一項(xiàng)所述的方法的步驟的代碼。
13.一種計(jì)算機(jī)程序產(chǎn)品,包括根據(jù)權(quán)利要求12所述的計(jì)算機(jī)程序。
14.一種用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫(302、402、602、DB11)處的數(shù)據(jù)管理的方法,所述方法包括以下步驟 -接收表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息, -基于所述第一狀態(tài)信息,將表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302、402、602、DB11)處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息與修改所述數(shù)據(jù)條目的請求相關(guān)聯(lián),所述第ニ當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端(306、308、406、408、606、608、CL12)可用的最新可用當(dāng)前存儲狀態(tài),以及 -發(fā)送與所述第二狀態(tài)信息相關(guān)聯(lián)地修改所述數(shù)據(jù)條目的請求。
15.根據(jù)權(quán)利要求14所述的方法,所述方法還包括以下步驟 -在所述客戶端(306、308、406、408、606、608、CL12)的存儲單元(SU12)中存儲所述第一狀態(tài)信息,以及 -從所述存儲單元(SU12)中檢索所述第一狀態(tài)信息,以及將所述第二狀態(tài)信息基于所述第一狀態(tài)信息。
16.根據(jù)權(quán)利要求14或15所述的方法,其中,根據(jù)輕量級目錄訪問協(xié)議來執(zhí)行涉及在所述目錄數(shù)據(jù)庫(302、402、602、DB11)和所述客戶端(306、406、606、CL12)之間的接收和/或發(fā)送的至少ー個步驟。
17.根據(jù)權(quán)利要求16所述的方法,其中,所述修改請求包括輕量級目錄訪問協(xié)議斷言控制,所述輕量級目錄訪問協(xié)議斷言控制包括所述第二狀態(tài)信息。
18.一種客戶端(306、308、406、408、606、608、CL12),適于執(zhí)行根據(jù)權(quán)利要求14至17中任一項(xiàng)所述的步驟。
19.根據(jù)權(quán)利要求18所述的客戶端(306、308、406、408、606、608、CL12),所述客戶端(CL12)包括接收單元(RU12)、發(fā)送單元(TU12)、處理單元(PU12)和存儲單元(SU12)。
20.ー種通信系統(tǒng)(314、414、614),包括根據(jù)權(quán)利要求10或11所述的目錄數(shù)據(jù)庫(302、402、602、DB11)和根據(jù)權(quán)利要求18或19所述的至少ー個客戶端(306、308、406、408、.606,608)。
全文摘要
提供了一種用于在包括目錄中的數(shù)據(jù)條目在內(nèi)的目錄數(shù)據(jù)庫(302)處的數(shù)據(jù)管理的方法,所述方法包括以下步驟將所述數(shù)據(jù)條目與表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫處的第一當(dāng)前存儲狀態(tài)的第一狀態(tài)信息相關(guān)聯(lián)(330),從客戶端(306)接收(336)修改所述數(shù)據(jù)條目的請求,與所述請求相關(guān)聯(lián)地從所述客戶端(306)接收(342)表示所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302)處的第二當(dāng)前存儲狀態(tài)的第二狀態(tài)信息,所述第二當(dāng)前存儲狀態(tài)指示所述數(shù)據(jù)條目對于所述客戶端(306)可用的最新可用當(dāng)前存儲狀態(tài),以及如果關(guān)于所述數(shù)據(jù)條目在所述目錄數(shù)據(jù)庫(302)處的所述第一當(dāng)前存儲狀態(tài)和從所述客戶端(306)接收的所述第二當(dāng)前存儲狀態(tài)確定所述第一狀態(tài)信息和所述第二狀態(tài)信息匹配,則根據(jù)所述請求來修改(340)所述數(shù)據(jù)條目。
文檔編號G06F17/30GK102834823SQ201080066122
公開日2012年12月19日 申請日期2010年12月8日 優(yōu)先權(quán)日2010年2月11日
發(fā)明者安東尼奧·阿隆索阿拉爾孔, 埃米利亞諾·美利奴巴斯克斯 申請人:瑞典愛立信有限公司