目录 论文总页数:18页 1 引言 1 1.1课题背景 1 1.2 本课题的研究意义 1 1.3 本课题的研究方法 1 2 系统构成 1 2.1 系统概要 1 2.2 系统模块 2 2.3 项目要求 2 3 开发工具及背景 2 3.1 VISUAL C++ 6.0 2 3.2 网络基础知识 2 3.2.1 OSI参考模型 2 3.2.2 TCP/IP参考模型 4 3.3 C/S结构工作过程 5 3.4 C/S结软件自动更新的背景 6 4 虚拟实验平台动态升级模块的设计与实现 7 4.1 界面设计 7 4.2 程序执行流程图 7 4.3 主要步骤及具体实现方案 8 4.3.1 查询服务器端信息 8 4.3.2 比较新旧版本 9 4.3.3 获得升级程序文件的路径 11 4.3.4 获得文件升级后的保存路径 11 4.3.5 从服务器下载文件并保存到本地 11 4.3.6 关于如何保存当前版本号的问题 13 5 程序测试过程及结果 14 5.1 老版-新版本成功升级 14 5.2 版本无需更新 15 结 论 16 参考文献 16 致 谢 17 声 明 18
1 引言 1.1课题背景 为优化学校虚拟实验平台功能,以其网络化改进方向为目标,设计与实现虚拟实验平台的动态升级模块。现有的虚拟实验平台不具有任何网络功能,所能进行的实验内容也相当有限,所以实验内容的更新是一大问题。现需要在现有的虚拟实验平台程序的基础上,设计并实现其动态升级模块。该模块通过向目标主机查询实验内容的版本号,与本机实验的版本号相比较,判断是否为新版本的实验内容,最后实现实验的版本更新。 1.2 本课题的研究意义 当前,升级功能作为大多数软件延长其生命周期必不可少的手段,为了赋予实验平台功能的可更新性,增强实验平台的灵活性,赋予其网络功能有着极为重要的意义。本设计的主要目的是为了检查使学生综合运用以前所学知识(包括以前所学的一些关于网络技术、编程技术、网络与信息安全等知识)的能力,设计开发一个软件升级模块;既锻炼了学生的实际动手能力,又引导学生进行了一次模拟实际产品的开发,对于学生以后工作能力的培养具有重要的意义。 1.3 本课题的研究方法 本题目要求设计开发一个功能较完善的软件升级模块。因此,本次毕业设计应首先分析软件升级的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识,选用Visual C++进行本毕业设计的开发;在设计中重点以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关的设计文挡,为后面的毕业论文的写作准备材料;最后,系统开发完毕后,进行调试和试运行,做好调试和试运行的相关记录,也为后面的毕业论文的写作准备材料。 2 系统构成 2.1 系统概要 虚拟实验平台是成都信息工程学院单片机与接口等相关实验课程中使用的一款微机实验仿真实验系统。主要具有以下功能和特点: 1.仿真8255、8253和基本I/O接口电路等; 2.虚拟常用外围单元电路,包括指示灯、数码管、传感器、交通、霓虹灯等,虚拟平台可同时使用; 3.提供了典型实验项目的参考实例和实验教学,还可完成相关的课程设计。 虚拟实验就是利用外部输入(如鼠标的点击、拖动和键盘的敲击等),将计算机上虚拟的各种仪器,按实验要求、过程,组装成一个完整的实验环境,同时在这个环境中完成实验操作,包括实验器材的添加、实验条件的改变、数据采集以及实验结果的模拟、分析。它包含了虚拟仿真技术、计算机技术、实验技术、网络技术与专业等多方面理论知识。 2.2 系统模块 该虚拟实验平台现有五个方向的网络化改进模块: 1.VLP2P通信逻辑模块; 2.动态升级模块; 3.远程指导演示模块; 4.远程协作模块; 5.教师管理模块; 本人完成的是动态升级模块。 2.3 项目要求 完成动态升级的基本功能,通过查询目标主机实验内容的版本号,与本机版本相比较,判断是否为新版本的实验内容,最后实现实验的版本更新。 3 开发工具及背景 3.1 Visual C++ 6.0 Visual C++6.0 是微软98 年推出的产品,它提供了强大的编译能力以及良好的界面操作性。能够对Windows 9x、Windows NT 以及Windows 2000 下的C++程序设计提供完善的编程环境。同时Visual C++6.0 对网络、数据库等方面的编程也都提供相应的环境支持。 3.2 网络基础知识 3.2.1 OSI参考模型 国际标准化组织(ISO)开发了开放式系统互联(OSI)参考模型,以促进计算机系统的开放互联。开放式互联就是可在多个厂家的环境中支持互联。该模型为计算机间开放式通信所需要定义的功能层次建立了全球标准。OSI模型将通信会话需要的各种进程划分成7个相对独立的功能层次,这些层次的组织是以在一个通信会话中事件发生的自然顺序为基础的。图1描述了OSI, 1-3层提供了网络访问,4-7层用于支持端端通信。 1.物理层[7]物理层是OSI模型的最低层,它建立在物理通信介质的基础上,规定了机械的、电气的功能;该层负责建立、保持和拆除物理链路;规定如何在此链路上传送原始比特流;比特如何编码,使用的电平,极性,连接插头插座的插脚如何分配等。所以在物理层数据的传送单位是比特(bit)。 0SI参考模型 层次描述 OSI 层次号 应用层 7 表示层 6 会话层 5 传输层 4 网络层 3 数据链路层 2 物理层 1 图1- OSI参考模型 2.数据链路层它把相邻两个节点间不可靠的物理链路变成可靠的无差错的 逻辑链路,包括把原始比特流分帧(frame)、顺序、排序、设置检错、确认、重发、流控等功能;数据链路层传动信息的单位是frame,每帧(frame)包括一定数量的数据和一些必要的控制信息,在每帧(frame)的控制信息中,包括同步信息、地址信息、流量信息等;同物理层相似,数据链路层负责建立、维护和释放数据链路。 3.网络层,它连接网络中任何两个计算机点,从一个节点上接收数据,正确的传送到另一个节点;在网络层,传送的信息单位是分组或包(packet)。网络层的主要任务是要选择合适的路由和交换节点,透明地向目的站交付发送站所发的分组或包,这里的透明表示收发两端好像是直接连通的,另外网络层还要解决网络互连、拥挤控制等问题。上述三层组成了所谓的通信子网,用户计算机连接到此子网上。通信子网负责把一个地方的数据可靠地传送到另一个地方,但并未实现两个地方主机上进行进程之间的通信,通信子网的主要功能是面向通信的。 4.传输层上真正地实现了端对端间通信,把数据可靠地从一方的用户进程或程序送到另一方的用户进程或程序。这一层的控制通常由通信两端的计算机完成。中间节点一般不提供这一层的服务,这一层的通信与通信子网无关。从这一层开始的以上各层全部是针对通信的最终的源端目的端计算机的进程之间的。传输层传送的信息单位是报文(message)。传输层向上一层提供一个可靠的端一端服务,使上一层看不见下面几层的通信细节。正因为如此,传输层成为网络体系结构中关键的一层,对于传输层的功能,主要在主机内实现。而对于物理层、数据链路层以及网络层的功能均能在报文接口机中实现。对于传输层之上的各个层次的功能通常在主机中实现。 5.会话层又称对话层会话层允许两个计算机上的用户进程建立对话连接,双方相互确认身份,协商对话连接的细节;它可管理对话是双向同时进行的,还是任何时刻只能一个方向进行。在后一种情况下,对话层控制哪一方有权发送数据;对话层还提供同步机制,在数据流中插入同步点机制,在每次网络出现故障后可以仅重传最近一个同步点以后的数据,而不必从头开始。以上两层为两个计算机上的用户进程或程序之间提供了正确传送数据的手段。 6.表示层主要解决用户信息的语法表示问题。表示层将数据从适合于某一系统的语法转变为适合于OSI系统内部使用的语法。具体地讲,表示层对传送的用户数据进行翻译、编码和变换,使得不同类型的机器对数据信息的不同表示方法可以相互理解。 7.应用层主要处理资源可用性和安全问题,它包含了大量人们普遍需要的协议,如FTP、TELNET、HTTP、SMTP等。最近几年,应用层协议发展很快,出现了很多新的应用,如ICQ、Multimedia stream等。 3.2.2 TCP/IP参考模型 TCP/IP使跨平台,或称为异构的网络互联成为可能。由图2我们可以看到,TCP/IP与OSI参考模型不同,TCP/IP模型更侧重于互联设备间的数据传送,而不是严格的功能层次划分。它通过解释功能层次分布的重要性来做到这点,但仍为设计者具体实现协议留下很大的余地。因此,OSI参考模型在解释互联网络通信机制比较适合,但TCP/IP成为了互联网络协议的市场标准。TCP/IP参老-模型是在它所解释的协议出现很久以后才发展起来的,更重要的是,在于它更强调功能分布而不是严格的功能层次的划分,因此它比OSI模型更灵活。 TCP/IP参考模型层 次描述 TCP/IP层次号 应用层 4 传输层 3 网络层 2 数据链路层 1 图2- TCP/IP参考模型 1.应用层: 应用层包括SMTP, FTP, HTTP, NFS, NIS, LPD, Telnet f II Remote Login应用层包括一些服务,这些服务在OSI中由独立的三层实现。这些服务是和端户相关的认证、数据处理以及压缩。包括电子邮件、浏览器、Telnet以及其他的Internet应用。 2.传输层: 传输层包括TCP ( Transport Control Protocol,传输控制协议)和UDP (User Datagram Protocol,用户数据报协议)。UDP几乎不进行检查,而TCP提供传输保证。与OSI中传输层不一样,TCP不保证报文的准确传输。TCP为两台主机提供高可靠性的数据通信。而另一方面,UDP则为应用层提供一种非常简单的服务,它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。 3.网络层: TCP/IP协议族中,网络层由以下协议组成:ICMP (Internet r联网托制报文协议)、IP(网际协议)、IGMP (Internet组管理协议)、RIP, OSPF和月j -t几路由的EGPo网络层处理报文的路由管理。 4.链路层: 链路层包括ARP和RARP,负责报文传输;链路层管理网络的连接并提供网络上的报文输入/输出。 3.3 C/S结构工作过程
|