專利名稱:一種適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議的制作方法
技術領域:
本發(fā)明屬于數據庫安全技術領域。通過在并發(fā)控制協(xié)議中整合安全約束來阻止不同安全許可級事務間利用并發(fā)控制機制合謀進行隱秘的非法信息傳輸,確保數據庫系統(tǒng)的安全。
背景技術:
移動分布式實時數據庫系統(tǒng)(MDRTDBSMobile Distributed Real-Time DatabaseSystem)通常被認為是支持移動計算環(huán)境的分布式實時數據庫系統(tǒng)。分布式實時數據庫系統(tǒng)是事務和數據都可以有定時限制的分布式數據庫系統(tǒng),系統(tǒng)的正確性不僅依賴于事務執(zhí)行的邏輯結果,而依賴于邏輯結果產生的時間。MDRTDBS中事務的定時限制典型地表現為事務的截止期。對于軟實時事務,若未能在規(guī)定的截止期完成(超截止期)將導致結果失去應有的價值;對固實時事務,超截止期將使結果變得毫無意義;對硬實時事務而言,超截止期將可能導致災難性的后果。根據截止期的緊迫程度,實時事務被分派相應的優(yōu)先級,截止期越近的事務被分配越高的優(yōu)先級。在MDRTDBS中,優(yōu)先級被用來作為事務調度和解決數據沖突的主要依據,調度策略和并發(fā)控制機制都要優(yōu)先確保高優(yōu)先級事務。
MDRTDBS通常應用在一些安全關鍵類應用中,如電子商務、無線股票交易、電網調度、軍事指揮系統(tǒng)等。對這類應用而言,除了確保實時性能,阻止不同事務間非法的信息流也是至關重要的。大多數實現了強制訪問控制的安全數據庫系統(tǒng)都基于貝爾-拉帕丟拉(Bell-LaPadula)安全模型。在Bell-LaPadula模型中,元素按其特性分為主體(Subject)和客體(Object)。主體是系統(tǒng)的主動元素,能執(zhí)行一系列的動作,如進程、事務??腕w是系統(tǒng)中包含信息的被動元素。在數據庫系統(tǒng)中,客體可以是關系、元組等。系統(tǒng)中的每一個客體按照其存儲信息的敏感度分配一個密級(Classification level)。同樣的,每一個主體基于其置信度(被系統(tǒng)相信的程度)被分配一個許可級(Clearance level)。按照Bell-LaPadula模型,事務僅能讀取密級小于或等于其許可級的數據對象(向下讀規(guī)則);事務僅能寫密級大于或等于其許可級的數據對象(向上寫規(guī)則)。Bell-LaPadula模型的訪問限制可以阻止不同許可級事務間直接的非法信息流,但不足以阻止不同許可級事務間的間接非法信息流,即隱通道。傳統(tǒng)的(非安全的)實時并發(fā)控制協(xié)議,如高優(yōu)先級夭折兩段鎖協(xié)議(HPA-2PL)等在解決并發(fā)事務數據沖突時充分考慮到了事務的優(yōu)先級,確保高優(yōu)先級事務被優(yōu)先執(zhí)行。HPA-2PL解決并發(fā)事務數據沖突的策略是當一個低優(yōu)先級事務申請某個被高優(yōu)先級事務持有的鎖時發(fā)生沖突,低優(yōu)先級事務被阻塞;當一個高優(yōu)先級事務申請某個被低優(yōu)先級事務持有的鎖時發(fā)生沖突,低優(yōu)先級事務被夭折,高優(yōu)先級事務獲得相應鎖資源。HPA-2PL協(xié)議很好地解決了優(yōu)先級顛倒問題,但并沒有解決隱通道問題,并發(fā)的不同許可級事務間可以借助于并發(fā)控制的封鎖機制繞過系統(tǒng)安全策略,進行隱蔽通信。例如一個高優(yōu)先級、高許可級事務T2持有某一數據對象上的排它鎖,另一與它合謀的低優(yōu)先級、低許可級事務T1同時申請該數據對象的鎖,從而發(fā)生數據沖突,根據HPA-2PL協(xié)議T1被阻塞,于是T1可以根據被阻塞時間,從T2獲取信息。這樣在T1和T2間就形成了隱通道。為了解決上述隱通道問題可以對傳統(tǒng)的(非安全的)并發(fā)控制策略進行改進,如增加如下規(guī)則當不同許可級事務間發(fā)生數據沖突,并發(fā)控制策略確保低許可級事務優(yōu)先執(zhí)行。在上例中,依據本規(guī)則,T1將獲得所需鎖資源,繼續(xù)執(zhí)行。T2將被阻塞。這樣,就避免了在T1和T2間形成隱通道的可能,但卻產生了優(yōu)先級顛倒,即高優(yōu)先級事務因為數據沖突而等待低優(yōu)先級事務執(zhí)行,這顯然不符合MDRTDBS中高優(yōu)先級事務在資源使用上優(yōu)先于低優(yōu)先級事務地原則,不利于實時事務截止期的滿足。
一個安全實時并發(fā)性制協(xié)議必須同時考慮到兩方面的需求1)保證數據安全;2)確保實時事務錯過截止期的比率最小。然而,上述兩方面通常是相互沖突的,實現一方面通常以犧牲另一方面為代價。
現有的實時并發(fā)控制協(xié)議,如2PL-HP、PC(Priority Ceiling)、OPT-WAIT、OPT-SACRIFICE等,都著重在如何更好地確保實時事務截止期的滿足,卻無法阻止不同許可級事務間非法的隱秘通信,也沒有考慮到移動環(huán)境的固有特征。而現存的安全并發(fā)控制協(xié)議則沒有考慮到實時事務的定時限制,因而無法滿足實時應用的需求。對安全實時并發(fā)控制協(xié)議的研究主要包括佛吉尼亞大學的Son和印度科學學院的George等人提出相關協(xié)議。Son的主要研究思路是設計出一種自適應的(adaptive)的安全并發(fā)控制機制,其不足在于不能提供徹底的安全性,George已證明其并發(fā)控制策略中存在安全漏洞;另外其安全并發(fā)控制策略的某些前提,如事務啟動前一次性獲得全部資源在許多情況下是不合理、不科學和低效率的。George研究的出發(fā)點是保證實時數據庫系統(tǒng)的完全安全性,其思路為利用現有的并發(fā)控制策略,并對其進行合理組合,針對安全性和實時性分別應用不同的并發(fā)控制機制。其不足首先在于為保證安全性使系統(tǒng)性能損失過大,另外其硬實時事務假設也忽略了大量軟實時事務的應用需求,其過于復雜的安全并發(fā)控制機制在實現上仍有不少困難,同時他們也沒有考慮到移動環(huán)境固有的特征。
發(fā)明內容本發(fā)明的目的是解決現有安全實時并發(fā)控制協(xié)議在保證數據安全與確保實時事務錯過截止期的比率最小兩方面通常存在相互沖突的問題,提供一種既能滿足應用安全性需求又能確保實時性能的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議。
本發(fā)明提供的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議,該協(xié)議內容包括1)本發(fā)明提供的安全實時并發(fā)控制協(xié)議結合了樂觀并發(fā)控制策略和高優(yōu)先級夭折兩段鎖(HPA-2PL)協(xié)議——稱作安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC),該協(xié)議將移動分布式實時事務的執(zhí)行分為樂觀執(zhí)行階段和基于高優(yōu)先級夭折兩段鎖的驗證提交階段;2)通過相似性概念,給出了相似可串行化標準,對傳統(tǒng)的沖突可串行化標準進行了放松,以提高事務的并發(fā)度;3)在驗證提交階段,除了確保并發(fā)事務調度的相似可串行化以外,引入了安全性檢查即,當存在對安全性違背的可能性,則通過比較安全違背因子——阻塞驗證事務導致的對安全性違背的嚴重程度,和實時影響因子——夭折驗證事務導致的對實時性影響的嚴重程度,以決定是阻塞還是夭折驗證事務;其中,用戶根據不同應用對安全性和實時性需求的不同,通過對安全違背因子和實時影響因子權值的調整來更好的適應不同應用的需求。
上述的安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC)的具體操作內容如下1)首先給出讀集沖突的定義——定義15,假定OPSTi是一樂觀子事務,其對應基事務為BTi;ROS為OPSTi和BTi的讀操作的集合;RDSo和RDSb分別表示OPSTi和BTi所讀數據對象的集合;RDo(r)和RDb(r)分別表示OPSTi和BTi的讀操作r所讀的數據對象;若下列條件之一成立,則稱檢測到讀集沖突(1)RDSo≠RDSb(2)(r∈ROS)∧(Vo(RDo(r))≈Vb(RDb(r)))這里,Vo(RDo(r))表示OPSTi中讀操作r所讀到的數據對象RDo(r)的值;Vb(RDb(r))表示BTi中讀操作r所讀到的數據對象RDb(r)的值;2)在樂觀執(zhí)行階段,移動分布式實時事務(MDRTT)的所有子事務在相應固定數據庫服務器(FDS)上樂觀執(zhí)行;一旦進入驗證提交階段,固定數據庫服務器(FDS)為相應樂觀子事務觸發(fā)一基事務來進行一致性驗證和安全性檢查,其中基事務與相應樂觀子事務有相同的操作序列和存取數據對象集;3)在驗證提交階段,基事務的執(zhí)行采用基于鎖的并發(fā)控制機制,其中設計了三種鎖類型讀鎖(R鎖)、寫鎖(X鎖)和相似鎖(S鎖);當一個基事務在某個數據對象D上執(zhí)行讀操作或寫操作,它首先申請D上的讀鎖(R鎖)或寫鎖(X鎖),若并發(fā)控制管理器沒檢測到操作沖突,它授予該基事務相應的鎖;若檢測到操作沖突,它判斷沖突操作是否為相似操作,若相似,則授予相應的相似鎖(S鎖)。
4)在驗證提交階段引入了安全性檢查,即,當存在對安全性違背的可能性,則通過比較阻塞驗證事務導致的對安全性違背的嚴重程度與夭折驗證事務導致的對實時性影響的嚴重程度,以決定是阻塞還是夭折驗證事務。
本發(fā)明的優(yōu)點和積極效果與現有技術相比,本發(fā)明具有以下優(yōu)點(1)通過引入相似性概念,提出了相似可串行化標準,對傳統(tǒng)的沖突可串行化標準進行了放松,提高了事務的并發(fā)度。
(2)定義了安全違背因子(定量地刻畫阻塞驗證事務導致的對安全性違背的嚴重程度)和實時影響因子(定量地刻畫夭折驗證事務導致的對實時性影響的嚴重程度)。
(3)結合了樂觀并發(fā)控制策略和高優(yōu)先級夭折兩段鎖(HPA-2PL)協(xié)議,提供一種折中機制,讓用戶能根據具體應用在實時性和安全性上的不同側重,對并發(fā)控制策略進行調整,以更好地適應應用的需求。
與現有技術相比,本發(fā)明的效果性能測試結果顯示我們提出的并發(fā)控制協(xié)議在確保安全性的同時仍能保證很好的實時性能。
圖1是SHORTCC和實時并發(fā)控制協(xié)議DHP2PL在LCTMDR上的比較結果示意圖。其中,LCTMDR的含義在實施例2中給出;圖2是SHORTCC和實時并發(fā)控制協(xié)議DHP2PL在HCTMDR上的比較結果示意圖。其中,HCTMDR的含義在實施例2中給出;圖3是SHORTCC和實時并發(fā)控制協(xié)議DHP2PL在NLCB上的比較結果示意圖。其中,NLCB的含義在實施例2中給出。
具體實施方式實施例1一種適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議,該協(xié)議內容包括1)本發(fā)明提供的安全實時并發(fā)控制協(xié)議結合了樂觀并發(fā)控制策略和高優(yōu)先級夭折兩段鎖(HPA-2PL)協(xié)議——稱作安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC),該協(xié)議將移動分布式實時事務的執(zhí)行分為樂觀執(zhí)行階段和基于高優(yōu)先級夭折兩段鎖的驗證提交階段;
2)通過相似性概念,給出了相似可串行化標準,對傳統(tǒng)的沖突可串行化標準進行了放松,以提高事務的并發(fā)度;3)在驗證提交階段除確保并發(fā)事務調度的相似可串行化以外,引入了安全性檢查即,當存在對安全性違背的可能性,則通過比較安全違背因子——阻塞驗證事務導致的對安全性違背的嚴重程度,和實時影響因子——夭折驗證事務導致的對實時性影響的嚴重程度,以決定是阻塞還是夭折驗證事務;其中,用戶根據不同應用對安全性和實時性需求的不同,通過對安全違背因子和實時影響因子權值的調整來更好的適應不同應用的需求。
上述SHORTCC協(xié)議3)中所述的安全違背因子和實時影響因子的定義如下其中,以下定義涉及的符號含義為,CL(T)表示事務T的許可級;P(T)表示事務T的優(yōu)先級;Opi表示事務的讀、寫操作;OPnCF Opm表示Opn和Opm是一對沖突操作;ST表示進入系統(tǒng)的事務集合;——定義1,假定Ti,Tj∈ST,若下面條件成立(OPn∈Ti)∧(OPm∈Tj)∧(OPnCFOpm)則稱Ti和Tj是一對沖突事務,記為TiCF Tj;——定義2,假定Ti∈ST,ST1ST,如果下面條件滿足Tj∈ST1(TiCF Tj)則稱ST1為事務Ti的沖突集,記為CS(Ti);——定義3,假定Ti∈ST,ST2ST,如果下面條件成立(Tj∈ST2(TiCF Tj))∧(Tj∈(ST-ST2)((TiCF Tj)))則稱ST2為事務Ti的最大沖突集,記為MCS(Ti);——定義4,定義|f(CL(Ti))-f(CL(Tj)|為事務Ti和Tj的許可級差異度,記為CDD(Ti,Tj);這里,f表示不同許可級的集合到自然數集的映射;——定義5,定義|P(Ti)-P(Tj)|為事務Ti和Tj的優(yōu)先級差異度,記為PDD(Ti,Tj);——定義6,假定Ti∈ST,MCS1(Ti)MCS(Ti),如果有下面條件成立(Tj∈MCS1(Ti)(CL(Tj>CL(Ti)))∧(Tj∈(MCS(Ti)-MCS1(Ti))(CL(Tj)≤CL(Ti)))則稱MCS1(Ti)為事務Ti的高許可級最大沖突集,記為HCMCS(Ti);——定義7,假定Ti∈ST,MCS2(Ti)MCS(Ti),如果有下面條件成立(Tj∈MCS2(Ti)(P(Tj)<P(Ti)))∧(Tj∈(MCS(Ti)-MCS2(Ti))(P(Tj)≥P(Ti)))則稱MCS2(Ti)為事務Ti的低優(yōu)先級最大沖突集,記為LPMCS(Ti)。
——定義8,定義ΣTj∈HCMCS(Ti)(|f(CL(Ti))-f(CL(Tj))|)]]>為事務Ti相對于HCMCS(Ti)的安全違背因子,記為SVF(Ti,HCMCS(Ti));SVF(Ti,HCMCS(Ti))反映了阻塞Ti可能導致的隱通道(違背安全性)嚴重程度;
——定義9,定義ΣTj∈LPMCS(Ti)(|P(Ti)-P(Tj)|)]]>為事務Ti相對于LPMCS(Ti)的實時影響因子,記為RTIF(Ti,LPMCS(Ti));RTIF(Ti,LPMCS(Ti))反映了夭折Ti可能導致的對實時性能影響的嚴重程度。
上述SHORTCC協(xié)議2)中所述的相似性定義如下——定義10,對于數據庫中數據對象D的兩個取值V1(D)和V2(D),若下面條件滿足|g(V1(D))-g(V2(D))|≤σ則稱數據對象D的兩個取值V1(D)和V2(D)是數據相似的,記為V1(D)≈V2(D);上面定義中,g表示從D的范圍域到實數集的映射;σ為預先確定的閾值,其值依應用語義而定;——定義11,假定Ti,Tj∈ST,Opi∈Ti,Opj∈Tj并且Opi和Opj作用在同一數據對象D上,若下面條件滿足V(Opi,D)≈V(OPj,D)則稱Opi和Opj是操作相似的,記為Opi≈Opj;上面定義中,V(Opi,D)和V(Opj,D)分別表示Opi和Opj作用在D上的值;——定義12假定T1,T2,…,Tn∈ST,Op1∈T1,Op2∈T2,…,Opn∈Tn且Op1,Op2,…,Opn作用在同一數據對象D上,若下面條件滿足V(Opi,D),V(Opj,D)∈{V(Op1,D),V(Op2,D),…,V(Opn,D)},|g(V(Opi,D))-g(V(Opj,D))|≤σ則稱操作集{Op1,Op2,…,Opn}為操作相似集;——定義13假定SDi和SDj分別表示數據庫在不同時刻的兩個狀態(tài),D表示數據庫的任一數據對象,若下面條件滿足Vi(D)∈SDi,Vj(D)∈SDj(Vi(D)≈Vj(D))則稱SDi和SDj相似,記為SDi≈SDj;——定義14假定Scha是事務集{T1,T2,…,Tn}的一個調度,SDa是Scha產生的數據庫的一個狀態(tài),若下面條件滿足Schb(SDa≈SDb)則稱調度Scha是相似可串行化的;這里,Schb表示一串行化調度;SDb表示Schb產生的數據庫狀態(tài)。
上述SHORTCC協(xié)議1)中所述的安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC)的具體操作內容如下1)首先給出讀集沖突的定義——定義15,假定OPSTi是一樂觀子事務,其對應基事務為BTi;ROS為OPSTi和BTi的讀操作的集合;RDSo和RDSb分別表示OPSTi和BTi所讀數據對象的集合;RDo(r)和RDb(r)分別表示OPSTi和BTi的讀操作r所讀的數據對象;若下列條件之一成立,則稱檢測到讀集沖突(1)RDSo≠RDSb(2)(r∈ROS)∧(Vo(RDo(r))≈Vb(RDb(r)))這里,Vo(RDo(r))表示OPSTi中讀操作r所讀到的數據對象RDo(r)的值;Vb(RDb(r))表示BTi中讀操作r所讀到的數據對象RDb(r)的值;2)在樂觀執(zhí)行階段,移動分布式實時事務(MDRTT)的所有子事務在相應固定數據庫服務器(FDS)上樂觀執(zhí)行;一旦進入驗證提交階段,固定數據庫服務器(FDS)為相應樂觀子事務觸發(fā)一基事務來進行一致性驗證和安全性檢查,其中基事務與相應樂觀子事務有相同的操作序列和存取數據對象集;3)在驗證提交階段,基事務的執(zhí)行采用基于鎖的并發(fā)控制機制,其中設計了三種鎖類型讀鎖(R鎖)、寫鎖(X鎖)和相似鎖(S鎖);其相容性矩陣如表1所示表1.鎖相容性矩陣 當一個基事務在某個數據對象D上執(zhí)行讀操作或寫操作,它首先申請D上的讀鎖(R鎖)或寫鎖(X鎖),若并發(fā)控制管理器沒檢測到操作沖突,它授予該基事務相應的鎖;若檢測到操作沖突,它判斷沖突操作是否為相似操作,若相似,則授予相應的相似鎖(S鎖)。
上述SHORTCC協(xié)議中驗證提交階段的具體操作過程如下設BTS表示某一固定數據庫服務器(FDS)上基事務的集合,Ti∈BTS,MCS(Ti)={Ti,1,Ti,2,…,Ti,m};假定Ti正在請求數據對象D上的鎖,Ti,k(k=1,2,…,m)已持有D上的鎖;Op(Ti)表示Ti申請對D上鎖的操作,Op(Ti,k)表示Ti,k持有D上鎖的操作;PCS(Op(Ti))表示與Op(Ti)沖突的操作集,即PCS(Op(Ti))={Op(Ti,l),Op(Ti,2),…,Op(Ti,m)};安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC)可描述如下IF(P(Ti)>max(P(Ti,k)))//k=1,2,…,m{IF(Op(Ti,k)∈PCS(Ti)(Op(Ti,k)≈Op(Ti)))Ti獲得它所請求的S鎖;ELSE
Ti獲得相應的R鎖或X鎖,Ti,k被夭折,若Ti,k為某MDRTT的基事務,夭折消息被發(fā)送給該MDRTT的協(xié)調者,協(xié)調者根據MDRTT的截止期決定是終止或重啟該MDRTT;}ELSE{IF(Op(Ti,k)∈PCS(Ti)(Op(Ti,k)≈Op(Ti)))Ti獲得它所請求的S鎖;ELSE{IF(ω×SVF(Ti,HCMCS(Ti))>(1-ω)×RTIF(Ti,LPMCS(Ti))夭折Ti并向相應協(xié)調者發(fā)送夭折消息;ELSE阻塞Ti;}}在上面的描述中,ω和(1-ω)分別表示安全性和實時性在系統(tǒng)中所占重要性的程度。
實施例2將SHORTCC和實時并發(fā)控制協(xié)議DHP2PL(分布式高優(yōu)先級兩段鎖)協(xié)議進行比較。主要的性能指標有TMDR(事務錯過截止期的比率)和NLCB(單位時間低許可級事務被高許可級事務阻塞的數目)。TMDR定義如下TMDR=(錯過截止期事務的數目)/(進入系統(tǒng)的事務的總數目)。TMDR反映了系統(tǒng)實時性能,而NLCB則用來衡量違犯安全性的嚴重程度。假定事務的許可級分為六級,從1到6許可級依次升高。我們用HCTMDR表示具有高許可級(許可級不小于4)事務錯過截止期的比率;LCTMDR表示具有低許可級(許可級小于4)事務錯過截止期的比率。結果如圖1、圖2、圖3所示,從附圖可以看出在保證安全性的同時,SHORTCC仍具有好的實時性能。
權利要求
1.一種適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議,其特征是該協(xié)議內容包括1)本發(fā)明提供的安全實時并發(fā)控制協(xié)議結合了樂觀并發(fā)控制策略和高優(yōu)先級夭折兩段鎖(HPA-2PL)協(xié)議——稱作安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC),該協(xié)議將移動分布式實時事務的執(zhí)行分為樂觀執(zhí)行階段和基于高優(yōu)先級夭折兩段鎖的驗證提交階段;2)通過相似性概念,給出了相似可串行化標準,對傳統(tǒng)的沖突可串行化標準進行了放松,以提高事務的并發(fā)度;3)在驗證提交階段除確保并發(fā)事務調度的相似可串行化以外,引入了安全性檢查即,當存在對安全性違背的可能性,則通過比較安全違背因子——阻塞驗證事務導致的對安全性違背的嚴重程度,和實時影響因子——夭折驗證事務導致的對實時性影響的嚴重程度,以決定是阻塞還是夭折驗證事務;其中,用戶根據不同應用對安全性和實時性需求的不同,通過對安全違背因子和實時影響因子權值的調整來更好的適應不同應用的需求。
2.根據權利要求1所述的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議——方法,其特征是3)中所述的安全違背因子和實時影響因子的定義如下其中,以下定義涉及的符號含義為,CL(T)表示事務T的許可級;P(T)表示事務T的優(yōu)先級;Opi表示事務的讀、寫操作;OpnCF Opm表示Opn和Opm是一對沖突操作;ST表示進入系統(tǒng)的事務集合;——定義1,假定Ti,Tj∈ST,若下面條件成立(Opn∈Ti)∧(Opm∈Tj)∧(OpnCF Opm)則稱Ti和Tj是一對沖突事務,記為TiCF Tj;——定義2,假定Ti∈ST,ST1ST,如果下面條件滿足Tj∈ST1(TiCF Tj)則稱ST1為事務Ti的沖突集,記為CS(Ti);——定義3,假定Ti∈ST,ST2ST,如果下面條件成立(Tj∈ST2(TiCF Tj))∧( Tj∈(ST-ST2)(﹁(TiCF Tj)))則稱ST2為事務Ti的最大沖突集,記為MCS(Ti);——定義4,定義|f(CL(Ti))-f(CL(Tj))|為事務Ti和Tj的許可級差異度,記為CDD(Ti,Tj);這里,f表示不同許可級的集合到自然數集的映射;——定義5,定義|P(Ti)-P(Tj)|為事務Ti和Tj的優(yōu)先級差異度,記為PDD(TI,Tj);——定義6,假定Ti∈ST,MCS1(Ti)MCS(Ti),如果有下面條件成立(Tj∈MCS1(Ti)(CL(Tj)>CL(Ti)))∧(Tj∈(MCS(Ti)-MCS1(Ti))(CL(Tj)≤CL(Ti)))則稱MCS1(Ti)為事務Ti的高許可級最大沖突集,記為HCMCS(Ti);——定義7,假定Ti∈ST,MCS2(Ti)MCS(Ti),如果有下面條件成立(Tj∈MCS2(Ti)(P(Tj)<P(Ti)))∧(Tj∈(MCS(Ti)-MCS2(Ti))(P(Tj)≥P(Ti)))則稱MCS2(Ti)為事務Ti的低優(yōu)先級最大沖突集,記為LPMCS(Ti)。——定義8,定義ΣTj∈HCMCS(Ti)(|f(CL(Ti))-f(CL(Tj))|)]]>為事務Ti相對于HCMCS(Ti)的安全違背因子,記為SVF(Ti,HCMCS(Ti));SVF(Ti,HCMCS(Ti))反映了阻塞Ti可能導致的隱通道(違背安全性)嚴重程度;——定義9,定義ΣTj∈LPMCS(Ti)(|P(Ti)-P(Tj)|)]]>為事務Ti相對于LPMCS(Ti)的實時影響因子,記為RTIF(Ti,LPMCS(Ti));RTIF(Ti,LPMCS(Ti))反映了夭折Ti可能導致的對實時性能影響的嚴重程度。
3.根據權利要求1所述的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議——方法,其特征是2)中所述的相似性定義如下——定義10,對于數據庫中數據對象D的兩個取值V1(D)和V2(D),若下面條件滿足|g(V1(D))-g(V2(D))|≤σ則稱數據對象D的兩個取值V1(D)和V2(D)是數據相似的,記為V1(D)≈V2(D);上面定義中,g表示從D的范圍域到實數集的映射;σ為預先確定的閾值,其值依應用語義而定;——定義11,假定Ti,Tj∈ST,Opi∈Ti,Opj∈Tj并且Opi和Opj作用在同一數據對象D上,若下面條件滿足V(Opi,D)≈V(Opj,D)則稱Opi和Opj是操作相似的,記為Opi≈Opj;上面定義中,V(Opi,D)和V(Opj,D)分別表示Opi和Opj作用在D上的值;——定義12假定T1,T2,…,Tn∈ST,Op1∈T1,Op2∈T2,…,Opn∈Tn且Op1,Op2,…,Opn作用在同一數據對象D上,若下面條件滿足V(Opi,D),V(Opj,D)∈{V(Op1,D),V(Op2,D),…,V(Opn,D)},|g(V(Opi,D))-g(V(Opj,D))|≤σ則稱操作集{Op1,Op2,…,Opn}為操作相似集;——定義13假定SDi和SDj分別表示數據庫在不同時刻的兩個狀態(tài),D表示數據庫的任一數據對象,若下面條件滿足Vi(D)∈SDi,Vj(D)∈SDj(Vi(D)≈Vj(D))則稱SDi和SDj相似,記為SDi≈SDj;——定義14假定Scha是事務集{T1,T2,…,Tn}的一個調度,SDa是Scha產生的數據庫的一個狀態(tài),若下面條件滿足Schb(SDa≈SDb)則稱調度Scha是相似可串行化的;這里,Schb表示一串行化調度;SDb表示Schb產生的數據庫狀態(tài)。
4.根據權利要求1所述的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議——方法,其特征是1)中所述的安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC)的具體操作內容如下1)首先給出讀集沖突的定義——定義15,假定OPSTi是一樂觀子事務,其對應基事務為BTi;ROS為OPSTi和BTi的讀操作的集合;RDSo和RDSb分別表示OPSTi和BTi所讀數據對象的集合;RDo(r)和RDb(r)分別表示OPSTi和BTi的讀操作r所讀的數據對象;若下列條件之一成立,則稱檢測到讀集沖突(1)RDSo≠RDSb(2)(r∈ROS)∧﹁(Vo(R(Do(r))≈Vb(RDb(r)))這里,Vo(RDo(r))表示OPSTi中讀操作r所讀到的數據對象RDo(r)的值;Vb(RDb(r))表示BTi中讀操作r所讀到的數據對象RDb(r)的值;2)在樂觀執(zhí)行階段,移動分布式實時事務(MDRTT)的所有子事務在相應固定數據庫服務器(FDS)上樂觀執(zhí)行;一旦進入驗證提交階段,固定數據庫服務器(FDS)為相應樂觀子事務觸發(fā)一基事務來進行一致性驗證和安全性檢查,其中基事務與相應樂觀子事務有相同的操作序列和存取數據對象集;3)在驗證提交階段,基事務的執(zhí)行采用基于鎖的并發(fā)控制機制,其中設計了三種鎖類型讀鎖(R鎖)、寫鎖(X鎖)和相似鎖(S鎖);當一個基事務在某個數據對象D上執(zhí)行讀操作或寫操作,它首先申請D上的讀鎖(R鎖)或寫鎖(X鎖),若并發(fā)控制管理器沒檢測到操作沖突,它授予該基事務相應的鎖;若檢測到操作沖突,它判斷沖突操作是否為相似操作,若相似,則授予相應的相似鎖(S鎖)。
5.根據權利要求4所述的適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議——方法,其特征是驗證提交階段的具體操作過程如下設BTS表示某一固定數據庫服務器(FDS)上基事務的集合,Ti∈BTS,MCS(Ti)={Ti,1,Ti,2,…,Ti,m};假定Ti正在請求數據對象D上的鎖,Ti,k(k=1,2,…,m)已持有D上的鎖;Op(Ti)表示Ti申請對D上鎖的操作,Op(Ti,k)表示Ti,k持有D上鎖的操作;PCS(Op(Ti))表示與Op(Ti)沖突的操作集,即PCS(Op(Ti))={Op(Ti,1),Op(Ti,2),…,Op(Ti,m)};安全混合樂觀實時并發(fā)控制協(xié)議(SHORTCC)可描述如下IF(P(Ti)>max(P(Ti,k)))//k=1,2,…,m{IF(Op(Ti,k)∈PCS(Ti)(Op(Ti,k)≈Op(Ti)))Ti獲得它所請求的S鎖;ELSETi獲得相應的R鎖或X鎖,Ti,k被夭折,若Ti,k為某MDRTT的基事務,夭折消息被發(fā)送給該MDRTT的協(xié)調者,協(xié)調者根據MDRTT的截止期決定是終止或重啟該MDRTT;}ELSE{IF(Op(Ti,k)∈PCS(Ti)(Op(Ti,k)≈Op(Ti)))Ti獲得它所請求的S鎖;ELSE{IF(ω×SVF(Ti,HCMCS(Ti))>(1-ω)×RTIF(Ti,LPMCS(Ti)))夭折Ti并向相應協(xié)調者發(fā)送夭折消息;ELSE阻塞Ti;}}在上面的描述中,ω和(1-ω)分別表示安全性和實時性在系統(tǒng)中所占重要性的程度。
全文摘要
一種適合移動分布式實時數據庫的安全實時并發(fā)控制協(xié)議(SHORTCC協(xié)議)。本發(fā)明將移動分布式實時事務的執(zhí)行分為樂觀執(zhí)行階段和基于高優(yōu)先級夭折兩段鎖的驗證提交階段;通過相似性概念,給出了相似可串行化標準,對傳統(tǒng)的沖突可串行化標準進行了放松,以提高事務的并發(fā)度;在驗證提交階段除確保并發(fā)事務調度的相似可串行化以外,引入了安全性檢查當存在對安全性違背的可能性,則通過比較安全違背因子和實時影響因子,以決定是阻塞還是夭折驗證事務;用戶可以通過對安全違背因子和實時影響因子權值的調整來更好的適應不同應用的需求。本發(fā)明適用于電子商務、無線股票交易、電網調度、軍事指揮系統(tǒng)等領域。
文檔編號G06F17/30GK1975675SQ20061013010
公開日2007年6月6日 申請日期2006年12月13日 優(yōu)先權日2006年12月13日
發(fā)明者肖迎元, 張樺 申請人:天津理工大學