通达信电子科技有限责任公司是一家资深的证券业高科技企业,致力于证券分析系统和计算机通讯系统的研究开发,自1995年成立以来,经过蓬勃发展,已经成为行业的典范。
通达信坚持为证券经营机构和广大投资者提供独一无二、有效的证券投资分析系统。全方位的功能整合、专业精美的界面表达、独到精妙的创新设计,全新演绎了通达信的深厚专业底蕴和独树一帜风格的品牌形象。通达信始终以市场的需求为产品研发的方向,借鉴国际同类主流软件的先进投资理念,融合通达信对中国证券市场的深刻理解,使通达信公司在中国股票分析软件领域蓬勃发展。
公司一贯注重客户服务和售后支持,制定了一套完整健全的客户服务制度,开设了多个分支机构,形成以武汉为研发总部,北京、上海两个分公司,深圳、成都、沈阳、西安、南昌、海口为基地的全国性服务支持网络。凭借诚信严谨、始终如一的服务,赢得了业界广泛认同。
通达信是2002年以后网上交易领域市场份额上升最快的厂商:通达信自2002年进入网上交易领域以来,成功完成了多家券商总部级的网上交易系统承建,维护工作。从南方证券超强版开始,通达信一直是网上交易系统业务创新和技术性能指标领先的软件供应商。目前,全国近200个网上行情交易主站运行在互联网上,稳定的为近60万并发用户提供国内证券市场的实时行情服务。
通达信是南方市场影响力最大的网上交易厂商:南方地区最主要的几个券商国信、招商、广发均采用通达信的网上交易行情系统。
通达信网上交易系统v5.0(以下简称TC50)是通达信电子科技有限公司在吸收传统交易后台的优势技术基础上全新打造的新一代交易平台。TC50吸收并进一步改进了原有交易平台数据字典、组件框架化、状态无关的设计,在此基础上加入全新的调度策略、安全策略等,扩充架构体系,弥补原有架构方面的弱点,可提供更好的性能、更高的稳定性和安全性以及更为快捷丰富的功能。TC50系统是通达信网上交易平台质的飞跃。
系统设计目标
针对现有委托交易体系架构的一些弊端和问题,通达信设计了全新的总部集中委托交易体系结构。系统的设计目标如下:
三高:高稳定性、高安全性、高并发能力
三易:易维护、易管理、易扩展
两丰富:功能丰富、支持外围丰富。
TC50系统组成模块
|
模块 |
设计内容 |
|
委托中继 |
提供统一的委托接入平台,完成负载均衡和网络隔离任务 |
|
调度中心 |
连接接入组件支持超大容量的并发接入,支持强大的防重试,防DOS攻击,强大的可替换的加密和压缩模块,在通达信TC50中完成通道数据加密和数据压缩任务。完成工作线程的分配和进入的工作任务的拥塞控制和进程调度。 |
|
交易中心 |
在原来的网关基础上发展而来,支持DLL方式直接给调度组件调用,也可以以EXE方式存在, |
|
安全中心 |
|
支持柜台号设置 |
解决通买通卖柜台单一账号具备多个安全账号的问题 |
|
支持高并发 |
支持50万-100万安全账号记录 |
|
支持安全冻结 |
安全冻结包括:IP冻结策略、交易口令冻结策略、认证口令冻结策略、数字证书冻结策略。 |
|
支持安全日志 |
对冻结和解冻记录安全日志,日志包括客户端IP、客户端MAC地址、相关账号等信息。 |
|
支持远程管理 |
分片区管理,建议采用地区级管理。 |
|
提供日志分析工具 |
支持对安全日志进行检索、分析等功能。 |
支持各级别部署安全中心(分布式部署) |
|
用户管理系统 |
完成用户管理功能 |
|
系统监控组件 |
整个系统各程序的监控和管理 |
|
日志管理组件 |
交易日志的管理 |
|
系统扩充 |
安全中心的扩展设计方案:将进一步扩展为经纪人信息中心和用户交流中心
经纪人信息中心:允许券商以分组方式向其下属个客户发布信息以及实时交流 |
|
新系统提供实时通告系统以及用户分组管理,可由经纪人象其所管辖客户发布通告和投资资讯。
新系统全面支持通达信二次开发平台(V4),比较早期V3的二次开发具备更广泛的平台支持(win/linux),同时,二次开发具备多种方式可供用户选择。 |
TC50系统交易中心
TC50委托交易服务系统具有如下特点:快捷迅速,稳定容错,安全高效,扩展方便,集中管理
通达信独家首创:闪电下单和即时交易雷达
策略交易:将行情变化与客户资产变化高度结合,根据各种不同的交易策略条件,由超级终端自动实现下单委托的功能
稳定容错:全局无单点故障
多帐号跨券商、跨营业部交易
多种加密方式组合:SSL方式,认证口令方式,客户证书方式
交易动态解释引擎:客户端内嵌强大的脚本解释引擎,可以解释委托脚本从而动态改变客户端的功能、查询栏目、行为和外观等
TC50系统调度中心技术点
调度中心是整个TC50交易系统的关键所在,主要技术点如下所示:
每个客户端和调度中心的连接接入组件建立TCP连接,长连接。一台调度中心支持3000并发连接。连接接入组件采用IOCP技术,支持超大容量的并发接入,支持强大的防重试能力,防DOS攻击能力。
连接接入组件收到客户请求,经过数据加密压缩组件的数据解密和解压缩,将请求给拥塞调度组件。
拥塞调度组件根据请求的营业部编码,银行编码和功能编码分配不同的任务池中,每个任务池是一个先进先出的队列,工作线程处理任务池中的请求任务,交给业务处理组件(交易网关)处理。
系统调度模型系统采用完成端口、用户请求队列、业务处理线程池分组等多项技术,完成通信和处理层的均衡,请求由接入线程池放入用户请求队列排队处理,业务处理线程按照柜台分组,不同柜台之间线程池互不干扰,即慢速营业部不影响高速营业部运行
采用平构网状结构,保证系统无单点故障,具备最优架构稳定性
通过端口技术完成通讯,并隔离通讯过程和业务处理过程,防止慢速业务通道挤占通讯处理通道
允许通过网上交易外围接口和调度中心完成应用耦合,支持WEB接入和手机平台接入
改进型的线程调度逻辑,均衡到营业部级别
采用任务线程隔离完成多个分组的调度和隔离
采用智能均衡调度完成工作线程的回收和临时分配
采用故障状态监控完成外调度的管理
拥塞调度组件支持以下三种调度模式:
TC50系统调度中心的三种调度模式
|
名称 |
描述 |
|
通讯转发模式 |
主要功能为应用层软均衡,具备备份功能,可应用于网络隔离、网络桥接、负载均衡和网络热备份。通讯转发模式优先级别高于本地处理和路由转发,如果调度中心配置有通讯转发模式的入口,则本地处理入口和路由转发入口无效。 |
|
本地处理模式
即内调度模式 |
主要功能为接入处理,连接后台的消息中间件,处理实际业务逻辑,本地处理模式对外可提供应用接口,处理一般性用户请求,并负责解释和调度功能执行模块(DLL插件)完成业务处理过程。本地处理模式可以和路由转发模式同时工作,优先于路由转发模式,如果存在可用且有效的功能执行模块,则用户请求通过本地处理,否则则进行路由转发。 |
|
路由转发模式
即外调度模式 |
主要功能为接入转发。主要用于承担接入工作,在分布方式部署的营业部架构中,路由转发模式为主要的工作模式。路由转发模式优先级低于本地处理方式,但可和本地处理模式混和应用,用于半集中方式的营业部架构。 |
调度型网上交易架构的优点
当系统发生软性故障时,转发型网上交易架构和调度型的网上交易架构所带来的影响,是有所不同的,详细分析如下表:
|
故障描述 |
转发型网上交易构架的后果 |
调度型网上交易构架的后果 |
|
银证通、银证转帐等慢速功能请求多 |
网上交易大并发情况下,客户端发起的慢速功能增多,网上交易处理机到券商接入的交易处理进程被大量占用,造成其他重要交易功能如买卖、撤单等请求等被迫进入排队状态,影响客户端的正常交易 |
调度中心根据交易请求功能号判断,如果是慢速请求将分配有限的交易处理线程专门处理慢速请求,不会影响处理客户端其他重要功能 |
|
对于某些柜台接口有缺陷的情况 |
有些比较老的柜台接口设计有缺陷,如没有通讯超时的设置,造成发往某柜台的一个请求返回长时间不返回,堵塞交易处理进程。一段时间后该柜台堵塞住大量交易处理进程,造成发往其他柜台的请求没有足够的处理进程进入排队状态,影响客户请求的处理速度 |
使用外部网关和有限的处理线程,专门处理有缺陷的柜台,堵塞交易处理进程的情况,累计到的一定程度调度中心将通知“状态管理终端”重新启动外部网关,不会影响其他正常营业部的交易处理 |
|
某些业务开展好的营业部,客户反映网上交易慢 |
一般网上交易平台处理区域集中柜台时候没有针对特定营业部分配交易处理线程,这种营业部请求都在抢有限的交易处理线程,由于一些慢速或者堵塞的情况发生,交易请求活跃的营业部客户将得不到交易处理进程,客户反映交易慢 |
调度中心针对不同业务能力营业部分配各个营业部不同数量交易处理线程,充分保障优质营业部客户交易通畅 |
|
客户反映网上交易使用盘中交易速度越来越慢 |
由于各种意外发生交易处理线程被堵塞或者交易处理线程本身故障,网上交易服务器本身没有检测和处理,当可用线程被大量堵塞后,大量请求得不到处理 |
调度中心收集交易处理线程的状态,当堵塞发生到一定程度,会主动发出型号给“状态管理终端”,由它重新启动网关释放堵塞线程 |
TC50系统交易中心
TC50系统的交易中心以中继和网关两种方式工作(LINUX版本无网关工作方式):
中继方式:完成营业部选择、营业部路由
网关方式:将请求分发到其他交易中心
交易中心具有负载均衡效用,详见下图所示:
不论交易中心以中继方式工作还是以网关方式工作,均能提供营业部列表选择功能。若以中继方式工作,营业部列表通过下一级交易中心的营业部列表合并而成。若以网关方式工作,营业部列表为实际配置的营业部列表,在不需要转接的情况下,可直接部署多台网关方式的交易中心,降低架构的复杂程度。
TC50系统安全性设计
网上交易的安全性历来都是人们讨论的主要话题之一。在网上交易日益扩展和普及的今天,交易帐号、交易数据的安全要求更高,涉及面更广。不但要求提高系统数据传输的保密性,还要要求防治病毒,还要提高抵抗外来非法黑客入侵的能力。
通达信在多年的网上交易实践中,关于安全性提出以下几个主要观点:
|
攻击方式 |
客户端防范技术 |
服务器防范技术 |
|
木马程序 |
屏蔽特别的木马进程 |
支持非法地址冻结策略。 |
|
让一些木马程序使用的关键系统调用函数失效 |
|
|
交易客户端带动态软键盘,软键盘控制密码或口令的输入,软键盘上的键盘按钮每次随机组合。防止对键盘缓冲区的尝试。
客户端全面支持新版本的安全机制,这将更有效防止黑客键盘记录(Keyboard-Log) |
|
|
外挂程序 |
增加验证码功能,防止通过外挂程序恶意探测 |
1).对程序同时启动数进行限制,程序延时退出
2).在交易网关中上增加OEM验证码
3).如果一次运行中,校验失败超过一定次数后,进行警告、延时、退出、甚至重启操作系统
4).如果密码或口令太有规则,提示用户进行变更 |
|
内存扫描 |
客户端内存中安全存放帐户和密码,防止内存信息扫描 |
|
|
数据包窃听 |
应用层数据加密(这个实际比较容易) |
|
|
反跟踪调试 |
利用检测SoftICE、TRW2000的机制,如果发现SoftICE驻留在内存,程序退出。可以利用VWIN32.VxD中的一个服务,系统内核使用此服务来与系统级调试器如WinDBG、SoftICE等进行通信。其中0x4F号子功能是用来查询调试器是否已经驻留内存并能否处理保护模式程序,如果是的话则调试器应返回0xF386。或者给SoftICE发送命令、BoundsChecker后门检测SoftICE |
|
|
全面采用改良后的安全策略,彻底避开SPYWARE的威胁(注:其他采用标准SSL的系统均无法回避本问题,可成为SPYWARE的牺牲品)
采用动态TOKEN机制验证客户端身份,将认证口令的安全级别提高到数字证书级别。 |
|
TC50系统与现有系统并发能力,安全性的比较
|
项目 |
现有网上交易系统 |
TC5.0交易系统 |
|
设计理念 |
非集中交易模式下的营业部转发级网上交易系统,主要注重按营业部的转发和交易通道的实现 |
基于集中交易和部分集中交易的企业级网上交易系统,主要注重交易的大规模并发能力、拥塞调度控制能力、交易稳定度和结构简单易扩展 |
|
交易构架 |
对于以前非集中交易时代采用中继+用户认证+交易网关模式,中间环节比较多,需要较多的服务器 |
本系统除了转发功能以外,强化了调度功能的设计,采用调度中心(安全认证)+外调度网关模式,中继和交易网关合一,中间环节减少无需太多服务器。对于柜台接口设计完善的后台,可以不使用外部调度网关。 |
|
单服务器并发处理能力 |
采用多服务器分发的模式,对于单台服务器的处理能力要求不高,一般1500连接以内 |
采用接入和处理的异步处理模式,单台服务器处理能力达到4000-5000,现有国信系统采用此模式稳定并发4000以上。 |
|
用户认证 |
采用独立的用户管理服务器直接对客户端服务 |
做为一种交易功能,由调度中心对客户提供安全效验和通讯加密服务,设计并发量更大,功能更强,更容易管理、日志详细 |
|
硬件投入情况 |
6台服务器提供3000-4000的并发 |
2台服务器+2个外调度pc处理10000的并发 |
|
交易请求处理能力 |
采用转发模式,无法根据请求类型做特别处理,对于一些不稳定接口和慢速功能比如银证通和银证转帐、开放式基金等,容易造成业务处理线程堵塞或者异常,从而使得更个网关崩溃,交易请求的处理能力不稳定 |
采用调度模式,根据营业部号、银证通银行号、交易功能号做交易请求的调度处理,对于慢速功能限制改功能能够使用的线程数目,防止占用买卖、撤单等交易业务功能,保证交易畅通。对于接口不稳定功能,采用外部调用网关,系统崩溃不会影响其他接口稳定的交易请求。在交易繁忙时候可以限制查询请求的处理能力,保留更多线程处理登录,买卖交易,撤单等重要功能的处理能力 |
|
日志功能 |
由于中间程序比较多造成日志分散,功能记录不详细,无法准确还原故障现场 |
调度中心使用专门线程采集日志信息,对于接入日志、安全日志、业务处理日志详细保留,能够完全还原故障发生时候的现场情况。可以根据当天的交易日志情况统计各个功能的处理能力和分析异常情况,向券商提供后台各个营业部、功能的压力情况,便于分析交易系统的处理能力。 |
|
客户端交易模式 |
现有系统交易和行情是2个不同的程序,行情认证后客户要使用交易系统需要再次登录 |
将行情系统和交易系统合并为一个程序,用户身份认证后用户交易就已经完成登录,无需在交易时候再次登录。能够实现界面闪电下单,权证盘面下单等和行情系统融合的高级交易功能。 | |