当前位置:文档之家› 电信计费项目需求

电信计费项目需求

中国电信技术有限公司电信网络实验室租赁管理系统————————————————————需求说明书中国电信技术有限公司2010/4/10目录前言随着Internet的发展,办公计算机化和网络的应用迅速成为一种趋势. 越来越多的公司在研发新产品时候需要用到服务器,但是服务器造价昂贵,一些公司若仅仅为了一个项目去购买,从控制成本的角度讲这样的作法不够经济,性价比太低。

所以就出现了大公司有偿将自己的网络实验室租赁给其他公司使用。

中国电信网络实验室有很多处于闲置状态的设备,资源不能得到充分的利用,恰逢租赁行业蓬勃发展,于是中国电信网络实验室开展了服务器租赁业务,租赁计费系统应运而生.中国神通软件技术有限公司为中国电信的网络实验室租赁的项目制作了一套软件,这套软件用来记录其它公司对中国电信网络实验室的使用情况,并按照使用情况进行计费。

第一章总体概述设计目的用户可远程登陆电信实验室租赁管理系统,使用实验室服务器,该系统根据用户的使用情况进行计时收费。

业务流程1)用户携带相关证件到电信营业厅填写个人信息申请注册实验室租赁项目账户,并获得登陆密码;2)用户联网进入电信实验室租赁管理系统登陆页面,利用登陆账号和密码登陆系统;3)选择使用的套餐服务,进行账号充值;4)远程登陆使用实验室服务器设备;5)退出使用,系统将根据计时信息扣除使用费用;6)退出电信租赁管理系统。

系统设计该系统的主要设计模块包括:采集模块:对用户的使用信息进行定期数据采集。

分为子服务器、中央服务器。

子服务器解析计费信息并发送至中央服务器,中央服务器接受数据并插入数据库中由整合模块对数据进行整合处理。

整合模块:将采集模块发送的数据信息整合生成所有用户计费数据日表t_day_X、月表t_month_X、年表t_year_X。

Web模块实现用户管理、用户自管理、管理员管理、账单管理、账务管理、资费管理。

总体模块设计系统硬件组成管理系统部分:Database Server、NetCTOSS Server、WEB Server;业务系统部分:交换机、路由器、SUN主机。

系统架构系统架构图1. 6 模块关联信息采集系统和Web统计系统均采用JAVA数据库连接(JDBC)方式实现与整合系统的数据传送,其关联信息图如下:项目时间分配综合人力资源,时间等各方面的因素,对该项目的实施进行如下分配:总体用时20天:第1天:采集系统、整合系统、Web统计系统项目分析;第2—6天:采集系统的开发,人力资源分配4人;第7天:单元测试,人力资源分配2人;第8—10天:整合系统的开发,人力资源分配4人;第11—17天:Web统计系统开发,人力资源分配8人;第18—20天:系统测试,人力资源分配4人。

第二章采集系统采集系统概述采集系统需要记录用户使用服务器的原始数据并依据原始数据核算费用。

电信采集系统的计费系统的功能是由两部分组成,一部分是记录用户使用各服务的原始数据;另一部分是根据原始数据核算每服务每次每用户的费用,而对于用户费用的汇总统计是由整合系统的财务模块完成的。

用户使用某些服务项目的原始数据是从各服务管理子系统传过来的,直接在当地电信的计费系统直接产生的,最后在中央计费系统上进行汇总核对.采集系统之所以要保存各服务使用情况的原始数据记录是为了减少或避免因单方面记账而可能出现的人为造假行为;方便用户通过采集系统进行费用查询;在原始记录的基础上进行更深入的统计分析等。

采集系统在计算每服务每次每用户的费用时,需要了解用户的登陆和退出信息,这就要求计费系统可以自动获取某一用户使用服务器的相关信息,从而方便采集系统计费采集系统功能定义定期采集(次/小时)原始计费Log(wtmpx)文件,整理成BIDR类数据清单,并上传给中央处理系统.由位于中央处理系统的采集系统服务器端侦听并收集采集系统客户端发送的数据信息BIDR,并将数据保存至数据库表t_detail_X中采集流程该系统要求中国电信各个营业厅的AAA服务器中采集到的/var/adm/wtmpx 目录下面的数据信息进行解析后每隔一小时向总服务器(中央处理器)发送一次中央处理器将接收到的信息插入到数据库。

数据库对总服务器(中央处理器)的数据信息进行分载处理,先把详细的信息存放在T_Detail_x中,然后由整合系统进行负载分摊采集系统模块划分及模块位置分配采集系统各个模块之间要遵循:"高内聚,低耦合"的原则.单个模块完成单一的功能,移植性较好;各个模块之间依赖性较小采集子系统是基于C/S架构的客户端服务器模式,用户必须要先登录才能进行计费;中央处理器系统接收多个AAA服务器发送的BIDR数据信息,因此要有处理并发事物,进行并发控制的功能,其模块划分如下:采集子系统采集子系统分为配置模块、日志模块、采集模块、备份模块、网络模块和入库模块五大模块配置模块实例化其他模块,降低模块之间的耦合性,通过配置文件配置多个模块之间关系,使各个模块遵循高内聚,低耦合日志模块将系统运行过程信息记入日志文件,以备查验;即记录用户的登陆和退出记录.日志文件不是纯文本文件采集模块采集模块是AAA服务器端的核心模块,其主要功能是采集原始计费信息,整理成BIDR数据类清单.在设计过程中的遇到的问题及解决方法(1)账号设置问题(2)怎么样解析及形成计费文件(3)用户的识别问题(4)对于wtmpx内用户信息文件的读取问题(5)用户上下线时间可能交叉,一次登录可能跨时间段,针对不同情况该如何计费。

问题解决(1)区分账号,设计账务账号和业务账号,账务账号的作用是用于缴费,一个账务账号可以携带多个业务账号,业务账号是用于远程连接到AAA服务器上,用来使用服务器的,如果有多个组,每个组可以分配一个业务账号,这个组的每个成员可以同时登陆一个业务账号,进行多人登陆访问。

此时计费按各个PC机的使用时间收费,将进行多次收费,因为多人同时在使用服务器.(2)在对wtmpx进行解析时,找到用户的上线标志7,并匹配下线标志8.在上下线交叉时只取首7和最末尾的一个8.当跨时区时,可以人为的在每次传送时制造下线标志8和一个上线标志7即可。

Wtmpx 每隔一个小时进行一次解析,跨时段的用户(即使用时间超过一个小时)的计费解决方法:在时间交叉点(可以人为设置某个点为自动设置时间点)可以人为自动的设置一个上线和下线记录,生成计费信息(3) 针对多个人在使用同一个账号时的收费,因为用户名相同,若按照用户名收费,将会出现混乱;因此收费识别:用户名+IP地址,进行唯一识别(4) 为防止漏记或重复计费的问题,以一个小时为一时间段,每小时对文件进行一次读取操作,读取到哪个位置做一次标记,下次读取时从该标记处开始。

(5) 某个用户某段时间内多次登陆同一个服务器时,wtmpx文件中用户的登陆和退出记录交叉进行的计费标准:取最长的时差(以用户首次登录记录为基准,设置一个计数器,查询记录遇”7”加1,遇”8”-1,,直到计数器为0,到最后一次退出记录)计费Log文件:/var/adm/wtmpx,不是纯文本文件,因此采集系统将调用/usr/local/bin/lwtmpx分析小程序,把/var/adm/wtmpx分析成JAVA能识别的文件;$lwtmpx默认把/var/adm/wtmpx文件分析结果输出到当前目录wtmpx文件中,文件格式不变,如果wtmpx文件已经存在,覆盖,如果不存在,自动生成备份模块在网络或者数据库发生异常的情况下将本次采集或接收到的BIDR数据清单持久存储;在下次传输时,取出上次持久存储的BIDR数据清单,进行重新传送至中央处理器网络模块将采集系统客户端采集形成的BIDR数据清单传送给位于中心处理系统的服务器端;调用入库模块插入数据采集系统的定时调用和项目分配(1)采用sleep函数或者alarm函数,定时调用;采用系统调用crontab();(2)采集系统项目分配图中央处理器系统中央处理器系统包括配置模块、日志模块、入库模块、备份模块、网络模块;当多个子服务器同时向中央处理器发送接收请求时,中央处理器就要有处理并发事物的能力,保证系统正常运行配置模块实例化其他模块,降低模块之间的耦合性,通过配置文件配置多个模块之间关系,使各个模块遵循高内聚,低耦合日志模块将系统运行过程信息记入日志文件,以备查验;中央处理器从各个子服务器接受数据信息的记录入库模块将从子服务器接收到的数据放入数据库表t_detail_x中备份模块在网络或者数据库发生异常的情况下将本次采集或接收到的数据清单持久存储;在下次传输时,取出上次持久存储的数据清单,进行重新插入到数据库表t_detail_x中网络模块将采集系统中心处理系统接收到的数据清单送给位于数据库服务器系统的数据库表t_detail_x;调用入库模块插入数据第三章整合系统整合系统的内容采集系统根据计费日志文件中用户的上下线记录,配成了计费信息,并通过中央处理系统写入了数据库表中。

而这些在数据库中的记录有很多条,如果都写入一个表中,数据量势必过大,用户想要查询自己的信息或者管理员要管理这些记录都会很麻烦。

所以,需要对这些记录进行整合。

整合系统就是把这些信息进行负载分摊:整合系统要实现的具体功能用户要查询自己一段时间内的消费账单,而各个子实验室的账务也要传到总实验室进行汇总。

所以整合系统主要包括二个模块:账单模块和账务模块。

各模块又按小时合并清单表t_detail_x生成日表、按天合并日表生成月表、按月合并月表生成年表,便于用户查询账单、电信公司管理账务,提高效率。

账单模块的实现按小时合并清单表t_detail_x生成所有用户计费数据日表t_day_x;按天合并日表t_day_x生成所有用户计费数据月表t_month_x;按月合并月表t_month_x生成所有用户计费数据年表t_year_x;图示为:账单模块的实现流程账单模块中数据库表的建立不管是日表、月表、还是年表都要包含登录用户名、用户ip、用户下线时间、所登陆服务器的ip、在线时间。

账务模块的实现各个子实验室的记录要统计到总实验室,就要把清单中的lab_ip按照小时、天、月合并。

所以:按小时合并清单表t_detail_x生成所有lab_ip数据日表t_day;按天合并日表t_day生成所有lab_ip数据月表t_month;按月合并月表t_month生成所有lab_ip数据年表t_year;图示为账务模块的实现账务模块中数据库表的建立因为是汇总各个子实验室用户使用情况,所以账务模块的各个表中可以只包含用户下线时间、所登陆服务器的ip、在线时间三部分。

第四章 Web统计系统用户管理系统用户管理的需求: 1)用户开通管理:管理用户登录AAA服务器的帐号,包括帐号开通、暂停、恢复、删除。

相关主题