轨道交通无线系统调度服务器双机热备切换方案的研究
2020-11-04赵欢
赵 欢
(天津轨道交通运营集团有限公司,天津 300000)
1 概述
轨道交通无线通信系统中,在主、备用控制中心设备配置包括:集群交换控制设备、鉴权设备,调度服务器、行车调度台、防灾环控调度台、乘客调度台、总调度台及中心网管设备组成。调度服务器在其中至关重要,它与时钟系统进行校正,解析并转发到调度台(包括行车调度台、环控调度台和场调);接收在线列车信息(ATS),信号系统(ATS)连接到调度服务器上,调度服务器解析后将在线列车信息发送给行车调度台、停车场调度台、车辆段调度台。调度台根据ATS信号与地铁运营信息表对应,这些信息用于显示、呼叫、短信息和视频等业务操作数据。实现多调度管理列车功能。所以调度服务器在主备控制中心需采用热备方案,解决集群容灾问题。
2 调度服务器双机热备方案
为了避免自动切换出现的不可控因素,主备控制中心的调度服务器软件切换方式为手动切换。即通过手动点击调度服务器软件上面的软件切换按钮,实现切换。由于无线调度服务器软件手动切换的时机是以信号系统切换为前提,同时各系统同步切换,确保了无线系统调度服务器软件切换到备用控制中心后,能够与信号、综合监控、时钟等系统的接口正常通信,保证无线系统各项功能正常运行。
图 双机热备下的物理组网
双机热备下的逻辑连接如上图,主备调度服务器(CAD)同时和大部分外部设备(除了时钟服务器)都建立了TCP 连接,主备调度服务器都向时钟服务器获取时钟信息,使得在进行主备切换时,切换时间在5秒之内。
3 双机热备切换机制
双机热备切换分5种场景,下面描述各种场景的监测方法,处理方法。
监测软件是独立于调度服务器软件运行的软件,其作用是:与调度服务器软件软件相互监测,用于判断
确认调度服务器软件是否达到切换场景条件,当调度服务器软件发生异常则进行切换操作;另外,监控软件具备自监测功能,若当前程序被任务管理器关闭,监控软件重启自启动。 监控软件A、B、C、D 是平级的,没有级别区分。为了示意 4 个不同的 调度服务器上的监控软件,其功能没有任何区别。
单中心没有明确主备定义,当前工作即为主,上电运行根据监测软件配置指定,主备是逻辑上的主备,谁处于工作状态谁就是主服务状态。当工作状态下的服务出现异常时才会执行再次切换操作。
3.1 业务网口异常
(1)监测方式。每秒监测当前业务网口(调度服务器上有个网口的网线连接到交换机上,这个网口称为业务网口)的物理状态,用来监测业务网口是否正常。监测软件通过 WINDOWS API接口可以获得业务网口的物理状态,例如业务网口的网线拔掉,监测软件可以监测到。监测到异常的时间是3秒(每秒获取1次业务网口的物理状态,连续3次都是异常,则认为业务网口有异常)。
(2)处理方式。检测到当前业务网口处于异常状态,则:
如果当前调度服务器为主用调度服务器,则启动主备切换;如果当前调度服务器为备用调度服务器,则自启动主备切换,网管会出现这个异常,报警。
3.2 ATS网口异常
(1)监测方式。每秒监测 ATS 网口的的物理状态,用来监测 ATS 网口是否正常。监测软件通过WINDOWS API接口可以获得 ATS 网口的物理状态,例如 ATS 网口的网线拔掉,监测软件可以监测到。监测到异常的时间是3秒(每秒获取 1 次 ATS 网口的物理状态,连续3次都是异常,则认为ATS网口有异常)。
(2)处理方式。检测到当前 ATS 网口处于异常状态,异常包括物理异常和逻辑异常,物理异常包括:网口松动、网线破坏等逻辑异常包括ATS不回复位置信息,无法建立TCP通信;异常时网关有告警显示,统一显示为ATS未连接;备用服务器ATS故障时,网管可以监测到这些状态:
如果当前调度服务器为主用调度服务器,则启动主备切换;如果当前调度服务器为备用调度服务器,则自启动主备切换,网管会出现这个异常报警。
3.3 调度服务器软件是否运行
(1)监测方式。监控软件通过WINDOWS API接口查询当前正在运行的进程里是否包含调度服务器软件进程,通过这种方法可以判断本机的 调度服务器 是否在运行。监测到异常的时间是1秒(每秒查询一次,出现调度服务器软件没有在运行,立刻就可以判断出这个异常)
(2)处理方式。检测到本机的调度服务器软件没有在运行,则:
如果当前调度服务器为主用调度服务器,则启动主备切换;如果当前调度服务器为备用调度服务器,则重启本机的备用 调度服务器 程序。
3.4 死机关机系统崩溃异常
(1)监测方式。监测软件互 ping 其他调度服务器,通过这种方式,备可以监测主是否死机关机系统崩溃等;监测软件使用.NET框架下的 ping API来实现 ping,根据返回值来判断是否ping通,如果ping不通,为了确定是对方死机还是自身原因,需要ping第三方(例如时钟)的连接。监测到异常的时间是3秒。
(2)处理方式。监测到其他调度服务器系统崩溃或者死机关机时,则:
如果当前调度服务器为主用调度服务器,监测到其他备机调度服务器关机等,则自启动主备切换,网管会出现这个异常报警。如果当前调度服务器为备用调度服务器,监测到主用调度服务器关机,则启动主备切换流程。
3.5 数据库服务异常
(1)监测方式。监测当前数据库的状态,用来监测数据库服务是否异常。监控软件周期读取调度服务器数据库中数据表的个数,每秒监测1次,连续3秒读叏数据库表个数返回值为0,则认为数据库服务异常。监测到异常的时间是3秒。
(2)处理方式。检测到当前数据库处于断连状态,则:
如果当前调度服务器为主用调度服务器,则启动主备切换;如果当前调度服务器为备用调度服务器,则自启动主备切换,网管会出现这个异常报警。
4 数据同步
当前调度服务器软件第一次检测到主用调度服务器时,该调度服务器软件会向主用调度服务器申请必要数据(列车位置信息、电台状态);当主用调度服务器接收到电台状态信息发生改发时通知所有在线的备用服务器进行数据同步;因为列车位置消息特殊的时效性,其数据内容是从信号中获取的所以不需要同步。
当手动修改列车位置时会屏蔽该列车的ATS信号,当主用调度服务器发现被屏蔽的ATS信号的列车其位置収生改发主用调度服务器会通知所有备用调度服务器的数据库进行同步。
4.1 列车信息
列车的信息从信号系统获得,每个调度服务器和信号系统建立两路连接,每路连接都会收到信号系统接收来的数据,周期是1秒,调度服务器对这两路数据都解析,但是只处理其中一路。主备调度服务器都是如此,都可以从信号系统获得车的信息,所以车的信息不用同步。
关于主备调度服务器上车的信息的一致性:如果信号系统给主备调度服务器的数据是一样的,那么主备调度服务器上关于车的信息就是一致的;2)如果信号系统给主备调度服务器的数据不一样,备用调度服务器 上关于列车的信息没有必要和主用调度服务器上的车信息一致。因为在备机切换成主以后,它处理的还是原来备机连接的那路ATS数据,会继续按原来那路ATS数据走。
4.2 列车机车台、固定台开关机信息
列车机车台、固定台开关机信息的同步,分两种同步操作:
(1)主备刚连接上时,备用调度服务器从主用调度服务器 获得终端开关机信息;主调度服务器获得新的开关机信息时,实时转发给备调度服务器。
5 结束语
此方案经过多方论证,现场实测通过,已应用到某城市地铁线路专用无线系统中。