數(shù)據(jù)通信知多少?數(shù)據(jù)通信鏈路層設(shè)計(上篇)
數(shù)據(jù)通信在被廣泛使用,隨著數(shù)據(jù)通信的應(yīng)用,大家對于數(shù)據(jù)通信也更為了解。本文中,小編將對基于選擇式ARQ的短波自適應(yīng)數(shù)據(jù)通信鏈路層協(xié)議設(shè)計加以介紹。本文僅為上篇,更多內(nèi)容請參考下篇。如果你對數(shù)據(jù)通信具有興趣,不妨繼續(xù)往下閱讀哦。
一、前言
短波通信是中、遠(yuǎn)程無線電通信的傳統(tǒng)手段,它具有通信距離遠(yuǎn)、架設(shè)方便、抗摧毀能力強、運行費用低等優(yōu)點,在軍隊、外交等部門有著廣泛的應(yīng)用。在20世紀(jì)80年代手期,美國制訂了軍標(biāo)MIL-STD-188-110A,此后國外一些公司紛紛提出了符合該標(biāo)準(zhǔn)的新一代高速串行調(diào)制解調(diào)器,如哈里斯公司的RF 5710,使得短波數(shù)據(jù)通信效率明顯改善。
我國許多用戶引進(jìn)了符合110A軍標(biāo)的調(diào)制解調(diào)器,如外交部全球短波數(shù)據(jù)通信系統(tǒng)采用了哈里斯公司的RF 5710,但是沒有合適的通信軟件。在多年實踐經(jīng)驗基礎(chǔ)上,于1999年初步設(shè)計和實現(xiàn)了基于選擇式ARQ的鏈路層協(xié)議,并對影響傳輸效率的因素和改進(jìn)措施作了定性分析。對該協(xié)議的時間參數(shù)和性能初步作了定量分析。
本文首先分析了協(xié)議的不足之處,然后給出了改進(jìn)型半雙工選擇式ARQ協(xié)議的設(shè)計方案,定時分析了新協(xié)議的時間參數(shù)、信道利用率,在定量分析的基礎(chǔ)上給出了自適應(yīng)閾值;在新的鏈路層協(xié)議上,制定了文件傳輸層協(xié)議。
二、改進(jìn)型半雙工選擇式ARQ協(xié)議和支持傳送協(xié)議
2.1 短波半雙工選擇ARQ協(xié)議概況
協(xié)議一次最多發(fā)送16幀,然后等待對方的應(yīng)答;幀的編號從1~240,當(dāng)傳輸?shù)降?40幀數(shù)據(jù)后,強行將序號1~240中沒有正確傳送的幀送到對方,然后才能進(jìn)入下一個240幀的傳輸,這與通常的滑動窗口機制有差異。對于選擇式協(xié)議來說,極端情況下240幀的第一幀沒有成功收到,那么所有的數(shù)據(jù)都不能交給應(yīng)用層,這樣對于優(yōu)先級非常高的文件,無法及時傳輸。為了解決這類問題,在每個文件傳輸時,首先強制性地把文件名稱、長度送到對方,然后將文件中的數(shù)據(jù)送走。這種方案保證先發(fā)送的文件先到達(dá),但是文件頭和文件體需要至少發(fā)送兩次,對于長交織模式來說傳遞一批小文件(需要確保優(yōu)先級高的文件先送到,不能把它們合成一個文件一來傳輸)時效率非常低。
導(dǎo)致效率低下的原因有以下幾個方面:首先,沒有將全雙工選擇式ARQ中滑動窗口技術(shù)正確地推廣到短波半雙工條件下;其次,一次發(fā)送的數(shù)據(jù)幀固定為16幀;第三,缺少對滑動窗口頂部數(shù)據(jù)幀的保護(hù),使得滑動窗口機制無法快速下滑;第四,通信雙方采用一樣的交織模式,并且沒有制定信道條件變化時自適應(yīng)改變交織模式的定量準(zhǔn)則。
2.2 改進(jìn)型半雙工選擇式ARQ協(xié)議
數(shù)據(jù)幀結(jié)構(gòu)
標(biāo)志發(fā)地址收地址幀號幀數(shù)數(shù)據(jù)CRC標(biāo)志
1221130,60,12,24021
說明:數(shù)據(jù)幀的長度接收方自動匹配,由幀的結(jié)束符號來自動區(qū)分。兩個幀之間的分隔符號用一個。
應(yīng)答幀結(jié)構(gòu)
標(biāo)志發(fā)地址收地址確認(rèn)幀號CRC標(biāo)志
122多個字節(jié)21
說明:確認(rèn)幀號是最后一次正確接收的所有數(shù)據(jù)幀號。如果最近一次傳輸?shù)膸柸空_,那么該域包含了所有的數(shù)據(jù)幀號,如果全部錯誤,那么該域就沒有數(shù)據(jù)。
應(yīng)答幀的保護(hù):根據(jù)應(yīng)答幀的定義最長不超過60字節(jié),在信道傳輸質(zhì)量變差的條件下一次發(fā)送的幀數(shù)會減少,即應(yīng)答幀的長度很短,因此同一個應(yīng)答幀發(fā)送三遍既保證了應(yīng)答幀的可靠性又不會增加傳輸?shù)呢?fù)擔(dān)。發(fā)送方只要收到一次正確的應(yīng)答幀就可以了,不管其余兩幀是否正確。應(yīng)答幀可靠的重要性在于一旦它出錯會造成最近發(fā)送的一批數(shù)據(jù)幀重新傳輸。
交織模式的選擇:為了適應(yīng)信道傳輸質(zhì)量的變化,應(yīng)該及時調(diào)整交織模式。對于交織模式的配置原則如下:數(shù)據(jù)的接收方固定設(shè)置為無交織模式(應(yīng)答幀已經(jīng)有錯誤保護(hù)機制),數(shù)據(jù)主發(fā)送方初始6設(shè)置為無交織,在發(fā)送過程中重傳的幀數(shù)達(dá)到一定閾值,則再次發(fā)送前交織模式設(shè)置為短交織,依此類推。反過來,長交織模式誤幀率很低則可以設(shè)置成短交織,依此類推。
滑動窗口和一次發(fā)送幀數(shù):協(xié)議啟動時初次發(fā)送的數(shù)據(jù)幀個數(shù)最多為20幀,在傳輸過程中如果誤幀率很小,則可以逐步加大到60幀。收發(fā)雙方滑動窗口的長度都定為120帖,實際一次發(fā)送的幀數(shù)受滑動窗口大小和緩沖區(qū)中待傳送數(shù)據(jù)幀數(shù)可以多一些。這樣修改后,當(dāng)信道十分良好時,只要很少幾次應(yīng)答確認(rèn)就可以完成非常大的數(shù)據(jù)量傳輸,可以大大提高數(shù)據(jù)通信的效率。
對滑動窗口頂部數(shù)據(jù)幀的保護(hù):由于本協(xié)議的滑動窗口長度限定為120,當(dāng)較小序號的數(shù)據(jù)幀沒有正確送走時會限制一次發(fā)送的數(shù)據(jù)幀個數(shù)(極端情況下,第1幀沒有成功地送走,而第2~120幀全部送走,此時一次只能送一個幀);另外接收方會積壓許多數(shù)據(jù)幀而未能交給上一層協(xié)議,影響上一層通信的實時性。
為了解決這一問題,對于沒有正確傳送的數(shù)據(jù)幀在一次發(fā)送中允許最多一遍,這樣可以加速滑動窗口迅速下滑。具體做法:當(dāng)實際能夠發(fā)送的數(shù)據(jù)幀不足20幀,或者最小沒有成功送走的序號與最大成功送走的序號之間間隔超過30幀時,對傳輸失敗的幀重復(fù)發(fā)送兩遍。如仍然出現(xiàn)差錯,則發(fā)達(dá)三遍。
采取保護(hù)措施后可以解決由于個別幀遲遲沒有正確傳輸而導(dǎo)致滑動窗口不能下移而影響傳輸?shù)膶崟r性和效率問題。
2.3 文件傳輸層協(xié)議
協(xié)議修改后,鏈路層能夠比較迅速地將數(shù)據(jù)遞交給文件層,因此文件傳輸層可以與鏈路層切分出來。由于鏈路層能夠保證無差錯,因此文件之間只要能夠區(qū)分格式就可以了。一個文件的數(shù)據(jù)格式定義如下:
分隔符+文件名稱+分隔符+文件長度+分隔符+文件數(shù)據(jù)內(nèi)容
多個文件可以按照上面的格式一個接一個傳輸。
于其它半雙工信道。
以上便是此次小編帶來的“數(shù)據(jù)通信”相關(guān)內(nèi)容,通過本文,希望大家對數(shù)據(jù)通信鏈路層設(shè)計具備初步的認(rèn)識。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!