周穎
(民航華東空管局通信網(wǎng)絡(luò)公司,上海 200335)
隨著近年來通信技術(shù)的發(fā)展,華為的通信設(shè)備進(jìn)入民航空管等專業(yè)業(yè)務(wù)的傳輸領(lǐng)域。民航空管行業(yè)對(duì)傳輸?shù)男盘?hào)在延時(shí)、丟包等方面有些更嚴(yán)格的要求。
目前民航空管有華為AR3260 路由器使用RTC終端接入技術(shù)傳輸雷達(dá)信號(hào)的案例。為了在上述環(huán)境下正常的傳輸雷達(dá)信號(hào),需要對(duì)華為AR3260 的部分配合至RTC 終端接入技術(shù)進(jìn)行分析,研究影響雷達(dá)信號(hào)傳輸延時(shí)的配置參數(shù),并測(cè)試這些配置參數(shù)對(duì)延時(shí)的影響程度。
雷達(dá)信號(hào)在數(shù)據(jù)鏈路層使用HDLC 協(xié)議,通過華為AR3260 路由器和RTC 終端接入技術(shù)將HDLC 信號(hào)使用同步串口連接到路由器,通過IP 網(wǎng)絡(luò)透?jìng)鱄DLC 報(bào)文,實(shí)現(xiàn)終端設(shè)備之間的數(shù)據(jù)交互。
RTC 終端接入技術(shù)可以解決IP 網(wǎng)絡(luò)無法透?jìng)鱄DLC 報(bào)文的問題,其基本架構(gòu)如圖1所示。路由器配置RTC 終端接入功能后,可以將被監(jiān)控終端(如雷達(dá)源)傳送的HDLC報(bào)文封裝成TCP 報(bào)文,通過IP 網(wǎng)絡(luò)建立TCP 連接,將封裝后的TCP 報(bào)文傳送到遠(yuǎn)端路由器,遠(yuǎn)端路由器再將TCP 報(bào)文解封為HDLC 報(bào)文,傳送到監(jiān)控終端(各類雷達(dá)用戶接入設(shè)備),實(shí)現(xiàn)IP 網(wǎng)絡(luò)透?jìng)鱄DLC 報(bào)文的功能,RTC 終端接入技術(shù)基本構(gòu)架如圖1所示。
圖1 RTC 終端接入技術(shù)基本構(gòu)架示意圖
在RTC 終端接入技術(shù)中的基本架構(gòu)里,包含三種角色:終端(監(jiān)控終端和被監(jiān)控終端)、RTC 客戶端、RTC 服務(wù)器端。
(1)終端分為監(jiān)控終端和被監(jiān)控終端。在空管數(shù)據(jù)網(wǎng)的應(yīng)用中,雷達(dá)源為被監(jiān)控設(shè)備,雷達(dá)用戶接入設(shè)備為監(jiān)控終端。雷達(dá)源作為被監(jiān)控終端,負(fù)責(zé)實(shí)時(shí)采集雷達(dá)數(shù)據(jù),及時(shí)響應(yīng)雷達(dá)用戶接入設(shè)備的數(shù)據(jù)請(qǐng)求,將監(jiān)控?cái)?shù)據(jù)發(fā)送給雷達(dá)用戶接入設(shè)備。
(2)RTC 客服端連接監(jiān)控終端,通常作為RTC 終端接入技術(shù)的發(fā)起方,主動(dòng)向RTC 服務(wù)器端發(fā)起TCP 連接,以此獲取數(shù)據(jù)信息。在空管數(shù)據(jù)網(wǎng)應(yīng)用中,雷達(dá)信號(hào)輸出路由器為RTC 客服端,與雷達(dá)用戶接入設(shè)備物理相連,并主動(dòng)向雷達(dá)信號(hào)輸入路由器發(fā)起TCP 連接。
(3)RTC 服務(wù)器端連接被監(jiān)控終端,通常作為RTC 終端接入技術(shù)的接收方,負(fù)責(zé)接收RTC 客服端發(fā)出的TCP 連接請(qǐng)求,之后向被監(jiān)控終端發(fā)送采集的數(shù)據(jù)。在空管數(shù)據(jù)網(wǎng)應(yīng)用中,雷達(dá)信號(hào)輸入路由器為RTC 服務(wù)器端,與雷達(dá)源物理相連,并在接收到RTC 客服端發(fā)送的請(qǐng)求后,向其發(fā)送雷達(dá)信號(hào)。
RTC 終端接入技術(shù)數(shù)據(jù)轉(zhuǎn)發(fā)流程如圖2所示。
圖2 RTC 終端接入技術(shù)數(shù)據(jù)數(shù)據(jù)轉(zhuǎn)發(fā)流程示意圖
RTC 終端接入技術(shù)數(shù)據(jù)轉(zhuǎn)發(fā)流程可分為八個(gè)流程,如下帶入空管傳輸雷達(dá)數(shù)據(jù)的環(huán)境加以說明:
(1)雷達(dá)用戶接入設(shè)備發(fā)送請(qǐng)求數(shù)據(jù)(HDLC 封裝)給雷達(dá)信號(hào)輸出路由器;
(2)雷達(dá)用戶接入設(shè)備發(fā)送的請(qǐng)求數(shù)據(jù)觸發(fā)雷達(dá)信號(hào)輸出路由器向雷達(dá)信號(hào)輸入路由器發(fā)起TCP 連接請(qǐng)求;
(3)雷達(dá)信號(hào)輸入路由器接收到雷達(dá)信號(hào)輸出路由器的TCP 連接請(qǐng)求,通過TCP 三次握手后,建立TCP連接;
(4)雷達(dá)信號(hào)輸出路由器將雷達(dá)用戶接入設(shè)備發(fā)送的HDLC 報(bào)文封裝成TCP 報(bào)文后,通過IP 網(wǎng)絡(luò)發(fā)送到RTC 服務(wù)器端。目前由于空管使用雷達(dá)信號(hào)多為單向傳輸,該流程可能不執(zhí)行;
(5)雷達(dá)信號(hào)輸入路由器接收到TCP 報(bào)文后,將其解封裝為HDLC 報(bào)文后,再發(fā)送給雷達(dá)源。目前由于空管使用雷達(dá)信號(hào)多為單向傳輸,該流程可能不執(zhí)行;
(6)雷達(dá)源將采集的雷達(dá)數(shù)據(jù)以HDLC 報(bào)文形式發(fā)送給雷達(dá)信號(hào)輸入路由器;
(7)雷達(dá)信號(hào)輸入路由器將雷達(dá)源發(fā)送的HDLC 報(bào)文封裝成TCP 報(bào)文后,通過IP 網(wǎng)絡(luò)發(fā)送到雷達(dá)信號(hào)輸出路由器;
(8)雷達(dá)信號(hào)輸出路由器將雷達(dá)源發(fā)送的TCP 報(bào)文解封裝成HDLC 報(bào)文后,發(fā)送給雷達(dá)用戶接入設(shè)備。
根據(jù)上文對(duì)RTC 技術(shù)的介紹,在路由器將HDLC 幀封裝成TCP 報(bào)文的過程和TCP 傳輸過程中會(huì)影響雷達(dá)信號(hào)的延時(shí)。其中HDLC 幀封裝過程中影響延時(shí)的路由器參數(shù)有:itf number ;TCP 傳輸過程中影響延時(shí)的路由器參數(shù)有:擁塞算法的選擇、TCP 連接收發(fā)緩沖區(qū)大?。╰cpsendbuf-size和tcprecvbuf-size)。
上述路由器配置參數(shù)都對(duì)雷達(dá)信號(hào)延時(shí)有不同程度的影響,需要研究其對(duì)雷達(dá)信號(hào)傳輸延時(shí)的影響程度,并進(jìn)行優(yōu)化。
itf number 命令用來配置同步方式下串行接口的幀間填充符的個(gè)數(shù)。幀間填充符是接口在沒有發(fā)送業(yè)務(wù)數(shù)據(jù)時(shí)發(fā)送的碼型,用來使接收設(shè)備在收到數(shù)據(jù)幀后有一定的緩沖時(shí)間對(duì)數(shù)據(jù)幀進(jìn)行處理,并為接收下一幀做好充分準(zhǔn)備。
幀間填充符的個(gè)數(shù)表示兩個(gè)相鄰幀之間存在多少個(gè)幀間填充符,而幀間填充符作為額外開銷,會(huì)影響接口的實(shí)際傳輸速率。通過執(zhí)行itf number 命令,用戶可以手動(dòng)設(shè)置幀間填充符的數(shù)目,從而對(duì)傳輸速率進(jìn)行適配。
幀間填充符的個(gè)數(shù)對(duì)傳輸數(shù)據(jù)延時(shí)的影響表現(xiàn)為:增大幀間填充符的個(gè)數(shù),實(shí)際發(fā)送有效數(shù)據(jù)包的速率減小,延時(shí)增大;減小幀間填充符的個(gè)數(shù),實(shí)際發(fā)送有效數(shù)據(jù)包的速率變大,延時(shí)減小。
華為路由器串行接口默認(rèn)itf number 數(shù)值為4 個(gè)字符,取值范圍為0~ 12 字節(jié)。目前TDM 數(shù)據(jù)網(wǎng)同步端口itf number 數(shù)據(jù)為默認(rèn)配置
為了確認(rèn)itf number 對(duì)雷達(dá)信號(hào)延時(shí)的影響程度,分別對(duì)某selex 雷達(dá)A、B 某信號(hào)傳輸端口配置不同的itf number值,得到雷達(dá)信號(hào)延時(shí)測(cè)試結(jié)果如表1所示。
表1 itf number 對(duì)雷達(dá)信號(hào)傳輸延時(shí)影響測(cè)試結(jié)果
根據(jù)表1中三個(gè)對(duì)照組的測(cè)試結(jié)果,可以明顯看出itf number 取值與雷達(dá)信號(hào)延時(shí)成正比。但itf number 取值對(duì)雷達(dá)信號(hào)延時(shí)的影響不明顯。無法通過修改itf number 取值達(dá)到較大程度降低雷達(dá)信號(hào)延時(shí)的目的。
Nagle 算法是為了盡可能發(fā)送大塊數(shù)據(jù),避免網(wǎng)絡(luò)中充斥著許多小數(shù)據(jù)塊,以減少IP 報(bào)頭和TCP 報(bào)頭的開銷,提升網(wǎng)絡(luò)資源利用率。
該算法的核心思想是最多只能有一個(gè)未被確認(rèn)的數(shù)據(jù)小分組存在于網(wǎng)絡(luò),而待發(fā)送的其他小分組會(huì)被重新分組成一個(gè)較大的分組,等收到上一個(gè)小分組的應(yīng)答或長度達(dá)到一定程度后再發(fā)送。
收發(fā)緩沖區(qū)起到緩沖數(shù)據(jù)的作用。TCP 接收緩沖區(qū)為較小值時(shí),路由器將不間斷發(fā)送數(shù)據(jù);TCP 接收緩沖區(qū)為較大值時(shí),TCP 緩存區(qū)將集中存儲(chǔ)一定量數(shù)據(jù)后再發(fā)送出去,可能產(chǎn)生一定延時(shí)。
Nagle 算法發(fā)送數(shù)據(jù)的主要規(guī)則如下:
(1)如果數(shù)據(jù)包長度達(dá)到tcp min-mss,則允許發(fā)送;
(2)若所有發(fā)出去的小分組都被確認(rèn),則允許發(fā)送;
(3)設(shè)置了tcpnodelay 選項(xiàng),則允許發(fā)送。
由于使用Nagle 算法時(shí)需要達(dá)到一定條件才會(huì)發(fā)送數(shù)據(jù),因此會(huì)引起數(shù)據(jù)排隊(duì),產(chǎn)生額外延時(shí)。
目前華為路由器RTC 技術(shù)中默認(rèn)配置為使用Nagle 算法,反之可在RTA 模板中開啟tcpnodelay enhance 命令配置TCP 連接中不使用Nagle 算法,以減少TCP 報(bào)文收發(fā)過程中的時(shí)延。
圖2中RTC 終端接入技術(shù)數(shù)據(jù)轉(zhuǎn)發(fā)流程中步驟4 和步驟7 中收發(fā)緩沖區(qū)起到緩沖數(shù)據(jù)的作用。用戶可使用tcpsendbuf-size 和tcprecvbuf-size 命令在華為路由器上配置TCP 連接收發(fā)緩沖區(qū)大小。
根據(jù)雷達(dá)業(yè)務(wù)的特性和對(duì)收發(fā)緩沖區(qū)的研究,可以進(jìn)一步對(duì)收發(fā)緩沖區(qū)大小做出以下結(jié)論:
(1)收發(fā)緩沖區(qū)大小配置為較小值雖然可以提高傳輸?shù)膶?shí)時(shí)性,但抗傳輸抖動(dòng)性能差,容易產(chǎn)生丟包;
(2)收發(fā)緩沖區(qū)大小配置為較大值雖然可以提高抗傳輸抖動(dòng)性能,但會(huì)增加信號(hào)的延時(shí);
(3)雷達(dá)信號(hào)需要較好的實(shí)時(shí)性;
(4)傳輸速率較高的雷達(dá)需要將收發(fā)緩沖區(qū)配置相對(duì)較大值以免丟包。
為了驗(yàn)證上述配置參數(shù)對(duì)雷達(dá)信號(hào)延時(shí)的影響程度,對(duì)某selex 雷達(dá)業(yè)務(wù)RTA 模板中配置參數(shù)進(jìn)行不同配置,得到雷達(dá)信號(hào)延時(shí)測(cè)試結(jié)果表2所示。
表2 RTA 模板不同參數(shù)對(duì)雷達(dá)延時(shí)的影響
根據(jù)表2中的測(cè)試結(jié)果,可以看出TCP 的收發(fā)緩沖區(qū)不論配置為何值,其對(duì)雷達(dá)信號(hào)的延時(shí)的影響沒有明顯變化規(guī)律。而開啟tcpnodelay enhance 算法后,雷達(dá)信號(hào)延時(shí)有較大程度的減小。
根據(jù)對(duì)華為路由器和RTC 技術(shù)中影響雷達(dá)信號(hào)傳輸延時(shí)的相關(guān)參數(shù)的測(cè)試研究,itf number 取值以及TCP 收發(fā)緩沖區(qū)取值對(duì)雷達(dá)信號(hào)的傳輸延時(shí)影響程度較小。而開啟tcpnodelay enhance 功能可明顯降低雷達(dá)信號(hào)傳輸?shù)难訒r(shí)。目前華為AR3260 路由器開啟tcpnodelay enhance 功能后傳輸雷達(dá)信號(hào),雷達(dá)用戶在實(shí)際使用中確認(rèn)雷達(dá)信號(hào)延時(shí)處于正常范圍之內(nèi)。但目前的研究方式僅針對(duì)雷達(dá)信號(hào)的傳輸延時(shí),若考慮到傳輸中的抖動(dòng)等因素,須進(jìn)一步研究。