数据交换概要设计
- 格式:doc
- 大小:6.42 MB
- 文档页数:20
数据交换v3.0 概要设计文档文档修改记录:目录1.引言 (5)1.1.背景 (5)1.2.术语和缩写词 (5)1.3.参考资料 (7)2.系统需求 (7)2.1.总体描述 (7)2.2.功能 (7)2.2.1.数据同步和交换 (7)2.2.2.本地FTP服务 (8)2.2.3.本地SNMP服务 (8)2.2.4.日志 (9)2.3.性能 (9)2.4.安全 (10)3.总体架构设计 (10)3.1.系统部署 (10)3.2.系统组件结构 (11)3.3.系统总体架构 (11)4.子系统设计 (12)4.1.数据交换WEB应用 (12)4.1.1.架构图 (12)4.1.2.设计要求 (12)4.2.数据交换服务 (13)4.2.1.架构图 (13)4.2.2.流程图 (13)4.3.本地FTP服务 (14)4.3.1.架构图 (14)4.3.2.开源框架 (14)4.4.SNMP服务 (14)4.4.1.开源框架 (14)4.4.2.可提供查询信息 (14)4.4.3.SNMP Trap通知(优先级:低) (14)5.接口设计 (15)5.1.用户界面 (15)5.1.1.用户管理 (15)5.1.2.系统管理 (15)5.1.3.数据交换相关配置和管理 (16)5.1.4.服务配置 (17)5.1.5.网络配置 (17)5.1.6.日志相关 (17)5.2.通信协议 (18)5.2.1.内交换服务和外交换服务数据通信协议 (18)6.运行环境 (19)6.1.硬件平台 (19)6.2.软件平台 (19)7.系统开发维护技术 (20)7.1.可维护性设计 (20)7.2.可移植性设计 (20)1.引言1.1. 背景公安信息通信网是覆盖全国各级公安机关内部信息传输的专用网络,是日常公安工作的重要基础设施。
但是随着公安信息化的深入开展,公安工作对于公安信息通信网上信息的完整性、及时性和准确性的需求非常迫切,所以通过公安信息通信网更广泛的采集社会信息,同时向党政军机关及有关单位提供公安信息资源和服务已逐渐成为公安信息化发展的必然趋势。
这将会给公安信息通信网带来其他网络的攻击、入侵、病毒等给类型的安全威胁。
因此如何既保证公安机关与外部开展正常业务信息共享的同时,又保证整体共按信息通信网的安全,是公安信息化开展工作中急需解决的问题。
为了解决公安信息通信网与外单位业务信息共享中的安全问题,除了搭建可信的安全边界接入平台之外,稳定而高效的数据交换系统也是整个解决方案中的一个重要组成部分。
目前,相当一部分客户在使用Fable数据交换v2.0系统,而2.0版本的由于在需求、人员、开发周期等情况中存在一些冲突或者妥协,使得数据交换2.0在客户的实际使用环境中,存在着不少的迫切需要改善或解决的问题,数据交换v3.0将作为2.0的后续版本能彻底解决这些问题,提高客户的工作效率。
1.2. 术语和缩写词外数据交换服务器:数据交换的组成部分,通常与低密级网络环境连接。
内数据交换服务器:数据交换的组成部分,通常与高密级网络环境连接。
同构数据表:数据表结构相同,包括数据表名、表字段数目、字段名、字段长度等,完全相同。
异构数据表:数据表结构可能不完全相同,但是必须包含一部分内容能被转换的字段,数据交换通过用户配置的字段映射,进行表数据交换。
外交换网络:位于外数据交换服务器一侧的网络,与外交换系统连接,通常属于低密级网络环境。
内交换网络:位于内数据交换服务器一侧的网络,与内交换系统连接,通常属于高密级网络环境。
前置服务器:部署在外交换网络环境中的任意数据服务器,可以作为数据交换源或者数据交换目的,通常置于低密级网络环境中,简称为前置机。
后置服务器:部署在内交换网络环境中的任意数据服务器,可以作为数据交换源或者数据交换目的,通常置于高密级网络环境中,简称为后置机。
FTP:File Transfer Protocol,文件传输协议。
用户可在前/后置服务器上搭建FTP服务器,通过数据交换系统进行文件交换。
SMB:Server Message Block,信息服务块。
用户可在前/后置服务器上创建支持SMB协议文件共享目录,通过数据交换系统进行文件交换。
数据库触发器:数据库在数据表被操作时执行预编写的相关程序。
数据交换系统通过创建相关触发器保留数据表的插入、修改和删除等信息。
交换实体(Exchange Entity):数据交换发生时,监控或者读取的资源配置信息,或者写入的资源配置信息。
通常需配置资源所在的服务器IP地址,连接端口,用户名和密码等信息,可以位于前置机或者后置机,可以包含数据表相关信息、文件目录信息或者其它信息。
数据交换系统的主要目的就是通过监控交换实体,实现前/后置机上的资源同步或者共享。
任务(Task):用户所需执行的数据交换行为被称作任务,1个任务通常关联至少2个交换实体。
任务由用户配置产生,而数据交换系统根据用户指定的调度策略在特定时间执行任务,实现不同交换实体包含的资源同步或者共享。
1.3. 参考资料数据交换产品需求文档2.系统需求2.1. 总体描述通过部署数据交换系统,安全的实现外单位网络和公安信息通信网间的数据同步、业务通讯。
2.2. 功能2.2.1.数据同步和交换2.2.1.1. 数据库数据同步同构数据表同步。
异构数据表同步。
支持常用数据库,至少支持Oracle、MySQL、SQLServer和达梦数据库。
支持多种同步方式,包括触发器同步、时间戳同步、日志解析同步。
支持对同步数据的清洗、过滤、转换。
支持对同步数据的安全性检测。
2.2.1.2. 文件同步支持同步FTP服务器目录下的递归子目录和文件。
支持同步以SMB协议共享的目录下的递归子目录和文件。
支持FTP服务器目录与SMB协议共享的目录的交叉同步(优先级:低)。
2.2.1.3. 文件与数据库数据转换(优先级:低)支持XML文件与数据表的相互转换。
支持CSV格式的文件与数据表的相互转换。
2.2.1.4. 应用程序或服务通讯代理支持外交换网络通过数据交换系统直接访问内交换网络的WEB服务。
支持内外交换网络应用程序以TCP协议通讯。
支持内外交换网络应用程序以UDP协议通讯。
2.2.2.本地FTP服务数据交换系统内置FTP服务功能,支持用户启动或者停止。
用户可以通过控制台在数据交换前/后置服务器上创建FTP目录。
内/外交换网络用户能分别通过FTP客户端在FTP目录上传或者下载文件。
前/后置服务器FTP目录完全对称,任何一边发生变更,及时同步到另一边,对内/外网络用户来说是完全透明的。
2.2.3.本地SNMP服务2.2.3.1. SNMP Agent用户通过SNMP客户端可获取数据交换系统信息。
用户通过SNMP客户端客获取数据交换任务的统计信息。
2.2.3.2. 发送SNMP Trap数据交换系统向SNMP Trap服务器发送启动、停止或故障通知。
数据交换系统向SNMP Trap服务器发送数据交换任务的调度通知。
2.2.4.1. 用户操作日志记录用户管理日志。
记录系统管理日志。
记录数据交换体配置日志。
记录数据交换任务配置日志。
记录系统升级或者回溯日志。
2.2.4.2. 数据交换服务日志记录数据交换任务调度日志。
记录数据交换任务结果日志。
记录数据交换任务异常日志。
2.2.4.3. 日志输出支持以标准SysLog格式的方式将上述日志输出到配置的日志服务器(内交换网络)。
2.3. 性能稳定运行时间:>100000小时。
数据库到数据库交换数≥2000条/秒。
FTP文件吞吐量≥600Mbps。
数据文件处理文件数(>100Kb/记录)≥2000个/秒。
最大数据文件≥30G。
最大日志存储时间≥180天。
最大并发连接数≥10000条。
病毒库及时更新。
系统需通过漏洞工具检测,高危漏洞为0。
3.总体架构设计3.1. 系统部署公安应用系统前置服务器群服务器群3.2. 系统组件结构3.3. 系统总体架构后置服务器SNMP 代理4.子系统设计4.1. 数据交换WEB应用4.1.1.架构图4.1.2.设计要求程序使用Struts2 + Spring + Hibernate作为代码框架。
所有界面中出现的字串、描述或者消息必须置于Properties文件中,不允许以Hard-code的方式出现在任何代码(包括java、JSP、HTML、JS或者XML文件,图片除外)中。
JSP文件中不允许出现任何java 代码,请用ONGL或者Struts Tag以XML格式获取Domain Object信息。
4.2. 数据交换服务4.2.1.架构图外数据交换服务器内数据交换服务器4.2.2.流程图4.3. 本地FTP 服务 4.3.1. 架构图外数据交换服务器内数据交换服务器内交换网络用户或应用外交换网络用户或应用外交换FTP 服务内交换FTP 服务4.3.2. 开源框架Apache FtpServer ,/ftpserver-project/index.html 。
4.4. SNMP 服务 4.4.1. 开源框架SNMP4J ,/。
4.4.2. 可提供查询信息操作系统信息。
数据交换系统信息。
当前CPU 使用状况。
当前内存使用状况。
当前硬盘使用状况。
数据交换任务统计信息。
数据库状态信息。
4.4.3. SNMP Trap 通知 (优先级:低)服务器启动、关闭通知。
数据交换服务启动、停止通知。
数据交换WEB服务启动、停止通知。
服务器IP地址变更通知。
本地FTP服务启动、停止通知。
数据交换任务异常通知。
硬盘报警通知。
本地数据库异常通知。
数据交换体访问异常通知5.接口设计5.1. 用户界面5.1.1.用户管理创建、修改、删除用户。
用户信息包括用户名、密码、权限配置。
5.1.2.系统管理5.1.2.1. 系统控制关机、重新启动。
重启系统服务。
开启/关闭SSH服务。
5.1.2.2. 系统维护恢复出厂设置。
系统升级。
病毒库升级。
5.1.2.3. 注册5.1.3.数据交换相关配置和管理5.1.3.1. 交换实体管理数据交换实体的创建、修改、删除和连接测试。
数据交换实体信息包括交换实体名称、类型、描述和具体信息。
数据交换实体类型包括数据表、FTP目录、SMB共享目录。
数据表信息包括数据库类型、连接URL、用户名、密码。
FTP目录信息包括根目录全路径、用户名、密码。
SMB共享目录信息包括根目录全路径、用户名、密码。
5.1.3.2. 交换任务管理交换任务的创建、修改和删除。
交换任务信息包括任务名称、描述、源交换实体、端交换实体(可以多个)。
5.1.3.3. 任务调度启动、暂停、停止。
任务调度方式包括立刻运行一次、延时运行一次、立刻周期运行、延时后周期运行、周期固定时间点运行。