亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        個人云存儲體驗質(zhì)量測量工具的設(shè)計與實現(xiàn)

        2016-11-01 17:01:19袁斌黎文偉
        計算機(jī)應(yīng)用 2016年9期
        關(guān)鍵詞:控制流數(shù)據(jù)流數(shù)據(jù)包

        袁斌 黎文偉

        摘要:

        隨著用戶日益增長的網(wǎng)絡(luò)存儲需求,涌現(xiàn)出了大量個人云存儲(PCS)服務(wù)平臺。個人云存儲終端用戶使用過程中體驗質(zhì)量(QoE)的測量是終端用戶和服務(wù)提供商所共同關(guān)注的問題。通過從控制流與數(shù)據(jù)流之間的不同特性方面分析了影響個人云存儲體驗質(zhì)量的因素,從終端用戶的角度提出了能合理評估個人云存儲體驗質(zhì)量的指標(biāo),設(shè)計了精確測量體驗質(zhì)量評估指標(biāo)的方法。利用被動測量技術(shù),實現(xiàn)了一個面向終端用戶的個人云存儲服務(wù)體驗質(zhì)量測量工具,同時給出了工具實現(xiàn)中的進(jìn)程抓包、網(wǎng)絡(luò)流分類等問題的解決方案。實驗結(jié)果表明,測量工具運行健壯,測量數(shù)據(jù)準(zhǔn)確,可以用于從用戶終端測量個人云存儲服務(wù)QoE。

        關(guān)鍵詞:

        個人云存儲;被動測量;體驗質(zhì)量;測量工具

        中圖分類號:

        TP393.06

        文獻(xiàn)標(biāo)志碼:A

        Abstract:

        With the growing requirements of users in network storage, a large number of Personal Cloud Storage (PCS) service platforms are emerging. The Quality of Experience (QoE) perceived by the end users has become the common concerned issues of both end users and service providers. The factors that affect QoE in personal cloud storage were analyzed from the aspects of the different features between control flows and data flows. Several indicators were proposed from the end users perspectives which can reasonably evaluate the QoE of personal cloud storage. The accurate measurement method of the QoE indicators was designed. The measuring tool for QoE of personal cloud services was implemented based on passive measurement; at the same time, the solution was given to solve the issues in tool implementation like special process capture packets and network flow classification. The experimental result shows that the measuring tool can run robust and obtain accurate results, it can be used to measure the QoE of personal cloud services in terminals.

        英文關(guān)鍵詞Key words:

        Personal Cloud Storage (PCS); passive measurement; Quality of Experience (QoE); measuring tool

        0引言

        個人云存儲服務(wù)(Personal Cloud Storage, PCS)作為互聯(lián)網(wǎng)中的一種數(shù)據(jù)密集型應(yīng)用程序,能為用戶提供在云中的服務(wù)器存儲文件和不同設(shè)備間同步文件的服務(wù)[1]。對于用戶,越來越多的人被這些服務(wù)所吸引,因為可以簡單地用來保存文件,同步設(shè)備。而服務(wù)繁多的市場使得用戶選擇一款合適的服務(wù)來滿足他們的需求也變得愈發(fā)困難。在樂觀的市場推動下,多個新的服務(wù)提供商悄然進(jìn)入了市場。新的提供商必須與傳統(tǒng)的提供商,比如Dropbox,還有Google、Microsoft、Apple這些IT巨頭競爭,他們在用戶群和價格方面有著更大的優(yōu)勢[2]。與此同時,國內(nèi)也興起了云存儲熱潮,以百度云、快盤、360為首的各大提供商迅速占領(lǐng)了國內(nèi)大部分的市場。所以,不管是終端用戶還是服務(wù)提供商都需要從理解個人云存儲中獲益。

        用戶體驗質(zhì)量(Quality of Experience, QoE)能夠衡量不同服務(wù)所提供的體驗差異,能為用戶和服務(wù)提供商在選擇和優(yōu)化服務(wù)方面提供很大的幫助。如果服務(wù)的體驗質(zhì)量水平?jīng)]有達(dá)到預(yù)期的期望,用戶可能就會拒絕繼續(xù)使用[3]。比如說,云游戲[4]和虛擬桌面[5]作為兩個高交互性的云服務(wù)就有著很高的響應(yīng)需求,當(dāng)出現(xiàn)由高延遲引起的體驗質(zhì)量下降時,該服務(wù)對于用戶的價值也就會降低。這個問題對于服務(wù)的提供商也變得越來越具有挑戰(zhàn)性,他們需要知道哪些因素影響著用戶的體驗質(zhì)量,進(jìn)而能優(yōu)化自身的服務(wù)。

        近年來對個人云存儲已經(jīng)有了很多方面的研究[6-10]:文獻(xiàn)[6]中提出了一個個人云存儲的主動測量方法,通過一個長期的測量實驗,分析了三個流行服務(wù)的傳輸性能,但該方法依賴于提供商的公共API,測量不同的服務(wù)需要開發(fā)不同的測量工具;文獻(xiàn)[7]也提出了一種主動測量方法并比較了5個主流的服務(wù);文獻(xiàn)[1,8]都通過網(wǎng)絡(luò)中的被動測量研究了特定云服務(wù)和不同用戶的特征。另一方面,當(dāng)前對個人云存儲的體驗質(zhì)量還只有一些初步的研究:文獻(xiàn)[9]第一次研究了個人云存儲中的QoE問題,通過用戶的主觀評價,研究了網(wǎng)絡(luò)QoS和個人云存儲QoE之間的相互影響,網(wǎng)絡(luò)時延和帶寬被認(rèn)為是QoE的兩個主要影響因素;文獻(xiàn)[3]根據(jù)云服務(wù)的交互程度,分析了不同云服務(wù)體驗質(zhì)量的影響因素;文獻(xiàn)[10]通過在線調(diào)查分析出一系列QoE影響因素,同步時延被認(rèn)為是用戶體驗質(zhì)量的一個重要來源。但是,除了研究體驗質(zhì)量的影響因素,終端用戶所能感知的體驗質(zhì)量的測量也至關(guān)重要,因為用戶所獲得的體驗質(zhì)量才能真正反映服務(wù)的實際優(yōu)劣。所以,我們迫切需要開發(fā)出一個新的方法,使之能夠在終端用戶真實的使用壞境中來測量比較個人云存儲服務(wù)。

        針對上述問題,本文使用被動測量技術(shù),設(shè)計并實現(xiàn)了一個面向終端用戶的個人云存儲QoE測量工具PCSMeasure。通過分析個人云存儲的典型傳輸過程,并結(jié)合了個人云存儲控制流和數(shù)據(jù)流的特征,確定了一系列QoE的測量指標(biāo),這些指標(biāo)能很直觀地反映出終端用戶所能獲得的體驗質(zhì)量。測量工具易于使用且具有通用性,測量過程具有獨立性。

        1個人云存儲

        1.1基本概念和功能

        個人云存儲的主要功能是網(wǎng)絡(luò)存儲,是網(wǎng)絡(luò)技術(shù)與存儲技術(shù)結(jié)合的產(chǎn)物。其實現(xiàn)原理就是在云中的服務(wù)器硬盤上為每個用戶開辟一塊空間,然后用戶能夠在此空間上實現(xiàn)對文件和目錄的自主管理,從而實現(xiàn)網(wǎng)絡(luò)環(huán)境下,用戶通過網(wǎng)站或者客戶端軟件對文件的異地存儲和管理。

        個人云存儲有兩個常見的模式:Web模式和客戶端模式。這兩種模式所產(chǎn)生的流量有很大的差異,其中Web模式所產(chǎn)生的流量在網(wǎng)絡(luò)中個人云存儲流量總量中所占的比例非常低。根據(jù)文獻(xiàn)[1]中的研究可知,在四種不同的網(wǎng)絡(luò)環(huán)境中通過Web模式產(chǎn)生的Dropbox流量約占測量期間捕獲Dropbox總流量的8%~15%。因此,本文選擇對客戶端模式進(jìn)行QoE測量方法的研究。

        個人云存儲服務(wù)作為一個網(wǎng)絡(luò)存儲服務(wù),給用戶提供了方便的文件存儲和管理,用戶能夠?qū)⑽募w移到云中實現(xiàn)數(shù)據(jù)的存儲和多設(shè)備共享,還能滿足多用戶的協(xié)作。但是,用戶在使用不同操作時,會有著不同的體驗需求,當(dāng)服務(wù)無法滿足用戶的期望時,就會降低用戶的體驗質(zhì)量。

        1.2體系結(jié)構(gòu)

        云存儲系統(tǒng)依賴于成千上萬的服務(wù)器,核心構(gòu)架由存儲服務(wù)器或者磁盤陣列、文件或者元數(shù)據(jù)服務(wù)器集群、通知服務(wù)器以及Web服務(wù)器集群組成[11]。Web服務(wù)器主要提供身份驗證;文件服務(wù)器主要存儲文件的元數(shù)據(jù)、文件位置等信息;通知服務(wù)器用于與客戶端進(jìn)行文件改變的消息通信;云存儲系統(tǒng)存儲設(shè)備包括存儲服務(wù)器、磁盤陣列等設(shè)備。用戶可以通過互聯(lián)網(wǎng)或者局域網(wǎng)對云存儲系統(tǒng)進(jìn)行訪問。

        根據(jù)功能的不同,我們把通知服務(wù)器、Web服務(wù)器和文件服務(wù)器統(tǒng)稱為控制服務(wù)器,存儲服務(wù)器稱為數(shù)據(jù)服務(wù)器。在眾多不同的服務(wù)提供商中,服務(wù)器的部署策略也存在差異,而不同部署策略會給用戶的體驗質(zhì)量帶來不同的影響。比如分布式部署方式減少了用戶服務(wù)器之間的往返時延(RoundTrip Time, RTT),能夠更快地完成短鏈接數(shù)據(jù)流的傳輸。

        1.3客戶端功能及協(xié)議

        為了分析個人云存儲的QoE影響因素,首先需要了解個人云存儲的通信協(xié)議。通過捕獲分析不同服務(wù)的數(shù)據(jù)包,結(jié)果顯示大部分國外服務(wù)提供商會采用HTTPS協(xié)議即加密傳輸數(shù)據(jù),只有極少數(shù)服務(wù)的控制信息是通過沒有加密的HTTP協(xié)議來交換的;而國內(nèi)多數(shù)的提供商都是使用HTTP協(xié)議來傳輸數(shù)據(jù),除了重要的賬號登錄信息采用的是HTTPS。

        個人云存儲服務(wù)客戶端軟件也會采用一些高級功能來處理用戶數(shù)據(jù),這些功能能夠優(yōu)化網(wǎng)絡(luò)的使用和提高用戶的體驗。這些功能主要包括:

        捆綁在同時操作多個小文件時,將多個小文件作為一個單獨的對象來傳輸。

        累計編碼只傳輸文件中被修改的部分。

        分塊將單個大體積文件分成多個最大數(shù)據(jù)單元來處理。

        重復(fù)刪除避免重新上傳已經(jīng)在服務(wù)器可用的內(nèi)容。

        壓縮在數(shù)據(jù)傳輸之前進(jìn)行壓縮。

        負(fù)載均衡將同一個文件傳輸?shù)讲煌姆?wù)器。

        每個不同的服務(wù)提供商都可以選擇實現(xiàn)不同的客戶端功能,這也是造成不同服務(wù)體驗質(zhì)量差異的重要來源。

        2測量方法及指標(biāo)

        2.1測量方法

        網(wǎng)絡(luò)測量根據(jù)是否通過測量設(shè)備向網(wǎng)絡(luò)中注入額外的測量流量可以分為主動測量和被動測量。被動測量方法是從網(wǎng)絡(luò)中的某一點收集流量,統(tǒng)計數(shù)據(jù)包大小分布、組成的協(xié)議分布、數(shù)據(jù)包數(shù)量、字節(jié)數(shù)等信息,據(jù)此計算出測量指標(biāo)。被動測量又可以通過三種方式來實現(xiàn):服務(wù)器端測量、用戶端測量和利用網(wǎng)絡(luò)探測。

        本文采用的是用戶端的被動測量方式來完成個人云存儲QoE的測量:通過將具有監(jiān)測功能的工具安裝到用戶終端,從用戶的角度監(jiān)測待測服務(wù)。選擇被動測量有以下幾個優(yōu)點:1)通用性。通過API開發(fā)的云存儲主動測量工具,在測量不同的服務(wù)時需要開發(fā)多個工具,而通過被動的捕獲數(shù)據(jù)包來測量時,對于所有的服務(wù)都是通用的。2)基于數(shù)據(jù)包捕獲的被動測量可以提供不同粒度層次的信息。3)能夠在用戶的實際使用過程中測量真實的結(jié)果。

        2.2QoE評估方法

        體驗質(zhì)量的評估方法根據(jù)用戶的參與度可以分為三類:主觀評價方法、客觀評價方法以及偽主觀評價方法。而其中偽主觀評價方法結(jié)合了主觀和客觀評價方法的優(yōu)點。偽主觀評價方法的基本過程是:1)分析業(yè)務(wù)特征,確定QoE相應(yīng)的指標(biāo);2)確定這些QoE指標(biāo)的影響因素;3)準(zhǔn)備測試的環(huán)境以及測試的樣本;4)選擇測試用戶,進(jìn)行服務(wù)的評價,獲取數(shù)據(jù);5)利用數(shù)據(jù),選擇合適的數(shù)據(jù)模型將QoE與指標(biāo)關(guān)聯(lián),得到合理的評估模型。

        本文的工作就是在完成1)、2)步,并為后續(xù)模型的研究設(shè)計一個測量工具。偽主觀的評價方法因為有著統(tǒng)計學(xué)和人工智能等學(xué)科的理論支持,而且有著很高的準(zhǔn)確度,目前越來越受到研究人員的關(guān)注。

        2.3典型傳輸過程分析

        在被動測量方法中如何選擇QoE測量指標(biāo)非常重要。而終端用戶的不同操作或傳輸?shù)牟煌A段都有著不同的影響因素,用戶也有著不同的體驗要求,需要使用不同的測量指標(biāo)。因此,接下來對個人云存儲的典型傳輸過程進(jìn)行分析。

        如圖1所示,描述了典型個人云存儲的傳輸過程。個人云存儲的典型同步過程可以分為兩部分:客戶端啟動過程和文件同步過程??蛻舳藛舆^程是指在用戶啟動客戶端到云存儲中的文件夾實際顯示,文件同步過程是指當(dāng)用戶發(fā)起對文件操作到操作完成。具體的過程可以分為三步:

        1)客戶端與控制服務(wù)器交換文件的元數(shù)據(jù)信息。

        2)觸發(fā)文件的存儲操作,客戶端與數(shù)據(jù)服務(wù)器通過數(shù)據(jù)流直接完成數(shù)據(jù)的傳輸。

        3)當(dāng)數(shù)據(jù)成功傳輸完畢后,客戶端再次與控制服務(wù)器交換控制信息,來完成此次傳輸事務(wù)。

        另外,在空閑階段(即沒有任何操作時)客戶端會與通知服務(wù)器保持信息的交換,用于通知客戶端存儲在服務(wù)器中的文件是否變化。

        2.4QoE的影響因素

        全面研究QoE的影響因素對于測量指標(biāo)的確定非常重要,因為QoE測量的根本目的就是根據(jù)不同方面的影響因素來得到用戶的QoE。本文將QoE的影響因素分為三個方面:網(wǎng)絡(luò)方面、客戶端方面以及系統(tǒng)平臺方面。

        如圖2所示,描述了個人云存儲的體驗質(zhì)量被多方面的客觀因素所影響。網(wǎng)絡(luò)方面的參數(shù)主要反映網(wǎng)絡(luò)傳輸?shù)臓顩r,如網(wǎng)絡(luò)帶寬、延遲;客戶端方面反映的是沒有經(jīng)過網(wǎng)絡(luò)傳輸?shù)姆?wù)體驗,包括一系列的優(yōu)化機(jī)制;系統(tǒng)設(shè)計方面,主要包括傳輸協(xié)議、帶寬控制及服務(wù)器的部署方式等。

        其中,每一種影響因素都以一種復(fù)雜的方式影響著服務(wù)的體驗質(zhì)量。比如說,用戶所感受到的數(shù)據(jù)傳輸體驗很可能是由于網(wǎng)絡(luò)的帶寬過小或者客戶端服務(wù)器往返時延太大造成數(shù)據(jù)流吞吐量很小,也可能是因為服務(wù)客戶端并沒有采用優(yōu)化傳輸?shù)墓δ?。另外,操作的響?yīng)體驗也是由網(wǎng)絡(luò)環(huán)境、客戶端功能、系統(tǒng)設(shè)計等多種客觀因素所影響的。

        2.5主要測量指標(biāo)

        由于個人云存儲QoE的客觀影響因素的多方面性,使得在被動測量中準(zhǔn)確測量并量化所有客觀因素非常困難。所以,本文通過結(jié)合個人云存儲的不同影響因素和不同網(wǎng)絡(luò)流的特征,分析出多個能夠準(zhǔn)確評估終端用戶QoE的指標(biāo)。下面各指標(biāo)計算公式中的時間戳,如2.3節(jié)中的圖1所示。

        1)客戶端啟動時延。

        客戶端啟動時延Dc是指云存儲客戶端啟動到客戶端的文件夾完全顯示之間的時延。計算公式如(1)所示:

        Dc=T1-T0(1)

        其中:T0表示服務(wù)進(jìn)程出現(xiàn)的時間;T1表示最后一個數(shù)據(jù)包到達(dá)的時延。

        2)同步初始化時延。

        同步初始化時延Ds是指在同步操作執(zhí)行到文件數(shù)據(jù)流正式開始傳輸之間的時延。Ds在有些使用場景下對用戶的體驗非常重要,比如單獨傳輸小體積文件時。同步初始化時延通過式(2)計算:

        Ds=T3-T2(2)

        其中:T2為第一條控制流的建立時間;T3為第一條數(shù)據(jù)流的建立時間。

        3)傳輸數(shù)據(jù)總量。

        傳輸數(shù)據(jù)總量St是指整個同步過程中所有網(wǎng)絡(luò)流的體積總和。對于流量敏感的用戶而言,能夠用盡可能少的流量完成文件的傳輸能提升體驗質(zhì)量。傳輸數(shù)據(jù)總量的計算方法如式(3)所示:

        St=∑ni=1Di+∑mj=1Cj(3)

        其中:Di和Cj分別表示每條數(shù)據(jù)流和控制流的大小,n和m分別表示數(shù)據(jù)流和控制流的數(shù)目。

        4)數(shù)據(jù)傳輸速率。

        數(shù)據(jù)傳輸速率DTS是指同步過程中傳輸?shù)臄?shù)據(jù)流總量與數(shù)據(jù)流的持續(xù)總時間之間的比值。它是描述個人云存儲體驗質(zhì)量的重要參數(shù),也是評估長期體驗傳輸變化性的一個基礎(chǔ)。數(shù)據(jù)傳輸速率的計算方法如式(4)所示:

        DTS=∑ni=1Di/(T4-T3)(4)

        其中:Di表示數(shù)據(jù)流的大??;T3表示第一條數(shù)據(jù)流的建立時間;T4表示最后一個數(shù)據(jù)流數(shù)據(jù)包的捕獲時間,我們忽略了數(shù)據(jù)流斷開和最后的控制信息交換時間。

        5)控制開銷率。

        控制開銷率COR是用于衡量傳輸一定大小的文件所需控制流開銷的指標(biāo)。值越大說明傳輸相同體積的數(shù)據(jù)需要更多的控制開銷。計算方法如式(5)所示:

        COR=St/∑ni=1Di(5)

        其中:St表示指標(biāo)(3)中的傳輸數(shù)據(jù)總量,Di表示數(shù)據(jù)流的大小。

        3測量工具的實現(xiàn)

        3.1工具設(shè)計

        在選擇了QoE的測量指標(biāo)、確定了被動測量方法后,接

        下來進(jìn)行工具PCSMeasure的設(shè)計和實現(xiàn)。工具PCSMeasure的結(jié)構(gòu)如圖3所示,主要由三個模塊組成:第一個模塊是數(shù)據(jù)包捕捉模塊Packets Sniffer,通過調(diào)用數(shù)據(jù)包處理驅(qū)動WinPcap捕獲待測服務(wù)的所有數(shù)據(jù)包;第二個模塊是網(wǎng)絡(luò)流分析模塊Traffic Analysis,根據(jù)已有的數(shù)據(jù)包完成控制流和數(shù)據(jù)流的分類;最后一個模塊是指標(biāo)計算模塊Metrics Computation。

        PCSMeasure工具主要模塊的功能如下:

        1)Packets Sniffer:獨立的網(wǎng)絡(luò)抓包模塊。接收WinPcap捕獲的數(shù)據(jù)包,進(jìn)行逐層解碼,完成協(xié)議分析統(tǒng)計和數(shù)據(jù)包的本地化。該模塊是被動測量工具的主體。

        2)Traffic Analysis:網(wǎng)絡(luò)流分析模塊。分析上層模塊捕獲的數(shù)據(jù)包,根據(jù)五元組信息,統(tǒng)計所有的網(wǎng)絡(luò)流信息,包括網(wǎng)絡(luò)流的開始時間、持續(xù)時間、數(shù)據(jù)包個數(shù)和網(wǎng)絡(luò)流大小等。根據(jù)網(wǎng)絡(luò)流的特征信息,使用聚類算法將網(wǎng)絡(luò)流分為數(shù)據(jù)流和控制流。

        3)Metrics Computation:指標(biāo)計算模塊。根據(jù)上層的網(wǎng)絡(luò)流分析結(jié)果結(jié)合個人云存儲的傳輸過程,計算出測量指標(biāo);同時,將計算出的結(jié)果反饋給用戶并完成本地化。

        在三個模塊中,Packets Sniffer模塊和Traffic Analysis模塊是Metrics Compute模塊的基礎(chǔ),測量結(jié)果的準(zhǔn)確性也完全取決于這兩個模塊。如果Packets Sniffer模塊中沒有正確捕捉到服務(wù)的數(shù)據(jù)包就會給測量結(jié)果帶來誤差;而Traffic Analysis模塊中的網(wǎng)絡(luò)流分類不準(zhǔn)確時,甚至?xí)苯訉?dǎo)致測量結(jié)果錯誤。

        下面分別來討論這兩個問題的解決方法。

        3.2服務(wù)進(jìn)程抓包

        在Packets Sniffer模塊中進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)包捕獲時,通過調(diào)用數(shù)據(jù)包處理驅(qū)動WinPcap的接口函數(shù),將網(wǎng)卡設(shè)置為混雜模式,數(shù)據(jù)包經(jīng)過兩次內(nèi)存拷貝和系統(tǒng)調(diào)用,到達(dá)用戶空間[12]。但是在終端用戶使用環(huán)境中,存在著不同網(wǎng)絡(luò)進(jìn)程的數(shù)據(jù)包。準(zhǔn)確捕捉到待測服務(wù)進(jìn)程的數(shù)據(jù)包對于計算測量指標(biāo)就變得非常重要。

        雖然Winpcap并沒有直接提供捕捉不同進(jìn)程數(shù)據(jù)包的函數(shù)接口,但是Winpcap的一個強(qiáng)大特性是提供了過濾引擎。通過將相關(guān)的過濾器應(yīng)用到所有來自網(wǎng)絡(luò)的數(shù)據(jù)包上,所有與過濾器特性一致的數(shù)據(jù)包將被復(fù)制給應(yīng)用程序。因此,提出了一種基于Winpcap過濾機(jī)制的雙緩存進(jìn)程抓包方法。該方法的有效性基于所有個人云存儲的傳輸層都是使用TCP協(xié)議這一假設(shè)。

        捕獲特定進(jìn)程的數(shù)據(jù)包最為直接的方法是能獲取目標(biāo)進(jìn)程所有網(wǎng)絡(luò)連接的端口,然后將Winpcap的過濾器設(shè)置為特定進(jìn)程的端口號。但是,這個方法存在兩個問題:

        1)在實際的服務(wù)傳輸過程中TCP連接的建立是隨機(jī)的,所以,需要動態(tài)地查詢目標(biāo)進(jìn)程的端口列表,當(dāng)發(fā)現(xiàn)出現(xiàn)新的連接時,動態(tài)更新過濾器。

        2)在動態(tài)更新過濾器的過程中,又可能在兩次更新過濾器期間出現(xiàn)新的TCP連接,導(dǎo)致漏包現(xiàn)象。針對這個問題,提出了一種雙緩存機(jī)制。雙緩存機(jī)制是指,通過開啟兩個抓包線程,創(chuàng)建兩個數(shù)據(jù)包緩存區(qū),分別對應(yīng)不同的過濾規(guī)則。在每次更新過濾器前,通過綜合兩個線程緩存區(qū)中的數(shù)據(jù)包來完整地捕獲到進(jìn)程在這個周期內(nèi)的數(shù)據(jù)包。

        根據(jù)以上分析,PCSMeasure進(jìn)程抓包的具體步驟如下:

        1)獲取網(wǎng)卡接口和目標(biāo)進(jìn)程信息。開始測量后,首先創(chuàng)建兩個抓包線程C1和C2,同時都調(diào)用Winpcap所提供的pcap_open_live()方法,用于打開網(wǎng)絡(luò)設(shè)備準(zhǔn)備捕捉網(wǎng)絡(luò)數(shù)據(jù),分別返回adhandle1和adhandle2兩個用于捕獲網(wǎng)絡(luò)數(shù)據(jù)包的數(shù)據(jù)包捕獲描述字。對于這個網(wǎng)絡(luò)接口的操作都要基于此描述字。

        2)分別調(diào)用Winpcap所提供的函數(shù)pcap_setfilter()給C1、C2設(shè)置過濾規(guī)則。其中C1的過濾器filter1設(shè)置為“TCP”。在C2中使用輪詢機(jī)制,通過定時查詢目標(biāo)進(jìn)程所有連接的端口號集合,根據(jù)端口號集合動態(tài)地更新過濾器filter2。

        3)當(dāng)在ti更新filter2時,首先調(diào)用自定義的函數(shù)GetAllPortsByID()根據(jù)進(jìn)程ID查詢目標(biāo)進(jìn)程最新連接的端口集合,將結(jié)果與ti-1查詢的端口集合比較。當(dāng)出現(xiàn)了新的端口號時,表示在ti-1~ti周期內(nèi)出現(xiàn)了新的連接并且C2漏掉了這些新連接在ti-1~ti周期內(nèi)傳輸?shù)臄?shù)據(jù)包。所以,根據(jù)新的端口號在C1的緩沖區(qū)中找出新連接的所有數(shù)據(jù)包,加上C2緩沖區(qū)內(nèi)的數(shù)據(jù)包就是目標(biāo)進(jìn)程在ti-1~ti周期內(nèi)完整的數(shù)據(jù)包。最后清空C1與C2緩沖區(qū),更新C2的過濾器。

        4)接下來討論C2的過濾器更新周期Ti。通過分析TCP的連接可知,一個最簡單的網(wǎng)絡(luò)流是由三次握手、POST+ACK、DATA+ACK和RST組成。因此Ti的最大值Tmax不能大于2RTT,才能保證在過濾器更新期間不會漏掉整個網(wǎng)絡(luò)流的所有數(shù)據(jù)包。而出于對進(jìn)程端口查詢開銷的考慮,將Tmin設(shè)置為30ms。

        5)最后討論Ti的變化策略。根據(jù)人工分析云存儲的網(wǎng)絡(luò)流變化發(fā)現(xiàn),網(wǎng)絡(luò)連接的建立都是具有突發(fā)性的,即會在短時間同時建立多條新的連接,當(dāng)數(shù)據(jù)傳輸穩(wěn)定后,就會很少有新的連接建立。所以根據(jù)兩次端口查詢結(jié)果之間的差異來決定Ti的變化:當(dāng)兩次端口查詢期間ti-1~ti沒有出現(xiàn)新的連接時,Ti以線性增長直至Tmax;當(dāng)在ti-1~ti出現(xiàn)新的連接時,Ti賦值為Max(Ti / 2, Tmin)。

        3.3個人云存儲流量分析

        個人云存儲的控制流和數(shù)據(jù)流作為計算測量指標(biāo)的基礎(chǔ)。在Traffic Analysis模塊中,區(qū)分出測量過程中的所有控制流和數(shù)據(jù)流也是一個重點。數(shù)據(jù)流和控制流的主要不同就是傳輸數(shù)據(jù)內(nèi)容的不同,可是無法通過捕獲的數(shù)據(jù)包直接區(qū)分出不同服務(wù)的數(shù)據(jù)流和控制流。因此,我們基于個人云存儲數(shù)據(jù)流和控制流的特征差異,提出了一個改進(jìn)初始聚類中心的kmeans聚類方法。

        首先,主動通過分析捕獲到的不同個人云存儲服務(wù)的數(shù)據(jù)包,發(fā)現(xiàn)數(shù)據(jù)流與控制流存在兩個重要的差異特征:有效數(shù)據(jù)包(除ACK)的平均載荷和數(shù)據(jù)包的個數(shù)。1)數(shù)據(jù)流平均載荷大部分會大于當(dāng)前網(wǎng)絡(luò)的最大傳輸單元(Maximum Transmission Unit, MTU),比如以太網(wǎng)中是1514字節(jié),而控制流通常會小于1000字節(jié);2)由于控制流通常傳遞的信息量較少,常常只是幾個或者幾十個數(shù)據(jù)包,而數(shù)據(jù)流的數(shù)據(jù)包個數(shù)則和文件的大小有關(guān),一般都有幾百個。

        如圖4所示,例舉了百度云和Google Drive在上傳10個100KB文件時網(wǎng)絡(luò)流的特征分布,所以我們可以采用聚類方法實現(xiàn)網(wǎng)絡(luò)流的分類。

        其次,傳統(tǒng)的kmeans聚類方法采用隨機(jī)選擇初始聚類中心的方式,當(dāng)結(jié)果簇是密集的而且簇之間的區(qū)分明顯時,它的效果較好。但是個人云存儲的網(wǎng)絡(luò)流分布呈現(xiàn)兩極現(xiàn)象:數(shù)據(jù)流多分布較為密集;而控制流因為作用的差異,不同控制流的數(shù)據(jù)包個數(shù)和平均載荷都各不相同,造成控制流的分布相對較為分散。所以采用隨機(jī)選擇初始聚類中心可能會導(dǎo)致聚類收斂速度慢、聚類效果差的問題。

        針對這個問題,本文改進(jìn)了kmeans 聚類算法初始中心的選擇方法。

        1)針對數(shù)據(jù)流的密集分布特征,并且根據(jù)控制流應(yīng)該離數(shù)據(jù)流中心盡可能遠(yuǎn)這一原則,選擇數(shù)據(jù)包個數(shù)與有效大小乘積最大的流作為數(shù)據(jù)流的初始中心,從而盡可能避免可能出現(xiàn)的控制流距離數(shù)據(jù)流初始中心更近的情況。

        2)根據(jù)控制流分布分散的特點,控制流的初始中心根據(jù)最小相似度方法來確定。首先給出網(wǎng)絡(luò)流相似度的定義,

        S(xi,xj)=1/∑2t=1(xit-xjt)2(6)

        其中:xi, xj分別為網(wǎng)絡(luò)流樣本,xit表示樣本的兩個特征分量。控制流初始中心的選擇方法如下:

        步驟1新建鏈表L。以數(shù)據(jù)流初始中心為起點,找出與它相似度最高的樣本對象xtemp,存入鏈表L,并記住該相似度Smin和該樣本xmin。

        步驟2找出其他剩下的樣本中(鏈表外的)與xtemp最相似的,同樣賦值給xtemp,并加入鏈表L,當(dāng)它們的相似度Stemp小于Smin時,將Stemp、xtemp分別賦值Smin、xmin。

        步驟3重復(fù)步驟2,直到遍歷完所有樣本對象。

        至此,從數(shù)據(jù)流初始中心開始,找出了最小的樣本間相似度Smin及該樣本xmin。所以,鏈表L中排在xmin后的樣本就是最有可能為控制流的,因此控制流初始中心設(shè)置為這些樣本的平均值。

        3.4測量流程

        圖5描述了PCSMeasure被動測量個人云存儲QoE指標(biāo)的流程。首先開啟測量工具,選擇需要測量的服務(wù)進(jìn)程;當(dāng)執(zhí)行相關(guān)操作時,工具就會捕獲該進(jìn)程的數(shù)據(jù)包,同時分析捕獲到的數(shù)據(jù)包;當(dāng)數(shù)據(jù)傳輸完畢,工具會通過分析捕獲的數(shù)據(jù)包,統(tǒng)計網(wǎng)絡(luò)流的信息并完成網(wǎng)絡(luò)流的分類;最后,計算出測量指標(biāo)并將結(jié)果反饋給用戶。

        在測量完成后,結(jié)果被保存在一個以服務(wù)進(jìn)程名和時間命名的文本文件中。文件中不僅記錄了相關(guān)的指標(biāo)數(shù)據(jù),還包括所有的流信息,可以用于分析及優(yōu)化個人云存儲的QoE。

        4測量工具的應(yīng)用

        百度云已經(jīng)發(fā)展成為國內(nèi)用戶最多的服務(wù)提供商,而Google Drive是全球最流行的個人云存儲服務(wù)提供商,故本文的實驗選擇百度云和Drive Google作為測量對象。

        4.1實驗方案

        為了驗證工具的有效性和比較工具的測量結(jié)果,設(shè)計了一個實驗方案,實驗平臺如圖6所示。實驗平臺搭建在一臺普通的PC上,并在其中安裝有多個待測服務(wù)客戶端、測量工具PCSMeasure和常用的數(shù)據(jù)包捕獲分析軟件Wireshark。

        在實驗中,當(dāng)用戶在待測服務(wù)客戶端執(zhí)行某個操作后,測量工具PCSMeasure和Wireshark能夠同時捕捉到待測服務(wù)的

        數(shù)據(jù)包。通過比較PCSMeasure的測量結(jié)果和Wireshark的手動分析結(jié)果來驗證工具的有效性,然后分別測量不同的個人云存儲服務(wù),通過使用我們的工具測量比較了不同云存儲服務(wù)的并對比測量結(jié)果,對測量結(jié)果進(jìn)行簡要的分析。

        4.2工具的有效性

        在測量工具PCSMeasure的指標(biāo)計算中,最后測量結(jié)果的有效性取決于兩個方面,分別是完整地抓取待測服務(wù)進(jìn)程的數(shù)據(jù)包和正確的網(wǎng)絡(luò)流分類結(jié)果,因此分別從這兩個方面比較了測量工具PCSMeasure和Wireshark。

        如圖7所示,分別描述百度云和Google Drive在傳輸不同大小的文件時PCSMeasure和Wireshark捕獲到的數(shù)據(jù)包個數(shù)。Google Drive的數(shù)據(jù)包漏包率相對比較小,主要集中在2%~3%;而百度云就相對要高一些,尤其在傳輸更大(如5MB)文件時漏包率達(dá)到了7%。

        出現(xiàn)這種情況的原因可能是因為Winpcap在捕獲數(shù)據(jù)包時,需要經(jīng)過兩次拷貝將數(shù)據(jù)包從內(nèi)核緩存中轉(zhuǎn)移到用戶空間的緩存區(qū),當(dāng)執(zhí)行一次過濾器更新周期后,從用戶緩沖區(qū)獲取數(shù)據(jù)包時,內(nèi)核緩存中還存在少量數(shù)據(jù)包沒有拷貝到用戶空間。這將會降低測量結(jié)果的準(zhǔn)確性,也是我們下一步改進(jìn)的主要工作。

        4.3個人云存儲QoE測量結(jié)果

        最后,使用PCSMeasure測量比較了百度云和Google Drive在傳輸不同類型文件時的QoE指標(biāo)結(jié)果。表2總結(jié)了我們測量實驗的全部結(jié)果。

        由表2中的數(shù)據(jù)可以知道兩種個人云存儲服務(wù)在QoE上有很大的差異。首先,由于Google的控制服務(wù)器都部署在國外,造成Google Drive控制流的平均RTT是百度云的近十倍。這也就使得Google Drive的客戶端啟動時延和同步控制時延都比百度云要大很多。其中同步控制時延中出現(xiàn)一個特殊值,Google Drive在上傳單個5MB的文件時同步控制時延為0。這是因為Google Drive在傳輸大體積文件時將文件分割成每單位8MB傳輸,而且當(dāng)Google Drive傳輸單個小于8MB的文件傳輸時,文件的控制信息是直接通過數(shù)據(jù)流傳輸?shù)椒?wù)器,因此出現(xiàn)了控制時延為0的情況;而百度云是以4MB為單位傳輸,所以傳輸單個5MB文件時分割成兩個數(shù)據(jù)單元傳輸。上傳過程和下載也有差異,當(dāng)下載批次文件時明顯需要更多控制信息,所以需要更長的同步控制時延。

        其次,百度云在傳輸表2中后三種類型的文件時,上傳的數(shù)據(jù)總量總是大于Google Drive,這主要是由于Google Drive在上傳文件前會進(jìn)行壓縮以減少流量的消耗,這對于流量敏感的用戶而言是能提高體驗質(zhì)量的。但是由于Google Drive沒有使用捆綁機(jī)制,當(dāng)上傳大量小文件時會為每個文件開啟一條控制流交換文件元數(shù)據(jù),所以在上傳100個10KB的文件時,Google Drive最后傳輸?shù)臄?shù)據(jù)總量反而大于百度云的數(shù)據(jù)總量。而下載過程中,由于兩個云存儲的服務(wù)器在傳輸文件之前都沒有使用壓縮處理,使得下載時傳輸?shù)臄?shù)據(jù)總量都大于文件本身的大小。

        在全部四種文件類型中,不管是上傳還是下載百度云的數(shù)據(jù)傳輸速率都比Google Drive的大,這也是由于Google Drive數(shù)據(jù)流的平均RTT比百度云數(shù)據(jù)流的RTT更大,使得Google Drive每條數(shù)據(jù)流的平均吞吐量很小。

        最后我們觀察到,當(dāng)上傳100個10KB的文件時,兩個服務(wù)都有較高的控制開銷率。 Google Drive的控制開銷率為1.13,這是由于Google Drive沒有采用捆綁機(jī)制,使得每個文件都需要有與控制服務(wù)器交換信息。但是,百度云即使采用了捆綁機(jī)制,控制開銷也達(dá)到了1.44。通過分析百度云的控制流發(fā)現(xiàn),雖然傳輸過程只有5條控制流,但是每條控制流都會與服務(wù)器進(jìn)行多次數(shù)據(jù)交換,為每個文件提交元數(shù)據(jù)。同樣情況也出現(xiàn)在百度云的下載過程中,使得百度云在下載時控制開銷也達(dá)到了1.46。因此,百度云可以通過優(yōu)化控制信息的交換策略來降低控制信息的開銷,以提高用戶的體驗質(zhì)量。

        PCSMeasure可以被動測量個人云存儲服務(wù),在下一步研究中,可以選擇測試用戶,使用PCSMeasure進(jìn)行服務(wù)的評價,獲取數(shù)據(jù)。利用這些數(shù)據(jù),選擇合適的數(shù)據(jù)模型將QoE與指標(biāo)關(guān)聯(lián),得到合理的評估模型。同時,當(dāng)特殊情況下服務(wù)出現(xiàn)體驗質(zhì)量下降時,用戶能夠通過測量比較給用戶提供了更多的選擇性,并且對于服務(wù)提供商進(jìn)一步改善自身服務(wù)也具有重要的指導(dǎo)意義。

        5結(jié)語

        本文提出了一種基于被動測量的個人云存儲QoE測量工具PCSMeasure。在工具的實現(xiàn)中,解決了待測服務(wù)進(jìn)程數(shù)據(jù)包捕獲和個人云存儲網(wǎng)絡(luò)流分類等問題,實現(xiàn)了在用戶終端進(jìn)行個人云存儲QoE測量的目的。工具的有效性在實驗中得到驗證,并且能夠測量得到較為準(zhǔn)確的結(jié)果。

        測量工具PCSMeasure在用戶的使用過程中通過被動抓捕數(shù)據(jù)包來完成測量,但是真實測量環(huán)境中存在其他進(jìn)程數(shù)據(jù)包的影響,使得測量工具存在少量漏包現(xiàn)象。因此,怎樣在測量過程中捕獲到待測服務(wù)進(jìn)程更為完整的數(shù)據(jù)包,以降低測量結(jié)果的誤差,將成為今后下一步研究的重點。而且,除了網(wǎng)絡(luò)、系統(tǒng)和客戶端功能方面,其他的因素,如安全、隱私、價格、客戶端界面等相關(guān)的問題對于用戶QoE也是非常重要的。我們的測量工具為下一步正確完整地提出個人云存儲QoE評估模型,打下了基礎(chǔ)。

        參考文獻(xiàn):

        [1]

        DRAGO I, MELLIA M, MUNAFO M M, et al. Inside dropbox: understanding personal cloud storage service [C]// IMC 12: Proceedings of the 2012 ACM Conference on Internet Measurement Conference. New York: ACM, 2012: 481-494.

        [2]

        NALDI M, MASTROENI L. Cloud storage pricing: a comparison of current practices [C]// Proceedings of the 2013 International Workshop on Hot Topics in Cloud Services. New York: ACM, 2013: 27-34.

        [3]

        CASAS P, SCHATZ R. Quality of experience in cloud services: survey and measurements [J]. Computer Networks, 2014, 68(11): 149-165.

        [4]

        JARSCHEL M, SCHLOSSER D, SCHEURING S, et al. An evaluation of QoE in cloud gaming based on subjective tests [C]// IMIS 11: Proceedings of the 2011 5th International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing. Washington, DC: IEEE Computer Society, 2011: 330-335.

        [5]

        CASAS P, SEUFERT M, EGGER S, et al. Quality of experience in remote virtual desktop services [C]// Proceedings of the 2013 IFIP/IEEE International Symposium on Integrated Network Management. Piscataway, NJ: IEEE, 2013: 1352-1357.

        [6]

        GRACIATINEDO R, ARTIGAS M S, MORENOMARTINEZ A, et al. Activity measuring personal cloud storage [C]// Proceedings of the 2013 IEEE Sixth International Conference on Cloud Computing. Piscataway, NJ: IEEE, 2013: 301-308.查不到

        [7]

        DRAGO I, BOCCHI E, MELLIA M, et al. Benchmarking personal cloud storage [C]// IMC 13: Proceedings of the 2013 Conference on Internet Measurement Conference. New York: ACM, 2013: 205-212.

        [8]

        BOCCHI E, DRAGO I, MELLIA M. Personal cloud storage: usage, performance and impact of terminals [C]// Proceedings of the 2015 IEEE 4th International Conference on Cloud Networking. Piscataway, NJ: IEEE, 2015: 106-111.

        [9]

        CASAS P, FISCHER H R, SUETTE S, et al. A first look at quality of experience in personal cloud storage services [C]// Proceedings of the 2013 IEEE International Conference on Communications Workshops. Piscataway, NJ: IEEE, 2013: 733-737.

        [10]

        AMREHN P, VANDENBROUCKE K, HOBFELD T, et al. Need for speed?: on quality of experience for cloudbased file storage services [C]// Proceedings of the 4th International Workshop on Perceptual Quality of Systems. Vienna: [s.n.], 2013: 184-190.

        [11]

        齊嬋穎,李戰(zhàn)懷,張曉,等.云存儲系統(tǒng)性能評測技術(shù)研究[J].計算機(jī)研究與發(fā)展,2014,51(S1):223-228.(QI C Y, LI Z H, ZHANG X, et al. Research on performance evolution technology in cloud storage System[J]. Journal of Computer Research and Development, 2014, 51(S1): 223-228.)

        [12]

        謝鯤,張大方,文吉剛,等. 基于WinPcap的實時網(wǎng)絡(luò)監(jiān)測系統(tǒng)[J]. 湖南大學(xué)學(xué)報(自然科學(xué)版),2006,33(2):118-121.(XIE K, ZHANG D F, WEN J G, et al. The realtime network monitoring system based on WinPcap[J]. Journal of Hunan University (Natural Sciences), 2006, 33(2): 118-121.)

        猜你喜歡
        控制流數(shù)據(jù)流數(shù)據(jù)包
        抵御控制流分析的Python 程序混淆算法
        工控系統(tǒng)中PLC安全漏洞及控制流完整性研究
        電子科技(2021年2期)2021-01-08 02:25:58
        抵御控制流分析的程序混淆算法
        汽車維修數(shù)據(jù)流基礎(chǔ)(下)
        SmartSniff
        一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
        基于數(shù)據(jù)流聚類的多目標(biāo)跟蹤算法
        基于控制流隱藏的代碼迷惑
        北醫(yī)三院 數(shù)據(jù)流疏通就診量
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
        亚洲狼人社区av在线观看| 爱性久久久久久久久| 精品亚洲成a人在线观看青青| 欧美日韩亚洲成色二本道三区 | 一区二区三区中文字幕在线播放| 一本加勒比hezyo无码专区 | 99精品一区二区三区免费视频| 女优av福利在线观看| 精品在线视频在线视频在线视频| 48久久国产精品性色aⅴ人妻 | 精品国产午夜久久久久九九| 国产亚洲3p一区二区| 久久久久久欧美精品se一二三四| 最新亚洲精品国偷自产在线| 国产91在线|亚洲| 91久久国产香蕉熟女线看| 手机福利视频| 中文字幕欧美一区| 中文字幕亚洲日本va| 亚洲最好看的中文字幕| 国产亚洲精品aaaa片小说| 国产亚洲精品国产福利在线观看| 亚洲精品综合久久中文字幕| 性欧美长视频免费观看不卡| 最近免费中文字幕| 人妻中文字幕一区二区二区| 视频一区二区三区黄色| 美女把尿囗扒开让男人添| 99福利网| 精品女人一区二区三区| 中文字幕人乱码中文字幕| 国产又黄又大又粗视频| 国产日产亚洲系列av| 日韩中文字幕一区二区二区 | 一群黑人大战亚裔女在线播放| 无码人妻丰满熟妇区免费| 亚洲国产精品久久婷婷| 国产国拍亚洲精品mv在线观看| 日韩爱爱视频| 国产3p一区二区三区精品| 大屁股人妻女教师撅着屁股|