基于CTCS-3级列控系统ISDN服务器的嵌入式设计
2015-01-01吴宇李坚
吴 宇 李 坚
综合业务数字网 (ISDN)可以提供语音、数 据和视频等多项面向连接业务。CTCS-3级列控系统无线闭塞中心 (RBC)利用ISDN服务器实现与MSC的通信,采用PRI接口,其集群速率为30B+D (2Mb/s)数字接口。即每个2Mb/s接口包含30个B通路和1个D通路,B信道用于传送数据和语音信息,信令规程采用HDLC信令;D信道用于传送信号和控制信息,信令规程采用DSS1信令方式。RBC与ISDN之间通过局域网交换机VLAN互联,采用TCP/IP通信,ISDN服务器在CTCS-3级列控系统中连接如图1所示。
图1 ISDN服务器在CTCS-3级列控系统中连接示意图
目前,铁路CTCS-3级列控系统中应用的ISDN服务器,普遍采用通用处理服务器集成ISDN板卡的方式实现,其核心芯片均由国外厂商提供,且内部平台实现不公开,接口私有、不透明。从系统安全性上考虑,需要一种基于通用式平台国产化的ISDN服务器。介绍一种新型基于嵌入式LINUX系统ISDN服务器,可以有效提升既有CTCS-3级列控系统ISDN服务器稳定性和可靠性。
1 系统架构
总体架构分为驱动程序、ISDN协议栈、通用ISDN接口 (CAPI)、应用接口程序和系统管理等五部分,分别由二个级别实现,其中,驱动程序、ISDN协议栈在LINUX操作系统内核级实现;其余部分在操作系统用户级实现。ISDN服务器软件平台总体架构如图2所示。
图2 ISDN服务器软件平台总体架构
各部分的主要功能:驱动程序实现设备文件驱动管理和接口驱动管理;ISDN协议栈是对标准协议功能的实现;CAPI实现国际通用ISDN应用编程接口协议,该协议使呼叫控制协议与底层硬件平台无关,应用接口程序可以访问几乎所有类型ISDN底层硬件;应用接口程序实现ATP与RBC之间CTCS-3级列控业务呼叫发起、接受、挂断和拒绝等应用功能;系统管理实现对ISDN的设备管理功能。
1.驱动程序。LINUX嵌入式操作系统通过驱动程序控制硬件设备工作,实现硬件底层PCI(外设部件互连标准)、E1(30路脉码调制PCM)和设备文件系统管理。驱动程序工作在系统内核态,操作系统加载时自动完成驱动程序加载工作。
2.ISDN协议栈由D通路信令平台和B通路用户平台二部分组成。D通路信令平台物理层技术规范采用ETS 300 011协议,链路层技术规范采用ETS300 125协议,网络层技术规范采用ETS 300 102协议。B通路用户平台物理层采用V.110协议。ISDN协议栈如图3所示。
图3 ISDN协议栈
3.CAPI向应用接口程序发送和接收标准ISDN接口通用消息,简化了不同操作系统间用户空间上差异。通过CAPI接口桥接,D通路信令平台信令业务实现网络层和应用层的数据交互,B通路用户平台数据业务实现物理层和链路层的数据交互。CAPI可屏蔽不同底层硬件带来数据结构差异,使应用接口程序开发者能够快速实现一定范围内各类数据交换过程。既有RBC开发是基于CAPI实现的,所以在移植过程中为了保持风格一致,ISDN系统也需对CAPI进行开发,实现与RBC系统之间对接。
4.应用接口程序实现RBC与ATP之间电路交换数据 (CSD)2.4,4.8,9.6kb/s的呼叫过程,提供基于GSM-R的电路交换承载业务的通信功能。RBC与ISDN应用接口程序之间采用以太网连接,通过TCP/UDP方式收发指令和业务数据。RBC通过应用接口程序实现CSD呼叫D通路信令建立、连接、拒绝、释放等信令过程,在B通路时隙上实现列控业务数据发送和接收过程。
5.系统管理。ISDN服务器发生故障时易导致CTCS-3级列控系统降级运行。系统管理根据系统内部运行状态自动诊断设备工作状况,向用户发送故障告警提示,提供输入输出记录查询,辅助CTCS-3级列控系统降级分析。
2 功能设计
基于LINUX嵌入式架构的ISDN系统功能模块设计如图4所示。
ISDN协议栈基于LINUX内核态模式下开发,这样实现协议栈的优点是效率高、速度快、运行稳定,模块可动态加载和卸载,用户管理方便。ISDN协议栈包含D通路物理层协议栈模块、D通路链路层协议栈模块、D通路网络层协议栈模块、B通路业务数据速率适配模块和状态及管理模块。驱动程序由PCI驱动模块、E1驱动模块和设备文件管理模块组成。CAPI由设备文件模块、分发调度模块和库函数模块组成。系统管理由网管界面模块、文件记录模块、异常故障诊断模块和用户配置模块组成。各模块功能如下。
1.PCI驱动模块。该模块实现硬件电路PCI总线管理,控制嵌入式平台输入输出。为使PCI接口正常使用,采用使能PCI驱动程序。
2.E1驱动模块。为配合E1接口芯片使用E1驱动模块。该模块能够灵活地配置E1寄存器和相关电气特性。作为主引导模块,在加载该模块的同时触发其他模块加载。
3.设备文件系统模块。该模块作为ISDN设备文件驱动的管理接口,向操作系统提供基于字符设备文件操作符,操作系统使用该模块对ISDN驱动设备完成管理、维护和状态查询等操作。
4.D通路物理层协议栈模块。该模块实现对一次群基本速率接口PRI的功能特性和接口规程的封装,以及物理信道的激活/去激活。
5.D通路链路层协议栈模块。该模块实现数据链路层点到点规程状态转移,封装层对层通信单元和端对端帧结构。
6.D通路网络层协议栈模块。该模块实现电路交换的呼叫控制流程,定义信令消息一般格式和信息单元编码,封装层与层通信单元。
7.B通路业务数据速率适配模块。该模块实现CSD数据编码格式与RBC列控业务安全数据编码格式之间转换。
8.状态机管理模块。该模块对ISDN协议栈模块对象统一管理,实现各协议层内部状态管理和状态转移,实现协议栈新建/卸载、注册/注销协议层、新建/删除实体,E1时隙信道进行分配和释放。
9.CAPI设备文件模块。该模块是CAPI系统用户态与内核态之间的接口模块,实现CAPI读写、I/O控制、设备打开关闭以及设备轮询的操作。
10.CAPI分发调度核心模块。该模块为ISDN应用程序接口与ISDN协议栈之间的分发调度层。ISDN协议栈必须注册ISDN设备到CAPI分发调度核心模块,表示协议栈准备好为应用接口程序提供服务。应用接口程序也会注册到CAPI分发调度核心模块,表明请求与对应的ISDN设备进行关联。CAPI分发调度核心模块会将应用程序的注册信息绑定到一个可以使用ISDN的物理设备,实现应用接口程序和ISDN协议栈之间双向信息交互。
11.CAPI库函数模块。该模块实现CAPI交换消息的内存管理和CAPI标准消息接口函数。
12.异常故障信息处理模块。该模块能够根据设备返回的异常状态值,结合标准协议规范向用户提供异常原因解释。
3 系统流程
3.1 系统总体启动流程
系统启动首先加载内核协议栈,配置合理化系统参数,启动用户接口程序。如协议栈启动成功,E1链路物理层通信正常,ISDN开启呼叫监听功能,等待ATP发起呼叫接入信令后调用CAPI实现RBC与MSC之间CSD链路建立过程。如协议栈启动失败,返回人机界面,重新进行系统配置和协议栈加载。流程见图5。
3.2 ISDN系统内部呼叫建立和业务数据传输流程
CTCS-3级列控系统ATP与RBC车-地业务数据传输分为2个阶段:①车载ATP发起主叫呼叫控制,与RBC建立呼叫连接,创建业务信道;②车-地双方在已申请的B通路时隙收发CTCS-3级列控业务数据。在这2个阶段,ISDN服务器实现车-地设备对等层之间信令控制、协议转发、速率匹配和业务透传功能。ISDN内部呼叫建立流程和业务数据传输流程如图6所示。
图5 系统总体启动流程
图6 ISDN系统内部呼叫建立流程和业务数据传输流程
首先,由ATP发出呼叫开始请求信令SET UP到ISDN应用接口程序模块,翻译为CON NECT_REQ的标准CAPI消息,经CAPI模块转换为SETUP交给ISDN设备D通路协议栈处理;协议栈按照标准协议回复SETUP ACK给CAPI协议栈,经CAPI协议栈发送给MSC;成功后ATP发送CONNECT信令建立连接,应用接口程序封装为CAPI标准消息CONNECT_ACTIVE_IND,经CAPI模块后还原为CONNECT消息转发ISDN协议栈处理;成功后ISDN协议栈向ATP回复CONNECT_ACK。上述流程完成后即建立PRI链路D通路连接,并指配数据业务B通路时隙。
呼叫建立后,ATP在已指配完成B通路时隙上发送SABME消息,通过CAPI转换为CONNECT_B3_REQ传输到ISDN设备B通路链路层协议栈处理;成功后回复UA消息到ATP。此时建立PRI链路B通路连接,ATP和RBC之间可以实现CTCS-3级列控系统数据业务传输,该数据业务协议格式由RBC设备实现,ISDN仅作为透传通道。
3.3 ISDN系统内部呼叫清除流程
CTCS-3级列控系统车载ATP发起呼叫挂断时,ISDN内部呼叫清除流程如图7所示。
呼叫清除过程与呼叫建立过程相反,首先B通路通过发送DISC消息断开连接,如果对方回复UA确认,则B通路拆链完成。其次完成D通路拆链过程,由ATP发出的呼叫清除DISCONNECT信令,按照CAPI协议翻译为DISCONNECT_REQ,经CAPI模块转换为DISCONNEC信令交给ISDN设备D通路协议栈Layer3/Layer2/Layer1处理。ISDN协议栈根据标准协议回复RELEASE信令给CAPI协议栈,经CAPI协议栈转发 MSC。成功后ATP发送RELEASE COMP确认D通路链路拆除,实现模块间呼叫清除流程。
图7 模ISDN系统内部呼叫清除流程
4 结束语
基于CTCS-3级列控系统的嵌入式ISDN服务器完全自主国产化设计,能够无缝匹配既有RBC系统运用,相对传统ISDN服务器来说具有强大故障诊断能力,可以准确掌握设备运行状态,实现对ISDN卡与MSC之间的2Mb/s线缆在ISDN端断开、ISDN卡初始化无法识别、ISDN服务器与RBC通信中断等异常情况自我诊断,强化CTCS-3级列控系统降级分析能力。
[1] 中华人民共和国邮电部.YDN 034.1-1997.ISDN用户-网络接口规范No.1物理层技术规范[S].1997.
[2] 中华人民共和国邮电部.YDN 034.1-1997.ISDN用户-网络接口规范 No.2数据链路层技术规范[S].1997.
[3] 中华人民共和国邮电部.YDN 034.1-1997.ISDN 用户-网络接口规范第3部分:第三层基本呼叫控制技术规范[S].1997.
[4] 王国光,唐世军,孟令韬.CCS系统中ISDN服务器的实现[J].铁道通信信号 .2014(4):81.
[5] 郭媛忠.CTCS-3级列车运行控制系统无线超时故障分析[J].铁道通信信号 .2014(7):73.