一種局域網(wǎng)隨機服務(wù)系統(tǒng)的響應(yīng)質(zhì)量控制方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種局域網(wǎng)隨機服務(wù)系統(tǒng)的響應(yīng)質(zhì)量控制方法。
【背景技術(shù)】
[0002] 目前,智能家居協(xié)議標準眾多,普遍使用的協(xié)議標準包括三星公司支持的0IC,蘋 果公司的HomeKit,高通公司主導(dǎo)的Allseen聯(lián)盟以及UPnP協(xié)議。前三種協(xié)議的技術(shù)體系 完善,但較復(fù)雜,需要較多的硬件資源。UPnP協(xié)議因具有體積小,與媒體和傳輸類型無關(guān),消 耗硬件資源少,擴展性強和適合做小規(guī)模服務(wù)等優(yōu)勢,已成為應(yīng)用最為廣泛的智能家居協(xié) 議標準。但在服務(wù)發(fā)現(xiàn)過程中,控制端同時處理大量服務(wù)響應(yīng)消息時,容易出現(xiàn)嚴重的消息 擁塞或丟失問題。在早期的UPnP開發(fā)過程中,每個服務(wù)類型的發(fā)現(xiàn)響應(yīng)對應(yīng)一個XML消息, 每增加一項服務(wù)響應(yīng)只需添加一個XML消息,不必更新全部服務(wù)響應(yīng)信息。隨著支持UPnP 協(xié)議的智能家居設(shè)備數(shù)量和種類日益增多,設(shè)備提供的服務(wù)類型更加豐富。網(wǎng)絡(luò)中大量XML 消息的集中返回情況也隨之頻繁出現(xiàn),成為控制端消息"擁塞"甚至丟失的主要原因。智能 家居網(wǎng)絡(luò)設(shè)備通常包括控制端和設(shè)備端兩部分。一般地,支持UPnP協(xié)議的設(shè)備端(簡稱 "設(shè)備端")在最大時延范圍內(nèi)獨立選擇延時來發(fā)送響應(yīng)消息,當發(fā)送延時接近時,大量響應(yīng) 消息將在支持UPnP協(xié)議的控制端(簡稱"控制端")緩存單元排隊等待??刂贫税凑障鹊?先服務(wù)的原則處理響應(yīng)消息,且其消息處理時間的過程是無記憶的。這些特征表明該系統(tǒng) 是典型的無記憶隨機服務(wù)系統(tǒng)。當控制端的緩存隊列長度不足,響應(yīng)消息溢出,服務(wù)發(fā)現(xiàn)的 可靠性降低;當緩存隊列長度過長,響應(yīng)消息排隊延時延長,服務(wù)發(fā)現(xiàn)的實時性下降。
[0003] 針對傳統(tǒng)的UPnP服務(wù)發(fā)現(xiàn)算法無法處理消息"擁塞"問題,文獻[ChenEnyi,Shi Yuanchun,XuGuang.EvaluationandimprovementofUPnPservicealgorithm[J]. JournalofTsinghuaUniversity(ScienceandTechnology),2〇〇6,4 :〇4〇.(陳恩義,史 元春,徐光.UPnP服務(wù)發(fā)現(xiàn)算法性能分析與改進[J].清華大學(xué)學(xué)報(自然科學(xué)版),2006, 4 :040.)]在設(shè)備端開辟一個數(shù)據(jù)結(jié)構(gòu)保存整個UPnP網(wǎng)絡(luò)的能力,通過調(diào)度設(shè)備端的發(fā)送 延時以避免大量響應(yīng)消息集中返回,該方法需要頻繁更新數(shù)據(jù)結(jié)構(gòu)才能保證UPnP網(wǎng)絡(luò)能 力的實時性和準確性。文獻[WangZ,ZhaoJ.ImprovedalgorithmforUPnPdiscovery insmartspace[C]//SoftwareEngineeringandServiceScience(ICSESS),2012IEEE 3rdInternationalConferenceon.IEEE,2012 :519-522.]綜合考慮了整個UPnP網(wǎng)絡(luò),設(shè) 計一種自適應(yīng)的最大查詢時間算法,通過擴大最大延時時間實時發(fā)現(xiàn)設(shè)備/服務(wù),但延緩 了服務(wù)發(fā)現(xiàn)過程的時間。文獻[Shi-CaiY,WuYZ,GuoRN.AUPnP-basedDecentralized ServiceDiscoveryImprovedAlgorithm[C]//ComputationalandInformation Sciences(ICCIS),2013FifthInternationalConferenceon.IEEE,2013 :1413-1416.] 在路由器節(jié)點處設(shè)置緩存區(qū)來存儲服務(wù)響應(yīng)消息,將控制端處的排隊壓力轉(zhuǎn)移至路由節(jié) 點,但是并未考慮不同的緩存隊列長度對排隊系統(tǒng)性能的影響。
[0004] 排隊論是一種用于分析隨機服務(wù)系統(tǒng)的理論。針對服務(wù)擁塞問題,其研究內(nèi)容是 在服務(wù)器容量與系統(tǒng)整體性能之間尋找最優(yōu)服務(wù)方案。文獻[YanYingzhan,TianLiwei. AKindofActivequeuecongestioncontrolalgorithmbasedonqueuetheory[J].JournalofSouthNormalUniversity(ScienceandTechnology),2012,44(1) :63~66. (閆英戰(zhàn),田立偉.一種基于排隊論的主動隊列擁塞控制算法[J].華南師范大學(xué)學(xué)報, 2012,44(1) :63-66.)等]在排隊模型理想隊長的基礎(chǔ)上添加擴充因子,解決了數(shù)據(jù)滯留和 丟失問題,但并未考慮排隊系統(tǒng)在不同系統(tǒng)性能(如可靠性和實時性)下對緩存隊列長度 的影響。
[0005] 鑒于智能家居系統(tǒng)的實時性和可靠性雙重要求,有必要設(shè)計一種局域網(wǎng)隨機服務(wù) 系統(tǒng)的響應(yīng)質(zhì)量控制方法。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明所要解決的技術(shù)問題是提供一種局域網(wǎng)隨機服務(wù)系統(tǒng)的響應(yīng)質(zhì)量控制方 法,該局域網(wǎng)隨機服務(wù)系統(tǒng)的響應(yīng)質(zhì)量控制方法能兼顧實時性和可靠性,控制效果理想。
[0007] 發(fā)明的技術(shù)解決方案如下:
[0008] -種局域網(wǎng)隨機服務(wù)系統(tǒng)的響應(yīng)質(zhì)量控制方法,其特征在于,基于給定的損益系
數(shù)C1計算最佳緩存長虔 以兼顧發(fā)現(xiàn)服務(wù)的實時性和準 確性;
[0009] 其中,c2為等待損益,有1 >c:> 0,c2> 0且c#2= 1;
[0010] 。其中,p為傳輸強度;
[0011] 理論上,cl彡0,但是在本發(fā)明中,cl只能取大于0,這樣才能實現(xiàn)兼顧的目標。特 此說明。
[0012] 其中int(.)為取整函數(shù)。
[0013] 其中公式中涉及的中括號是普通的括號并不是取整符號。服務(wù)強度P的值由單 位時間內(nèi)進入緩存隊列的響應(yīng)消息個數(shù)與單位時間內(nèi)控制端處理的響應(yīng)消息的個數(shù)的比 值決定。
[0014]Cl取值為 0? 1,0.2,……,0.9。
[0015]Cl取值為0? 1到0? 9之間的實數(shù)。
[0016] 在不同場景下,對系統(tǒng)的實時性和可靠性有不同要求。Cl反映的是系統(tǒng)的實時性, 其值在不同情況下有不同的最優(yōu)值。
[0017]UPnP服務(wù)發(fā)現(xiàn)問題描述
[0018]UPnP網(wǎng)絡(luò)設(shè)備由控制端和設(shè)備端組成。在智能家居系統(tǒng)中,控制端是手機或平 板等便攜式智能終端,設(shè)備端包含空調(diào)、電視機和冰箱等基于UPnP協(xié)議開發(fā)的智能家電設(shè) 備。支持UPnP協(xié)議的網(wǎng)絡(luò)模型通常由一個控制端和多個設(shè)備端組成,其他的控制設(shè)備也可 以根據(jù)權(quán)限等級來同時控制這些家居設(shè)備,以此構(gòu)成智能家居的自動發(fā)現(xiàn)網(wǎng)絡(luò)。UPnP服務(wù) 發(fā)現(xiàn)過程的場景如圖1所示。
[0019]手機或平板等控制端進入家庭網(wǎng)絡(luò)后,在整個網(wǎng)絡(luò)中廣播服務(wù)發(fā)現(xiàn)請求以便獲取 在線可控的設(shè)備和服務(wù)??照{(diào)、電視等智能家電設(shè)備監(jiān)聽到服務(wù)發(fā)現(xiàn)請求后,將設(shè)備信息和 不同的服務(wù)信息封裝成XML消息返回給控制端。UPnP協(xié)議規(guī)定,每增加一個設(shè)備端(包括 d種嵌入式設(shè)備和k種服務(wù)類型),響應(yīng)消息數(shù)增加(3+2d+k)個。設(shè)備端提供的服務(wù)越豐 富,返回的響應(yīng)消息數(shù)越多。圖2示出了UPnP服務(wù)發(fā)現(xiàn)過程。
[0020] 設(shè)備端監(jiān)聽到服務(wù)發(fā)現(xiàn)請求后,在比較密集的時間內(nèi)向控制端發(fā)送響應(yīng)消息。到 達控制端后,在緩存單元排隊,并按照先到先服務(wù)的原則處理響應(yīng)消息。當響應(yīng)消息過多 時,緩存隊列長度不足,響應(yīng)消息溢出,造成響應(yīng)消息的丟失,服務(wù)發(fā)現(xiàn)的可靠性降低;當響 應(yīng)消息過少時,緩存隊列長度過長,響應(yīng)消息排隊延時延長,服務(wù)發(fā)現(xiàn)的實時性下降。為綜 合考慮服務(wù)發(fā)現(xiàn)的實時性和可靠性,建立基于系統(tǒng)指標損益制的響應(yīng)消息隊列模型。
[0021] 響應(yīng)消息隊列模型
[0022] 通過分析如圖2所示的UPnP服務(wù)發(fā)現(xiàn)過程,可以建立相應(yīng)的排隊流程圖(見圖 3) 〇
[0023] 圖中每個圓圈代表一個響應(yīng)消息,響應(yīng)消息進入消息隊列后,采用FCFS(先到先 服務(wù))的方式對該響應(yīng)消息隊列進行處理。在UPnP設(shè)備發(fā)現(xiàn)的過程中,設(shè)網(wǎng)絡(luò)中只有一個 控制端,網(wǎng)絡(luò)中的其他控制端可以同樣處理;由于設(shè)備端在監(jiān)聽到服務(wù)發(fā)現(xiàn)請求后,在最大 時延范圍內(nèi)獨立選擇發(fā)送響應(yīng)消息,可以設(shè)響應(yīng)消息到達過程符合參數(shù)為A的泊松分布, 其中A為單位時間內(nèi)進入緩存隊列的響應(yīng)消息個數(shù);另外,控制端對消息的處理是無記憶 性的,可以設(shè)控制端處理響應(yīng)消息的時間服從參數(shù)為y的指數(shù)分布,其中y為單位時間內(nèi) 控制端處理的響應(yīng)消息個數(shù)。
[0024] 根據(jù)以上三個假設(shè),本發(fā)明采用排隊論的M/M/1/ -4莫型來描述該服務(wù)發(fā)現(xiàn)過程, 得到響應(yīng)消息隊列模型的狀態(tài)轉(zhuǎn)移圖(見圖4)。
[0025] 圖中的每個狀態(tài)代表響應(yīng)消息隊列中的響應(yīng)消息個數(shù)。比如狀態(tài)0表示該隊列 中沒有響應(yīng)消息,處于空閑狀態(tài);狀態(tài)k表示響應(yīng)消息隊列中有k個響應(yīng)消息,其中一個 在接收控制端的服務(wù),k_l個在排隊。記響應(yīng)消息隊列在狀態(tài)k時的概率為Pk,服務(wù)強度 根據(jù)響應(yīng)消息隊列的狀態(tài)轉(zhuǎn)移圖,有⑴式。
[0026]
[0027] 于是求得,
[0028]
[0029] 設(shè)最佳緩存長度為L。,實際需要的隊列長度為L。當大量的響應(yīng)消息涌向控制端 時,響應(yīng)消息不能全部進入緩存隊列,部分響應(yīng)消息被丟棄,表示緩存隊列長度不足,即L。 <L。記被丟棄的平均響應(yīng)消息數(shù)為1,其計算如下:
[0030]
[0031] 由等比壓縮數(shù)列求和極限公式可得:
[0032]
[0033] 當只有少量響應(yīng)消息返回給控制端時,緩存隊列沒有被完全占用,表示緩存隊列 過長。設(shè)此時沒有占用緩存隊列的平均響應(yīng)數(shù)為Mp,計算如下:
[0034]
[0035] 由于緩存隊列長度過大或過小都會給控制端帶來損失,為定量描述損失程度,設(shè) 計了控制端處理消息響應(yīng)的代價指標T(L。)。當用戶注重發(fā)現(xiàn)服務(wù)的實時性時,減少緩存隊 列的長度可以縮短隊列中響應(yīng)消息的排隊延時,使響應(yīng)消息能夠被控制端迅速處理,但會 造成部分響應(yīng)消息丟失。設(shè)由于緩存隊列長度過小,不能及時處理響應(yīng)消息而造成的響應(yīng) 損益為Cl。當用戶側(cè)重發(fā)現(xiàn)服務(wù)的準確性,即每個服務(wù)都必須被控制端處理時,增加緩存隊 列長度能夠保證每個響應(yīng)消息都在隊列中等待處理,但過長的緩存隊列長度會引起較長的 時