分享到:
计算机应用 最近更新
讨论未来电商发展趋势论文提纲
浅谈自媒体对现代生活的影响
论文范文:网络发展对青少年心理发展的影响
论我国电子商务应用中的支付问题
电子商务模式研究
中小型企业客户关系管理系统的开发与应用
中石油浙江销售分公司信息管理系统设计
图书馆管理系统分析与设计
物流师职业资格认证报名管理系统
销售管理系统的开发与设计
酒店客房管理系统
财务管理系统的实现
餐饮管理系统设计与实现
社区卫生服务管理系统
汽车营销企业的客户关系管理系统
明道管理咨询有限公司客户关系管理系统设计与开发
企业订单管理系统开发
基于WEB的CRM信息系统的开发与研究
高校科研工作量统计系统的开发与设计
基于Struts的连锁店管理系统
一种多协议模拟器的设计与实现
摘 要:目前,很多网络工具在遇到新的网络协议出现的时候,很难将新的协议快速集成到现有的网络工具中,从而给用户造成很多使用上的不方便。本文设计的一种网络协议模拟器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可以支持不同协议的本质原因。

程序中的一个元素类的对象对应着协议工作说明书的实际一行,也就是代表着通信交互中的一个基本交互单元。协议工作说明书中指定了每一个通信单元应当使用的元素类,并执行相应动作实现对应的通讯单元。

为更好的实现通讯单元的分割和减少通信协议工作说明书的编写难度,定义了动作元素和辅助元素这两个概念。

动作元素:对应着一个通讯基本操作,它指明了对于本次操作应该如何进行。

辅助元素:对动作单元进行辅助处理的单元,它是从属于动作单元,一个动作元素可以有零个或多个辅助元素。

动作元素和辅助元素指定了协议的一个通信单元的工作方式,而本次通信的内容就由内容项指定了。一个元素由动作元素和辅助元素、内容三项组成,其结构如下:

动作单元 [辅助单元]* [内容]

(3)分析器

PRT-GET中并没有协议的实体存在,代替的是用协议工作说明书作为协议的载体,而协议工作说明书只是一个文本文件,如何将这个协议工作说明书的内容加载到内存并转变为一个一个对应的元素,这个工作是由分析器来解决的。
随机推荐
中国互联网十年思考
新型数字版权保护技术—数字指纹
通用入侵检测对象应用研究
复杂算法可视化框架构建方案研究
基于UML的食堂就餐卡系统的设计
论任务驱动法在计算机应用基础教学中的运用
基于VRML的三维虚拟校园的设计与实现
基于XML及其数据过滤的高速信息查询系统的设计
企业标准化体系的工作流管理系统的开发
NetWare与UNIX的互联方法与实现

设为首页 | 关于我们 | 广告联系 | 友情链接 | 版权申明

Copyright 2009-2014 All Right Reserved [粤ICP备05100058号-11]