[發(fā)明專利]一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法有效
| 申請(qǐng)?zhí)枺?/td> | 201510048181.X | 申請(qǐng)日: | 2015-01-29 |
| 公開(kāi)(公告)號(hào): | CN104660499B | 公開(kāi)(公告)日: | 2017-12-26 |
| 發(fā)明(設(shè)計(jì))人: | 張小國(guó);王慶;姚榮亮;徐美嬌 | 申請(qǐng)(專利權(quán))人: | 東南大學(xué) |
| 主分類號(hào): | H04L12/70 | 分類號(hào): | H04L12/70 |
| 代理公司: | 南京瑞弘專利商標(biāo)事務(wù)所(普通合伙)32249 | 代理人: | 楊曉玲 |
| 地址: | 211189 江*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 避免 連續(xù) 損失 報(bào)文 處理 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法,屬于信息技術(shù)領(lǐng)域。
背景技術(shù)
電子設(shè)備(如GPS接收機(jī))常常通過(guò)RS232,USB等端口或者借助無(wú)線網(wǎng)絡(luò)輸出本設(shè)備測(cè)量或者感知到的位置等信息。由于工作場(chǎng)景、報(bào)文傳輸路徑等客觀原因?qū)е聢?bào)文在發(fā)送、傳輸、接收的過(guò)程中可能發(fā)生無(wú)碼、丟包等情況。
報(bào)文的讀取的技術(shù)主要分為兩大塊,分別是報(bào)文頭識(shí)別和報(bào)文內(nèi)容的讀取這兩大塊技術(shù)。以往處理報(bào)文的較常用方法是,在獲取的報(bào)文中檢測(cè)是否包含可識(shí)別的報(bào)文頭,一旦檢測(cè)到系統(tǒng)可識(shí)別的報(bào)文頭后,就開(kāi)始讀取報(bào)文頭后面的報(bào)文內(nèi)容,一直讀到當(dāng)報(bào)文內(nèi)容長(zhǎng)度達(dá)到所設(shè)計(jì)報(bào)文長(zhǎng)度的是時(shí)候,就停止本次報(bào)文內(nèi)容的讀取,說(shuō)明這一次報(bào)文內(nèi)容讀取完成。在讀取內(nèi)容完成后再重新檢測(cè)報(bào)文頭,從而進(jìn)行下一個(gè)報(bào)文的讀取工作。上面的方法主要缺點(diǎn)是。首先,上述方法沒(méi)有檢測(cè)報(bào)文內(nèi)容的工作,所以不能確定所讀取的報(bào)文內(nèi)容是否發(fā)生丟包現(xiàn)象。其次,如果上一個(gè)報(bào)文內(nèi)容有丟包現(xiàn)象,而沒(méi)有被及時(shí)的檢測(cè)出來(lái),就有可能把下一個(gè)報(bào)文的報(bào)文頭也讀取到報(bào)文內(nèi)容中去,造成下一個(gè)報(bào)文沒(méi)有完整的報(bào)文頭,在下一個(gè)報(bào)文頭檢測(cè)處就無(wú)法檢測(cè)到。就造成下一個(gè)報(bào)文內(nèi)容因沒(méi)有報(bào)文頭兒無(wú)法讀取。上面的方法在應(yīng)用中就有可能在上一個(gè)報(bào)文發(fā)生丟包現(xiàn)象的時(shí)候,把下一個(gè)報(bào)文的報(bào)文頭給吸收,造成兩組報(bào)文信息都丟失了。
發(fā)明內(nèi)容
發(fā)明目的:為了克服現(xiàn)有技術(shù)中存在的不足,本發(fā)明提供一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法,能及時(shí)的發(fā)現(xiàn)在報(bào)文內(nèi)容中的丟包現(xiàn)象,并且避免因一個(gè)報(bào)文丟包而導(dǎo)致連續(xù)兩組或多組報(bào)文。
技術(shù)方案:為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:
一種避免因丟包現(xiàn)象而造成連續(xù)損失兩組報(bào)文的報(bào)文處理方法,對(duì)具有報(bào)文頭和固定長(zhǎng)度報(bào)文內(nèi)容的報(bào)文或具有報(bào)文頭、報(bào)文尾以及報(bào)文內(nèi)容的報(bào)文的處理方法:
1)當(dāng)每個(gè)報(bào)文是由一個(gè)報(bào)文頭和一個(gè)固定長(zhǎng)的報(bào)文內(nèi)容組成,假設(shè)獲取到的總報(bào)文的總長(zhǎng)度為A*(m+n),由A個(gè)報(bào)文組成,其中每個(gè)報(bào)文頭長(zhǎng)度為m,每個(gè)報(bào)文內(nèi)容長(zhǎng)度為n:
11)對(duì)獲取到的報(bào)文進(jìn)行報(bào)文頭檢測(cè),令首先檢測(cè)得到的可識(shí)別報(bào)文頭為第i=1個(gè)報(bào)文頭;
12)讀取第i個(gè)報(bào)文頭后面長(zhǎng)度為(n+m-t),t=1~m-1的報(bào)文內(nèi)容,并同時(shí)對(duì)長(zhǎng)度為(n+m-t)的報(bào)文內(nèi)容進(jìn)行第i+1個(gè)報(bào)文頭檢測(cè):若未在長(zhǎng)度為(n+m-t)的報(bào)文內(nèi)容中檢測(cè)到可識(shí)別的第i+1個(gè)報(bào)文頭,則進(jìn)行步驟13);若在長(zhǎng)度為(n+m-t)的報(bào)文內(nèi)容中檢測(cè)到可識(shí)別的第i+1個(gè)報(bào)文頭,則進(jìn)行步驟14);
13)令i=i+1,檢測(cè)得到可識(shí)別的第i+1個(gè)報(bào)文頭,重復(fù)步驟12),直至讀取完整個(gè)總報(bào)文;
14)令i=i+1,重復(fù)步驟12),直至讀取完整個(gè)總報(bào)文;
2)當(dāng)報(bào)文是由報(bào)文頭、報(bào)文內(nèi)容(固定長(zhǎng)的報(bào)文或非固定長(zhǎng)的報(bào)文)以及報(bào)文尾組成的:
21)對(duì)獲取到的報(bào)文進(jìn)行報(bào)文頭檢測(cè),令首先檢測(cè)得到的可識(shí)別報(bào)文頭為第i=1個(gè)報(bào)文頭;
22)讀取第i個(gè)報(bào)文頭后面的報(bào)文內(nèi)容,并且同時(shí)對(duì)該報(bào)文內(nèi)容進(jìn)行報(bào)文尾檢測(cè),檢測(cè)到報(bào)文尾則進(jìn)入步驟23);
23)令i=i+1,檢測(cè)得到可識(shí)別的第i+1個(gè)報(bào)文頭,重復(fù)步驟22),直至讀取完整個(gè)總報(bào)文。
進(jìn)一步的,所述報(bào)文頭檢測(cè)采用KMP算法。
有益效果:本發(fā)明提供的一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法:在報(bào)文內(nèi)容讀取的過(guò)程中可以很快的辨別該報(bào)文是否發(fā)生丟包現(xiàn)象,一旦發(fā)生丟包現(xiàn)象就終止對(duì)本報(bào)文內(nèi)容的讀取,這樣即使該報(bào)文發(fā)生丟包現(xiàn)象對(duì)下一個(gè)報(bào)文的讀取也沒(méi)有產(chǎn)生影響,從而避免因報(bào)文內(nèi)容丟失而對(duì)下一個(gè)報(bào)文產(chǎn)生污染,即在處理電子設(shè)備或者無(wú)線網(wǎng)絡(luò)的輸出報(bào)文時(shí)可以避免因丟包現(xiàn)象而連續(xù)損失兩組或多組報(bào)文。
附圖說(shuō)明
圖1為本發(fā)明一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法的流程圖;
圖2為固定長(zhǎng)的報(bào)文內(nèi)容的接收的流程圖;
圖3為有報(bào)文尾的報(bào)文接收的流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明作更進(jìn)一步的說(shuō)明。
本發(fā)明中報(bào)文的報(bào)文頭檢測(cè)方法是采用的是KMP算法(克努特——莫里斯——普拉特算法),是一種自動(dòng)檢測(cè)接收到的報(bào)文頭方法。KMP算法中,對(duì)于每一個(gè)模式串我們實(shí)現(xiàn)計(jì)算出模式串的內(nèi)部匹配信息,在匹配失敗后,在已經(jīng)匹配的模式串子串中,找出最長(zhǎng)的相同的前綴和后綴,然后移動(dòng)使它們重疊。
下面一個(gè)例子進(jìn)一步解釋KMP算法。
主串:abacaabacabacabaabb,下文中我們稱作T;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于東南大學(xué),未經(jīng)東南大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201510048181.X/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 一種報(bào)文處理方法及裝置
- 報(bào)文分流方法及設(shè)備
- 一種避免因丟包而連續(xù)損失兩組報(bào)文的報(bào)文處理方法
- 報(bào)文處理方法、裝置、系統(tǒng)及終端
- 一種設(shè)備內(nèi)報(bào)文傳遞方法、報(bào)文傳遞裝置和電子設(shè)備
- 一種報(bào)文轉(zhuǎn)發(fā)的方法及裝置
- 一種報(bào)文生成方法、裝置、電子設(shè)備和存儲(chǔ)介質(zhì)
- 報(bào)文分析方法及裝置
- 一種報(bào)文處理的方法及裝置
- 基于雙因子認(rèn)證體系的工業(yè)控制報(bào)文語(yǔ)意解析審計(jì)方法





