專利名稱:一種狀態(tài)轉(zhuǎn)移方法及其裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線通信技術(shù)領(lǐng)域,尤其涉及一種狀態(tài)轉(zhuǎn)移方法及其裝置。
背景技術(shù):
路測是無線網(wǎng)絡(luò)優(yōu)化的重要組成部分。在路測過程中,需要根據(jù)收到的信令產(chǎn)生一系列關(guān)鍵事件,路測人員根據(jù)這些關(guān)鍵事件,就可以知道測試過程,并且對關(guān)鍵事件進行統(tǒng)計生成報表,就可以了解網(wǎng)絡(luò)的質(zhì)量,從而進行優(yōu)化。關(guān)鍵事件的產(chǎn)生通常是由狀態(tài)機驅(qū)動。即,建立一個狀態(tài)機,根據(jù)信令、測試手機或者測試模塊上報的狀態(tài),來驅(qū)動狀態(tài)機,每進入一個新的狀態(tài),并且該次狀態(tài)轉(zhuǎn)移配置了要發(fā)送的關(guān)鍵事件,則發(fā)送該狀態(tài)對應(yīng)的關(guān) 鍵事件。在現(xiàn)有技術(shù)中,進行狀態(tài)轉(zhuǎn)移時,通常需要將該狀態(tài)對應(yīng)的每一個轉(zhuǎn)移條件,按照順序進行條件測試,直到有一個條件為true,則結(jié)束條件測試,轉(zhuǎn)移到一個新的狀態(tài)。例如,假設(shè)在A狀態(tài)(簡稱A,下同),對應(yīng)A共有5個條件,且分別在滿足條件的情況下轉(zhuǎn)移到X、B、Y、Z和M,則當(dāng)進行狀態(tài)轉(zhuǎn)移時,需要按照順序分別檢測由A轉(zhuǎn)移到X的條件、由A轉(zhuǎn)移到B的條件、由A轉(zhuǎn)移到Y(jié)的條件、由A轉(zhuǎn)移到Z的條件和由A轉(zhuǎn)移到M的條件是否滿足,并當(dāng)測試到某個條件為true時,停止條件測試,并轉(zhuǎn)移到對應(yīng)的狀態(tài)。若將測試第一個條件就發(fā)現(xiàn)條件返回true的情況稱為首次命中,則可以定義如下首次命中率首次命中率=首次命中次數(shù)/狀態(tài)轉(zhuǎn)移次數(shù)?,F(xiàn)有技術(shù)中,進行狀態(tài)轉(zhuǎn)移時首次命中率較低,完成狀態(tài)轉(zhuǎn)移消耗的資源和時間較多。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種狀態(tài)轉(zhuǎn)移方法及其裝置,以提高狀態(tài)機的效率。為了達到以上目的,本發(fā)明實施例提供了一種狀態(tài)轉(zhuǎn)移方法,包括當(dāng)進行狀態(tài)轉(zhuǎn)移時,根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息;根據(jù)所述命中信息確定各條件的測試優(yōu)先級,并按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回true時,停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移。本發(fā)明實施例還提供一種狀態(tài)轉(zhuǎn)移裝置,包括獲取模塊,用于當(dāng)進行狀態(tài)轉(zhuǎn)移時,根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息;確定模塊,用于根據(jù)所述命中信息確定各條件的測試優(yōu)先級;處理模塊,用于按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回true時,停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移。
在本發(fā)明上述實施例中,當(dāng)進行狀態(tài)轉(zhuǎn)移時,根據(jù)當(dāng)前狀態(tài)獲取從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息,并根據(jù)該命中信息確定各條件的測試優(yōu)先級,進而按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回true時,停止條件測試,并進行對應(yīng)的狀 態(tài)轉(zhuǎn)移,提聞了進行狀態(tài)轉(zhuǎn)移時的首次命中率,進而提聞狀態(tài)機的效率。
圖I為本發(fā)明實施例提供的一種狀態(tài)轉(zhuǎn)移方法的流程示意圖;圖2為本發(fā)明實施例提供的一種狀態(tài)轉(zhuǎn)移裝置的結(jié)構(gòu)示意圖。
具體實施例方式針對上述現(xiàn)有技術(shù)的缺陷,本發(fā)明實施例提供了一種狀態(tài)轉(zhuǎn)移的技術(shù)方案。在該技術(shù)方案中,當(dāng)進行狀態(tài)轉(zhuǎn)移時,可以根據(jù)當(dāng)前狀態(tài)獲取從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息,并根據(jù)該命中信息確定各條件的測試優(yōu)先級,進而按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回true時(即發(fā)生條件命中),停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移,提高了進行狀態(tài)轉(zhuǎn)移時的首次命中率,進而提高狀態(tài)機的效率。為了更好地理解本發(fā)明實施例提供的技術(shù)方案,下面對狀態(tài)機的相關(guān)屬性進行簡單的描述。在現(xiàn)有技術(shù)中,通常使用配置文件對狀態(tài)機進行描述,包括狀態(tài)轉(zhuǎn)移的條件,然后用一個狀態(tài)機通用處理框架來驅(qū)動狀態(tài)機,實現(xiàn)狀態(tài)轉(zhuǎn)移。其中,對于狀態(tài)機的配置文件描述將狀態(tài)機在配置文件中進行描述,每個狀態(tài)由條件部分和狀態(tài)描述部分組成。I)條件節(jié)點包括條件名稱(name屬性),期待的信令名字(Expected Signal屬性,表不信令名稱,例如RRC Connection Request (Radio Resource Control ConnectionRequest,無線資源控制連接請求)),需要在信令中匹配的字符串(match節(jié)點)。例如
〈Condition name = Cl type=,,config” Expected Signal=,,this— signalling—name” >
〈match key="a I" value="this_value"/>
〈match key="a_2" value="this_value2"/>
</ Condition >其中,type分為“config”和“trigger”,2個類型,可擴展。如果類型為triger,則需要定義一個對應(yīng)名稱的函數(shù),硬編碼來實現(xiàn)該條件的判斷;如果為類型config,則由通用處理框架,自動判斷收到的信令和期待的信令是否相同,以及匹配的字符串是否相同,如果都相同,貝1J返回true,否則返回false。2)狀態(tài)節(jié)點狀態(tài)節(jié)點詳細描述狀態(tài),包括狀態(tài)名稱(name屬性),是否開始節(jié)點(isbegin屬性),是否結(jié)束節(jié)點(isEnd屬性),當(dāng)前狀態(tài)應(yīng)該產(chǎn)生的關(guān)鍵事件(EventName屬性),關(guān)鍵事件描述信息(EventExtraInfo屬性)。例如
<statedetail name = “This_state” isbegin=false isEnd^falseEventN ame=,,Thi s—Event” E ventExtr alnfo=,,,,〉
〈Change Condition=’’ ( C1&&C2 ) ||C3” nextstate=’’Another—State”
/>
</statedetail>其中,每個Change節(jié)點表示一個狀態(tài)轉(zhuǎn)移,對應(yīng)有轉(zhuǎn)移的觸發(fā)條件(Condition屬性),以及下一個狀態(tài)是什么(nextstate屬性)。完整的例子如下
〈State〉
〈Condition name = Cl type=’’config” ExpectedSignal=’’ this_signalling —name,,/〉
〈match key="a_l" value="this_value"/>
〈match key="a_2" value="this_value2 "/>
</Conditon>
〈Condition name = C2 type=,,triger” />
〈Condition name = C3 type=’’config” ExpectedSignal=’’ another—signalling —name” >
〈match key="b I" value="this_value"/>
〈match key="b_2" value="thi s_value2 "/>
</Conditon>
〈Condition name = C4 type=,,triger” />
<statedetail name = “This_state” isbegin=false isEnd=falseEventName=”This_Event” EventExtralnfo=,,” >
〈ChangeCondition=”Cl&&C2”
nextstate=”Another_State” />
權(quán)利要求
1.一種狀態(tài)轉(zhuǎn)移方法,其特征在于,包括 當(dāng)進行狀態(tài)轉(zhuǎn)移時,測試設(shè)備根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中息; 所述測試設(shè)備根據(jù)所述命中信息確定各條件的測試優(yōu)先級,并按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回trne時,停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移。
2.如權(quán)利要求I所述的方法,其特征在于,所述命中信息為命中次數(shù)或命中率;所述測試優(yōu)先級與所述命中次數(shù)或命中率正相關(guān)。
3.如權(quán)利要求2所述的方法,其特征在于,所述測試設(shè)備根據(jù)所述命中信息確定各條件的測試優(yōu)先級之前,還包括 所述測試設(shè)備根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時對各條件進行條件測試的測試耗時信息; 所述測試設(shè)備根據(jù)所述命中信息確定各條件的測試優(yōu)先級,具體為 所述測試設(shè)備根據(jù)的原則對從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時的各條件進行排列,得到if種排列;其中,η為從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時的條件的總數(shù);所述測試設(shè)備根據(jù)所述命中信息和所述測試耗時信息,分別確定按照所述P:種排列中各種排列順序依次對各條件進行條件測試時測試耗時的期望值; 所述測試設(shè)備根據(jù)所述期望值最低的排列中各條件的排列順序確定各條件的測試優(yōu)先級。
4.如權(quán)利要求3所述的方法,其特征在于,所述測試設(shè)備按照P:種排列中各排列中各條件的排列順序依次對各條件進行條件測試時測試耗時的期望值E (t)具體通過以下公式確定E(t) = PJ1+(I-P1) P2 (ti+t2)+·· · (I-P1) (I-P2). . . (I-Prrl) Pn (w. ··+tn) +(I-P1)(I-P2). . . (I-Prrl) (I-Pn) (w.. . tn) 其中,Pi為各排列中位于第i位的條件的命中率,ti為各排列中位于第i位的條件進行條件測試時的耗時。
5.如權(quán)利要求1-4任一項所述的方法,其特征在于,所述停止條件測試并進行對應(yīng)的狀態(tài)轉(zhuǎn)移之后,還包括 所述測試設(shè)備確定從所述當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移的首次命中率,并當(dāng)所述首次命中率超過閾值時,將此次條件測試時各條件的測試優(yōu)先級作為該各條件的固定測試優(yōu)先級。
6.如權(quán)利要求1-4任一項所述的方法,其特征在于,該方法還包括 所述測試設(shè)備根據(jù)條件測試的結(jié)果更新獲取到的各條件的命中信息,并根據(jù)更新后的各條件的命中信息更新數(shù)據(jù)庫中存儲的對應(yīng)的條件的命中信息。
7.如權(quán)利要求6所述的方法,其特征在于,所述測試設(shè)備根據(jù)更新后的各條件的命中信息更新數(shù)據(jù)庫中存儲的對應(yīng)的條件的命中信息,具體為 所述測試設(shè)備將所述更新后的各條件的命中信息保存到內(nèi)存中,并當(dāng)達到預(yù)設(shè)條件時,根據(jù)所述內(nèi)存中保存的各條件的命中信息更新數(shù)據(jù)庫中對應(yīng)的條件的命中信息;其中,所述達到預(yù)設(shè)條件包括 達到預(yù)設(shè)的時間、達到預(yù)設(shè)的周期、或發(fā)生預(yù)設(shè)的事件。
8.如權(quán)利要求I所述的方法,其特征在于,所述當(dāng)進行狀態(tài)轉(zhuǎn)移具體為 當(dāng)所述測試設(shè)備接收到被測設(shè)備發(fā)送的測試信令時,確定該測試信令對應(yīng)的業(yè)務(wù)類型; 所述測試設(shè)備根據(jù)所述業(yè)務(wù)類型查詢對應(yīng)的狀態(tài)機,并確定所述狀態(tài)機的當(dāng)前狀態(tài); 所述測試設(shè)備依次對各條件進行條件測試,具體為 所述測試設(shè)備依次將所述各條件與所述測試信令對應(yīng)的條件進行匹配,并當(dāng)匹配成功時,返回true。
9.如權(quán)利要求8所述的方法,其特征在于,所述進行對應(yīng)的狀態(tài)轉(zhuǎn)移之后,還包括 所述測試設(shè)備確定所述狀態(tài)機進行狀態(tài)轉(zhuǎn)移后的當(dāng)前狀態(tài),并輸出該當(dāng)前狀態(tài)對應(yīng)的關(guān)鍵事件。
10.一種狀態(tài)轉(zhuǎn)移裝置,其特征在于,包括 獲取模塊,用于當(dāng)進行狀態(tài)轉(zhuǎn)移時,根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息; 確定模塊,用于根據(jù)所述命中信息確定各條件的測試優(yōu)先級; 處理模塊,用于按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回true時,停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移。
11.如權(quán)利要求10所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于,所述命中信息為命中次數(shù)或命中率;所述測試優(yōu)先級與所述命中次數(shù)或命中率正相關(guān)。
12.如權(quán)利要求11所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于, 所述獲取模塊還用于,根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時對各條件進行條件測試的測試耗時信息; 所述確定模塊具體用于,根據(jù)if的原則對從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時的各條件進行排列,得到P:種排列;根據(jù)所述命中信息和所述測試耗時信息,分別確定按照所述if種排列中各排列中各條件的排列順序依次對各條件進行條件測試時測試耗時的期望值;根據(jù)所述期望值最低的排列中各條件的排列順序確定各條件的測試優(yōu)先級;其中,η為從當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時的條件的總數(shù)。
13.如權(quán)利要求12所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于,所述確定模塊具體用于,通過以下公式實現(xiàn)確定按照所述if種排列中各排列中各條件的排列順序依次對各條件進行條件測試時測試耗時的期望值E (t)E(t) = PJ1+(I-P1) P2 (ti+t2)+·· · (I-P1) (I-P2). . . (I-Prrl) Pn (w. ··+tn) +(I-P1)(I-P2). . . (I-Prrl) (I-Pn) (t^ta+.. . +tn) 其中,Pi為各排列中位于第i位的條件的命中率,ti為各排列中位于第i位的條件進行條件測試時的耗時。
14.如權(quán)利要求10-13任一項所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于, 所述處理模塊還用于,停止條件測試并進行對應(yīng)的狀態(tài)轉(zhuǎn)移之后,確定從所述當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移的首次命中率,并當(dāng)所述首次命中率超過閾值時,將此次條件測試時各條件的測試優(yōu)先級作為該各條件的固定測試優(yōu)先級。
15.如權(quán)利要求10-13任一項所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于,還包括 更新模塊,用于根據(jù)條件測試的結(jié)果更新獲取到的各條件的命中信息,并根據(jù)更新后的各條件的命中信息更新數(shù)據(jù)庫中存儲的對應(yīng)的條件的命中信息。
16.如權(quán)利要求15所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于, 所述更新模塊具體用于,將所述更新后的各條件的命中信息保存到內(nèi)存中,并當(dāng)達到預(yù)設(shè)條件時,根據(jù)所述內(nèi)存中保存的各條件的命中信息更新數(shù)據(jù)庫中對應(yīng)的條件的命中信息; 其中,所述達到預(yù)設(shè)條件包括 達到預(yù)設(shè)的時間、達到預(yù)設(shè)的周期、或發(fā)生預(yù)設(shè)的事件。
17.如權(quán)利要求10所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于,還包括 接收模塊,用于接收被測設(shè)備發(fā)送的測試信令; 所述獲取模塊具體用于,當(dāng)所述接收模塊接收到測試信令時,確定該測試信令對應(yīng)的業(yè)務(wù)類型;根據(jù)所述業(yè)務(wù)類型查詢對應(yīng)的狀態(tài)機,并確定所述狀態(tài)機的當(dāng)前狀態(tài)。
18.如權(quán)利要求17所述的狀態(tài)轉(zhuǎn)移裝置,其特征在于,所述處理模塊還用于,確定所述狀態(tài)機進行狀態(tài)轉(zhuǎn)移后的當(dāng)前狀態(tài),并輸出該當(dāng)前狀態(tài)對應(yīng)的關(guān)鍵事件。
全文摘要
本發(fā)明公開了一種狀態(tài)轉(zhuǎn)移方法及其裝置,該方法包括當(dāng)進行狀態(tài)轉(zhuǎn)移時,測試設(shè)備根據(jù)當(dāng)前狀態(tài)獲取從該當(dāng)前狀態(tài)進行狀態(tài)轉(zhuǎn)移時各條件的命中信息;所述測試設(shè)備根據(jù)所述命中信息確定各條件的測試優(yōu)先級,并按照測試優(yōu)先級從高到低的順序,依次對各條件進行條件測試,并當(dāng)返回trne時,停止條件測試,并進行對應(yīng)的狀態(tài)轉(zhuǎn)移。在本發(fā)明中,提高了測試設(shè)備中狀態(tài)機進行狀態(tài)轉(zhuǎn)移的效率。
文檔編號H04W24/02GK102857946SQ201210082560
公開日2013年1月2日 申請日期2012年3月26日 優(yōu)先權(quán)日2012年3月26日
發(fā)明者余再躍, 馬軍 申請人:大唐移動通信設(shè)備有限公司, 上海大唐移動通信設(shè)備有限公司