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