面向服务的协议仿真系统的设计方法及系统的制作方法

文档序号:7688885阅读:91来源:国知局
专利名称:面向服务的协议仿真系统的设计方法及系统的制作方法
技术领域
本发明涉及通信领域协议仿真系统的设计方法及系统,特别涉及一种基于 面向服务的协议仿真系统的设计方法及系统。
技术背景随着通信行业的发展,协议仿真技术越来越受到业界的重视。所谓协议仿 真是指根据通信协议测试的需要,采用仿真技术设计、构建的一个仿真通信设 备系统(简称为协议仿真系统),该协议仿真系统可以仿真现实通信中的硬件设 备系统,也可以仿真现实通信中的软件设备系统,或者是两者的组合。然后, 根据某具体协议构造符合协议规范的数据,使用前述协议仿真系统处理这些数 据,由此对协议仿真系统的处理能力进行测试。由于协议仿真系统是完全模拟 现实通信设备系统的,因此,其测试结果对现实通信设备系统有着重要的指导 意义,也对根据某具体协议构造符合协议规范的数据有着重要的指导意义。并 且,这些构造出来的数据,可以是一些现有网络上出现频率很低的特殊数据, 或者是一些非法数据,通过对这些数据的分析,既能够对通信设备的性能迸行 深度测试,又可避免进行现实网络测试的复杂性和危险性。现有技术设计、构建协议仿真系统的方法主要有二种, 一种是面向过程的 方法,该方法首先分析出解决问题所需要的步骤,然后用函数把这些歩骤一步 一步实现,使用的时候一个一个依次调用就可以了。这种方法最大的缺点是灵 活性太差、耦合性较强,完成相同的工作量系统资源的耗费较大。另 -种是面 向对象的方法,该方法通过封装、继承和多态三种具有特色的数据操作方式, 有效的提高了代码重用率和程序效率。然而,采用面向对象的协议仿真系统, 当用户需求发生变化,或者是协议仿真系统需要升级时,由于该系统采用函数调用各个功能模块,完成一次操作需要频繁调用多个函数功能模块,并且,由 于新加入的功能和原有功能存在较强的耦合性,容易导致系统运行异常,严重 的会导致系统无法继续使用。显然,不论是面向过程的协议仿真方法,还是面向对象的协议仿真方法都 存在着这样或那样的不足,影响着通讯技术的发展。发明内容为解决通讯领域现有协议仿真技术存在的灵活性较差、资源耗费严重和耦 合性较强等问题,本发明提出一种面向服务的协议仿真系统的设计方法及系统。 本发明面向服务的协议仿真系统的设计方法将服务模块与主控模块分离设计和 放置,在主控模块和服务模块之间采用通信原语进行通信,使得用户的服务需 求发生变化时,或者主控系统升级时都不会影响到协议仿真系统的正常运行, 只需增加服务模块即可。采用本发明面向服务协议仿真系统设计方法的设计的 协议仿真系统,可以较大限度的利用各种资源,并具有较强的灵活性。本发明面向服务的协议仿真系统的设计方法将服务模块与主控模块的功能 分离设计;在主控模块和服务模块之间,或者在不同的服务模块之间采用通信 原语进行信息交流;服务模块和主控模块在空间位置上可以集成放置,也可以分离放置。本发明面向服务的协议仿真系统的设计方法将服务模块与主控模块的功能 分离设计,包括将服务模块设计为具有各种协议测试功能的模块,将主控模块 设计为根据用户服务需求搜索、调用相应的服务模块进行协议测试并向用户报 告测试结果的模块。本发明面向服务的协议仿真系统的设计方法在主控模块和服务模块之间,或者在不同的服务模块之间采用通信原语进行信息交流,包括 1、发送服务接口语法结构为Send消息名称[,参数l[,参数2…]],延迟时长其中消息名称指需要发送的消息;参数l,参数2……可选,与具体消息有关;延迟时长指经过多长时间后发送消息;服务结果TRUE,表示服务被正 确地执行并返回;FALSE,表示服务执行有误;2、 接收服务接口语法结构为Receive 消息名称/状态码,超时时长其中消息名称/状态码指想要接收的消息或状态码;超时时长指在多长时 间内没有接收到上述信息判为超时;服务结果TRUE表示服务被正确地执行并 返回;FALSE表示服务执行有误;T頂EOUT表示服务在超时时长内没有接收到想 要得到的信息;3、 等待服务接口语法结构为 Sleep 等待时长其中等待时长指需要等待的时间;服务结果无。本发明面向服务的协议仿真系统的设计方法,服务模块和主控模块在空间位置上可以集成放置,也可以分离放置,包括可以将服务模块和主控模块设计为集成为一体的协议仿真系统,也可以将服务模块和主控模块在空间位置上 分离放置,相互间通过网络连接。本发明面向服务的协议仿真系统设计方法设计的协议仿真系统,包括一 个或一个以上的服务模块、 一个或一个以上的服务终端、 一个主控模块和一条 仿真服务总线,其中主控模块用于接收用户通过服务终端提出的测试请求及测试数据,查找 并调用相应的服务模块,控制服务模块进行协议仿真测试,向服务终端报告测 试结果;服务终端用于用户发起服务请求,接收协议仿真测试结果; 服务模块用于对协议数据进行测试并给出测试结果;仿真服务总线用于统一服务接口,在主控模块、服务终端和服务模块之 间进行数据传输。


图1是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系统 的结构示意图;图2是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系统 进行协议仿真服务的流程图;图3是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系统 SIP协议注册实施例的流程示意图;图4是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系统 SIP协议注册实施例的控制台终端模式示意图;图5是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系统 SIP协议注册实施例的脚本终端模式示意图。下面结合附图和具体实施例对本发明面向服务的协议仿真系统设计方法及 系统作进一歩的说明。附图1是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系 统的结构示意图。图中,1012表示以主控模块为主组成的主控系统,102表不 服务终端,103表示进行协议仿真测试的用户,104表示仿真服务总线,105、 106分别表示服务模块1、服务模块2……。由图可知,本发明设计方法将服务 模块和主控模块分离设计,服务模块具有各种协议测试功能,主控模块能够根 据用户的服务需求搜索、调用相应的服务模块进行协议测试并向用户报告测试 结果。显然,随着协议测试功能的增加,服务模块可以不止一个。在服务模块 和主控模块之间采用通信原语进行信息交流,实现了协议仿真系统协议仿真测 试和协议仿真测试服务提供两者之间在某程度上的"隔离"。也正由于这种"隔 离"的存在,使得用户服务需求发生变化时,只需要对服务模块进行更新,而 主控模块不需要做任何变动,通过添加通信原语,即可让服务请求方请求新业 务。反之,如果协议仿真系统进行升级,不论是服务模块的更新,还是主控模 块的更新,都不会影响其他模块的正常运行。本发明协议仿真系统设计方法所 有协议仿真测试功能的实现都是依赖于服务模块,换句话说,本发明协议仿真系统设计方法是以服务模块为核心的,因此,将本发明协议仿真系统设计方法 及系统称之为"面向服务的协议仿真系统设计方法及系统"。另外,由于服务模块和主控模块在功能上的分离,使得服务模块和主控模 块在空间分布上也可以分离,相互间通过互联网连接。这样,以主控模块为主 构成的主控系统可以在北京,而具有各种协议仿真测试功能的服务模块可以分 布全国各地,当主控系统接收到用户的请求时,主控模块根据用户的服务需求 通过互联网搜索、调用相应的服务模块进行协议仿真测试,并将测试结构向用 户报告。采用本发明协议仿真系统设计方法设计的协议仿真系统能够较大限度 的整合资源,并具有较强的灵活性。显然,采用本发明协议仿真系统设计方法设计的协议仿真系统服务模块和 主控模块之间,或者在不同的服务模块之间的信息交流是十分重要的。本发明 协议仿真系统设计方法采用通信原语实现主控模块和服务模块之间,或者在不 同的服务模块之间的信息交流,其目的就在于通过定义良好的接口或契约使服 务模块和主控模块之间,或者不同的服务模块之间能够有效联系起来,使得整 个协议仿真系统可以以一种统一、通用的方式进行信息交流。本发明面向服务的协议仿真系统设计方法及系统所采用的典型的通信原语 包括1、 发送服务接口语法结构为Send消息名称[,参数l [,参数2…]],延迟时长其中消息名称指需要发送的消息;参数l,参数2……可选,与具体消息有关;延迟时长指经过多长时间后发送消息;服务结果TRUE,表示服务被正确地执行并返回;FALSE,表示服务执行有误;2、 接收服务接口语法结构为 Receive 消息名称/状态码,超时时长其中消息名称/状态码指想要接收的消息或状态码;超时时长指在多长时 间内没有接收到上述信息判为超时;服务结果TRUE表示服务被正确地执行并返回;FALSE表示服务执行有误;TIMEOUT表示服务在超时时长内没有接收到想要得到的信息-,3、等待服务接口语法结构为Sleep 等待时长其中等待时长指需要等待的时间;服务结果无。由附图1可知,采用本发明面向服务的协议仿真系统设计方法设计的协议 仿真系统包括 一个或一个以上的服务模块、 一个或一个以上的服务终端、一 个主控模块和一条仿真服务总线。其中主控模块用于接收用户通过服务终端提出的测试请求及测试数据,搜索 并调用相应的服务模块,控制服务模块进行协议仿真测试,向服务终端报告测 试结果;服务终端用于用户发起服务请求,接收协议仿真测试结果,-服务模块用于对协议数据进行测试并给出测试结果;仿真服务总线用于统一服务接口,在主控模块、服务终端和服务模块之 间进行数据传输。附图2是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系 统进行协议仿真测试的流程图。由图可知,协议仿真测试的主要步骤包括 步骤201服务终端向主控系统提出进行协议仿真测试的请求; 步骤202主控系统接收服务终端发送的服务请求,并根据是否能够满足其测试请求判断是否是终止服务请求,是则执行步骤206,否则执行步骤203; 步骤203主控系统搜索并调用相应的服务模块; 步骤204服务模块进行协议仿真测试并回报测试结果; 步骤205主控系统向服务终端报告测试结果; 步骤206主控系统清除相关设施,协议仿真测试结束。由此可见,采用本方明协议仿真系统设计方法设计的协议仿真系统在进行 协议仿真测试时,服务终端通过仿真服务总线采用"发送"、"接收"和"等待"等服务原语向协议仿真系统提出协议测试请求,主控模块根据其请求判断系统 是否能够满足该服务请求,能够满足就搜索、调用相应的服务模块进行协议仿 真测试,并向服务终端报告协议仿真测试结果。显然,该系统降低了各种模块 之间的耦合度,整合了各方资源,提高了系统响应用户需求变更的灵活度,从 而降低了开发成本,也提高了效率。附图3是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系 统初始会话协议(简称为SIP)注册实施例的流程示意图。根据行业标准,任何SIP设备(即终端代理A)接通电源后,需要向管理这个设备的软交换服务器进 行注册才能进行正常的发起呼叫或接收呼叫,此过程即称为SIP设备注册过程。在此过程中需要经过以下主要步骤S701终端代理A向软交换服务器发送注册信息REGISTER;S702软交换服务器回应401,表示终端代理A没有合法注册,要求重新注 册,并且要求用信息-摘要算法(简称为MD5算法)做验证;S703,终端代理A收到需要验证的回应后,在注册消息中填充验证序列, 重发注册消息REGISTER;S704,软交换服务器经过验证,允许终端代理A注册,发送200K消息。对于上述SIP设备注册过程,采用本发明协议仿真系统设计方法设计的协 议仿真系统可以采用控制台,脚本和模拟终端等多种服务终端模式提供协议仿 真测试服务。附图4是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系 统SIP协议注册实施例的控制台终端模式示意图。图中后面的数字代表 行号,"$"后面的内容为用户输入,"〉"后面的内容为控制台输出。下面逐行 对该模式下协议仿真系统的操作细节进行介绍第1行,用户输入"init",向主控系统请求建立一个SIP协议注册协议仿 真测试的服务请求;第2行,主控系统创建并初始化,控制台输出相应提示信息;第3行,用户使用"Send"标准服务接口,发送注册消息及参数。"Register" 为消息名称;"100"为用户名,"123"为用户密码,"192.168.0.1"为软交换 服务器IP地址,"5060"为软交换服务器端口号,"5"为延迟时长,表示5秒 后发送Register消息;
第4行,由于是该用户第一次注册,服务器返回未授权信息,控制台输出 相应提示信息;
第5行,服务模块自动重发注册消息;
第6行,用户使用"Receive"标准服务接口,希望在10秒内接收到状态 码200, "200"为注册请求被软交换服务器成功响应返回的状态码,"10"为超 时时长;
第7行,标准服务接口返回服务被正确执行,控制台输出服务结果和提小 信息;
第8行,用户决定终止仿真实例,发送"quit"命令;
第9行,仿真实例终止,主控系统清理相关设施,控制台输出提示信息, 协议流程仿真执行完毕。
附图5是采用本发明面向服务的协议仿真系统设计方法设计的协议仿真系 统SIP协议注册实施例的脚本终端模式示意图。图中给出的是用实用摘录和报 告语言(Practical Extraction and R印ort Language,缩写PERL)实现的SIP 协议注册流程脚本。PERL的语法同C语言非常相似,PERL共有三种数据类型 标量、数组和哈希,他们分别由$、 @、和%引导。标量,它是--种简单的数据类 型,用于存放一个数据;数组和哈希是标量的集合,可以根据需要存放任意多 个标量。图中后面的数字代表行号,其余部分为脚本内容。下面对该脚 本的具体含义进行简单的介绍
第1-5行声明变量并初始化,其中,$proxyIP为软交换服务器IP地址, $proxyPort为服务器端口, $caller和纟pwd分别为用户名和密码,$ret为返回 值,它们都是标量;第7行调用标准服务接口 "Send",发送"init"命令,请求主控系统建立 一个SIP协议注册协议仿真测试的服务请求;第9行调用标准服务接口 "Send",发送"register"消息,包含该消息的 必要参数和延迟时长;第10行调用标准服务接口 "Receive",接收注册成功的状态"200",超时 时长设定为10秒。使用变量Sret接收返回值;第13-18行根据返回值Sret输出不同的提示信息;第20行调用标准服务接口 "Send",发送"quit",请求终止仿真实例; 第22行脚本返回。具体操作时,服务终端自动调用脚本引擎驱动脚本程序执行,用户通过输 出窗口查看流程执行状况。用户可以自行编写协议流程仿真脚本,也可以从采 用导入的方式引入协议流程仿真脚本。
权利要求
1、一种协议仿真系统的设计方法,其特征在于将服务模块与主控模块的功能分离设计;在主控模块和服务模块之间,或者在不同的服务模块之间采用通信原语进行信息交流;服务模块和主控模块在空间位置上可以集成放置,也可以分离放置。
2、 根据权利要求1所述协议仿真系统的设计方法,其特征在于将服务模块与 主控模块的功能分离设计,包括将服务模块设计为具有各种协议测试功能的 模块,将主控模块设计为根据用户服务需求搜索、调用相应的服务模块进行协 议测试并向用户报告测试结果的模块。
3、 根据权利要求l所述协议仿真系统的设计方法,其特征在于在主控模块和 服务模块之间,或者在不同的服务模块之间采用通信原语进行信息交流,包括:(1) 发送服务接口语法结构为Send消息名称[,参数l[,参数2…]],延迟时长其中消息名称指需要发送的消息;参数l,参数2……可选,与具体消息有关;延迟时长指经过多长时间后发送消息;服务结果TRUE,表示服务被正确地执行并返回;FALSE,表示服务执行有误;(2) 接收服务接口语法结构为 Receive消息名称/状态码,超时时长其中消息名称/状态码指想要接收的消息或状态码;超时时长指在多长时 间内没有接收到上述信息判为超时;服务结果TRUE表示服务被正确地执行并 返回;FALSE表示服务执行有误;TIMEOUT表示服务在超时时长内没有接收到想 要得到的信息;(3) 等待服务接口语法结构为 Sle印等待时长其中等待时长指需要等待的时间;服务结果无。
4、 根据权利要求1所述协议仿真系统的设计方法,其特征在于服务模块和主控模块在空间位置上可以集成放置,也可以分离放置,包括可以将服务模块 和主控模块设计为集成为一体的协议仿真系统,也可以将服务模块和主控模块 在空间位置上分离放置,相互间通过网络连接。
5. 一种采用权利要求l所述协议仿真系统设计方法设计的协议仿真系统,其特 征在于该协议仿真系统包括 一个或一个以上的服务模块、 一个或一个以上 的服务终端、 一个主控模块和一条仿真服务总线,其中主控模块用于接收用户通过服务终端提出的测试请求及测试数据,查找 并调用相应的服务模块,控制服务模块进行协议仿真测试,向服务终端报告测 试结果;服务终端用于用户发起服务请求,接收协议仿真测试结果; 服务模块用于对协议数据进行测试并给出测试结果;仿真服务总线用于统一服务接口,在主控模块、服务终端和服务模块之 间进行数据传输。
全文摘要
为解决通讯领域现有协议仿真技术存在的灵活性较差、资源耗费严重和耦合性较强等问题,本发明提出一种面向服务的协议仿真系统的设计方法及系统。本发明面向服务的协议仿真系统的设计方法将服务模块与主控模块分离设计和放置,在主控模块和服务模块之间采用通信原语进行通信,使得用户的服务需求发生变化时,或者主控系统升级时都不会影响到协议仿真系统的正常运行,只需增加服务模块即可。采用本发明面向服务协议仿真系统设计方法的设计的协议仿真系统,可以较大限度的利用各种资源,并具有较强的灵活性。
文档编号H04L12/26GK101222385SQ200810069258
公开日2008年7月16日 申请日期2008年1月18日 优先权日2008年1月18日
发明者刘小锐, 刘晓东, 舒忠玲, 雒江涛 申请人:重庆重邮东电通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1