APP下载

S模式二次雷达数据链协议分析与功能验证

2019-08-12余飞侠水泉

电脑知识与技术 2019年16期
关键词:数据链

余飞侠 水泉

摘要:S模式二次雷达数据链接口提供链路管理和S模式特定服务,以实现S模式地-空数据通信。文中介绍了数据链接口控制协议的主要内容,并对其进行功能验证。

关键词:S模式子网;数据链;GDLP/DLF协议;功能验证

中图分类号:TP311   文献标识码:A

文章编号:1009-3044(2019)16-0020-04

开放科学(资源服务)标识码(OSID):

1 S模式数据链子网概述

S模式数据链子网是空-地数据通信子网的一部分,为飞机上和地面上的附属子网点提供面向连接的通信服务和S模式特定服务。S模式数据链子网主要由S模式应答机、机载数据链处理器(ADLP)、地面数据链处理器(GDLP)、S模式询问机组成,其系统框图如下图所示。

GDLP和ADLP之间采用简化的ISO 8208协议进行通信,降低了S模式空-地链路的带宽要求。在通信层次结构中,可将GDLP和ADLP与询问机和应答机视为同一层次,GDLP和ADLP利用询问机-应答机之间的数据链服务实现子网通信。GDLP提供了基于S模式數据链的交换虚拟电路(SVC)通信服务和S模式特定服务接入。

GDLP可以通过GDLP/DLF接口控制协议(EATCHIP GDLP/Local User ICD for POEMS)与S模式二次雷达通信,以ASTERIX CAT18格式进行数据传输。S模式二次雷达进行链路管理,并提供S模式特定服务,包括广播、GICB、SVC/MSP服务,主要功能包括:

a) 链路管理,包括建立、维护、取消和释放GDLP/DLF连接;

b) 广播管理,包括上行链路广播管理和下行链路广播管理:

1) 上行链路广播管理。根据GDLP/DLF接口收到的广播请求,产生询问指令,通过射频链路发送Comm A广播询问;

2) 下行链路广播管理。接收应答机发出的Comm B广播应答,并将Comm B广播数据分发GDLP/DLF接口;

c) GICB管理。将GDLP/DLF接口收到的GICB数据请求,与雷达内部应用产生的数据请求进行合并,生成询问时序和询问信号,通过射频链路传送给指定目标;

d) SVC/MSP管理,包括上行链路SVC/MSP数据包管理和下行链路SVC/MSP数据包管理:

1) 将GDLP/DLF接口收到的SVC或MSP上行数据包(packet)拆分成SLM或ELM帧后缓存到队列中,并对队列缓存的数据量进行监测,当缓存的数据帧超过预设的阀值后则通知GDLP/LU接口模块,限制外部上传的数据流量;

2) 将多个逻辑上链接在一起的Comm-B应答消息组装成一个SLM帧,或多个逻辑上链接在一起的Comm-D应答消息组装成一个ELM帧,并将SLM或ELM帧数据通过GDLP/DLF接口转发给GDLP。

2 通信协议分析与功能验证

2.1 链路管理

2.1.1 通信协议

2.1.1.1 建立连接

GDLP首先向S模式二次雷达DLF(以下简称DLF)发送建立连接请求消息(Associate_req),在收到建立连接响应消息(Associate_Resp)之前,GDLP将每隔T1(Associate_req重传定时器,通常为1秒)时间发送一次该消息。DLF在收到Associate_req消息后,将删除与该链路有关的飞机数据,重置内部定时器和计数器,并回馈Associate_Resp消息。Associate_Resp消息的D_result设置为:CAUSE=3h(finished),DIAG=0h(No diagnostic available)。

2.1.1.2 保持连接

如果GDLP与DLF之间没有数据消息时,GDLP将每隔T2(无事务时的Keep_alive周期,通常为1秒)时间发送1次保持(Keep_alive)消息,以维护与DLF之间的连接。

2.1.1.3 关闭连接

GDLP通过向DLF发送中断连接请求(Abort_req)或释放连接请求(Release_req)消息来关闭连接。

a) Abort_req用于立即终止处于连接建立阶段的GDLP/DLF连接。

b) Release_req用于正常终止GDLP/DLF连接,并需要DLF确认。当DLF能够终止GDLP/DLF连接时,DLF发送接收关闭连接的Release_resp消息,将该消息的D_result设置为:CAUSE=3h(finished),DIAG=0h(No diagnostic available),并丢弃与该特定连接相关的所有飞机数据。如果DLF不能立即终止该连接,DLF发送拒绝关闭连接的Release_resp,并将该消息的D_result设置为:CAUSE=1h(rejected),DIAG=0h(No diagnostic available)。GDLP将等待T4(Release_req重传定时器,通常为3秒)时间后继续发送Release_req,然后每隔T4时间发送1次,共发送R4(Release_req传输次数,通常为4)次。

如果GDLP在T3(GDLP连接超时,通常为4秒)时间段内没有收到任何消息,将向DLF发送Abort_req消息,并将该消息的D_result设置为:CAUSE=6h (invalid result),DIAG=8h(timer T3 expiry)。此时,中断连接请求(Abort_req)不需要确认,GDLP将会清除与该连接相关的所有飞机数据。

2.1.2 功能验证

下面以S模式二次雷达DLF为主,GDLP为从,进行GDLP/DLF鏈路管理功能验证。其中,Associate_req重传定时器T1设置为1秒,无事务时的Keep_alive周期T2设为1秒,GDLP连接超时T3设为4秒,Release_req重传定时器T4设为3秒,Release_req传输次数R4设为4次。主要通信过程和数据内容如下图所示。

GDLP每隔1秒向S模式二次雷达发送1次建立连接请求,直到雷达的GDLP/DLF接口回馈建立连接响应。在GDLP与雷达之间没有数据通信时,雷达将定期发送保持连接信息,直到GDLP发出终止连接请求和释放连接请求。

2.2 GICB服务

2.2.1 通信协议

GDLP向DLF发送GICB_extraction请求消息,该请求应包含要录取的BDS寄存器编号。DLF收到GICB录取请求后,产生GICB_extraction_ack消息,并将D_result设置为:CAUSE=0h(Accepted) or =1h(rejected)。

GDLP应为GICB_extraction请求分配一个唯一的D_GICB_number,DLF不会接收GDLP送来的与挂起的GICB_extraction具有相同GICB_number的GICB录取请求。DLF将拒绝收到的重复的GICB_extraction请求,并将GICB_extraction_ack消息的D_result设置为:CAUSE=1h(reject),DIAG=6h(Duplicate request number)。GICB_extraction请求消息中还有一些可选的参数:D_time (请求结束),D_GICB_periodicity,D_GICB_properties (周期限制,异步更新,应答目的地,优先级)。这些参数的默认值为:

a) 若GICB_extraction请求消息中缺少D_time,请求将一直存在,直到链路/GDLP/S模式二次雷达询问机故障,或飞机离开;

b) 若GICB_extraction请求消息中缺少D_GICB_properties:

1) 没有周期限制(PC=0);

2) 没有异步更新(AU = 0, NE=0);

3) 应答目的地将只是GDLP(RD=0);

4) 请求优先级将被设为8(中级);

c) 若GICB_extraction请求消息中缺少D_GICB_periodicity,DLF将只执行1次录取。DLF将在第一次录取成功后,结束该GICB请求。

DLF收到GDLP发送的Cancel_GICB_extraction请求消息后,将向GDLP发送GICB_extraction_ack消息。DLF根据以下情况分别进行处理:

a) 若Cancel_GICB_extraction消息中的D_GICB_number项已定义,且数据内容有效(仍在DLF数据库中),则GICB_extraction_ack消息中包含D_GICB_number项,并将D_result设置为:CAUSE=2h(cancelled),DIAG=0h(No diagnostic available);

b) 若Cancel_GICB_extraction消息中的D_GICB_number项已定义,但数据内容无效,则GICB_extraction_ack消息中包含D_GICB_number项,并将D_result设置为:CAUSE=1h(rejected),DIAG=7h(Unknown request number);

c) 若Cancel_GICB_extraction消息中没有定义D_GICB_number项,则表示取消所有GICB录取请求:

1) 对于已经取消的有效的录取请求,则GICB_extraction_ack消息中包含D_GICB_number项,并将D_result设置为:CAUSE=2h(cancelled),DIAG=0h(No diagnostic available);

2) 若没有有效的请求能够取消(没有挂起的请求),则GICB_extraction_ack消息中不包含D_GICB_number项,并将D_result设置为:CAUSE=1h(rejected),DIAG=7h(Unknown request number);

d) 若Cancel_GICB_extraction消息中没有D_GICB_number项,DLF应丢弃指定S模式地址的飞机的所有GICB请求。且若S模式地址为FFFFFFh,则丢弃所有飞机的所有GICB请求。

e) 若Cancel_GICB_extraction消息中包含D_GICB_number项,DLF应丢弃D_GICB_number字段中指定的GICB请求。

DLF向GDLP发送GICB_response消息,用于指示BDS录取是否成功。若录取成功,则GICB_response消息中包含寄存器内容,且对于单次录取的情况,将D_result设置为:CAUSE=3h(finished),DIAG=0h(No diagnostic available);对于非单次录取的情况,将D_result设置为:CAUSE= 5h(In progress),DIAG=0h(No diagnostic available)。

然而,若S模式二次雷达的天线波束已经扫描过该飞机,则DLF应向GDLP发送GICB_response消息,用于指示失败的GICB请求编号和尝试的录取时间,并将D_result设置为:CAUSE=4h(Delayed),DIAG=0h(No diagnostic available)。对于将周期约束指标设置为0的请求,即使在波束驻留期内重新询问后仍然录取失败,下一次尝试将在下一个天线扫描时进行(即在要求的录取周期内多次尝试才能成功录取)。对于周期约束指标为1的请求,即使在波束驻留期内重新询问后仍然录取失败,下一次尝试将根据请求的周期确定。

若录取请求的生命周期结束或仅为单次录取,则DLF向GDLP发送GICB_response消息,并将D_result设置为:CAUSE=3h(finished),DIAG=0h(No diagnostic available)。

2.2.2 功能验证

下面以S模式二次雷达DLF为主,GDLP为从,进行GICB录取功能验证。主要对GICB_number、飞机的S模式地址、BDS寄存器编号、GICB_periodicity等参数进行了设置Time和GICB_properties参数。主要通信过程和数据内容如下图所示。

GDLP与S模式二次雷达建立通信后,通过GDLP/DLF接口的GICB服务通信协议发起BDS录取请求,S模式二次雷达收到请求后,与雷达内部应用产生的数据请求进行合并,产生包含BDS录取请求的询问信号;目标的应答机收到请求后,产生包含相应BDS寄存器数据的应答信号,S模式二次雷达对收到的应答信号进行解码和数据录取,把特定目标的BDS数据按照ASTERIX CAT 018格式送给发送该GICB录取请求的GDLP。

2.3 SVC/MSP服务

2.3.1 通信协议

2.3.1.1 上行链路SVC/MSP数据包

GDLP向DLF发送Uplink_packet消息,DLF应回馈Uplink_packet_ack消息。若DLF能够处理该数据包,则DLF将Uplink_packet_ack消息中的D_result设置为:CAUSE=0h(Accepted),DIAG=0h(No diagnostic available);若DLF不能处理该数据包,则DLF将Uplink_packet_ack消息中的D_result设置为:CAUSE=1h(Rejected),DIAG=0h(No diagnostic available)。并且,若DLF是由于上行链路数据流量限制而不能处理该数据包,则DLF将Uplink_packet_ack消息中的D_result设置为:CAUSE=1h(Rejected),DIAG=10h(Uplink flow disabled)。若DLF接受该请求,则应将数据包缓存在对应的飞机队列中。

GDLP应为每个Uplink_packet请求分配唯一的D_packet_number,DLF不会接收GDLP送来的与挂起的Uplink_packet具有相同D_packet_number的上行数据包传输请求。DLF将拒绝收到的重复的Uplink_packet请求,并将Uplink_packet_ack消息中的D_result设置为:CAUSE=1h(reject),DIAG=6h(Duplicate request number)。

DLF应响应GDLP发出的Cancel_uplink_packet消息,并向GDLP发送Uplink_ packet_ack消息,并根据以下情况分别进行处理:

a) 若Cancel_uplink_packet消息中的D_packet_number项已定义,且数据内容有效(仍在DLF数据库中),则Uplink_ packet_ack消息中包含D_packet_number项,并将D_result设置为:CAUSE=2h(cancelled),DIAG=0h(No diagnostic available);

b) 若Cancel_uplink_packet消息中的D_packet_number项已定义,但数据内容无效,则Uplink_packet_ack消息中包含D_packet_number项,并将D_result设置为:CAUSE=1h(rejected),DIAG=7h(Unknown request number);

c) 若Cancel_uplink_packet消息中没有定义D_packet_number项,则表示取消所有上行数据包传输请求:

1) 对于已经取消的有效的上行数据包传输请求,则Uplink_ packet_ack消息中把这些数据包的编号列入D_packet_number_list项,并将D_result设置为:CAUSE=2h(cancelled),DIAG=0h(No diagnostic available);

2) 若没有有效的请求能够取消(没有挂起的请求),则Uplink_packet_ack消息中不包含D_packet_number_list项,并将D_result设置为:CAUSE=1h(rejected),DIAG=7h(Unknown request number);

d) 若Cancel_uplink_packet消息中没有D_packet_number项,DLF應丢弃所有的Uplink_packet请求;

e) 若Cancel_uplink_packet消息中包含D_packet_number项,DLF应丢弃D_packet_number字段中指定的Uplink_packet请求。

DLF收到不同的Cancel_uplink_packet请求时,如指定飞机的、所有飞机的或所有的数据包传输请求。如果S模式地址为FFFFFFh,则丢弃所有飞机的所有Uplink_packet请求。

DLF完成上行数据帧传输后,应向GDLP发送Uplink_packet_ack消息,并将D_result设置为:CAUSE=3h(finished),DIAG=0h(No diagnostic available)。

对于已经取消传输的数据包,DLF应向GDLP发送Uplink_packet_ack消息,并将D_result设置为:CAUSE=2h(Cancelled),DIAG=0h(No diagnostic available)。

2.3.1.2 数据流控制

数据流控制项包括:

a) XON_level:DLF在此队列级别向GDLP发送一个XON消息,并在此队列级别恢复上行流;

b) XOFF_level1:DLF在此队列级别向GDLP发送XOFF消息,上行流将在此队列级别停止;

c) XOFF_level2:DLF在此队列级别达到物理队列极限。

當对特定飞机的数据链接请求饱和(XOFF_level1)时,DLF向GDLP发送包含飞机地址的Data_XOFF消息。如果Data_XOFF消息包含的飞机地址为FFFFFFh,则GDLP应停止向该S模式二次雷达发送任何上行数据包传输请求。如果Data_XOFF包含非FFFFFFh的S模式地址列表,GDLP应停止向这些指定S模式地址的飞机发送上行数据包传输请求。

当DLF能够处理新的上行链路数据包传输请求(XON_level)时,DLF向GDLP发送Data_XON消息。如果Data_XON消息包含的飞机地址为FFFFFFh,则再次授予GDLP发送上行数据包传输请求的权限。如果Data_XON包含非FFFFFFh的S模式地址列表,GDLP有权向这些指定S模式地址的飞机发送上行数据包传输请求。

数据流量控制应在以下约束条件下进行:

a) XOFF_level1 ≥ 0.9(XOFF_level2)

b) XON_level ≥ 0.33(XOFF_level1)

这两个参数是用户可配置的。

2.3.1.3 下行链路SVC/MSP数据包

DLF通过Downlink_packet消息向指定GDLP发送下行链路数据包。通过将Downlink_packet消息中的D_Result字段设置为:CAUSE=6h(Invalid Result),DIAG=5h(Invalid LV field),来通知GDLP消息中的LV字段无效。Downlink_packet中一般不包含LV字段,只用于指示这种特殊情况。在这种LV字段无效的情况下,DLF不知道下行链路数据包的长度,并应在Downlink_packet消息的D_Mode_S_packet中包含接收到的完整的下行数据帧。

2.3.2 功能验证

下面以S模式二次雷达DLF为主,GDLP为从,进行上行数据包传输功能验证。主要对Packet_number、飞机的S模式地址、Packet_properties等参数进行了设置,未进行数据流量控制项参数设置。主要通信过程和数据内容如下图所示。

GDLP可向地面S模式二次雷达发起Uplink Packet传输请求,雷达根据数据包的大小将从GDLP/DLF接口收到的SVC或MSP上行数据包(packet)拆分成SLM或ELM帧后缓存到队列中,并对队列缓存的数据量进行监测,当缓存的数据帧超过预设的阀值后则通知GDLP/LU接口模块,限制GDLP上传的数据流量。地面S模式二次雷达按照扩展长度通信协议,将数据包的内容以帧的形式发送给目标的应答机,应答机将收到的帧数据合并成一个包含完整的Comm C数据的消息以packet数据包的形式发送给ADLP。

机载应答机在收到ADLP发出的Comm D数据传输事件后,产生包含Comm D数据录取通知的应答信号,地面S模式二次雷达收到录取通知后,随即产生包含Comm D消息预订的询问信号;目标的应答机收到预订请求后,产生包含Comm D消息预订确认的应答信号;接着,地面S模式二次雷达发送包含Comm D消息录取请求的询问信号,应答机产生包含Comm D消息数据的应答信号;雷达在收到最后一个Comm D应答信号后,将收到的帧数据合并成一个包含完整的Comm D数据的消息以packet数据包的形式按ASTERIX CAT 018格式发送给GDLP。同时,雷达关闭此次Comm D消息传输。

3 结束语

本文介绍了S模式二次雷达数据链接口控制协议,并对其提供的GICB服务、上行SVC/MSP服务和下行SVC/MSP服务进行了详细分析和功能验证。S模式二次雷达能够提供S模式特定服务,实现S模式地-空数据通信,为航空电信网设备提供了一种新的地-空数据通信技术手段。

参考文献:

[1] SUR.ET2.ST03.3112-SPC-01-00,Mode S Datalink Function Messages [S],2007.

[2] SUR-ET2-ST03.3112-SPC-02-00,EATCHIP GDLP/Local User ICD for POEMS [S],1999.

【通联编辑:梁书】

猜你喜欢

数据链
多平台通用数据链助力未来战场
高速公路工程项目实施中数据链应用探析
基于深度学习的无人机数据链信噪比估计算法
数据链技术在地铁车辆应急驾驶防碰撞系统中的应用
数据链的发展及其应用研究
直升机数据链的发展和应用
一种新型无人机数据链抗压制干扰技术的研究
舰载综合数据链便携式检测系统的设计与实现
盾和弹之间的那点事(十六)
一种无人机数据链信道选择和功率控制方法