熊 顥,雷迎科,吳子龍
(國防科技大學(xué)電子對抗學(xué)院,安徽 合肥 230037)
現(xiàn)代軍事通信技術(shù)正處于飛速發(fā)展階段,瞬息萬變的戰(zhàn)場環(huán)境提高了通信對抗實(shí)時偵察的難度。為了可靠地獲取敵方通信信息,作為非合作方,首先需要有效分幀并最終完成目標(biāo)通信鏈路的協(xié)議解析[1]。數(shù)據(jù)傳輸按照協(xié)議規(guī)定的幀格式進(jìn)行發(fā)送與接收,為了保證從接收到的信息序列中正確恢復(fù)通信信息,必須解決幀同步碼識別的問題。因此,研究一種有效的協(xié)議幀同步碼識別算法具有重要意義。
非合作方需要在未知同步字段內(nèi)容和幀結(jié)構(gòu)的條件下提取協(xié)議同步信息,屬于盲識別問題[2-5]。國內(nèi)外對于鏈路層協(xié)議幀同步碼識別的研究,主要分為等幀長和非等幀長同步字識別兩種情況。傳統(tǒng)算法以高階統(tǒng)計處理技術(shù)為主,文獻(xiàn)[5—7]提出了二次搜索法在特定步長下進(jìn)行搜索同步碼;文獻(xiàn)[8]提出的模糊匹配算法,分別利用小區(qū)域檢測和相關(guān)濾波估計幀長和幀起始位置;文獻(xiàn)[9]推導(dǎo)出基于硬判決的幀同步字盲識別算法,并利用改進(jìn)的基于軟判決的算法提高精度;文獻(xiàn)[10]提出了基于數(shù)據(jù)挖掘的比特流切分算法。
上述算法能夠?qū)崿F(xiàn)對同步碼字的準(zhǔn)確識別,但都只應(yīng)用于等幀長問題,算法實(shí)用性具有一定的局限性。針對非等幀長的情況,文獻(xiàn)[11]提出了基于多重分形譜的幀同步碼識別算法,算法較復(fù)雜不具備時效性;文獻(xiàn)[12]提出了基于相關(guān)濾波和離散度分析的幀同步識別算法;文獻(xiàn)[13]提出了基于幀結(jié)構(gòu)遍歷的幀同步識別算法,需要一定先驗(yàn)信息,不符合盲識別的條件。
針對軍事通信對抗領(lǐng)域中傳統(tǒng)未知協(xié)議幀同步碼識別算法應(yīng)用局限、復(fù)雜度高以及盲識別難度大等問題,本文在有偏性分析的基礎(chǔ)上提出基于碼元密度檢測的鏈路層幀同步碼盲識別算法,該算法適用于未知幀結(jié)構(gòu)的盲識別條件。
為了保證通信系統(tǒng)的可靠性和有效性,并且同時兼顧戰(zhàn)場信息傳輸?shù)碾[蔽性和安全性,各協(xié)議比特流都在鏈路層封裝成幀并進(jìn)行傳輸。一段完整的協(xié)議幀包括同步字段和信息字段,同步字段用于數(shù)據(jù)幀同步,信息字段負(fù)責(zé)承載高層傳輸數(shù)據(jù)包,各協(xié)議幀無縫連接組成比特流進(jìn)行傳輸。同步字段必須使用專門指定的控制字符,來保證透明傳輸和避免出現(xiàn)幀定界錯誤的問題。協(xié)議幀一般形式如圖1所示。
圖1 協(xié)議幀結(jié)構(gòu)Fig.1 The structure of the protocol frame
假設(shè)接收序列長度為l,包含p個元素,其中非零元素個數(shù)為q。二進(jìn)制序列的漢明重量等于該序列中非零元素的個數(shù),即m=q。
定義序列的碼元密度ρ,其值等于該序列漢明重量與長度的比值。二進(jìn)制比特流數(shù)據(jù)包含的元素具有二元性,其中1的出現(xiàn)概率v等于非零元素個數(shù)與序列元素總數(shù)的比值。因此,二進(jìn)制序列的碼元密度與序列中1出現(xiàn)的概率在數(shù)值上相等。
(1)
根據(jù)協(xié)議幀的結(jié)構(gòu)特點(diǎn),設(shè)同步字段的碼元長度為l1,碼元密度為ρ1;信息字段的碼元長度為l2,碼元密度為ρ2。得到全幀的碼重為:
m=ρ1l1+ρ2l2
(2)
由此計算出全幀的碼元密度:
(3)
二進(jìn)制序列的有偏性被用來描述反應(yīng)序列中01比特的分布情況[14]。若二進(jìn)制序列中1出現(xiàn)的概率為v,則序列的有偏性定義為θ=1/2-v。
為了保證傳輸數(shù)據(jù)的可靠性,信息字段必須采用差錯控制技術(shù),目前數(shù)據(jù)鏈路層廣泛使用加入循環(huán)冗余碼來進(jìn)行檢錯。根據(jù)協(xié)議的不同,使用的編碼方式也不同,部分協(xié)議子層還會進(jìn)行偽隨機(jī)化處理[15-16]。信道編碼能夠降低序列有偏性,同時序列經(jīng)過偽隨機(jī)化之后有偏性進(jìn)一步降低[17]。因此,在連續(xù)的協(xié)議幀比特流中,同步字的有偏性大于幀。
假設(shè)接收到協(xié)議幀數(shù)據(jù)為R=(r1,r2,…rl1+l2),令同步字段有偏性為θ1,信息字段有偏性為θ2,如圖2所示。
圖2 協(xié)議幀信息Fig.2 The Information of protocol frame
根據(jù)式(1)可求得同步字段的碼元密度如式(4):
(4)
同理,信息字段的碼元密度如下式:
(5)
由于信息字段有偏性小于同步字段,可知同步字段的碼元密度小于信息字段。將式(3)化簡得到全幀的碼元密度如式(6):
(6)
根據(jù)上述分析可知ρ1<ρ2,帶入式(6)可知協(xié)議幀的碼元密度大于同步字段,即ρ>ρ1。
在數(shù)據(jù)鏈路層協(xié)議幀中,一般來說同步字段的長度與信息字段成正比,傳輸數(shù)據(jù)量越大的協(xié)議幀,同步字段也相對越長。但實(shí)際應(yīng)用中,待識別序列中信息字段的長度遠(yuǎn)大于同步字段的長度,因此同步字段在比特流中的濃度很低,導(dǎo)致識別困難。
根據(jù)對協(xié)議幀有偏性的分析,得到了協(xié)議幀的碼元密度大于同步字段的結(jié)論,以此為依據(jù),對接收序列中的信息字段進(jìn)行刪減,通過對比刪減前后協(xié)議幀數(shù)據(jù)碼元密度的變化實(shí)現(xiàn)提高同步字段濃度的目標(biāo),從而完成識別,下面對其進(jìn)行理論推導(dǎo)與有效性分析實(shí)驗(yàn)。
(7)
選取四組長度相等的GSM協(xié)議接入突發(fā)協(xié)議幀[18]作為刪減有效性的對比實(shí)驗(yàn)數(shù)據(jù),相關(guān)參數(shù)如表1所示,分別做無刪減、只刪減同步字段、只刪減相同長度信息字段和隨機(jī)刪減的處理。選取50幀共7 800 bit上述協(xié)議幀數(shù)據(jù),根據(jù)刪減數(shù)量的增加,計算幀碼元密度變化,結(jié)果如圖3所示。
圖3 刪減有效性實(shí)驗(yàn)Fig.3 Validity test
圖3中虛線表示無刪減的原始序列碼元密度。從圖中可以看出,當(dāng)大量刪減同步字段時,數(shù)據(jù)的碼元密度增大;對信息字段進(jìn)行刪減時,碼元密度下降,但由于信息字段長度遠(yuǎn)大于同步字段,下降速度慢且刪減數(shù)量較小時,變化不明顯。對序列進(jìn)行隨機(jī)刪減時,信息字段長度更長,刪減點(diǎn)落入其中的概率更大,當(dāng)刪減量較小時,碼元密度曲線在虛線下方。
表1 五種待識別協(xié)議幀的特征
本文所提算法利用序列碼元密度的分布進(jìn)行刪減,使待識別序列中同步字段的濃度得到有效提高,從而完成識別,其步驟如下:
步驟2 隨機(jī)選取50個分割段進(jìn)行刪減,計算剩余序列碼元密度ρ1,比較ρ0和ρ1的大小,若ρ0>ρ1則在此基礎(chǔ)上繼續(xù)進(jìn)行刪減并計算得到ρ2,反之則重新進(jìn)行步驟2;
步驟3 重復(fù)步驟2和步驟3,直到完成100次刪減得到ρ100;
步驟4 將刪余的分割段轉(zhuǎn)換成相對應(yīng)的十進(jìn)制數(shù),統(tǒng)計各十進(jìn)制數(shù)的數(shù)目。濃度最大的十進(jìn)制數(shù)對應(yīng)的字符串為同步字或同步字的一部分,完成識別。
實(shí)驗(yàn)數(shù)據(jù)選取自GSM全球移動通信標(biāo)準(zhǔn)中的常規(guī)突發(fā)協(xié)議幀、局域網(wǎng)鏈路層802.3協(xié)議幀、TC空間數(shù)據(jù)鏈路協(xié)議和采集自數(shù)據(jù)模擬器的導(dǎo)彈制導(dǎo)數(shù)據(jù)鏈前向鏈路數(shù)據(jù)幀,相關(guān)參數(shù)如表1所示。
對每種數(shù)據(jù)幀分別仿真產(chǎn)生105bit序列。在實(shí)際通信系統(tǒng)中,集中插入式幀同步碼的長度一般不會小于2 Byte,設(shè)置分割長度為τ=10 bit,每次刪減50個分割段,一共刪減100次,隨著刪減次數(shù)的上升,每種協(xié)議幀數(shù)據(jù)的碼元密度變化如圖4所示。
圖4 碼元密度檢測Fig.4 Symbol density detection
刪減完成后,將剩下的分割端轉(zhuǎn)成十進(jìn)制以便于濃度檢測,檢測結(jié)果如圖5所示,從上到下依次是GSM全球移動通信標(biāo)準(zhǔn)中的常規(guī)突發(fā)協(xié)議幀、局域網(wǎng)鏈路層802.3協(xié)議幀和TC空間數(shù)據(jù)鏈路協(xié)議的最大字符串檢測結(jié)果。
圖5 字符串濃度檢測Fig.5 String concentration detection
由圖4可知,隨著刪減次數(shù)的增加,三種不同協(xié)議幀的碼元密度逐漸下降,因此數(shù)據(jù)序列中的信息字段被刪減,同步字段的濃度得到有效提高。由圖5可知,GSM全球移動通信標(biāo)準(zhǔn)中的常規(guī)突發(fā)協(xié)議幀、局域網(wǎng)鏈路層802.3協(xié)議幀和TC空間數(shù)據(jù)鏈路協(xié)議中濃度最大的字符串分別為151、682和92,對應(yīng)的二進(jìn)制序列分別為0010010111、1010101010和0001011100。由表1可知,上述實(shí)驗(yàn)的識別結(jié)構(gòu)能夠正確匹配三種協(xié)議幀同步字段。
在誤碼率為5%的條件下,再次對GSM全球移動通信標(biāo)準(zhǔn)中的常規(guī)突發(fā)協(xié)議幀、局域網(wǎng)鏈路層802.3協(xié)議幀和TC空間數(shù)據(jù)鏈路協(xié)議分別仿真產(chǎn)生105bit序列。分割長度設(shè)置為10 bit,每次刪減50個分割段,一共刪減100次。刪減完成后將分割段進(jìn)行十進(jìn)制轉(zhuǎn)化,統(tǒng)計不同十進(jìn)制數(shù)出現(xiàn)的次數(shù)作為濃度值檢測的依據(jù),檢測結(jié)果如圖6所示。
在其余仿真參數(shù)相同的條件下,誤碼率的提高直接影響十進(jìn)制數(shù)的濃度檢測值,從圖6中可以看出盡管字符串的檢測濃度峰值有所下降,但檢測結(jié)果仍與無誤碼條件一致,說明識別結(jié)果正確。
圖6 誤碼條件字符串濃度檢測Fig.6 String concentration detection under error code condition
分別選取105bit的TC空間數(shù)據(jù)鏈路協(xié)議幀序列和導(dǎo)彈制導(dǎo)數(shù)據(jù)鏈前向鏈路協(xié)議幀序列,研究不同切分長度對于檢測算法的影響,其中TC空間數(shù)據(jù)鏈路協(xié)議幀數(shù)據(jù)由仿真產(chǎn)生,導(dǎo)彈制導(dǎo)數(shù)據(jù)鏈前向鏈路協(xié)議幀數(shù)據(jù)采集自數(shù)據(jù)鏈模擬器,如表1所示。
分別進(jìn)行分割段長度為10 bit和16 bit的同步字段檢測實(shí)驗(yàn),每次刪減50個分割段,控制刪減比特總量一致,隨著刪減次數(shù)的增加,不同協(xié)議碼元密度的變化如圖7所示。
圖7 切分長度對性能的影響Fig.7 The effect of cutting length on performance
刪減完成后將分割段進(jìn)行十進(jìn)制轉(zhuǎn)化,統(tǒng)計各十進(jìn)制數(shù)出現(xiàn)的次數(shù)作為濃度值檢測的依據(jù),檢測結(jié)果如圖8,從上到下為分割段長10和16bit下的TC空間數(shù)據(jù)鏈路協(xié)議幀、分割段長10和16 bit下的制導(dǎo)數(shù)據(jù)鏈前向鏈路協(xié)議幀的字符串濃度檢測結(jié)果。
圖8 字符串濃度檢測Fig.8 String concentration detection
由圖7可知,隨著刪減次數(shù)的上升,兩種協(xié)議幀的碼元密度呈現(xiàn)下降趨勢,并且分割段長度越長,碼元密度下降越快,同步字段濃度提高的越快。由圖8可知,在分割段長度較長時,字符串濃度檢測中出現(xiàn)的濃度峰越少且峰值提高,越有利于同步字段的檢測,可以有效地提高檢測精度。
現(xiàn)有的協(xié)議幀同步字段識別算法主要有模糊匹配算法、基于分層的矩陣秩算法和多重分形譜算法,對比本文算法和上述三種算法在不同誤碼條件下對協(xié)議幀同步字段的識別性能實(shí)驗(yàn),選取105bit GSM全球移動通信標(biāo)準(zhǔn)中的常規(guī)突發(fā)協(xié)議幀序列作為實(shí)驗(yàn)數(shù)據(jù)各進(jìn)行1 000次蒙特卡洛實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖9所示。
圖9 算法對比實(shí)驗(yàn)Fig.9 Contrast experiment
如圖9所示,在誤碼率達(dá)到2%時,模糊匹配算法抗誤碼性能較差,識別概率顯著下降,其他三種算法的識別率仍能保持在75%以上;在誤碼率達(dá)到2%時,模糊匹配算法的識別概率幾乎為0,高階統(tǒng)計處理技術(shù)的識別概率下降到40%,多重分形譜算法和本文算法的識別結(jié)果相對較高;隨著誤碼率的進(jìn)一步增大到10%,模糊匹配算法、高階統(tǒng)計處理技術(shù)合多重分形譜算法的識別概率均低于5%且趨近于0,本文算法的識別概率仍保持在在10%以上。因此隨著誤碼率的升高,本文算法的識別率均高于模糊匹配算法、高階統(tǒng)計處理技術(shù)和多重分形譜算法。
本文提出一種基于碼元密度檢測的鏈路層協(xié)議幀同步碼盲識別算法。該方法首先分析協(xié)議幀的有偏性,給出序列碼元密度的定義,然后通過理論推導(dǎo)得到了協(xié)議幀的碼元密度大于同步字段碼元密度的結(jié)論并通過算例驗(yàn)證正確性,最后利用這一結(jié)論,對未知協(xié)議幀序列進(jìn)行刪減,達(dá)到增大序列中同步字段的濃度的目的,完成特定長度字符串的濃度檢測,實(shí)現(xiàn)對未知協(xié)議幀同步字段的準(zhǔn)確識別。仿真實(shí)驗(yàn)結(jié)果表明,該算法在理想條件和誤碼條件下均能準(zhǔn)確識別未知協(xié)議幀同步字段,對比傳統(tǒng)算法識別效果更好,對誤碼率有較高的容錯性能,具有可靠性和有效性。