本發(fā)明涉及信息安全技術(shù)領(lǐng)域,涉及網(wǎng)絡(luò)數(shù)據(jù)傳輸過程中的一種基于序列號(hào)的數(shù)據(jù)傳輸丟包率統(tǒng)計(jì)方法,更具體地,涉及一種在局域網(wǎng)數(shù)據(jù)多分發(fā)場(chǎng)景下丟包率的計(jì)算方法。該方法是采取特定方式對(duì)數(shù)據(jù)序列進(jìn)行標(biāo)記,不僅能夠統(tǒng)計(jì)出丟包率,還能夠明確推算出丟失數(shù)據(jù)的序列以及網(wǎng)絡(luò)狀態(tài)。本發(fā)明能夠準(zhǔn)確計(jì)算丟包率,并且能夠采用可視化的方式展示網(wǎng)絡(luò)運(yùn)行狀態(tài)。
背景技術(shù):
互聯(lián)網(wǎng)行業(yè)的高速發(fā)展,使得網(wǎng)絡(luò)傳輸數(shù)據(jù)與日劇增。在局域網(wǎng)大數(shù)據(jù)的傳輸過程中,TCP表現(xiàn)并不理想。在丟包率較高、高延遲、可用帶寬不穩(wěn)定地抖動(dòng)等情況下,對(duì)TCP的影響是很大的。因?yàn)門CP需要應(yīng)答,擁塞控制策略使得它的實(shí)際傳輸速率一直在隨著丟包波動(dòng),當(dāng)延遲較大時(shí)它就需要更長(zhǎng)的時(shí)間才能從波谷回到波峰。采用TCP的方式進(jìn)行傳輸,雖然保證了數(shù)據(jù)的可靠傳輸,但是受不確定因素的影響,它的表現(xiàn)并不理想。因此在數(shù)據(jù)傳輸實(shí)時(shí)性要求比較高的場(chǎng)景下,通常采用UDP協(xié)議,因?yàn)樵搮f(xié)議是無(wú)應(yīng)答的,可以有效的提高數(shù)據(jù)的傳輸速度。
雖然UDP可以實(shí)現(xiàn)數(shù)據(jù)的高效傳輸,但是該協(xié)議是一種不可靠的傳輸協(xié)議,在傳輸?shù)倪^程中會(huì)出現(xiàn)數(shù)據(jù)丟包的問題。現(xiàn)有的網(wǎng)絡(luò)數(shù)據(jù)丟包率統(tǒng)計(jì)大多是基于一對(duì)一的數(shù)據(jù)傳輸場(chǎng)景,這些方法不能適應(yīng)于多分發(fā)的情況。在數(shù)據(jù)量大的情況下,需要按照負(fù)載均衡發(fā)送到多個(gè)目的地,因此本發(fā)明提出了一種多目的地?cái)?shù)據(jù)分發(fā)傳輸?shù)膩G包率統(tǒng)計(jì)方法,該方法基于發(fā)送目的地對(duì)數(shù)據(jù)進(jìn)行序列化,不僅能夠?qū)γ總€(gè)回傳目的地傳輸數(shù)據(jù)的丟包率進(jìn)行統(tǒng)計(jì),還能夠確定丟失的數(shù)據(jù)位置,并掌握網(wǎng)絡(luò)傳輸狀況,更有利于對(duì)整個(gè)網(wǎng)絡(luò)運(yùn)行狀態(tài)的了解。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對(duì)上述問題,提供一種局域網(wǎng)大數(shù)據(jù)傳輸中數(shù)據(jù)傳輸丟包率的統(tǒng)計(jì)方法。該方法主要適用于數(shù)據(jù)分發(fā)場(chǎng)景,在數(shù)據(jù)量比較大時(shí),單臺(tái)接收機(jī)不可能完全接收所有數(shù)據(jù),因此需要按照某種策略負(fù)載均衡地發(fā)送到多臺(tái)機(jī)器,對(duì)分發(fā)到每臺(tái)接收機(jī)上的數(shù)據(jù)分別進(jìn)行序列化,按照分發(fā)目的地對(duì)數(shù)據(jù)進(jìn)行標(biāo)記;該方式不僅能統(tǒng)計(jì)丟包率,還能夠明確計(jì)算出丟失數(shù)據(jù)的序列以及網(wǎng)絡(luò)狀態(tài)的推測(cè)。
本發(fā)明采用的技術(shù)方案如下:
一種多分發(fā)場(chǎng)景的數(shù)據(jù)丟包率統(tǒng)計(jì)方法,包括以下步驟:
1)將數(shù)據(jù)分發(fā)到若干接收機(jī),對(duì)分發(fā)到每臺(tái)接收機(jī)上的數(shù)據(jù)標(biāo)記序列號(hào),以實(shí)現(xiàn)數(shù)據(jù)序列化;
2)對(duì)接收機(jī)所接收的數(shù)據(jù)的序列號(hào)進(jìn)行分析和統(tǒng)計(jì),得到數(shù)據(jù)丟包率。
進(jìn)一步地,步驟1)按照負(fù)載均衡策略將數(shù)據(jù)分發(fā)到若干接收機(jī)。
進(jìn)一步地,步驟1)對(duì)發(fā)送的數(shù)據(jù)預(yù)留一個(gè)字段用于標(biāo)記數(shù)據(jù)的序列號(hào),然后在數(shù)據(jù)發(fā)送過程中按照目的地對(duì)數(shù)據(jù)進(jìn)行序列標(biāo)記。
進(jìn)一步地,步驟1)按照分發(fā)目的對(duì)數(shù)據(jù)進(jìn)行統(tǒng)一序列化,即發(fā)送到同一目的地的數(shù)據(jù)統(tǒng)一序列化。
進(jìn)一步地,步驟1)進(jìn)行序列化時(shí),將分發(fā)到同一目的地的數(shù)據(jù)遞增序列號(hào),并進(jìn)入到同一發(fā)送隊(duì)列。
進(jìn)一步地,步驟2)中每臺(tái)接收機(jī)計(jì)算出自身實(shí)際接收的數(shù)據(jù)總量,并根據(jù)序列號(hào)計(jì)算出接收機(jī)理論接收的數(shù)據(jù)量,進(jìn)而統(tǒng)計(jì)得出該接收機(jī)的丟包率。
進(jìn)一步地,步驟2)根據(jù)缺失的序列號(hào)計(jì)算出丟失數(shù)據(jù)的位置。
進(jìn)一步地,步驟2)根據(jù)序列號(hào)的統(tǒng)計(jì)推斷出網(wǎng)絡(luò)的狀態(tài)。
進(jìn)一步地,通過可視化的方式顯示整個(gè)網(wǎng)絡(luò)的狀態(tài),包括哪些時(shí)刻網(wǎng)絡(luò)狀態(tài)良好,哪些時(shí)刻網(wǎng)絡(luò)丟包嚴(yán)重,以利于更好的掌握網(wǎng)絡(luò)狀態(tài)。
本發(fā)明的有益效果如下:
本發(fā)明可以解決在局域網(wǎng)環(huán)境下數(shù)據(jù)丟包率的統(tǒng)計(jì),按照發(fā)送目的地對(duì)數(shù)據(jù)進(jìn)行序列化,不僅能夠統(tǒng)計(jì)丟包率情況,還能夠根據(jù)序列號(hào)的分布推算出回傳數(shù)據(jù)的序號(hào),并能夠通過可視化的方式掌握整個(gè)網(wǎng)絡(luò)的狀態(tài),以提高網(wǎng)絡(luò)利用率。本發(fā)明能夠準(zhǔn)確計(jì)算丟包率,并能實(shí)現(xiàn)網(wǎng)絡(luò)狀態(tài)的可視化。
附圖說(shuō)明
圖1是本發(fā)明方法的步驟流程圖。
圖2是對(duì)數(shù)據(jù)進(jìn)行序列化的示意圖。
具體實(shí)施方式
下面通過具體實(shí)施例和附圖,對(duì)本發(fā)明做進(jìn)一步說(shuō)明。
圖1是本發(fā)明方法的步驟流程圖。本發(fā)明主要使用在數(shù)據(jù)分發(fā)的場(chǎng)景下,大數(shù)據(jù)負(fù)載均衡的分發(fā)到不同的目的地,首先需要對(duì)發(fā)送的數(shù)據(jù)預(yù)留一個(gè)字段用于標(biāo)記數(shù)據(jù)的序列號(hào),然后在數(shù)據(jù)發(fā)送過程中,按照目的地對(duì)數(shù)據(jù)進(jìn)行序列標(biāo)記,最后對(duì)接收數(shù)據(jù)的序列號(hào)進(jìn)行分析統(tǒng)計(jì),得到丟包率,進(jìn)而能夠計(jì)算出丟失數(shù)據(jù)的序列以及進(jìn)行網(wǎng)絡(luò)狀態(tài)的推測(cè)。
本發(fā)明的具體方法如下:
1)確定回傳數(shù)據(jù)格式,回傳數(shù)據(jù)預(yù)留字段用于標(biāo)記數(shù)據(jù)的序列號(hào),該字段會(huì)在數(shù)據(jù)發(fā)送時(shí)進(jìn)行標(biāo)記置位。
2)回傳數(shù)據(jù)序列化,本方法不是對(duì)所有回傳的數(shù)據(jù)統(tǒng)一序列,而是按照分發(fā)目的統(tǒng)一序列,即回傳到同一目的地的數(shù)據(jù)統(tǒng)一序列化。
3)序列化方法,分發(fā)到同一目的地的數(shù)據(jù)遞增序列號(hào),進(jìn)入到同一發(fā)送隊(duì)列。
4)對(duì)接收的數(shù)據(jù)的序列號(hào)進(jìn)行分析和統(tǒng)計(jì):
a)每臺(tái)數(shù)據(jù)接收機(jī)計(jì)算出自身實(shí)際接收的數(shù)據(jù)總量,根據(jù)序列號(hào)可以計(jì)算出數(shù)據(jù)接收機(jī)理論接收的數(shù)據(jù)量,因此可以統(tǒng)計(jì)出該接收機(jī)上丟包率情況;
本實(shí)施例中,丟包率的計(jì)算公式為;
其中,Dpr表示丟包率,Nt表示理論上發(fā)送的數(shù)據(jù)總量,Nr表示實(shí)際接收到的數(shù)據(jù)總量;
b)序列號(hào)是按照一定的規(guī)律標(biāo)記的,缺失的序列號(hào)就是回傳過程中未回傳成功的數(shù)據(jù),能夠明確計(jì)算出丟失數(shù)據(jù)的位置;
c)根據(jù)序列號(hào)的統(tǒng)計(jì),可以推斷網(wǎng)絡(luò)的狀態(tài)。通過可視化的方式顯示整個(gè)網(wǎng)絡(luò)的狀態(tài),哪些時(shí)刻網(wǎng)絡(luò)狀態(tài)良好,哪些時(shí)刻網(wǎng)絡(luò)丟包嚴(yán)重,以利于更好的掌握網(wǎng)絡(luò)狀態(tài)。
圖2示意了本發(fā)明方法的具體過程,包括進(jìn)行序列化的方法、進(jìn)行統(tǒng)計(jì)與計(jì)算以及進(jìn)行網(wǎng)絡(luò)狀態(tài)展示。其中序列化就是對(duì)去往同一目的地的數(shù)據(jù)序號(hào)依次累加;然后按照前文所述的步驟進(jìn)行統(tǒng)計(jì)與計(jì)算,每臺(tái)數(shù)據(jù)接收機(jī)計(jì)算出自身實(shí)際接收的數(shù)據(jù)總量,根據(jù)序列號(hào)可以計(jì)算出數(shù)據(jù)接收機(jī)理論接收的數(shù)據(jù)量,進(jìn)而統(tǒng)計(jì)出該接收機(jī)上丟包率情況;然后進(jìn)行網(wǎng)絡(luò)狀態(tài)展示,即通過可視化的方式顯示整個(gè)網(wǎng)絡(luò)的狀態(tài),哪些時(shí)刻網(wǎng)絡(luò)狀態(tài)良好,哪些時(shí)刻網(wǎng)絡(luò)丟包嚴(yán)重,以利于更好的掌握網(wǎng)絡(luò)狀態(tài)。
通過以上方法,可以解決在局域網(wǎng)環(huán)境下數(shù)據(jù)丟包率的統(tǒng)計(jì),按照發(fā)送目的地對(duì)數(shù)據(jù)進(jìn)行序列化,不僅能夠統(tǒng)計(jì)丟包率情況,還能夠根據(jù)序列號(hào)的分布推算出回傳數(shù)據(jù)的序號(hào),并能夠通過可視化的方式掌握整個(gè)網(wǎng)絡(luò)的狀態(tài),以提高網(wǎng)絡(luò)利用率。該方法能夠準(zhǔn)確計(jì)算丟包率,并能實(shí)現(xiàn)網(wǎng)絡(luò)狀態(tài)的可視化。
以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn)行限制,本領(lǐng)域的普通技術(shù)人員可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求書所述為準(zhǔn)。