MH T 0048.2-2015 民用机场共用旅客处理系统技术规范第2 部分 应用软件数据交换.pdf
《MH T 0048.2-2015 民用机场共用旅客处理系统技术规范第2 部分 应用软件数据交换.pdf》由会员分享,可在线阅读,更多相关《MH T 0048.2-2015 民用机场共用旅客处理系统技术规范第2 部分 应用软件数据交换.pdf(46页珍藏版)》请在麦多课文档分享上搜索。
1、ICS 35.240.60 V 07 MH 中华人民共和国民用航空行业标准 MH/T 0048.22015 民用机场共用旅客处理系统技术规范 第 2部分:应用软件数据交换 Specification of common use passenger processing systems in civil aviation airportsPart 2: Interface between applications 2015 - 09 - 30发布 2015 - 12 - 01实施中国民用航空局 发布MH/T 0048.22015 I 目 次 前言 . . II 1 范围 . . 1 2 术语和定
2、义 . . 1 3 数据交换 接口通用标准 . . 1 4 数据交换 接口消息处理规则 . . 23 附录 A(资料性附录) 数据交换接口及消息处理示例 . 32 MH/T 0048.22015 II 前 言 MH/T 0048分为以下三个部分: 第 1 部分:系统结构; 第 2 部分:应用软件数据交换; 第 3 部分:硬件设备数据交换。 本部分为MH/T 0048的第2部分。 本部分按照GB/T 1.1-2009给出的规则起草。 本部分由中国民用航空局人教司提出。 本部分由中国民用航空局航空器适航审定司批准立项。 本部分由中国民航科学技术研究院归口。 本部分起草单位:中国民航大学、中国民航信
3、息网络股份有限公司。 本部分主要起草人:李建伏、孙皓、贺怀清、张博、惠康华、丁玎、徐涛、武佳、孙启玲、李斌。 MHMH/T 0048.22015 1 民用机场共用旅客处理系统技术规范 第 2部分:应用软件数据交换 1 范围 MH/T 0048的本部分规定了共用旅客处理系统的应用软件与管理平台之间数据交换接口技术规范。 本部分适用于中国民用机场共用旅客处理系统的建设。 2 术语和定义 2.1 共用旅客处理系统 CUPPS Common Use Passenger Processing Systems 由国际航协定义,用于航空公司使用机场的终端设备的信息处理规范。 MH/T 0048.1-2014
4、中的3.1 2.2 CUPPS工作站 CUPPS Workstation 运行于CUPPS平台上的硬件和操作系统软件。硬件包括计算机、移动终端设备、智能手机、简易客户终端等。 MH/T0048.1-2014中的3.2 2.3 CUPPS应用 CUPPS Application 运行在CUPPS平台上,使用CUPPS平台接口的应用程序。 MH/T 0048.1-2014中的3.3 3 数据交换接口通用标准 3.1 平台架构 平台管理所有连接到平台的请求,并为这些连接提供标准接口来访问机场资源和其他系统。 平台可使用多种体系架构,见图1。 MH/T 0048.22015 2 图1 平台架构 平台架
5、构由以下组成,应用程序1使用设备1和2,应用程序2使用设备1,应用程序3使用设备3: (a)实现架构:表示在该平台上应用程序通过一个节点(节点 1)连接到所有设备,每个逻辑设备由一个独立的物理设备实现; (b)实现架构:表示在该平台上应用程序通过两个节点(节点 1 和2)连接到设备,节点 1 提供了物理设备 1 的逻辑接口。节点 2 为一个多功能物理设备提供逻辑接口; (c)实现架构:表示在该平台上,应用程序首先连接到节点 1,该节点提供了一个逻辑分配机制,使应用程序可重定向到其他节点。当应用程序 1 连接到平台上的节点 1 获取逻辑设备 1和 2 时,该平台分别将应用程序 1重定向到节点 2
6、 和3;当应用 2 连接到平台上的节点 1 获取逻辑设备 2时,该平台将应用 2 重定向到节点 3;当应用 3连接到平台上的节点 1获取逻辑设备 3,该平台将应用程序 3 重定向到节点 4。其中,所有的逻辑设备是通过一个多功能物理设MHMH/T 0048.22015 3 备来实现。 注: 应用程序通过设备的名称和接口访问设备,与设备所在位置无关,名称和接口都由环境变量指定。应用程序不能推理出平台组件的任何特定实现方法,以及设备与平台连接的任何特定物理实现方法。 3.2 接口状态 CUPPS接口的不同状态如表1所示。 在生产环境中, 如果应用程序试图使用支持状态之外的接口, 平台应记录相应的信息
7、供管理员审查,并触发警报。 表1 CUPPS接口状态 状态 描述 提出 接口已经被提出,但是还没计划 计划 接口正在计划中 开发 接口处于实验性测试状态,不能在生产环境中使用 支持 接口处于正常的生产状态 不建议 接口仍然被支持,但不推荐使用。该接口即将进入过时状态。在生产过程中对该接口的任何使用,都将产生一个警告,且被平台记录下来 废弃 接口不再被支持。在生产中任何试图使用这种接口的行为都产生一个错误 3.3 接口版本 3.3.1 在每个单独的 TCP(Transmission Control Protocol 传输控制协议)端口上的平台和设备端应同时支持多个版本的 CUPPS 接口。当应用
8、程序连接到 CUPPS 平台后,首先应请求得到该平台支持的接口版本列表,然后从获取的接口版本列表中选择一个版本进行后续的会话。 3.3.2 会话消息需通过已选择的接口版本的校验。如果校验失败,则触发消息,并立即关闭该会话。 3.3.3 如果应用程序在版本列表中没有找到支持的接口,应用程序应做以下处理: a) 记录错误; b) 发送一个错误事件; c) 通知终端用户。终端用户根据提示信息,咨询相应的技术支持人员。 所有的 CUPPS 接口都遵守一套通用的基本规则。所有 CUPPS 接口应使用 TCP 套接字,消息交换内容应符合已定义 XSD(XML Schemas Definition,XML
9、结构定义)的 W3C(World Wide Web Consortium,万维网联盟 ) XML(Extensible Markup Language,可扩展标记语言 )消息格式。 3.4 平台主机名和端口 应用程序通过TCP/IP(In ternet Protocol,网络间通信协议)连接服务器,服务器应向应用程序提供对应的服务器主机名和端口。应用程序根据CUPPSPN与CUPPSPP环境变量确定平台的主机名和端口。考虑到生产和测试环境的灵活性,可使用IP地址127.0.0.1。 3.5 会话原则 3.5.1 会话流程 应用程序和平台之间的会话流程图如图2所示,主要包括以下几个步骤: MH/
10、T 0048.22015 4 a) 平台监听一个已知的节点和端口; b) 应用程序连接到平台的相应节点和端口。在连接时,应用程序向平台发出可用接口版本列表请求,平台收到请求后返回可用接口列表; c) 应用程序向平台发送期望使用的接口版本。该接口版本经平台确认后,将用于后续会话消息的验证; d) 平台验证应用程序的合法性,并返回验证结果。如果验证成功,则应在验证结果中包含令牌信息。该令牌信息应用于所有后续通信以及验证设备连接。当平台连接关闭后,令牌失效,基于此令牌的连接也应立即断开; e) 应用程序使用已定义消息集与平台进行通信。对于每个设备会话,应用程序在断开连接之前,均应发送并获得平台对应的
11、响应; f) 应用程序断开。当应用程序关闭时,应向平台发送消息,获取消息后方可断开连接。 建立连接设置接口版本认证使用断开连接重定向图2 会话流程 基本的会话连接序列图原型参见附录A.1。 3.5.2 消息处理流程 3.5.2.1 建立连接后,当接收端收到消息时,应判断消息流的合法性。 3.5.2.2 消息从接收到处理的流程见图 3。处理流程如下: a) 接收端逐字节地读取消息头:如果接收端读取到无效字符,则接收端立即停止读取,发送的通知,并在该通知中包含信息 eventType = “headerVersion”,随后关闭连接。如果接收端读取的消息长度越界,则接收端发送的通知,并包含信息 e
12、ventType = “headerLength”,随后关闭连接。如果读取消息头超时,则接收端发送的通知,并包含信息 eventType = “headerTimeout”,随后关闭连接; b) 读取消息体:消息头中包含消息体的长度,如果在读取这个指定长度的消息体时超时,接收端发送的通知,其中包含信息 eventType =”bodyTimeout”,随后关闭连接; MHMH/T 0048.22015 5 c) 解析消息体:如果接收端无法使用选定的接口版本解析消息体,则接收端发送的通知,其中包含信息 eventType= “bodyParseFailure”,随后关闭连接; d) 处理经过解析
13、的信息。 sessionErrorEvent headerVersionsessionErrorEvent headerLengthsessionErrorEvent headerTimeoutsessionErrorEvent bodyTimeoutsessionErrorEvent bodyParseFailure读取消息头读取消息体解析消息体处理消息断开连接图3 平台消息处理流程 3.5.3 应用程序认证 3.5.3.1 一旦应用程序连接到平台并且选择好接口版本,则该应用程序应向平台请求认证。如果应用程序未能通过认证,则平台应断开与该应用程序的连接。 3.5.3.2 应用程序认证分为两步
14、: a) 应用程序向平台发送消息请求认证; b) 平台记录应用程序的认证请求,回复消息。该消息应包含以下信息: 1) 设备令牌:用于后续设备交互操作; 2) 平台参数:平台供应商 ID 和版本信息以用于日志记录; 3) 支持的加密算法列表; 4) 应用程序参数:局部存储、局部临时存储以及永久性全局存储地址; 5) 工作站参数:工作站的名字、厂商信息、平台的配置信息、操作系统默认的打印机名称等; 6) 设备分配列表(样品); 7) 特殊模式接口,ZI(IATA message software device,IATA 信息设备)和 ZL(logging software device,日志设备)
15、都是被指定的。 应用程序认证请求与回复的消息示例参见附录A.8。 3.5.4 应用程序主动与平台断开连接 MH/T 0048.22015 6 3.5.4.1 应用程序与平台端口断开连接之前,应向平台发送消息以通知平台方应用程序将要断开连接。平台端接收到消息后,回复消息,并等待应用程序断开连接。附录 A.6 为与平台断开连接的示例。 3.5.4.2 应用程序发送消息后, 平台端将该应用程序设置为 aSpg 状态,不允许该应用程序继续向平台发送其他消息。如果该应用程序在 aSpg 状 态试图发送消息,平台记录事件。 3.5.4.3 平台接收后,等待应用程序断开连接,且不能向应用程序发送其他消息。如
16、果在PltSockMaxIdleTime1)后,该应用程序仍未断开,平台应作相应日志记录,然后断开该连接。 3.5.5 平台端发起的应用程序正常退出机制 3.5.5.1 本部分仅规范了应用程序的正常退出机制,应用程序的异常退出机制见本标准第 1 部分的9.1.8。 3.5.5.2 平台端可通过发送特定的指令断开应用程序连接。断开连接的形式有两种,即请求方式与控制方式)。 3.5.5.3 请求方式通过平台向应用程序发送指令停止应用程序。在接收到平台的停止指令后,应用程序应关闭与设备的连接、记录日志、通知用户应用程序正在退出,并最终关闭与平台的连接。此过程应在 AppSpgTime2)时间内完成,
17、如果需要更多的时间退出应用程序,最多可增加 MaxSpgDegerTimes3)次延迟退出的请求。 3.5.5.4 控制方式通过平台端执行指令停止应用程序。在这种情况下,应用程序被置为 aSpg 状态,如果应用程序退出时长超过了 AppSpgTime4),应用程序将会进入 aZom 状态并被强制清除。 图4给出了平台端发起的应用程序正常退出的四种情况: a) 平台允许应用程序延迟退出,但应用程序不需要延迟的情况,分为: 1) 步骤“1”,平台请求应用程序停止; 2) 步骤“2”,应用程序回复可以退出。平台立即使分配给该应用程序的设备令牌失效; 3) 步骤“3”,应用程序关闭与平台的连接,然后退
18、出程序。 b) 平台允许应用程序延迟退出,且应用程序需要延迟的情况,分为: 1) 步骤“1”,平台请求应用程序停止。应用程序回复平台需要延迟退出。平台重置应用退出计时器 AppSpgTime5); 2) 步骤“2”,应用退出计时器超时,平台继续向应用程序发送停止请求。应用程序回复延迟退出。平台重置应用退出计时器; 1) 见表3。 2) 见表3。 3) 见表3。 4) 见表3。 5) 见表3。 MHMH/T 0048.22015 7 图4 应用程序退出场景 3) 步骤“3”,应用退出计时器超时,平台端将应用程序置为 aSpg 状态。该应用程序回复需要延迟退出时间,但是平台已不允许应用程序延时,所
19、以平台忽略了这一请求; 4) 步骤“4”,应用程序尚未终止与平台的连接,平台最后一次发送停止请求,并忽略所有来自应用程序的消息; 5) 步骤“5”,应用退出计时器超时。平台将应用程序的状态改为 aZom,强行断开连接并释放与该应用程序有关的所有资源。 c) 平台不允许应用程序延迟退出,且应用程序也不需要延迟的情况。分为: 1) 步骤“1”,平台请求应用程序停止,并将应用程序置为 aSpg 状态; 2) 步骤“2”,应用程序回复可以退出。平台立即将分配给应用程序的设备令牌失效; MH/T 0048.22015 8 3) 步骤“3”,应用程序关闭平台的连接并且终止。 d) 平台不允许应用程序延迟退
20、出,但应用程序需要延迟的情况。分为: 1) 步骤“1”,平台请求应用程序停止,并将应用程序置为 aSpg 状态,应用程序回复平台需要延迟退出; 2) 步骤“2”,平台关闭连接并且将应用程序置为 aZom 状态,然后断开与应用程序的连接并释放相关的所有资源。 应用停止指令请求的消息示例参见附录A.7。 平台应用程序A132321ApplicationStopRequest canDefer =“false”applicationStopResponse result=“OK”TCP close(c)平台应用程序A12 21ApplicationStopRequest canDefer =“fal
21、se”ApplicationStopRequest canDefer =“false”TCP close(d)ApplicationStopResponse result =“defer”图4(续) 3.6 平台令牌失效和设备会话失效 3.6.1 应用程序在使用平台期间,应和平台保持连接。如果应用程序与平台的连接中断,与该连接相对应的设备令牌应立即失效。如果应用程序使用要求终止与平台的连接,则其设备令牌也应失效。 MHMH/T 0048.22015 9 3.6.2 使用失效令牌的设备连接是无效的。失效的设备会话在 PltSockM axIdleTime6)内依然保持连接状态。在此期间,不允许再
22、往这个连接上发送消息。如果应用程序试图在无效会话上发送信息,则平台认为该消息是非法消息并回复。 3.7 消息头 3.7.1 CUPPS 信息交互协议提供多个版本的消息头。消息头遵循 vvllllllllxxx的基本格式,每一位为AZ,09对应的ASCII 字符,其中: vv 为用 2 个字节表示的消息头版本; llllllll 为一个 8 个字节长的数据表示消息体长度,数据的内容可用大写或小写字母表示,即 0123abcd和 0123ABCD是一样的; xxx为消息头版本对应的扩展数据。 表 2 为消息头格式。 表2 平台消息头格式 版本 状态 备注 01 支持的 2个字节消息头版本,后跟 8
23、 字节的长度信息。 3.7.2 从会话连接尝试读取信息时,消息头的长度指定了应读取的字节数。当写入会话连接时,长度信息应按照对应版本规定的规则进行计算。 3.7.3 如果接收方接收到不支持的消息头版本,应使用 01 版本消息头向发送方回复错误信息,并终止该会话。 3.7.4 消息头版本 01 定义最大消息长度,即 PltMaxMsgSize7)字节(大约 16MB)。由于会话使用 8字节字段的消息长度,前两个字节的长度都被置为 0。 示例: 消息头版本01 错误样例如下: 1. 01FF00003F 2. 01 . . . . . . . . 消息头版本 3. 00 . . . . . . 0
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MH 0048.2 2015 民用 机场 共用 旅客 处理 系统 技术规范 部分 应用软件 数据 交换
