- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种多协议模拟器的设计与实现
一种多协议模拟器的设计与实现
摘 要:目前,很多网络工具在遇到新的网络协议出现的时候,很难将新的协议快速集成到现有的网络工具中,从而给用户造成很多使用上的不方便。本文设计的一种网络协议模拟器PRT-GET可以很好的解决上述问题,PRT-GET按照自定义的协议工作说明书工作,它可以方便的把新协议加入到PRT-GET中,从而方便用户使用新的网络协议来完成通信工作。
关键词:网络协议 动态链接库 协议工作说明书
一、引言
PRT-GET定义为一个协议模拟器,所谓协议模拟器就是通过某种途径模拟各式各样的网络通信协议从而可以进行具体而实际的网络通信,最终达到同时支持多种通信协议的目的。PRT-GET不同于现今网上存在的各种网络工具,使用它可以编写基本上所有的基于Socket应用层的通信协议,PRT-GET的设计解决了用户使用网络工具时难以支持新出现的协议的问题。
二、PRT-GET的特点
作为一个优秀的协议模拟器,PRT-GET具备以下的几个特点:
1.PRT-GET是一个动态链接库。考虑到应用程序的扩展极其的不方便,所以没有把PRT-GET设计成应用程序的形式,而采用动态链接库的方式,该方式可以方便地进行二次开发,也方便扩展软件的功能。
2.PRT-GET是完全面向对象的。PRT-GET是一个可二次开发的动态链接库,所以面向对象的设计模式能令二次开发更加高效。
3.PRT-GET的代码扩展性高。使用PRT-GET时,如果PRT-GET本身提供的功能不够,那么用户可以通过扩展PRT-GET中对应的类,以实现自定义的功能。
4.PRT-GET支持自定义协议。PRT-GET的最大特色就是支持用户自定义应用层协议,通过用户编写的协议工作说明书,PRT-GET忠实地执行用户在说明书中指定的每一个操作,也就是说,用户无需编写任何一句代码就可以使PRT-GET支持自定义协议。
5.PRT-GET的使用方便。PRT-GET使用时只需要调用动态链接库就可以轻松地使用其中的协议控制类。
三、PRT-GET的设计
1.PRT-GET的工作层次
PRT-GET设计为一个动态链接库,它为系统应用程序提供中间层服务,使得应用程序无需了解网络通信的具体逻辑,只需把网络的内容当作本地的内容操作即可,从这点看起来PRT-GET也是一个协议,而且更是一个能提供很多协议服务的协议支持软件。PRT-GET在网络中的工作层次如图1所示。
对于使用PRT-GET作为网络通信协议的应用程序来说,用户可以指定PRT-GET使用哪个协议进行工作,因为PRT-GET是在需要使用时才加载协议内容的,所以用户可以随时动态指定PRT-GET使用的协议,甚至可以动态修改PRT-GET使用的协议内容。当协议组里面包含的协议不满足用户要求时,用户还可以添加新的协议,这只需要添加一个协议工作说明书到协议组里面就可以了。
应用程序
计算机
PRT-GET
协议组
协议内容
服务器
服务程序
用户
图1 PRT-GET工作层次
PRT-GET工作时根据用户指定的协议加载协议工作说明书,然后再依照协议说明书内容与远端服务器/客户端协作工作。对于PRT-GET来说,远端机器是透明的,PRT-GET的机器透明性是基于工作在TCP协议上的Socket的,所以对于PRT-GET来说没有机器的差别,没有平台的差别。
2.PRT-GET的几个概念
在PRT-GET中,有一些基本概念贯穿于整个PRT-GET的设计和实现过程中。
(1)协议
PRT-GET中的协议对应着一个网络协议。协议在PRT-GET程序中只是一个逻辑的存在,并没有具体的某个协议的实现,所以如果要使PRT-GET支持某个协议的话,需要编写一个具体的协议工作说明书与PRT-GET相配合。也就是说协议工作说明书是PRT-GET的具体协议的载体,也是PRT-GET支持协议的体现。
(2)元素
元素是PRT-GET的一个新概念。所有的协议都是一些基本通信单元的组合,而PRT-GET就是通过将协议分解成一个个的基本单元从而做到支持各种协议的。这种基本单元就是元素。元素是PRT-GET中协议构成的基本单位,一个PRT-GET的协议本质上就是一些PRT-GET的元素序列,同样的,对元素的不同组合可以生成不同的协议,这就是PRT-GET可以支持不同协议的本质原因。
程序中的一个元素类的对象对应着协议工作说明书的实际一行,也就是代表着通信交互中的一个基本交互单元。协议工作说明书中指定了每一个通信单元应当使用的元素类,并执行相应动作实现对应的通讯单元。
为更好的实现通讯单元的分割和减少通信协议工作
您可能关注的文档
- 一个ab型开米拉家系遗传状态的研究.doc
- 一个东方人写给西方人看的书..doc
- 一个使科学重新充满活力的人──评普里戈金的科学哲学思想.doc
- 一个不容忽视的角落——关注小学数学学习困难生.doc
- 一个具有事务支持的工作流动态模型.doc
- 一个区域文化产业的样本“云南现象”探秘.doc
- 一个哨子两个球,教师学生都自由 作者:庄小舟 地址:福建省南安市华源小学.doc
- 一个基于语义分析的文本过滤方法.doc
- 一个好汉三个帮——与服装设计师王蕙君的一次对话.doc
- 一个好舞者做什么都是成功的.doc
- (完整版)苏教六年级下册期末数学必考知识点试题经典.doc
- (完整版)苏教六年级下册期末数学模拟测试试题强力推荐及答案解析.doc
- (完整版)苏教六年级下册期末数学必考知识点试题强力推荐.doc
- (完整版)苏教六年级下册期末数学必考知识点试题强力推荐解析.doc
- (完整版)苏教六年级下册期末数学必考知识点试题精选及解析.doc
- (完整版)苏教六年级下册期末数学必考知识点试题经典套题及解析.doc
- 机械管理安全培训课件.pptx
- (完整版)苏教六年级下册期末数学必考知识点试题优质解析.doc
- (完整版)苏教六年级下册期末数学必考知识点试题精选答案.doc
- (完整版)苏教六年级下册期末数学必考知识点试题优质答案.doc
文档评论(0)