- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业设计(论文)
开 题 报 告
1 选题的背景和意义
远程控制是在网络上由一台主控端远距离控制另一台被控端的技术。随着网络技术的发展,电脑的管理及技术支持的需要,远程操作及控制技术越来越引起人们的关注[1]。1.1 选题的背景目前,大多数远程进程间通信代码是用Socket编写的。实际应用中用Socket传输信息并不是独立的,它在多线程的处理环境中应用更为广泛[2]。Socket通常也称作套接。用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过套接字向网络发出请求或者应答网络请求。[3]。
1.2 国内外研究现状及发展趋势
远程控制技术由来已久,是控制领域的一项重要技术。国内外在远程控制方面的应用十分广泛,而且进展迅速,大体来看分为几种:一是对计算机网络自身性能的监控。这种应用可以自动跟踪目标计算机的屏幕变化、获取目标计算机登录口令及各种密码类信息、获取目标计算机系统信息、限制目标计算机系统功能、任意操作目标计算机文件及目录、远程关机、发送信息等多种监控功能。二是对现场状况的实时监控,多用于酒店、银行或住宅等系统监视方面。这种应用使用摄像机云台,基于无线网络的远程控制平台研究与实现实际上是一种被动的监视系统;三是对作业现场有效数据的采集监视,是种主动监控方式,多用于水文水利、电力、机械生产等方面。目前,基于因特网的远程控制国内外电都有不同程度的研究,相对来说,由于西方国家在信息技术和计算机技术的发展上的优势,他们在研究基于因特网的远程控制方面相对早一些,而且主要集中在机器人领域。例如:美国南加州大学研制的可播种和浇水的远程控制花园Telegarden、英国Bradford大学的远程机器人望远镜系统、澳大利亚Wollogong大学拾取木块的Roboty系统等。国内的哈尔滨工业大学也在研制基于因特网的Telerobot远程控制机器人[。开发一个基于Socket通信的远程控制系统可实现磁盘管理,远程下载文件,本地上传文件,发送信息,屏幕查看,鼠标锁定鼠标解锁,远程关机,远程重启,桌面隐藏,桌面显示等功能。2.1 基本框架远程控制软件一般分为客户端程序和服务器图2.1 客户机/服务器器系统结构图
客户端主要包括三部分:任务翻译,信息传输和发送命令。任务翻译主要是对服务器端发来的控制操作进行翻译,明白需要的操作。信息的传输主要针对能够实现客户端向服务器端发送信息。发送命令是向服务器发送所需要执行的命令,使服务器能有目的性的执行命令。主要功能如图2.2所示。
图2.2 客户端功能模块图
系统由服务器端来实现在服务器端,它们并不是主动地建立连接,监听被动地客户端的连接,客户端通过远程控制在服务器实现各个功能,包括文件管理屏幕控制,系统管理,主机管理。
图2.3 服务器功能模块图
系统在工作时,首先调用Socket类的构造函数,以服务器的指定的IP地址或指定的主机名和指定的端口号为参数,创建一个Socket,负责监听客户端的请求。生成新的Socket,此时服务器Fork()出一个子进程专门处理该客户,父进程则关闭新的Socket,继续处理下一个客户进程。而服务器监听用的Socket对Fork出的子进程无用,所以子进程将其关闭,用产生的新Socket与客户交换信息,直到对方关闭此连接,子进程终止。关闭Socket。
图2.4 远程控制系统流程图
2.2 研究的重点和难点
本系统研究的重点:1.客户端的信息传输2.客户端的3.服务器端的任务翻译4.服务器端文件管理屏幕控制系统管理主机管理难点:1.开发的应用是一种类似计算机病毒的应用,有时会被杀毒软件查杀,难以在计算机中正常的运行。2.采用BMP-JPEG压缩方式的屏幕控制,直接将服务器端截取的屏幕,进行压缩后发送到客户端,客户端从网络流中读取到图片之后,在客户端设置一个时钟,难以与原来图像保持同步。
2.3 拟解决的关键问题
本系统研究过程中,需要重点解决的关键问题包括以下几点:BlockRead()分批读取文件,并将数据发送出去。客户端将数据重新组装成文件。
2.服务器端需要将屏幕截图下来,并用相关函数将图像数据保存至一个临时的控件,然后将图像数据转化为可传文件,发送到客户端。
3 研究的方法及措施
1.本系统需在C++软件上完成各模块的设计,通过对程序的编写完成各模块的功能,因此,要熟练掌握C++的各程序代码。
2.进行系统模块设计
(1)上传文件:对于大量数据需要传输时,采用分批传输。客户端调用BlockRead()分批读取文件,并调用WriteBuffer()将数据发送出去。服务器调用ReadStream()将数据重新组装成文件。
(2)下载文件:对于大量数据需要传输时采用分批传输。服务器调用BlockRead分批读取文件并调用WriteBuffer将数据发送出去。客户端调用
文档评论(0)