專利名稱:Web服務質(zhì)量的分布式測量系統(tǒng)和方法
技術(shù)領域:
本發(fā)明涉及一種Web服務質(zhì)量QoS的分布式測量系統(tǒng)和方法,特別是涉及一種基于分布式架構(gòu)的Web服務質(zhì)量測量的方法和系統(tǒng),屬于計算機和網(wǎng)絡通信的技術(shù)領域。
背景技術(shù):
Web服務是一種面向服務架構(gòu)(Service-Oriented Architecture)的技術(shù),通過標準的Web協(xié)議提供服務,保證不同平臺的應用服務可以互操作,其通信協(xié)議主要基于S0AP,通過UDDI來發(fā)現(xiàn)和獲得服務的元數(shù)據(jù)。由于因特網(wǎng)的動態(tài)性和不可預知性,相同服務在不同的用戶端的呈現(xiàn)結(jié)果差異較大,同時網(wǎng)絡中功能相同或相似的Web服務眾多,如何針對不同地域、不同網(wǎng)絡環(huán)境的用戶選擇合適的服務已經(jīng)成為一個關(guān)鍵問題?,F(xiàn)有技術(shù)中,有關(guān)Web服務QoS測量或估測的主要有以下實現(xiàn)方式:文獻《DistributedQoS evaluation for real-world Web Services))(刊于:InProc.8th IEEE International Conference on Web Services (ICWS2010),2010,)介紹了一種分布式的Web服務QoS自動測量方法,其設計目的是為基于QoS的Web服務技術(shù)和模型提供真實世界的QoS數(shù)據(jù)集。該方法對Web服務的可靠性、響應時間和吞吐量進行了測量。首先,通過分布在不同地域的用戶調(diào)用Web服務,利用各個用戶的測量結(jié)果計算Web服務的總體可靠性。其次,利用用戶對服務的實際調(diào)用直接為QoS集提供數(shù)據(jù)。該技術(shù)方案中,用戶需要參與實際的Web服務調(diào)用過程,增加了用戶的負擔;且提供的數(shù)據(jù)集屬于原始數(shù)據(jù),對于服務QoS屬性的總體計算方法沒有考慮到服務QoS與地域相關(guān)的特點,僅僅是綜合所有用戶的測量數(shù)據(jù),而不是Web服務在用戶端呈現(xiàn)的QoS,其結(jié)果對于用戶的實際意義不大。文 獻〈〈a scalable hybrid collaborative filtering algorithm forpersonalized Web Service recommendation))(干丨J 于:RegionKNN:1n Proc.8th IEEEInternational Conference on Web Services (ICWS2010),2010)介紹的內(nèi)容:用戶端 QoS估測技術(shù)主體是基于協(xié)同過濾算法實現(xiàn)的:先計算用戶相似度和Web服務相似度,分析找出與被測用戶具有一定相似度的用戶,作為相似鄰居。最后,通過相似Web服務的QoS屬性和相似鄰居的QoS歷史記錄來估算目標用戶端能夠獲得的服務QoS屬性值。該文獻考慮了Web服務QoS地域的相關(guān)特性,并在此基礎上改進了協(xié)同過濾算法:先依據(jù)用戶的地理位置和用戶歷史QoS數(shù)據(jù)的相似度將用戶按照地域進行分割,再利用協(xié)同過濾算法估測用戶端能夠獲得的QoS屬性值。該方法需要用戶向系統(tǒng)提供個人調(diào)用Web服務獲得的QoS數(shù)據(jù)歷史記錄。因此,其QoS數(shù)據(jù)集的來源是用戶使用Web服務時獲得的QoS歷史數(shù)據(jù)。由于Web服務QoS屬性值是動態(tài)變化的,因此依賴于用戶的QoS歷史數(shù)據(jù)會降低QoS估測的準確率。同時獲取QoS數(shù)據(jù)的途徑不可靠,獲取的標準不統(tǒng)一,所以難以應用于實際系統(tǒng)當中。文獻《WSPA Network Coordinate based Web Service Positioning Frameworkfor Response Time Prediction.〉〉(干丨J于:In Proc.19th IEEE International Conferenceon Web Services (ICWS2012),2012)提出的系統(tǒng)與方法是一種基于網(wǎng)絡坐標的分布式框架,用于估測用戶端能夠獲得的服務響應時間:利用網(wǎng)絡坐標距離與網(wǎng)絡延時的對應關(guān)系計算用戶端能夠獲得的服務響應時間。該方法中網(wǎng)絡坐標的計算是基于一種集中式的網(wǎng)絡坐標算法一GNP算法。該方法結(jié)合了網(wǎng)絡坐標定位技術(shù)和傳統(tǒng)的協(xié)同過濾方法,提高了響應時間計算的精確度。其采用的網(wǎng)絡坐標算法是基于GNP方法,這種集中式坐標算法與其系統(tǒng)采用的分布式框架不一致,分布式部署的節(jié)點測量得到的網(wǎng)絡延時都要傳送給一個中心節(jié)點,由中心節(jié)點完成網(wǎng)絡坐標的計算,這樣影響了可擴展性以及計算結(jié)果的實時性。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的是提供一種能夠解決現(xiàn)有技術(shù)缺陷的Web服務質(zhì)量的分布式測量系統(tǒng)和方法,用于為不同地域和/或不同網(wǎng)絡環(huán)境下的用戶快速、準確地提供各種Web服務在用戶端呈現(xiàn)的QoS屬性值(包括響應時間和可靠性);同時,該QoS的估測過程對用戶透明,用戶不需要安裝任何客戶端模塊。且QoS估測所用數(shù)據(jù)不依賴用戶歷史數(shù)據(jù),能夠保證估測的準確度。為了達到上述目的,本發(fā)明提供了一種Web服務的服務質(zhì)量QoS分布式測量系統(tǒng),其特征在于:該系統(tǒng)根據(jù)Web服務QoS估測模型,利用網(wǎng)絡定位技術(shù)分別計算用戶主機、多個測量節(jié)點和Web服務部署主機、即服務部署節(jié)點在抽象的網(wǎng)絡坐標系中的坐標,即網(wǎng)絡坐標,再計算用戶主機與測量節(jié)點的相似度,以便估測用戶能夠獲得的QoS屬性值。設有:中心節(jié)點和多個測量節(jié)點,其中:中心節(jié)點,負責接受和處理用戶主機的請求、對各個測量節(jié)點分別執(zhí)行測量任務的調(diào)度、用戶主機與測量節(jié)點的相似度計算和測量結(jié)果分析;設有四個部件:任務調(diào)度模塊、結(jié)果分析器、相似度計算模塊和數(shù)據(jù)庫;多個測量節(jié)點,分布式部署于該系統(tǒng),負責接收中心節(jié)點發(fā)送的命令,獲取和解析描述Web服務與其接口信息、以及如何與Web服務通信的XML語言WSDL (Web ServicesDescription Language)文件、進行自身和各測量節(jié)點的定位、測量用戶主機及服務部署節(jié)點坐標和測量Web服務QoS ;設有:測量節(jié)點控制模塊、節(jié)點定位更新模塊、WSDL文件解析模塊、服務QoS測量模塊和數(shù)據(jù)庫連接模塊共五個部件。為了達到上述目的,本發(fā)明還提供了一種采用本發(fā)明分布式測量系統(tǒng)的測量方法,其特征在于:所述方法包括下列操作步驟:步驟I,周期測量階段:每個測量節(jié)點的WSDL文件解析模塊解析該Web服務部署節(jié)點的IP地址,節(jié)點定位更新模塊向該IP地址周期發(fā)送Ping消息和計算從自身節(jié)點和服務部署節(jié)點之間傳遞SOAP消息的網(wǎng)絡時延;再以服務部署節(jié)點為目標節(jié)點,采用設定的節(jié)點坐標更新方法更新該服務部署節(jié)點的坐標;測量節(jié)點的服務QoS測量模塊通過調(diào)用Web服務獲取響應時間,并記錄調(diào)用是否成功;步驟2,實時測量階段:中心節(jié)點接收到用戶的服務QoS估測請求時,向各個測量節(jié)點轉(zhuǎn)發(fā)該請求;各個測量節(jié)點收到請求后,分別更新自身的網(wǎng)絡坐標和用戶坐標;中心節(jié)點的相似度計算模塊再計算用戶與各測量節(jié)點的相似度,以供任務調(diào)度模塊選取與用戶相似度最大的K個測量節(jié)點;
該K個測量節(jié)點再次更新用戶和服務部署節(jié)點坐標,并測量服務的響應時間和計算當前服務部署節(jié)點的處理時間;中心節(jié)點的結(jié)果分析器計算用戶能夠獲得的服務響應時間和可靠性。本發(fā)明的關(guān)鍵技術(shù)是:基于分布式架構(gòu)的Web服務質(zhì)量的測量系統(tǒng)及其測量方法能夠快速地、準確地估測不同地域和/或不同網(wǎng)絡環(huán)境下用戶端可以獲得的Web服務QoS(包括響應時間和可靠性),本發(fā)明方法的實時性強,不依賴用戶的歷史QoS數(shù)據(jù),又不給用戶增加額外的負擔,且估測過程全透明。本發(fā)明方法的創(chuàng)新點是將網(wǎng)絡系統(tǒng)映射到多維坐標系中,結(jié)合測量節(jié)點與用戶主機的相似性,推測在用戶端呈現(xiàn)的Web服務的響應時間和可靠性,數(shù)據(jù)真實、可信。與現(xiàn)有技術(shù)相比較,本發(fā)明的優(yōu)點是:提出一種基于網(wǎng)絡坐標模型以及節(jié)點之間相似度的QoS估測方法,本發(fā)明系統(tǒng)與方法利用分布式的測量節(jié)點對基于WSDL的Web服務QoS進行測量,然后根據(jù)測量數(shù)據(jù)對Web服務在用戶端呈現(xiàn)的服務質(zhì)量進行實時估測,即在實際測量數(shù)據(jù)的基礎上進行QoS估測,估測過程對用戶透明,也不依賴于用戶的QoS歷史數(shù)據(jù),且用戶沒有增加任何負擔,對用戶的唯一要求是能接收和響應Ping消息,提高了測量系統(tǒng)的可擴展性。本發(fā)明還考慮了服務QoS動態(tài)變化的特性,同時解決了獲取QoS數(shù)據(jù)的途徑不可靠,獲取的標準不統(tǒng)一的問題,保證了 QoS估測的準確度。再者,本發(fā)明采用的網(wǎng)絡坐標算法是一種分布式算法,各測量節(jié)點的測量過程獨立、互不影響,易于添加新的測量節(jié)點;并且,網(wǎng)絡坐標根據(jù)網(wǎng)絡距離的實時測量值而發(fā)生相應變化,實時性強,能夠滿足用戶對獲取服務實時質(zhì)量屬性的需求。此外,本發(fā)明引入的節(jié)點之間相似度概念,用于選取測量節(jié)點和計算結(jié)果,節(jié)省了系統(tǒng)開銷,保證測量的準確性。因此,本發(fā)明具有很好的推廣應用前景。
圖1是Web服務QoS的分布式測量系統(tǒng)結(jié)構(gòu)組成示意圖。圖2是Web服務QoS的估測模型示意圖(其中Web服務部署節(jié)點代表服務部署主機在幾何空間中的位置)。圖3是Web服務QoS估測方法操作步驟流程圖。圖4是Web服務QoS實時估測階段時序具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖對本發(fā)明作進一步的詳細描述。參見圖1,介紹本發(fā)明Web服務QoS分布式測量系統(tǒng)的結(jié)構(gòu)組成:該系統(tǒng)是根據(jù)Web服務QoS估測模型,利用網(wǎng)絡定位技術(shù)分別計算用戶主機、多個測量節(jié)點和Web服務部署主機(即服務部署節(jié)點)在抽象的網(wǎng)絡坐標系中的坐標,再計算用戶主機與測量節(jié)點的相似度,以便估測用戶能夠獲得的QoS屬性值。系統(tǒng)設有:中心節(jié)點和多個測量節(jié)點。其中:中心節(jié)點,負責接受和處理用戶主機的請求、對各個測量節(jié)點分別執(zhí)行測量任務的調(diào)度、用戶主機與測量節(jié)點的相似度計算和測量結(jié)果分析;設有四個部件:任務調(diào)度模塊、結(jié)果分析器、相似度計算模塊和數(shù)據(jù)庫。各個部件功能簡介如下:任務調(diào)度模塊:作為該中心節(jié)點的控制樞紐,負責各個測量節(jié)點的注冊,接收用戶主機、即用戶QoS的估測請求并作出響應,以及整個系統(tǒng)測量任務的分配:接收到用戶包括其IP地址,需要測量的Web服務在系統(tǒng)中的標識的QoS估測請求時,該任務調(diào)度模塊就向測量節(jié)點發(fā)送測量命令,將該用戶的IP地址分發(fā)給系統(tǒng)中所有測量節(jié)點,并分配測量任務;完成QoS估測后,將結(jié)果返回給用戶。結(jié)果分析器:用于根據(jù)測量到的用戶和服務部署節(jié)點的網(wǎng)絡坐標,以及用戶與各測量節(jié)點的相似度,計算用戶能夠得到的包括響應時間和可靠性的服務QoS屬性值,并將計算結(jié)果存儲于數(shù)據(jù)庫;相似度計算模塊:負責從數(shù)據(jù)庫中獲取用戶和各測量節(jié)點的網(wǎng)絡坐標,根據(jù)用戶至IJ每個測量節(jié)點之間的網(wǎng)絡距離,計算用戶與各個測量節(jié)點的相似度,以供任務調(diào)度模塊和結(jié)果分析器分別利用該相似度值選擇測量節(jié)點和計算用戶能夠獲得的QoS屬性值;該系統(tǒng)中用戶與各測量節(jié)點的相似度取決于兩者之間的網(wǎng)絡距離:距離越近,相似度越高;反之,即距離越遠,則相似度越低;數(shù)據(jù)庫:用于存儲包括用戶、測量節(jié)點和服務部署節(jié)點的最近更新的網(wǎng)絡坐標,以及各測量節(jié)點測量得到服務QoS歷史數(shù)據(jù)。多個測量節(jié)點,分布式部署于該系統(tǒng),負責接收中心節(jié)點發(fā)送的命令,獲取和解析描述Web服務與其接口信息、以及如何與Web服務通信的XML語言WSDL (Web ServicesDescription Language)文件、進行自身和各測量節(jié)點的定位、測量用戶主機及服務部署節(jié)點坐標和測量Web服務QoS ;設有:測量節(jié)點控制模塊、節(jié)點定位更新模塊、WSDL文件解析模塊、服務QoS測量模塊和數(shù)據(jù)庫連接模塊共五個部件。各個部件功能說明如下:測量節(jié)點控制模塊:用于接收中心節(jié)點的命令,與中心節(jié)點的任務調(diào)度模塊交互通信,調(diào)用和控制測量節(jié)點的各個模塊完成各項測量操作。節(jié)點定位更新模塊:用于在測量Web服務QoS前,根據(jù)該測量節(jié)點與其他測量節(jié)點之間的網(wǎng)絡傳輸時延,更新自身節(jié)點的網(wǎng)絡坐標;并分別測量該測量節(jié)點到服務部署節(jié)點和用戶的傳輸時延,以更新兩者的網(wǎng)絡坐標,保證測量結(jié)果的精準度。WSDL文件解析模塊:用于對系統(tǒng)中已獲得Web服務的WSDL文件進行解析,并生成調(diào)用服務所需的客戶端代碼,并將得到的包括服務名稱、服務操作名稱、操作參數(shù)名稱與類型,以及服務地址的解析結(jié)果序列化處理后,存儲在測量節(jié)點中,以供測量服務QoS時使用。服務QoS測量模塊:利用WSDL文件解析模塊解析得到的服務信息和自動生成的客戶端代碼,得到Web服務操作的參數(shù)類型并賦值,再對Web服務進行實際調(diào)用,獲取包括服務的響應時間與調(diào)用是否成功的服務QoS數(shù)值。數(shù)據(jù)庫連接模塊:用于連接數(shù)據(jù)庫,以供測量節(jié)點控制模塊、節(jié)點定位更新模塊和服務QoS測量模塊調(diào)用,完成對數(shù)據(jù)庫中數(shù)據(jù)的讀寫、添加和更新。本發(fā)明系統(tǒng)的網(wǎng)絡坐標是一種用于預測具有可擴展性的互聯(lián)網(wǎng)距離的坐標,該網(wǎng)絡坐標是由節(jié)點的當前坐標值及當前誤差所組成。在網(wǎng)絡系統(tǒng)中,每個節(jié)點只需經(jīng)過少量測量就能夠得到該節(jié)點的網(wǎng)絡坐標;再按照預設的計算方法,利用任意兩個節(jié)點的網(wǎng)絡坐標,就能夠預測兩者之間的網(wǎng)絡距離。
參見圖2,介紹本發(fā)明系統(tǒng)的Web服務QoS估測模型所選取的以歐幾里得空間描述的多維坐標網(wǎng)絡的簡況(圖示為三維坐標系統(tǒng))。整個系統(tǒng)設有:中心節(jié)點、測量節(jié)點、月艮務部署節(jié)點和用戶,其中每個節(jié)點分別與該多維坐標空間中的一個坐標點相對應,且該多維坐標網(wǎng)絡的維數(shù)與測量節(jié)點個數(shù)相同。對系統(tǒng)中的全部N個測量節(jié)點分別按照順序逐個編號,并設定其中第k個測量節(jié)點的第k維坐標初始值為0,其余各維坐標初始值均為隨機值,且其各個坐標值都隨著網(wǎng)絡狀態(tài)的變化而動態(tài)更新(其中,N和k都為自然數(shù),且k小于等于N)。如上所述建立的該網(wǎng)絡坐標系,能夠通過目標用戶節(jié)點、服務部署節(jié)點、測量節(jié)點的不同坐標,計算用戶與各測量節(jié)點的相似度,并對目標用戶能夠獲得的Web服務QoS屬性值(用戶最關(guān)注的是服務響應時間和可靠性)進行估測,本發(fā)明就是用于測量和估測這兩個Web服務QoS屬性數(shù)值,下面簡要說明這兩個參數(shù):(A)響應時間:它是衡量服務性能的最重要指標,且具有與地域相關(guān)和端到端等特點。Web服務調(diào)用需要經(jīng)由網(wǎng)絡傳遞SOAP消息來完成服務請求和響應的傳送,而SOAP消息的傳遞時間則和網(wǎng)絡時延相關(guān);同時,服務響應時間還與服務端的負載有關(guān)。所以,對服務調(diào)用的響應時間進行 了分解:響應時間式中,T1是用戶調(diào)用服務傳遞SOAP消息的網(wǎng)絡往返傳輸時間,Tp是服務的處理執(zhí)行時間。也就是說,響應時間是結(jié)果分析器從數(shù)據(jù)庫獲取用戶坐標和服務部署節(jié)點坐標,計算兩者之間的網(wǎng)絡距離、即簡單對象訪問協(xié)議SOAP(Simple Object Access Protocol)消息在用戶和服務部署主機之間的網(wǎng)絡傳輸時延T1,再加上該服務的處理時間Tp之和。分析發(fā)現(xiàn),測量節(jié)點和用戶主機調(diào)用服務的過程是完全相同的,也就是說,它們之間具有相似性,當用戶與測量節(jié)點的距離越近,相似度越高;兩者越遠,則相似度越低。首先對系統(tǒng)中的全部N個測量節(jié)點分別編號為{1,2,...,N},通過計算某個測量節(jié)點a (a e {1,2,...,N})到其他測量節(jié)點i (i e {1,2,...,N}且i關(guān)a,即除去a的其余測量節(jié)點)的網(wǎng)絡距離Ly和用戶u到測量節(jié)點i的網(wǎng)絡距離Liu,就可以計算出測量節(jié)點a和用戶u的相似度。例如,采用皮爾遜相關(guān)系數(shù)計算相似度的公式:
權(quán)利要求
1.一種Web服務的服務質(zhì)量QoS分布式測量系統(tǒng),其特征在于:該系統(tǒng)根據(jù)Web服務QoS估測模型,利用網(wǎng)絡定位技術(shù)分別計算用戶主機、多個測量節(jié)點和Web服務部署主機、即服務部署節(jié)點在抽象的網(wǎng)絡坐標系中的坐標,即網(wǎng)絡坐標,再計算用戶主機與測量節(jié)點的相似度,以便估測用戶能夠獲得的QoS屬性值;設有:中心節(jié)點和多個測量節(jié)點,其中: 中心節(jié)點,負責接受和處理用戶主機的請求、對各個測量節(jié)點分別執(zhí)行測量任務的調(diào)度、用戶主機與測量節(jié)點的相似度計算和測量結(jié)果分析;設有四個部件:任務調(diào)度模塊、結(jié)果分析器、相似度計算模塊和數(shù)據(jù)庫; 多個測量節(jié)點,分布式部署于該系統(tǒng),負責接收中心節(jié)點發(fā)送的命令,獲取和解析描述Web服務與其接口信息、以及如何與Web服務通信的XML語言WSDL文件、進行自身和各測量節(jié)點的定位、測量用戶主機及服務部署節(jié)點坐標和測量Web服務QoS ;設有:測量節(jié)點控制模塊、節(jié)點定位更新模塊、WSDL文件解析模塊、服務QoS測量模塊和數(shù)據(jù)庫連接模塊共五個部件。
2.根據(jù)權(quán)利要求1所述的分布式測量系統(tǒng),其特征在于:所述中心節(jié)點的各個部件功能如下: 任務調(diào)度模塊,作為該中心節(jié)點的控制樞紐,負責各個測量節(jié)點的注冊,接收用戶主機、即用戶QoS的估測請求并作出響應,以及整個系統(tǒng)測量任務的分配:接收到用戶包括其IP地址,需要測量的Web服務在系統(tǒng)中的標識的QoS估測請求時,該任務調(diào)度模塊就向測量節(jié)點發(fā)送測量命令,將該用戶的IP地址分發(fā)給系統(tǒng)中所有測量節(jié)點,并分配測量任務;完成QoS估測后,將結(jié)果返回給用戶; 結(jié)果分析器,用于根據(jù)測量到 的用戶和服務部署節(jié)點的網(wǎng)絡坐標,以及用戶與各測量節(jié)點的相似度,計算用戶能夠得到的包括響應時間和可靠性的服務QoS屬性值,并將計算結(jié)果存儲于數(shù)據(jù)庫; 相似度計算模塊,負責從數(shù)據(jù)庫中獲取用戶和各測量節(jié)點的網(wǎng)絡坐標,根據(jù)用戶到每個測量節(jié)點之間的網(wǎng)絡距離,計算用戶與各個測量節(jié)點的相似度,以供任務調(diào)度模塊和結(jié)果分析器分別利用該相似度值選擇測量節(jié)點和計算用戶能夠獲得的QoS屬性值;該系統(tǒng)中用戶與各測量節(jié)點的相似度取決于兩者之間的網(wǎng)絡距離:距離越近,相似度越高;反之,即距離越遠,則相似度越低; 數(shù)據(jù)庫,用于存儲包括用戶、測量節(jié)點和服務部署節(jié)點的最近更新的網(wǎng)絡坐標,以及各測量節(jié)點測量得到服務QoS歷史數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的分布式測量系統(tǒng),其特征在于: 所述響應時間是結(jié)果分析器從數(shù)據(jù)庫獲取用戶坐標和服務部署節(jié)點坐標,計算兩者之間的網(wǎng)絡距離、即簡單對象訪問協(xié)議SOAP消息在用戶和服務部署主機之間的網(wǎng)絡傳輸時延L,再加上該服務的處理時間,就是該服務的響應時間; 所述可靠性是結(jié)果分析器根據(jù)數(shù)據(jù)庫中存儲的設定時段內(nèi)的服務調(diào)用結(jié)果,計算該時段內(nèi)每個測量節(jié)點調(diào)用該服務的成功次數(shù)與其總調(diào)用次數(shù)之比,就是每個測量節(jié)點獲得該服務的可靠性數(shù)值,再利用各個測量節(jié)點與用戶的相似度計算該用戶能夠獲得該服務的可靠性數(shù)值;所述設定時段是由用戶自行設定的。
4.根據(jù)權(quán)利要求1所述的分布式測量系統(tǒng),其特征在于:所述測量節(jié)點的各個部件功能如下:測量節(jié)點控制模塊,用于接收中心節(jié)點的命令,與中心節(jié)點的任務調(diào)度模塊交互通信,調(diào)用和控制測量節(jié)點的各個模塊完成各項測量操作; 節(jié)點定位更新模塊,用于在測量Web服務QoS前,根據(jù)該測量節(jié)點與其他測量節(jié)點之間的網(wǎng)絡傳輸時延,更新自身節(jié)點的網(wǎng)絡坐標;并分別測量該測量節(jié)點到服務部署節(jié)點和用戶的傳輸時延,以更新兩者的網(wǎng)絡坐標,保證測量結(jié)果的精準度; WSDL文件解析模塊,用于對系統(tǒng)中已獲得Web服務的WSDL文件進行解析,并生成調(diào)用服務所需的客戶端代碼,并將得到的包括服務名稱、服務操作名稱、操作參數(shù)名稱與類型,以及服務地址的解析結(jié)果序列化處理后,存儲在測量節(jié)點中,以供測量服務QoS時使用;服務QoS測量模塊,利用WSDL文件解析模塊解析得到的服務信息和自動生成的客戶端代碼,得到Web服務操作的參數(shù)類型并賦值,再對Web服務進行實際調(diào)用,獲取包括服務的響應時間與調(diào)用是否成功的服務QoS數(shù)值; 數(shù)據(jù)庫連接模塊,用于連接數(shù)據(jù)庫,以供測量節(jié)點控制模塊、節(jié)點定位更新模塊和服務QoS測量模塊調(diào)用,完成對數(shù)據(jù)庫中數(shù)據(jù)的讀寫、添加和更新。
5.根據(jù)權(quán)利要求1所述的分布式測量系統(tǒng),其特征在于:所述系統(tǒng)的網(wǎng)絡坐標是一種用于預測具有可擴展性的互聯(lián)網(wǎng)距離的坐標,其由節(jié)點的當前坐標值及當前誤差所組成;在網(wǎng)絡系統(tǒng)中,每個節(jié)點只需經(jīng)過少量測量就能夠得到該節(jié)點的網(wǎng)絡坐標;再按照預設的計算方法,利用任意兩個節(jié)點的網(wǎng)絡坐標,就能夠預測兩者之間的網(wǎng)絡距離; 所述系統(tǒng)的Web服務QoS估測模型是以歐幾里得空間描述的多維坐標網(wǎng)絡,其中包括中心節(jié)點、測量節(jié)點、服務部署節(jié)點和用戶的每個節(jié)點分別與該多維坐標空間中的一個點相對應,且該多維坐標網(wǎng)絡的維數(shù)與測量節(jié)點個數(shù)相同;對系統(tǒng)中的全部N個測量節(jié)點分別按照順序逐個編號,并設定其中第k個測量節(jié)點的第k維坐標初始值為0,其余各維坐標初始值均為隨機值,且其各個 坐標值都隨著網(wǎng)絡狀態(tài)的變化而動態(tài)更新,如此建立的該網(wǎng)絡坐標系,能夠通過目標用戶節(jié)點、服務部署節(jié)點、測量節(jié)點的不同坐標,計算用戶與各測量節(jié)點的相似度,并對目標用戶能夠獲得的包括服務響應時間和可靠性的服務QoS屬性值進行估測,其中,N和k都為自然數(shù),且k小于等于N。
6.一種根據(jù)權(quán)利要求1所述的分布式測量系統(tǒng)的測量方法,其特征在于:所述方法包括下列操作步驟: 步驟I,周期測量階段: 每個測量節(jié)點的WSDL文件解析模塊解析該Web服務部署節(jié)點的IP地址,節(jié)點定位更新模塊向該IP地址周期發(fā)送Ping消息和計算從自身節(jié)點和服務部署節(jié)點之間傳遞SOAP消息的網(wǎng)絡時延;再以服務部署節(jié)點為目標節(jié)點,采用設定的節(jié)點坐標更新方法更新該服務部署節(jié)點的坐標;測量節(jié)點的服務QoS測量模塊通過調(diào)用Web服務獲取響應時間,并記錄調(diào)用是否成功; 步驟2,實時測量階段: 中心節(jié)點接收到用戶的服務QoS估測請求時,向各個測量節(jié)點轉(zhuǎn)發(fā)該請求;各個測量節(jié)點收到請求后,分別更新自身的網(wǎng)絡坐標和用戶坐標; 中心節(jié)點的相似度計算模塊再計算用戶與各測量節(jié)點的相似度,以供任務調(diào)度模塊選取與用戶相似度最大的K個測量節(jié)點; 該K個測量節(jié)點再次更新用戶和服務部署節(jié)點坐標,并測量服務的響應時間和計算當前服務部署節(jié)點的處理時間; 中心節(jié)點的結(jié)果分析器計算用戶能夠獲得的服務響應時間和可靠性。
7.根據(jù)權(quán)利要求6所述的測量方法,其特征在于:所述步驟I中,測量節(jié)點執(zhí)行下述操作內(nèi)容: (11)WSDL文件解析模塊獲取Web服務部署節(jié)點的IP地址; (12)節(jié)點定位更新模塊向該IP地址周期發(fā)送ping消息,并記錄該消息在網(wǎng)絡中的往返時間,再將該往返時間作為SOAP消息在測量節(jié)點和服務部署節(jié)點之間的往返傳輸時間; (13)節(jié)點定位更新模塊以服務部署節(jié)點為目標節(jié)點,采用系統(tǒng)設定的節(jié)點坐標更新方法,即根據(jù)實測的測量節(jié)點和目標節(jié)點間的網(wǎng)絡時延和測量節(jié)點的當前坐標值進行迭代運算,更新該服務部署節(jié)點的坐標; (14)服務部署節(jié)點的網(wǎng)絡坐標更新完成后,服務QoS測量模塊通過調(diào)用Web服務獲取響應時間,并記錄調(diào)用是否成功,為估測用戶端的服務響應時間和可靠性做好數(shù)據(jù)準備。
8.根據(jù)權(quán)利要求7所述的測量方法,其特征在于:所述步驟(13)中,節(jié)點定位更新模塊采用的節(jié)點坐標更新方法包括下述具體操作內(nèi)容: (13a)計算目標節(jié)點當前坐標在誤差和計算時的權(quán)重
9.根據(jù)權(quán)利要求6所述的測量方法,其特征在于:所述步驟2包括下述操作內(nèi)容: (21)用戶向中心節(jié)點發(fā)送包括該用戶的IP地址、其需要測量的Web服務在系統(tǒng)中標識的Web服務QoS估測請求; (22)中心節(jié)點的任務調(diào)度模塊將接收到的該用戶請求中的用戶IP地址分發(fā)給系統(tǒng)中的所有測量節(jié)點; (23)每個測量節(jié)點的節(jié)點定位更新模塊分別更新自身坐標和用戶坐標: 每個測量節(jié)點收到該測量命令后,在其系統(tǒng)控制模塊控制下,先在各個測量節(jié)點之間相互發(fā)送Ping消息,進行自身定位而完成自身坐標更新;所有測量節(jié)點都完成自身網(wǎng)絡坐標的更新后,每個測量節(jié)點分別向該用戶發(fā)送Ping消息,并測量其自身節(jié)點與該用戶之間的往返網(wǎng)絡時延,同樣根據(jù)所述節(jié)點坐標更新方法法完成對該用戶坐標的估測;再將該用戶坐標更新到數(shù)據(jù)庫中; (24)中心節(jié)點的相似度計算模塊計算相似度: 所有測量節(jié)點都完成步驟(23)后,中心節(jié)點的相似度計算模塊從數(shù)據(jù)庫中分別取出該用戶和各測量節(jié)點的更新后的坐標,計算該用戶與各個測量節(jié)點之間網(wǎng)絡距離,用于計算該用戶與各個測量節(jié)點的相似度; (25)中心節(jié)點的任務調(diào)度模塊選取測量節(jié)點,并發(fā)送測量命令:根據(jù)計算的相似度,任務調(diào)度模塊選取與該用戶相似度最大的K個節(jié)點,向該K個測量節(jié)點發(fā)送繼續(xù)測量的命令; (26)測量節(jié)點的節(jié)點定位更新模塊更新用戶和服務部署節(jié)點的坐標:當該K個測量節(jié)點接收到測量命令后,分別更新用戶和服務部署節(jié)點的坐標,以保證QoS估測的實時性和準確性; (27)測量節(jié)點的服務QoS測量模塊測量服務的響應時間:根據(jù)WSDL文件解析模塊獲取的解析服務操作名稱和參數(shù)名稱與類型,服務QoS測量模塊自動調(diào)用Web服務操作,并記錄服務調(diào)用是否成功,同時記錄該測量節(jié)點調(diào)用該服務的響應時間I;;再根據(jù)公式計算服務處理時間Tp,并存儲于數(shù)據(jù)庫,以供結(jié)果分析時使用;式中,T1為SOAP消息在該測量節(jié)點和該服務部署節(jié)點之間的傳輸時間,即由測量節(jié)點和服務部署節(jié)點的坐標計算得到的網(wǎng)絡距離; (28)中心節(jié)點的結(jié)果分析器分別估算該服務的響應時間和可靠性: 根據(jù)數(shù)據(jù)庫中的用戶坐標和服務部署節(jié)點坐標,通過歐幾里得空間中的距離計算方法計算兩者之間的網(wǎng)絡距 離,即SOAP消息在該用戶和該Web服務之間的傳輸時間T1,再根據(jù)Tr=T^Tp計算用戶能夠獲得服務的響應時間; 根據(jù)數(shù)據(jù)庫中的存儲的設定時間段內(nèi)的服務調(diào)用結(jié)果,計算每個測量節(jié)點k獲取該服務的可靠性Pk,該Pk的數(shù)值是設定時間段內(nèi)測量節(jié)點k調(diào)用該服務的成功次數(shù)與總調(diào)用次數(shù)之比;再利用該用戶與該K個測量節(jié)點的相似度,依據(jù)公式P =1>V丨計算用戶能夠獲 得的服務的可靠性,式中,Wk為測量節(jié)點k與該用戶的相似度在所有K個測量節(jié)點與該用戶相似度之和中占的比重; (29)將估算結(jié)果,包括響應時間和可靠性,返回給用戶。
10.根據(jù)權(quán)利要求9所述的測量方法,其特征在于:所述步驟(23)包括下述具體操作步驟: (23a)由當前需要更新自身坐標的測量節(jié)點通過節(jié)點定位更新模塊向系統(tǒng)中所有其它測量節(jié)點分別發(fā)送Ping消息,并記錄該消息在網(wǎng)絡中的往返時間,再將該往返時間作為兩個測量節(jié)點之間的網(wǎng)絡時延; (23b)從數(shù)據(jù)庫中獲取所有測量節(jié)點的網(wǎng)絡坐標,然后將這些網(wǎng)絡坐標和步驟(23a)得到的網(wǎng)絡時延作為節(jié)點坐標更新算法的輸入數(shù)據(jù),然后,以當前測量節(jié)點為目標節(jié)點,利用所述節(jié)點坐標更新方法計算得到當前每個測量節(jié)點的新網(wǎng)絡坐標; (23c)用該新網(wǎng)絡坐標更新數(shù)據(jù)庫中測量節(jié)點原來存儲的網(wǎng)絡坐標; (23d)節(jié)點定位更新模塊采用上述步驟(23a) (23c)同樣方法更新該用戶的坐標。
全文摘要
一種Web服務的服務質(zhì)量QoS分布式測量系統(tǒng)和方法,系統(tǒng)設有中心節(jié)點和多個測量節(jié)點;它是根據(jù)Web服務QoS估測模型,利用網(wǎng)絡定位技術(shù)分別計算用戶主機、多個測量節(jié)點和Web服務部署主機、即服務部署節(jié)點在抽象的網(wǎng)絡坐標系中的網(wǎng)絡坐標,再計算用戶主機與測量節(jié)點的相似度,以便估測用戶能夠獲得的QoS屬性值。本發(fā)明能快速、準確地估測不同地域和/或不同網(wǎng)絡環(huán)境下用戶端能夠獲得的包括響應時間和可靠性的Web服務QoS。測量方法的實時性強,不依賴用戶的歷史QoS數(shù)據(jù),不給用戶增加額外負擔,且估測過程透明。創(chuàng)新點是將網(wǎng)絡系統(tǒng)映射到多維坐標系中,結(jié)合測量節(jié)點與用戶主機的相似性,估測用戶端能夠獲得的Web服務的響應時間和可靠性,數(shù)據(jù)真實、可信。
文檔編號H04L29/08GK103209102SQ201310076529
公開日2013年7月17日 申請日期2013年3月11日 優(yōu)先權(quán)日2013年3月11日
發(fā)明者趙耀, 李俊, 周順冬, 楊放春, 鄒華, 孫其博, 林榮恒 申請人:北京郵電大學