IMIX协议分析(2)

2018-11-27 18:52

数由于传输层异常重发时所标记。(可加密) 97 PossResend 消息可能重传标志,当一条消息以不同的序列号重传时所加标志位,多数由于上层处理逻辑异常而重传时所带标记。(可加密) 发送时间(可加密) 原始发送时间(可加密) 52 122 347 SendingTime OrigSendingTime MessageEncoding 必需 消息中Encoded域的字符编码类型(非ASCII码) 369 LastMsgSeqNumProcessed 最后处理消息序号(可加密) 370 10287 10052 10308 10333 HopsGrp OnBehalfOfSendingTime SegmentID ErrorCode SysSeqNo UserSeqNo

最初发送时间 产品编号,新一代本币系统必需域。 错误代码,新一代本币系统必需域。 全局消息序号,新一代本币系统必需域。 用户特定消息序号,新一代本币系统必需域。 表 1标准消息头

例如:银行A的交易员小王发送消息给银行B的交易员小张,则小王发出去的消息标

准头部应该如下表所示:

域号 8 9 35 49 域名 BeginString BodyLength MsgType 值 IMIX.1.0 计算得到 说明 起始串IMIX1.0(不可加密,消息的第一个域) 消息体长度(不可加密,消息的第二个域) 8 Execution Report消息 小王所在机构的标识 SenderCompID 银行A 56 128 TargetCompID DeliverToCompID CFETS 银行B 通过交易中心中转 小张所在机构的标识。 50 129 SenderSubID DeliverToSubID 小王 小张 小王在所在机构的标识 小张在所在机构的标识 34 52 SeqNo SendingTime xxx 时间 消息序列号 发送时间(可加密)

表 2标准消息头例子

而小张给小王发的消息标准头部则应该如下表所示 域号 8 9 35 49 56 128 域名 BeginString BodyLength MsgType 值 IMIX.1.0 计算得到 说明 起始串IMIX1.0(不可加密,消息的第一个域) 消息体长度(不可加密,消息的第二个域) D NewOrderSingle消息哦 小张所在机构的标识 通过交易中心中转 小王所在机构的标识 SenderCompID 银行B TargetCompID DeliverToCompID CFETS 银行A 50 129 SenderSubID DeliverToSubI小张 小王 小张在所在机构的标识 小王在所在机构的标识 D 34 52

表 3标准消息头例子

SeqNo SendingTime xxx 时间 消息序列号 发送时间 4.1.2 消息尾

每一个会话消息或应用消息都有一个消息尾,并以此终止。消息尾可用于分隔多个消息,包含有3位数的校验和值。

消息尾格式见下表4

域号 93 89 10

表 4标准消息尾

域名 必需 说明 数字签名长度(不可加密) 数字签名(不可加密) 校验和,消息的最末域。(不可加密) SignatureLength Signature CheckSum 必需 4.1.3 消息体

主要描述应用层面的业务信息(具体的消息类型见《银行间市场业务数据交换协议》),

应用消息中有很多共用的数据域集合——组件。 比如说, 大多数应用消息都会用到一系列定义债券品种的域:Symbol, SecurityID,SecurityIDSource,?? 为避免重复,协议中定义了一些关键组件,在应用消息定义中直接用名称引用这些组件。实际的消息定义和使用中,则应该将组件扩展开成为相应的数据域集合。

4.1.4 组件

在IMIX协议中,组件是一个逻辑概念,它用来表示一组彼此之间有一定关系的消息域的组合。这些组件在IMIX协议中都赋以相应的名称,用来更好的理解消息结构以及所应用的场景。在实际消息传送过程中,这些组件名称并不会作为信息消息中出现,可以这么说,组件的出现是起到更好让人能够理解IMIX消息结构的作用。

4.1.5 重复组

域可以在重复组里多次重复,用以传输数组同类的数据。在IMIX协议中,重复组也同样是一个逻辑概念,它用来表示一组彼此之间有一定关系的消息域的组合能够连续反复地在消息中出现。在实际消息传送过程中,这些重复组件名称也不会作为信息消息中出现。

通常域名起始为’No’字符的域指明重复的次数,并位于重复组的开始处。本文档中重复组的定义通过缩进的符号表示,重复组也可嵌套。使用子重复组时不能省略父重复组。

重复组内的第一个域是必需的。在协议执行时把第一个域用作“分隔符”,表明新的重复组的开始。如果第XXX号(NoXXX)域大于0,那么第XXX号后所列的第一个域就变成有条件的必需的域。

指明重复组号的第XXX号(NoXXX)域 (如:交易会话号( NoTradingSessions), 分配号(NoAllocs))在重复组内只出现一次,必需直接位于重复组的内容之前。

如果重复组内有一个域是必需的,那么第XXX号(NoXXX)域就应当是必需的。如果重复组内的所有参与方都是可选择性的,那么第XXX号域也应当是可选择性的。

如果重复组的某一个域是必需的,那么在重复组内每次重复时该域都应出现。 通过缩进的符号“→”对消息定义内的重复组进行指定。 重复组可嵌入其他重复组(可不止一层嵌套)。通过缩进的符号“→”后跟缩进的符号“→”的方式对嵌套的重复组进行指定。

有嵌套重复组时,必需对外层的重复组进行指定。 例如定义一重复组: 454 → → NoSecurityAltID 455 456 SecurityAltID N N 备选债券代码个数 备选债券代码 备选债券代码源 SecurityAltIDSource N

表 5重复组

则该重复组实际使用例子如下 454 → → → → → → NoSecurityAltID 455 456 455 456 455 456 SecurityAltID SecurityAltIDSource SecurityAltID SecurityAltIDSource SecurityAltID SecurityAltIDSource 3 债券1 财政部发行 债券2 企业发行 债券3 央行发行 表 6

在传送过程中,该重复组在消息中如下所示:

454=3455=债券1456=财政部发行455=债券2456=企业发行455=债券3456=央行发行

5. IMIX Protocol会话机制

为了保证IMIX会话能够能够正常的开始和终止,保证IMIX消息在传送过程不会发生的消息丢失引起的消息序列缺口问题,以及其他一系列与IMIX消息传送相关的问题,IMIX定义了一套会话机制,该会话机制通过定义特殊的消息域以及会话消息实现了会话登录,会话注销,消息缺口填补,消息重复发送等传送场景的处理过程,这些都是IMIX协议为了保证消息正确传送提供的一种解决方案。如果具体的IMIX协议的实现者能够通过其他的技术或者机制保证消息的正确传送,就不用实现IMIX会话机制。

5.1 消息序号

任何一条消息都被分配一个唯一的消息序号来加以标识,消息序号在每次会话过程中从


IMIX协议分析(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018年电子驻车制动系统行业现状及发展趋势分析 (目录)_ss

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: