宋波 程明香 張東斌 盧天祥



收稿日期:2023-04-17
DOI:10.19850/j.cnki.2096-4706.2023.22.011
摘? 要:傳統(tǒng)的位置匯報(bào)是通過查詢方式,經(jīng)過主控制器下發(fā)指令,對(duì)應(yīng)終端收到消息后發(fā)起信道申請(qǐng),再由控制器分配信道,接著終端跳轉(zhuǎn)到傳輸信道再發(fā)送數(shù)據(jù)到上行信道的過程。該流程耗時(shí)且無序。經(jīng)過分析,可以讓終端與主控制器在首次建聯(lián)時(shí)分配好固定信道,主控制器在控制信道不停廣播當(dāng)前窗口。終端可以根據(jù)首次建聯(lián)時(shí)分配的窗口,做出上報(bào)數(shù)據(jù)或?yàn)橄乱粋€(gè)窗口準(zhǔn)備數(shù)據(jù)的決定。從而達(dá)到分時(shí)、復(fù)用、有序的目標(biāo),以極大地提高系統(tǒng)吞吐量。
關(guān)鍵詞:位置信息;分配窗口;分時(shí)有序;非確認(rèn)式用戶數(shù)據(jù)報(bào);系統(tǒng)吞吐量
中圖分類號(hào):TN929.5? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2023)22-0048-04
Optimization of Location Upload Scheme in Cluster System
SONG Bo1, CHENG Mingxiang2, ZHANG Dongbin3, LU Tianxiang3
(1.Renesas Integrated Circuit Chengdu Co., Ltd., Chengdu? 610041, China; 2.Sichuan Hanshuo Space Equipment Co., Ltd., Chengdu? 610399, China; 3.China Rongtong Security International Group Co., Ltd., Beijing? 100007, China)
Abstract: Traditional location reporting is a process where the main controller issues instructions through a query method, and the corresponding terminal initiates a channel application after receiving the message. The controller then allocates the channel, and the terminal jumps to the transmission channel before sending data to the uplink channel. This process is time-consuming and disorganized. After analysis, it is possible to allocate a fixed channel between the terminal and the main controller during the first connection, and the main controller continuously broadcasts the current window on the control channel. The terminal can make decisions to report data or prepare data for the next window based on the window allocated during the first connection establishment. In order to achieve the goal of time sharing, reuse, and order, and greatly improve system throughput.
Keywords: location information; allocation window; time-sharing and order; unconfirmed UDP; system throughput
0? 引? 言
開發(fā)通信系統(tǒng)時(shí),首先提煉出經(jīng)典的需求模型,然后開發(fā)人員按照基本需求去實(shí)現(xiàn)。例如控制中心希望查詢手持對(duì)講機(jī)的終端用戶位置,基本邏輯是:控制中心下發(fā)查詢命令、對(duì)講機(jī)終端準(zhǔn)備數(shù)據(jù)、再上報(bào)數(shù)據(jù),形成一個(gè)完整的查詢框架。這種查詢方式在使用少量設(shè)備進(jìn)行測(cè)試時(shí),開發(fā)和量產(chǎn)過程中并不會(huì)暴露任何問題。而部署到成千上萬臺(tái)數(shù)字對(duì)講機(jī)構(gòu)成的系統(tǒng)或帶有漫游功能的多系統(tǒng)中,要獲取這些設(shè)備的位置信息,則需要耗費(fèi)大量的時(shí)間,及時(shí)性也較差。參考TDMA的思路,同一個(gè)數(shù)據(jù)匯報(bào)窗口可以在不同的時(shí)間段復(fù)用。目的是減少控制中心與被查詢終端的消息交互次數(shù),但是兩者需要提前知道源地址和目標(biāo)地址的關(guān)系。本文就用戶實(shí)際使用中遇到的通信瓶頸進(jìn)行分析,采用預(yù)先分配窗口讓數(shù)據(jù)有序上報(bào)的方法展開研究,最終達(dá)到提高系統(tǒng)吞吐量的目的。
1? 概? 述
Connect Plus是基于摩托羅拉公司DMR(數(shù)字移動(dòng)無線電標(biāo)準(zhǔn))產(chǎn)品的語音和數(shù)據(jù)的集成數(shù)字集群系統(tǒng)。本文采用摩托羅拉的中繼器和終端設(shè)備,建立起單地址和多地址的集群解決方案。
數(shù)字集群通信系統(tǒng)中,除了傳統(tǒng)的語音通信格式,還涉及短消息、遙控、遙測(cè)、位置信息匯報(bào)等數(shù)據(jù)通信格式。圖1是集群系統(tǒng)的拓?fù)鋱D。
XRC是中央控制系統(tǒng),是整個(gè)集群系統(tǒng)的數(shù)據(jù)管理和控制中心。
一個(gè)完整的單地址集群系統(tǒng)中,有最多不超過15臺(tái)中繼器與中央控制器通過TCP/IP連接。一臺(tái)中繼器有兩個(gè)通信信道。對(duì)于集群系統(tǒng),將中繼器1的第一個(gè)通信信道規(guī)定為控制信道,用于控制消息的交互。其余的中繼器和中繼器1的信道2規(guī)定為傳輸信道,用于數(shù)據(jù)傳輸,包括語音呼叫等。一個(gè)單地址中,將有且僅有1個(gè)控制信道和最多15個(gè)傳輸信道[1]。
在鐵路系統(tǒng)場(chǎng)景中,如果通過查詢方式獲取終端工作人員在鐵路線上的位置,在接入終端數(shù)量少于1 000時(shí),運(yùn)行基本正常。但當(dāng)大于1 000后,控制通道的信息交互過于頻繁,嚴(yán)重影響到響應(yīng)時(shí)間,讓位置查詢響應(yīng)變慢,甚至?xí)?dǎo)致其他的語音呼叫和短消息等[2]的響應(yīng)變得異常緩慢。
2? 系統(tǒng)優(yōu)化
一個(gè)集群系統(tǒng)中,終端主動(dòng)發(fā)起語音呼叫的流程(以終端1呼叫終端2為例)如下:
用戶按下呼叫鍵,終端1通過控制信道向控制器申請(qǐng)信道,該申請(qǐng)是一條控制信令。控制器查找空閑信道,確認(rèn)終端2是否有任務(wù)在執(zhí)行。假如找到中繼器2的傳輸信道1是空閑,且終端2空閑,則控制器在控制信道發(fā)出一條控制信令,讓終端1和終端2跳轉(zhuǎn)到傳輸信道1去進(jìn)行語音呼叫;此時(shí),終端1與終端2的上下行頻率、編碼方式均與中繼器2的傳輸信道1相對(duì)應(yīng),從而可以按照常規(guī)通信進(jìn)行直呼。
當(dāng)終端1和終端2結(jié)束語音呼叫后,將各自跳轉(zhuǎn)回控制信道,監(jiān)聽上行消息[3]。
2.1? 傳統(tǒng)方式
同樣,對(duì)于位置數(shù)據(jù),中央控制器主動(dòng)查詢終端的位置信息,傳統(tǒng)做法如圖2所示[4]。
具體方法為:
1)在控制信道廣播一條查詢某個(gè)終端的控制信令字。所有在控制信道監(jiān)聽的終端均會(huì)收到該消息。如果發(fā)現(xiàn)廣播的這條控制信令的目標(biāo)編號(hào)與自己的編號(hào)相同,則在控制信道申請(qǐng)一個(gè)傳輸信道。
2)控制器分配傳輸信道。控制器記錄已分配的信道,讓對(duì)應(yīng)的中繼器傳輸信道處于接收模式。
3)終端根據(jù)分配的信道進(jìn)行信道跳轉(zhuǎn),設(shè)置對(duì)應(yīng)的發(fā)送接收頻率和編碼方式。終端向GPS模塊查詢當(dāng)前的位置信息,再通過壓縮(或者標(biāo)準(zhǔn))UDP(即用戶數(shù)據(jù)報(bào))包發(fā)送到對(duì)應(yīng)的中繼器。
4)中繼器確認(rèn)收到用戶數(shù)據(jù)報(bào),同時(shí)發(fā)送控制字以結(jié)束此次會(huì)話。終端回到控制信道,控制器也回收分配的傳輸信道。
對(duì)于傳統(tǒng)的位置信息獲取方法,GPS數(shù)據(jù)并不是提前準(zhǔn)備好,而是在幾次交互并跳轉(zhuǎn)到傳輸信道后,再去從GPS模塊獲取數(shù)據(jù),這是一個(gè)無序的行為。終端花了大量的時(shí)間協(xié)商和等待,系統(tǒng)吞吐量低。如果對(duì)每臺(tái)終端進(jìn)行查詢位置信息,將會(huì)耗掉巨大的時(shí)間開銷[5]。
2.2? 優(yōu)化分析
假如終端和控制器都提前知會(huì)了匯報(bào)位置信息的信道,那么就無須每次上報(bào)位置信息時(shí)申請(qǐng)傳輸信道。同時(shí),終端預(yù)先知道了將會(huì)在什么時(shí)候上報(bào)GPS,那么可以在即將上報(bào)數(shù)據(jù)時(shí),先提前準(zhǔn)備好數(shù)據(jù)。
在終端開機(jī)注冊(cè)時(shí),控制器會(huì)根據(jù)系統(tǒng)配置,給該進(jìn)入集群系統(tǒng)的終端分配幀幅、窗口和上報(bào)的時(shí)間間隔。現(xiàn)假設(shè)允許一臺(tái)終端可以配置為30秒、60秒、120秒、240秒、480秒的時(shí)間間隔上報(bào)數(shù)據(jù)。一條GPS消息經(jīng)過壓縮后變成5個(gè)消息包,而數(shù)字對(duì)講系統(tǒng)中每個(gè)消息包傳輸時(shí)間是60毫秒。一條GPS消息總共需要300毫秒完成發(fā)送[6-8]。
終端預(yù)先知道自己發(fā)送數(shù)據(jù)的時(shí)間窗口。考慮到跳轉(zhuǎn)到傳輸信道時(shí)硬件切換和軟件控制延時(shí)的時(shí)間開銷,預(yù)留120毫秒用于切換信道。
因此一個(gè)完整的GPS數(shù)據(jù)窗口為420毫秒。
現(xiàn)在設(shè)定一個(gè)幀為30秒,可以在這個(gè)幀里面共計(jì)發(fā)送71條GPS信息。如圖3所示,設(shè)定一個(gè)超級(jí)幀為8分鐘,則其超級(jí)幀、幀、窗口的關(guān)系為:
編號(hào)為9的終端,配置其每隔30秒發(fā)送一條GPS信息到控制器,則其對(duì)應(yīng)的幀如圖4所示,即被分配到每幀的一個(gè)窗口。
再如,編號(hào)為15的終端,配置其每隔60秒上報(bào)一條GPS信息,則其分配如圖5所示,即被分配到每2個(gè)幀的一個(gè)窗口。
對(duì)于窗口序列號(hào),30秒總共有71個(gè)窗口,控制信道每隔840毫秒廣播一條偶數(shù)窗口序列號(hào)。對(duì)于被分配為奇數(shù)窗口的終端,也需要監(jiān)聽該條窗口序列號(hào),并主動(dòng)地同步并以此計(jì)時(shí)420毫秒,以預(yù)測(cè)下一個(gè)窗口的時(shí)間。控制信道會(huì)每隔840毫秒廣播當(dāng)前空閑窗口和幀。
如圖6所示,假如該幀號(hào)和窗口序列號(hào)正是注冊(cè)時(shí)分配給終端的上報(bào)信道,則該終端根據(jù)預(yù)先設(shè)定好的頻率切換到傳輸信道,同時(shí)立即發(fā)送數(shù)據(jù)(420毫秒以內(nèi))。由于該系統(tǒng)是有序邏輯,不能等中繼器的確認(rèn),否則將會(huì)導(dǎo)致整個(gè)時(shí)間偏移,所以是采用非確認(rèn)式用戶數(shù)據(jù)報(bào)傳輸。發(fā)送方并不知道該數(shù)據(jù)是否被成功發(fā)送。如果系統(tǒng)希望得到當(dāng)前終端的信息,可以透過傳統(tǒng)的查詢的方法,以得到確認(rèn)式用戶數(shù)據(jù)報(bào)。這種場(chǎng)景主要用于緊急呼叫和檢測(cè)工作人員是否倒下等功能。
如圖7所示,假如該幀號(hào)和窗口序列號(hào)不是分配給自己的窗口,則該終端判斷是否是自己所分配窗口的前一個(gè)。如果是前一個(gè)窗口,則同步時(shí)間(t0),在t0 + 300毫秒時(shí)讀取GPS模塊信息,并在t0 + 420毫秒時(shí)立即切換到傳輸信道,并開始發(fā)送數(shù)據(jù)。
2.3? 優(yōu)化方案
對(duì)于終端,需要注意以下幾個(gè)問題:
1)時(shí)間同步,因?yàn)橄到y(tǒng)并不會(huì)廣播奇數(shù)窗口,所以需要在收到偶數(shù)窗口廣播時(shí),同步當(dāng)前時(shí)間。
2)優(yōu)化切換時(shí)間,需要考慮從應(yīng)用層到物理層的軟件交互延遲,并盡可能的優(yōu)化成高優(yōu)先級(jí)的系統(tǒng)調(diào)用。
3)數(shù)據(jù)準(zhǔn)備,在考慮到上一個(gè)窗口即將結(jié)束時(shí),當(dāng)前終端應(yīng)該提前準(zhǔn)備好GPS數(shù)據(jù)。
4)數(shù)據(jù)格式由確認(rèn)式用戶數(shù)據(jù)報(bào)變成非確認(rèn)式用戶數(shù)據(jù)報(bào),這樣是為了避免發(fā)送方等待接收方的確認(rèn),而導(dǎo)致系統(tǒng)延遲。
對(duì)于控制器端,在終端入網(wǎng)注冊(cè)時(shí),需要考慮傳輸信道的均衡性。比如在一個(gè)單地址下的中繼器3的通道1,設(shè)置如表1所示。
對(duì)于編號(hào)為95的終端,需要每隔8分鐘上報(bào)一次位置。此時(shí)只需要在一個(gè)超級(jí)幀中插入一個(gè),即如圖8所示的窗口3、幀7。
對(duì)于編號(hào)為100的終端,也希望每隔8分鐘上報(bào)一次位置,如表2所示。
表2? 設(shè)置編號(hào)100的終端的間隔時(shí)間