本申請涉及移動通信領(lǐng)域,尤其涉及一種流量統(tǒng)計(jì)方法、裝置及系統(tǒng)。
背景技術(shù):
用戶在通過移動終端訪問網(wǎng)頁時(shí),流量指的是移動終端在訪問過程中消耗的字節(jié)數(shù),這種情況下,運(yùn)營商會統(tǒng)計(jì)用戶使用的流量,并對用戶收取相應(yīng)的費(fèi)用。另外,對于經(jīng)常出國的用戶來說,在通過移動終端訪問網(wǎng)頁時(shí),往往會花費(fèi)高昂的國際漫游費(fèi)用,針對這種情況,用戶可通過mifi(mobilewifi,移動路由器)設(shè)備訪問網(wǎng)頁。其中,mifi設(shè)備是一個(gè)便攜式寬帶無線裝置,集調(diào)制解調(diào)器、路由器和接入點(diǎn)三者功能于一身,利用mifi設(shè)備訪問網(wǎng)頁時(shí),通過云sim(subscriberidentificationmodule,客戶識別模塊)技術(shù)能夠?yàn)樵搈ifi設(shè)備分配當(dāng)?shù)豷im卡,并提供數(shù)據(jù)流量服務(wù),減少出國上網(wǎng)的成本。而mifi設(shè)備在使用時(shí),需要為其統(tǒng)計(jì)耗費(fèi)的流量,以便對用戶進(jìn)行收費(fèi)。
目前,在統(tǒng)計(jì)mifi設(shè)備使用的流量時(shí),通常預(yù)先設(shè)定一個(gè)固定閾值,每次當(dāng)mifi設(shè)備使用的流量達(dá)到該固定閾值時(shí),就上報(bào)一次心跳包。接收到該心跳包的統(tǒng)計(jì)端會根據(jù)獲取到心跳包的次數(shù),計(jì)算mifi設(shè)備使用的流量。例如,預(yù)先設(shè)定的固定閾值為50m,當(dāng)mifi設(shè)備使用的流量達(dá)到50m時(shí),就會向統(tǒng)計(jì)端發(fā)送一次心跳包。統(tǒng)計(jì)端在收到心跳包后,將mifi設(shè)備使用的流量數(shù)值即為50m。若mifi設(shè)備第n次向統(tǒng)計(jì)端發(fā)送心跳包,統(tǒng)計(jì)端在接收該心跳包后,將mifi設(shè)備當(dāng)前使用的流量統(tǒng)計(jì)為n*50m。
但是,發(fā)明人在本申請的研究過程中發(fā)現(xiàn),mifi設(shè)備在上報(bào)心跳包時(shí),其耗費(fèi)的流量往往并非精確到固定閾值,例如,若所述固定閾值為50m,mifi設(shè)備在上報(bào)心跳包時(shí),其耗費(fèi)的流量無法精確到50m,而是超過了50m。這種情況下,導(dǎo)致統(tǒng)計(jì)的流量并不準(zhǔn)確。
技術(shù)實(shí)現(xiàn)要素:
本申請?zhí)峁┝艘环N流量統(tǒng)計(jì)方法、裝置及系統(tǒng),以解決現(xiàn)有技術(shù)中存在的,統(tǒng)計(jì)mifi設(shè)備的流量不準(zhǔn)確的問題。
第一方面,本申請?zhí)峁┝艘环N流量統(tǒng)計(jì)方法,包括:
在開機(jī)后,生成記錄有本次開機(jī)消耗的流量的開機(jī)包并上報(bào),其中,所述開機(jī)包為設(shè)置有開機(jī)包標(biāo)簽的心跳包;
在使用過程中,每隔預(yù)設(shè)周期,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包并上報(bào),其中,所述正常包為設(shè)置有正常包標(biāo)簽的心跳包;
在接收到關(guān)機(jī)指令后,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包并上報(bào),其中,所述關(guān)機(jī)包為設(shè)置有關(guān)機(jī)包標(biāo)簽的心跳包;
以使統(tǒng)計(jì)端在接收到心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,并根據(jù)所述各心跳包的類型及所述各心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
可選的,還包括:
在上報(bào)所述心跳包后,記錄所述心跳包的上報(bào)時(shí)間;
在所述上報(bào)時(shí)間之后的預(yù)設(shè)第一時(shí)間段內(nèi),若未收到響應(yīng)信息,重新上報(bào)所述心跳包。
第二方面,本申請還提供了一種流量統(tǒng)計(jì)方法,包括:
在接收到mifi設(shè)備上報(bào)的心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,所述心跳包的類型包括:所述mifi設(shè)備在開機(jī)時(shí)生成的開機(jī)包;所述mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期,生成的記錄有從開機(jī)至心跳包生成時(shí)刻使用的總流量的正常包;所述mifi設(shè)備在接收到關(guān)機(jī)指令后,生成的記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包;
根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
可選的,所述根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量,包括:
若所述心跳包的類型為開機(jī)包,將所述心跳包中記錄的流量分別添加至第一表和第二表中;
若所述心跳包的類型為正常包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中;
若所述心跳包的類型為關(guān)機(jī)包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,并分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。
可選的,在計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值之后,還包括:
判斷所述差值是否在預(yù)設(shè)范圍內(nèi),若否,保持所述第二表中記錄的流量不變,若是,再執(zhí)行將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中的操作。
可選的,還包括:
在接收到所述心跳包之后,記錄所述心跳包的信息;
若在接收到第一心跳包的預(yù)設(shè)第二時(shí)間段內(nèi),接收到第二心跳包,根據(jù)所述第一心跳包和第二心跳包的信息,判斷所述第一心跳包與第二心跳包是否相同;
若所述第一心跳包與第二心跳包相同,終止對所述第二心跳包的處理。
可選的,還包括:
在接收到所述心跳包之后,反饋響應(yīng)信息。
第三方面,本申請?zhí)峁┝艘环N流量統(tǒng)計(jì)裝置,包括:
開機(jī)包生成模塊,用于在開機(jī)后,生成記錄有本次開機(jī)消耗的流量的開機(jī)包并上報(bào),其中,所述開機(jī)包為設(shè)置有開機(jī)包標(biāo)簽的心跳包;
正常包生成模塊,用于在使用過程中,每隔預(yù)設(shè)周期,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包并上報(bào),其中,所述正常包為設(shè)置有正常包標(biāo)簽的心跳包;
關(guān)機(jī)包生成模塊,用于在接收到關(guān)機(jī)指令后,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包并上報(bào),其中,所述關(guān)機(jī)包為設(shè)置有關(guān)機(jī)包標(biāo)簽的心跳包;
以使統(tǒng)計(jì)端在接收到心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,并根據(jù)所述各心跳包的類型及所述各心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
第四方面,本申請?zhí)峁┝艘环N流量統(tǒng)計(jì)裝置,包括:
心跳包類型確定模塊,用于在接收到mifi設(shè)備上報(bào)的心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,所述心跳包的類型包括:所述mifi設(shè)備在開機(jī)時(shí)生成的開機(jī)包;所述mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期,生成的記錄有從開機(jī)至心跳包生成時(shí)刻使用的總流量的正常包;所述mifi設(shè)備在接收到關(guān)機(jī)指令后,生成的記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包;
流量統(tǒng)計(jì)模塊,用于根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
第五方面,本申請?zhí)峁┝艘环N流量統(tǒng)計(jì)系統(tǒng),包括:
mifi設(shè)備和統(tǒng)計(jì)端;
其中,所述mifi設(shè)備用于執(zhí)行如第一方面所述的流量統(tǒng)計(jì)方法;
所述統(tǒng)計(jì)端用于執(zhí)行如第二方面所述的流量統(tǒng)計(jì)方法。
本申請實(shí)施例公開一種流量統(tǒng)計(jì)方法、裝置及系統(tǒng),相對于現(xiàn)有技術(shù)來說,本申請?zhí)峁┑姆桨改軌蛱岣吡髁拷y(tǒng)計(jì)的準(zhǔn)確度。
附圖說明
為了更清楚地說明本申請的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領(lǐng)域普通技術(shù)人員而言,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本申請實(shí)施例公開的一種流量統(tǒng)計(jì)方法的工作流程示意圖;
圖2為本申請實(shí)施例公開的又一種流量統(tǒng)計(jì)方法的工作流程示意圖;
圖3為本申請實(shí)施例公開的又一種流量統(tǒng)計(jì)方法的工作流程示意圖;
圖4為本申請實(shí)施例公開的又一種流量統(tǒng)計(jì)方法的工作流程示意圖;
圖5為本申請實(shí)施例公開的一種流量統(tǒng)計(jì)裝置的結(jié)構(gòu)示意圖;
圖6為本申請實(shí)施例公開的又一種流量統(tǒng)計(jì)裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了解決現(xiàn)有技術(shù)中存在的,統(tǒng)計(jì)mifi設(shè)備的流量不準(zhǔn)確的問題,本申請公開一種流量統(tǒng)計(jì)方法、裝置及系統(tǒng)。
本申請的第一實(shí)施例公開一種流量統(tǒng)計(jì)方法,該方法應(yīng)用于mifi設(shè)備。參見圖1所示的工作流程示意圖,所述流量統(tǒng)計(jì)方法包括以下步驟:
步驟s11、在開機(jī)后,生成記錄有本次開機(jī)消耗的流量的開機(jī)包并上報(bào),其中,所述開機(jī)包為設(shè)置有開機(jī)包標(biāo)簽的心跳包。
在本申請實(shí)施例公開的方案中,mifi設(shè)備生成的心跳包至少包括三種類型:開機(jī)包、正常包和關(guān)機(jī)包。為了區(qū)分三種心跳包,預(yù)先設(shè)置各種心跳包對應(yīng)的標(biāo)簽,并在心跳包中添加相應(yīng)的標(biāo)簽。
例如,可設(shè)置開機(jī)包對應(yīng)的標(biāo)簽為01,正常包對應(yīng)的標(biāo)簽為10,關(guān)機(jī)包對應(yīng)的標(biāo)簽為11,這種情況下,mifi設(shè)備在生成心跳包后,會根據(jù)該心跳包的類型,在所述心跳包中添加相應(yīng)的標(biāo)簽。
另外,mifi設(shè)備在開機(jī)過程中,會消耗部分流量,mifi設(shè)備會將本次開機(jī)消耗的流量記錄至開機(jī)包中。
步驟s12、在使用過程中,每隔預(yù)設(shè)周期,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包并上報(bào),其中,所述正常包為設(shè)置有正常包標(biāo)簽的心跳包。
在本申請中,將mifi設(shè)備在使用過程中生成的心跳包作為正常包。
另外,所述預(yù)設(shè)周期可設(shè)置為兩分鐘或其他時(shí)長,本申請對此不做限定。
步驟s13、在接收到關(guān)機(jī)指令后,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包并上報(bào),其中,所述關(guān)機(jī)包為設(shè)置有關(guān)機(jī)包標(biāo)簽的心跳包。
通過步驟s11至步驟s13的操作,以使統(tǒng)計(jì)端在接收到心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,并根據(jù)所述各心跳包的類型及所述各心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
步驟s11至步驟s13公開一種流量統(tǒng)計(jì)方法,該方法應(yīng)用于mifi設(shè)備。通過該方法,mifi設(shè)備能夠生成三種類型的心跳包,即開機(jī)包、正常包和關(guān)機(jī)包。其中,mifi設(shè)備在開機(jī)后,生成記錄有本次開機(jī)消耗的流量的開機(jī)包并上報(bào);并且,在使用過程中,每隔預(yù)設(shè)周期,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包并上報(bào);在接收到關(guān)機(jī)指令后,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包并上報(bào)。統(tǒng)計(jì)端在接收到心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,并根據(jù)所述各心跳包的類型及所述各心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
由于本申請實(shí)施例公開的流量統(tǒng)計(jì)方法中,心跳包中記錄有mifi設(shè)備使用的流量的具體數(shù)值,因此,相對于現(xiàn)有技術(shù)來說,本申請?zhí)峁┑姆桨改軌蛱岣吡髁拷y(tǒng)計(jì)的準(zhǔn)確度。
進(jìn)一步的,在本申請實(shí)施例提供的流量統(tǒng)計(jì)方法中,還包括以下步驟:
首先,在上報(bào)所述心跳包后,記錄所述心跳包的上報(bào)時(shí)間;
然后,在所述上報(bào)時(shí)間之后的預(yù)設(shè)第一時(shí)間段內(nèi),若未收到響應(yīng)信息,重新上報(bào)所述心跳包。
在本申請中,mifi設(shè)備在將心跳包上報(bào)至統(tǒng)計(jì)端后,統(tǒng)計(jì)端若接收到該心跳包,會向mifi設(shè)備反饋響應(yīng)信息。mifi設(shè)備在接收到該響應(yīng)信息后,即可確定心跳包上報(bào)成功。
若當(dāng)前網(wǎng)絡(luò)環(huán)境較差,統(tǒng)計(jì)端有時(shí)無法接收到心跳包,從而不會向mifi設(shè)備反饋響應(yīng)信息。本申請實(shí)施例通過上述步驟,在上報(bào)所述心跳包后的預(yù)設(shè)第一時(shí)間段內(nèi),若未收到響應(yīng)信息,重新上報(bào)所述心跳包,從而能夠避免統(tǒng)計(jì)端錯(cuò)失心跳包,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度。
其中,所述預(yù)設(shè)第一時(shí)間段可以為1分鐘或其他時(shí)長,本申請對此不做限定。
本申請第二實(shí)施例公開一種流量統(tǒng)計(jì)方法,該方法應(yīng)用于統(tǒng)計(jì)端,該統(tǒng)計(jì)端用于統(tǒng)計(jì)mifi設(shè)備所使用的流量。參見圖2所示的示意圖,所述流量統(tǒng)計(jì)方法包括以下步驟:
步驟s21、在接收到mifi設(shè)備上報(bào)的心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型。
其中,所述心跳包的類型包括:所述mifi設(shè)備在開機(jī)時(shí)生成的開機(jī)包;所述mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期,生成的記錄有從開機(jī)至心跳包生成時(shí)刻使用的總流量的正常包;所述mifi設(shè)備在接收到關(guān)機(jī)指令后,生成的記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包。
mifi設(shè)備向統(tǒng)計(jì)端上報(bào)的心跳包至少包括三種類型:開機(jī)包、正常包和關(guān)機(jī)包。為了區(qū)分三種心跳包,預(yù)先設(shè)置各種心跳包對應(yīng)的標(biāo)簽,并在心跳包中添加相應(yīng)的標(biāo)簽。這種情況下,統(tǒng)計(jì)端在接收到心跳包后,對該心跳包進(jìn)行解析,通過心跳包的標(biāo)簽,確定心跳包的類型。
步驟s22、根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
通過本申請第二實(shí)施例公開的方案,統(tǒng)計(jì)端能夠?qū)崿F(xiàn)對mifi設(shè)備使用的流量的統(tǒng)計(jì)。由于本申請實(shí)施例公開的流量統(tǒng)計(jì)方法中,心跳包中記錄有mifi設(shè)備使用的流量的具體數(shù)值,因此,相對于現(xiàn)有技術(shù)來說,本申請?zhí)峁┑姆桨改軌蛱岣吡髁拷y(tǒng)計(jì)的準(zhǔn)確度。
為了詳細(xì)闡述如何所述根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量,作為圖2方法的細(xì)化,在本發(fā)明的第三實(shí)施例中,如圖3所示,步驟s22還可以包括如下步驟:
步驟s221、若所述心跳包的類型為開機(jī)包,將所述心跳包中記錄的流量分別添加至第一表和第二表中。其中,mifi設(shè)備在開機(jī)過程中,會消耗部分流量,mifi設(shè)備會將本次開機(jī)消耗的流量記錄至開機(jī)包中。
也就是說,在第一表和第二表中分別記錄mifi設(shè)備本次開機(jī)所使用的流量。
步驟s222、若所述心跳包的類型為正常包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中。
mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期(如兩分鐘),生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包,也就是說,mifi設(shè)備在使用過程中生成的心跳包為正常包。
統(tǒng)計(jì)端在接收到正常包后,將其中記錄的流量添加至所述第一表中。另外,計(jì)算心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,該差值即為流量增量,然后將該差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,即在第二表中記錄mifi設(shè)備開機(jī)使用的流量和各次流量增量的總和。
步驟s223、若所述心跳包的類型為關(guān)機(jī)包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,并分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。
mifi設(shè)備在接收到關(guān)機(jī)指令后,會生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包。
統(tǒng)計(jì)端在接收到關(guān)機(jī)包后,將其中記錄的流量添加至所述第一表中。另外,計(jì)算心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,該差值即為流量增量,然后將該差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,也就是說,在第二表中記錄mifi設(shè)備開機(jī)使用的流量和各次流量增量的總和。
并且,在執(zhí)行上述操作后,還分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。通過關(guān)機(jī)標(biāo)識,統(tǒng)計(jì)端能夠知悉mifi設(shè)備將進(jìn)入關(guān)機(jī)狀態(tài)。這種情況下,統(tǒng)計(jì)端通常在接收到正常包后,也不會再根據(jù)正常包進(jìn)行流量統(tǒng)計(jì),而是在接收到開機(jī)包之后,再執(zhí)行相應(yīng)的流量統(tǒng)計(jì)的操作。
另外,在本申請中,通常將第二表中記錄的流量作為mifi設(shè)備實(shí)際使用的流量,也就是說,將第二表中記錄的流量作為用戶付費(fèi)的依據(jù)。
進(jìn)一步的,本申請的第四實(shí)施例公開一種流量統(tǒng)計(jì)方法。參見圖4所示的工作流程示意圖,該方法包括以下步驟:
步驟s31、在接收到mifi設(shè)備上報(bào)的心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型。
其中,所述心跳包的類型包括:所述mifi設(shè)備在開機(jī)時(shí)生成的開機(jī)包;所述mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期,生成的記錄有從開機(jī)至心跳包生成時(shí)刻使用的總流量的正常包;所述mifi設(shè)備在接收到關(guān)機(jī)指令后,生成的記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包。
步驟s32、若所述心跳包的類型為開機(jī)包,將所述心跳包中記錄的流量分別添加至第一表和第二表中。
步驟s33、若所述心跳包的類型為正常包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,再執(zhí)行步驟s34的操作。其中,所述正常包中記錄有mifi設(shè)備從開機(jī)至所述正常包生成時(shí)刻使用的總流量。
步驟s34、判斷所述差值是否在預(yù)設(shè)范圍內(nèi),若否,執(zhí)行步驟s35的操作,若是,執(zhí)行步驟s36的操作。
步驟s35、若所述差值不在預(yù)設(shè)范圍內(nèi),保持所述第二表中記錄的流量不變。
步驟s36、若所述差值在預(yù)設(shè)范圍內(nèi),將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中。
步驟s37、若所述心跳包的類型為關(guān)機(jī)包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,再執(zhí)行步驟s38的操作。其中,所述關(guān)機(jī)包中記錄有mifi設(shè)備從開機(jī)至所述關(guān)機(jī)包生成時(shí)刻使用的總流量。
步驟s38、判斷所述差值是否在預(yù)設(shè)范圍內(nèi),若否,執(zhí)行步驟s39的操作,若是,執(zhí)行步驟s40的操作。
步驟s39、若所述差值不在預(yù)設(shè)范圍內(nèi),保持所述第二表中記錄的流量不變,并分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。
步驟s40、若所述差值在預(yù)設(shè)范圍內(nèi),將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,并分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。
上述實(shí)施例中,通過步驟s31至步驟s40公開一種流量統(tǒng)計(jì)方法,該方法中,在計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值之后,還要判斷所述差值是否在預(yù)設(shè)范圍內(nèi),若否,保持所述第二表中記錄的流量不變,若是,再執(zhí)行將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中的操作。
通過上述操作,能夠避免差值不在預(yù)設(shè)范圍內(nèi)的心跳包對流量統(tǒng)計(jì)造成干擾,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度。
其中,若所述差值(即流量增量)不在預(yù)設(shè)范圍內(nèi),則說明本次的流量增量較大或較小。根據(jù)mifi設(shè)備訪問網(wǎng)頁類型的不同,其在預(yù)設(shè)周期內(nèi)使用的流量往往不同,例如,訪問視頻類網(wǎng)頁往往會比訪問新聞?lì)惥W(wǎng)頁耗費(fèi)流量。但是,mifi設(shè)備在預(yù)設(shè)周期內(nèi)所使用的流量具有上限,若通過心跳包得到的本次流量增量較大,有可能是mifi設(shè)備出現(xiàn)故障,上報(bào)了錯(cuò)誤的心跳包,這種情況下,保持第二表中記錄的流量不變,能夠避免該數(shù)據(jù)包對流量統(tǒng)計(jì)造成干擾。另外,若流量較小,往往是mifi設(shè)備自帶的某些系統(tǒng)耗費(fèi)的流量,這部分流量也不需要統(tǒng)計(jì)在第二表中,以免對用戶造成損失。
另外,若mifi設(shè)備每隔兩分鐘上報(bào)一次心跳包,所述預(yù)設(shè)范圍通常設(shè)置為15k至1.5g,也就是說,小于15k或大于1.5g則不在預(yù)設(shè)范圍內(nèi)。
進(jìn)一步的,本申請實(shí)施例公開的流量統(tǒng)計(jì)方法還包括以下步驟:
在接收到所述心跳包之后,記錄所述心跳包的信息;
若在接收到第一心跳包的預(yù)設(shè)第二時(shí)間段內(nèi),接收到第二心跳包,根據(jù)所述第一心跳包和第二心跳包的信息,判斷所述第一心跳包與第二心跳包是否相同;
若所述第一心跳包與第二心跳包相同,終止對所述第二心跳包的處理。
其中,所述心跳包的信息為所述心跳包中記錄的流量數(shù)值、所述心跳包的編號或者所述心跳包的哈希標(biāo)簽等。通過所述心跳包的信息,能夠確定兩個(gè)心跳包是否相同。
若在接收到第一心跳包的預(yù)設(shè)第二時(shí)間段后,接收到第二心跳包,則有可能是mifi設(shè)備重復(fù)上報(bào)了相同的心跳包。為了避免重復(fù)的心跳包對本次流量統(tǒng)計(jì)造成干擾,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度,若在接收到第一心跳包的預(yù)設(shè)第二時(shí)間段內(nèi),接收到第二心跳包,根據(jù)第一心跳包和第二心跳包的信息,判斷二者是否相同。
若經(jīng)過判斷,確定所述第一心跳包與第二心跳包不同,則對第二心跳包執(zhí)行上述各實(shí)施例提供的相應(yīng)統(tǒng)計(jì)操作。另外,若所述第一心跳包與第二心跳包相同,則終止對所述第二心跳包的處理,即不再根據(jù)第二心跳包中設(shè)置的標(biāo)簽,確定第二心跳包的類型。
另外,所述預(yù)設(shè)第二時(shí)間段的具體時(shí)長根據(jù)實(shí)際應(yīng)用場景設(shè)定,例如,若mifi設(shè)備在正常使用時(shí),每隔兩分鐘上報(bào)一次心跳包,則所述預(yù)設(shè)第二時(shí)間段可以為一分鐘。
進(jìn)一步的,本申請公開的流量統(tǒng)計(jì)方法中,還包括:在接收到所述心跳包之后,反饋響應(yīng)信息。
統(tǒng)計(jì)端每次在接收到心跳包后,向mifi設(shè)備反饋響應(yīng)信息,這種情況下,如果mifi設(shè)備接收到響應(yīng)信息,則可確定心跳包上報(bào)成功。
另外,在上報(bào)心跳后之后預(yù)設(shè)的第一時(shí)間段內(nèi),若mifi設(shè)備始終未收到響應(yīng)信息,mifi設(shè)備重新上報(bào)所述心跳包,從而能夠避免統(tǒng)計(jì)端錯(cuò)失心跳包,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度。
相應(yīng)的,在本申請第五實(shí)施例中,還公開一種流量統(tǒng)計(jì)裝置,該裝置應(yīng)用于mifi設(shè)備。參見圖5所示的結(jié)構(gòu)示意圖,該裝置包括:開機(jī)包生成模塊110、正常包生成模塊120和關(guān)機(jī)包生成模塊130。
其中,所述開機(jī)包生成模塊110,用于在開機(jī)后,生成記錄有本次開機(jī)消耗的流量的開機(jī)包并上報(bào),其中,所述開機(jī)包為設(shè)置有開機(jī)包標(biāo)簽的心跳包;
所述正常包生成模塊120,用于在使用過程中,每隔預(yù)設(shè)周期,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的正常包并上報(bào),其中,所述正常包為設(shè)置有正常包標(biāo)簽的心跳包;
所述關(guān)機(jī)包生成模塊130,用于在接收到關(guān)機(jī)指令后,生成記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包并上報(bào),其中,所述關(guān)機(jī)包為設(shè)置有關(guān)機(jī)包標(biāo)簽的心跳包。
通過所述開機(jī)包生成模塊110、正常包生成模塊120和關(guān)機(jī)包生成模塊130,使統(tǒng)計(jì)端在接收到心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,并根據(jù)所述各心跳包的類型及所述各心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
在本申請實(shí)施例公開的方案中,mifi設(shè)備生成的心跳包至少包括三種類型:開機(jī)包、正常包和關(guān)機(jī)包。為了區(qū)分三種心跳包,預(yù)先設(shè)置各種心跳包對應(yīng)的標(biāo)簽,并在心跳包中添加相應(yīng)的標(biāo)簽。
另外,mifi設(shè)備在開機(jī)過程中,會消耗部分流量,mifi設(shè)備會將本次開機(jī)消耗的流量記錄至開機(jī)包中。而且,在本申請中,將mifi設(shè)備在使用過程中生成的心跳包作為正常包。
進(jìn)一步的,本申請實(shí)施例公開的流量統(tǒng)計(jì)裝置還包括:
時(shí)間記錄模塊,用于在上報(bào)所述心跳包后,記錄所述心跳包的上報(bào)時(shí)間;
重新上報(bào)模塊,用于在所述上報(bào)時(shí)間之后的預(yù)設(shè)第一時(shí)間段內(nèi),若未收到響應(yīng)信息,重新上報(bào)所述心跳包。
在本申請中,mifi設(shè)備在將心跳包上報(bào)至統(tǒng)計(jì)端后,統(tǒng)計(jì)端若接收到該心跳包,會向mifi設(shè)備反饋響應(yīng)信息。mifi設(shè)備在接收到該響應(yīng)信息后,即可確定心跳包上報(bào)成功。
若當(dāng)前網(wǎng)絡(luò)環(huán)境較差,統(tǒng)計(jì)端有時(shí)無法接收到心跳包,從而不會向mifi設(shè)備反饋響應(yīng)信息。本申請實(shí)施例通過上述步驟,在上報(bào)所述心跳包后的預(yù)設(shè)第一時(shí)間段內(nèi),若未收到響應(yīng)信息,重新上報(bào)所述心跳包,從而能夠避免統(tǒng)計(jì)端錯(cuò)失心跳包,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度。
通過本申請實(shí)施例公開的流量統(tǒng)計(jì)裝置,能夠?qū)ifi設(shè)備使用的流量進(jìn)行統(tǒng)計(jì),并且,由于本申請實(shí)施例公開的流量統(tǒng)計(jì)裝置中,心跳包中記錄有mifi設(shè)備使用的流量的具體數(shù)值,因此,相對于現(xiàn)有技術(shù)來說,本申請?zhí)峁┑姆桨改軌蛱岣吡髁拷y(tǒng)計(jì)的準(zhǔn)確度。
相應(yīng)的,在本申請的第六實(shí)施例中,還公開一種流量統(tǒng)計(jì)裝置,該裝置應(yīng)用于統(tǒng)計(jì)端,該統(tǒng)計(jì)端用于統(tǒng)計(jì)mifi設(shè)備所使用的流量。參見圖6所示的結(jié)構(gòu)示意圖,所述流量統(tǒng)計(jì)裝置包括:心跳包類型確定模塊210和流量統(tǒng)計(jì)模塊220。
其中,所述心跳包類型確定模塊210,用于在接收到mifi設(shè)備上報(bào)的心跳包后,根據(jù)所述心跳包中設(shè)置的標(biāo)簽,確定所述心跳包的類型,所述心跳包的類型包括:所述mifi設(shè)備在開機(jī)時(shí)生成的開機(jī)包;所述mifi設(shè)備在使用過程中,每隔預(yù)設(shè)周期,生成的記錄有從開機(jī)至心跳包生成時(shí)刻使用的總流量的正常包;所述mifi設(shè)備在接收到關(guān)機(jī)指令后,生成的記錄有從開機(jī)至當(dāng)前時(shí)刻使用的總流量的關(guān)機(jī)包。
mifi設(shè)備向統(tǒng)計(jì)端上報(bào)的心跳包至少包括三種類型:開機(jī)包、正常包和關(guān)機(jī)包。為了區(qū)分三種心跳包,預(yù)先設(shè)置各種心跳包對應(yīng)的標(biāo)簽,并在心跳包中添加相應(yīng)的標(biāo)簽。這種情況下,統(tǒng)計(jì)端在接收到心跳包后,所述心跳包類型確定模塊210對該心跳包進(jìn)行解析,通過心跳包的標(biāo)簽,確定心跳包的類型。
所述流量統(tǒng)計(jì)模塊220,用于根據(jù)所述心跳包的類型,以及所述心跳包中記錄的流量信息,統(tǒng)計(jì)mifi設(shè)備使用的流量。
進(jìn)一步的,所述流量統(tǒng)計(jì)模塊220執(zhí)行的操作包括:若所述心跳包的類型為開機(jī)包,將所述心跳包中記錄的流量分別添加至第一表和第二表中;若所述心跳包的類型為正常包,將所述心跳包中記錄的流量添加至所述第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中;若所述心跳包的類型為關(guān)機(jī)包,將所述心跳包中記錄的流量添加至第一表中,并計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值,將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中,并分別在所述第一表和第二表中添加關(guān)機(jī)標(biāo)識。
另外,所述流量統(tǒng)計(jì)模塊220執(zhí)行的操作還可以包括:在計(jì)算所述心跳包中記錄的流量與所述第二表中最近一次記錄的流量的差值之后,判斷所述差值是否在預(yù)設(shè)范圍內(nèi),若否,保持所述第二表中記錄的流量不變,若是,再執(zhí)行將所述差值與所述第二表中最近一次記錄的流量的和添加至所述第二表中的操作。
通過本實(shí)施例公開的流量統(tǒng)計(jì)裝置,統(tǒng)計(jì)端能夠?qū)崿F(xiàn)對mifi設(shè)備使用的流量的統(tǒng)計(jì),并且,由于心跳包中記錄有mifi設(shè)備使用的流量的具體數(shù)值,因此,相對于現(xiàn)有技術(shù)來說,本申請?zhí)峁┑姆桨改軌蛱岣吡髁拷y(tǒng)計(jì)的準(zhǔn)確度。
進(jìn)一步的,本申請實(shí)施例公開的流量統(tǒng)計(jì)裝置,還包括:
信息記錄模塊,用于在接收到所述心跳包之后,記錄所述心跳包的信息;
心跳包判斷模塊,用于若在接收到第一心跳包的預(yù)設(shè)第二時(shí)間段內(nèi),接收到第二心跳包,根據(jù)所述第一心跳包和第二心跳包的信息,判斷所述第一心跳包與第二心跳包是否相同,并且若所述第一心跳包與第二心跳包相同,終止對所述第二心跳包的處理。
其中,所述心跳包的信息為所述心跳包中記錄的流量數(shù)值、所述心跳包的編號或者所述心跳包的哈希標(biāo)簽等。通過所述心跳包的信息,能夠確定兩個(gè)心跳包是否相同。
若心跳包判斷模塊經(jīng)過判斷,確定所述第一心跳包與第二心跳包不同,則對第二心跳包執(zhí)行上述各實(shí)施例提供的相應(yīng)統(tǒng)計(jì)操作。另外,若所述第一心跳包與第二心跳包相同,則終止對所述第二心跳包的處理,即不再根據(jù)第二心跳包中設(shè)置的標(biāo)簽,確定第二心跳包的類型。
其中,所述預(yù)設(shè)第二時(shí)間段的具體時(shí)長根據(jù)實(shí)際應(yīng)用場景設(shè)定,例如,若mifi設(shè)備在正常使用時(shí),每隔兩分鐘上報(bào)一次心跳包,則所述預(yù)設(shè)第二時(shí)間段可以為一分鐘。
進(jìn)一步的,本申請實(shí)施例公開的流量統(tǒng)計(jì)裝置,還包括:
反饋模塊,用于在接收到所述心跳包之后,反饋響應(yīng)信息。
統(tǒng)計(jì)端每次在接收到心跳包后,向mifi設(shè)備反饋響應(yīng)信息,這種情況下,如果mifi設(shè)備接收到響應(yīng)信息,則可確定心跳包上報(bào)成功。
另外,在上報(bào)心跳后之后預(yù)設(shè)的第一時(shí)間段內(nèi),若mifi設(shè)備始終未收到響應(yīng)信息,mifi設(shè)備重新上報(bào)所述心跳包,從而能夠避免統(tǒng)計(jì)端錯(cuò)失心跳包,進(jìn)一步提高流量統(tǒng)計(jì)的準(zhǔn)確度。
在本申請第七實(shí)施例中,還公開一種流量統(tǒng)計(jì)系統(tǒng)。該系統(tǒng)包括:mifi設(shè)備和統(tǒng)計(jì)端。
其中,所述mifi設(shè)備用于執(zhí)行本申請第一實(shí)施例所述的流量統(tǒng)計(jì)方法;
所述統(tǒng)計(jì)端用于執(zhí)行本申請第二實(shí)施例,和/或第三實(shí)施例,和/或第四實(shí)施例所述的流量統(tǒng)計(jì)方法。
本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實(shí)施例中的技術(shù)可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明實(shí)施例中的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
本說明書中各個(gè)實(shí)施例之間相同相似的部分互相參見即可。尤其,對于……實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例中的說明即可。
以上所述的本發(fā)明實(shí)施方式并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。