银行业PC通讯报文研究文献综述
2020-05-16 20:20:07
一、前言
在中国经济的发展过程中,银行是金融机构之一,一直扮演着重要的角色。目前,我国有商业银行、政策性银行等,其网点遍至全国各地。
1961年,Luter G.Simjian在外墙安装了一个机器, ATM机的雏形出现了。后来人们不断地完善,在1971年,韦策尔开发的机器支持与银行主机(ATMP)相连。1988年,中国大陆上,工商银行上海市分行上线的ATM机第一次正式服务于广大民众。
现如今,银行自助设备数量庞大,终端(ATMC)与后台(ATMP)通讯不仅要做到实时准确,还要安全可靠。因此,我们考虑以下几个问题:1、终端与后台之间模型是什么?2、自助设备是怎么跟后台通讯的?3、设备终端数据、银行后台数据是什么报文来存储的?4、ATMP端和ATMC端报文不一样,报文之间怎么实现转换的?5、报文数据的安全性是怎么保障的?6、交易接口是怎么配置的?基于以上问题,对银行业P(ATMP)C(ATMC)通讯报文的研究意义重大。
二、ATMC、ATMP和ATMV模型
ATMC是前端,向客户提供查询、取款、存款等自助服务;ATMP是银行的后台,存储客户的各种信息,如用户姓名、卡账号、卡密码、卡金额;ATMV是监控端,用来监控ATMC的状态,包括交易状态、运行状态、模块状态、钱箱状态、网络状态;还可以远程控制ATMC,如远程抓屏、重新启动、关闭机器,ATMC上的应用程序版本升级是通过ATMV下发的。图2-1所示,ATMC、ATMP和ATMV通过通讯模块互联互通,实际上,通讯模块是ATMC应用程序的一部分,在这里,为了方便学习和研究,把通讯模块单独分离出来。
本次毕业设计针对ATMP和ATMC之间的交易,不涉及监控端,只研究ATMP与ATMC之间的通讯报文的技术,这就是《银行业PC通讯报文研究》课题的由来。
图2-1 三端模型
三、socket技术
ATMC端应用程序的平台是window系统,因此ATMC端对Socket技术是支持的,所有的终端(ATMC)和后台(ATMP)交互都是基于Socket通讯技术,当然实际工程中不只是简单的收和发,还有一系列其他处理。Socket通讯遵循TCP/IP协议,有TCP和UDP两个概念, 前者可以保证数据的正确和可靠性,后者则允许数据丢失。套接字之间的连接过程可以分为三个步骤:服务器监听、客户端请求、连接确认,应用平台(ATMC)启动会检测后台的IP、端口等数据,如果检测不到,平台界面会出现与主机通讯故障的提示界面。在通讯源码里,通讯模块类(比如CListenCSocket类:监听ATMC应用的socket,CRecvCSocket类:接收ATMC应用的socket)都是继承CSocket类,并在CSocket功能基础上,继承增加功能,实现自己的衔接逻辑关系。