ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:1.33MB ,
资源ID:5463319      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5463319.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(远程控制系统.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

远程控制系统.docx

1、远程控制系统四 川 大 学 计 算 机 学 院、软 件 学 院实 验 报 告 课程名称 信息安全产品开发实践 实验课时5实验项目远程控制系统实验时间2011年9月22号实验目的 1)继续了解Linux下C语言程序开发的过程2)继续了解Socket网络编程3)回顾流套接字与数据报套接字4)了解远程控制系统的流程及其实现的两种方式(TCP和UDP) 实验环境 VMware5.0,RedHat Linux 9.0实验内容(算法、程序、步骤和方法) 利用数据报套接字实现一个简单的远程控制系统:1.客户端输入“quit,客户端程序与服务器端程序打印退出信息,终止程序的执行;2。客户输入命令,客户端将命令

2、通过流套接字发送给客户端,服务器执行收到的命令,并将结果发送到客户端显示;3.如果没有客户输入的命令,服务器发送命令非法信息,并在客户端显示该条信息。4。编写实验报告:列出程序运行状态、截图、配文字说明;在进行试验之前先来回顾一下UDP套接字编程的流程:上图反应了在进行数据报套接字编程时服务器端和客户端需要做得工作,从中我们可以看出服务器端需要经过五个步骤,而客户端只需要四个步骤。远程控制的原理如下:客户端接收用户输入的命令,客户端通过套接字将命令传送给服务器端,服务器在收到用户的命令,对命令进行解析在服务器端调用对应的命令并将命令执行的结果发送给客户端,从而实现远距离控制的功能。从远程控制的

3、原理并结合UDP套接字编程的流程我们可以画出用UDP实现远程控制的流程图,如下:下面介绍本试验的具体步骤:(1):打开虚拟机,在Linux下的VI编辑器中编写服务器端程序UDPserver.c(2)使用命令gcc o UDPserver UDPserver。c g编译; (接上)实验内容(算法、程序、步骤和方法)(3):编写客户端程序:UDPclient.c (4): 使用gcc o UDPclient UDPclient。c g命令编译(5)使用setup命令配置虚拟机的IP地址为10.0.0。222(6):执行服务器端代码(。/UDPserver),客户端连接服务器(./UDPclient

4、 10.0。0。22):(6):客户端输入字符串ls,服务器端解析输出结果:(7):客户端继续输入字符串who,how,服务器端解析输出结果(8):客户端输入quit命令,断开连接,服务器正确反应,与客户端脱离连接附试验源代码:UDPserver。cinclude stdio。hinclude include include sys/socket。hinclude netinet/in。h#include define PORT 8900#define BUFSIZE 2048int execute(char*command,char*buf) FILE *fp; int count; cha

5、r commandbuf2056; if (NULL=command)|(NULL=buf) perror(command or buf is emptyn); return 1; count =0; memset(commandbuf,0,2056); strcat(commandbuf,”sh c ”); strcat(commandbuf,command); fprintf(stderr,the command is %sn”,commandbuf); if (NULL=(fp=popen(commandbuf,”r) perror(”create pipe errorn”); retu

6、rn 1; while ((count=sendto(sockfd,sendbuf,sendnum,0,(struct sockaddr)&client,lens) perror(the commucation errorn”); close(sockfd); return 1; close(sockfd);UDPclient.c#include stdio。h#include stdlib。hinclude include sys/types。hinclude sys/socket。hinclude netinet/in.h#include define PORT 8900define BU

7、FSIZE 2048void printusage(charcommand) if (NULL=command) exit(1); fprintf(stderr,the useage of s :,command); fprintf(stderr,”s IPADDRn,command); return;int main(int argc,char* argv) int sockfd; int length; struct sockaddr_in server; int sndnum; int recvnum; char sendbufBUFSIZE; char recvbufBUFSIZE;

8、sockfd=1; length=0; if (2!=argc) printusage(argv0); return -1; if (-1=(sockfd=socket(AF_INET,SOCK_DGRAM,0)) perror(create socket errorn); return 1; memset(server,0,sizeof(struct sockaddr); server.sin_family=AF_INET; server.sin_addr.s_addr = inet_addr(argv1); server.sin_port = htons(PORT); while(1) f

9、printf(stderr,”UDP”); memset(recvbuf,0,BUFSIZE); memset(sendbuf,0,BUFSIZE); fgets(sendbuf,BUFSIZE,stdin); length=strlen(sendbuf); sendbuflength-1=0; sndnum=strlen(sendbuf); if (0sendto(sockfd,sendbuf,sndnum,0,(struct sockaddr)&server,sizeof(struct sockaddr)) perror(send errorn); close(sockfd); exit(

10、1); if (0=strcmp(sendbuf,quit) fprintf(stderr,”quit。.。n”); close(sockfd); exit(0); if (0=(recvnum=recvfrom(sockfd,recvbuf,BUFSIZE,0,(struct sockaddr *)server,length)) perror(read errorn”); close(sockfd); exit(-1); recvbufrecvnum=0; fprintf(stderr,the result:n); fprintf(stderr,”sn,recvbuf); 数据记录和计算 详

11、细见上面结 论(结 果) 使用套接字能实现远程控制,且有TCP和UDP两种形式.小 结 通过本实验,我掌握了:1)进一步熟悉了Linux下C语言程序开发的过程;2)进一步了解Socket网络编程,巩固了对UDP和TCP编程;3)了解了远程控制的原理;4)学会了使用数据报套接字来实现远程控制;目前我存在的问题有:套接字的函数比较繁琐,掌握的不是很熟练。指导老师评 议 成绩评定: 指导教师签名:实验报告说明 专业实验中心 实验名称 要用最简练的语言反映实验的内容。如验证某程序、定律、算法,可写成“验证;分析。实验目的 目的要明确,要抓住重点,可以从理论和实践两个方面考虑。在理论上,验证定理、公式、

12、算法,并使实验者获得深刻和系统的理解,在实践上,掌握使用实验设备的技能技巧和程序的调试方法.一般需说明是验证型实验还是设计型实验,是创新型实验还是综合型实验。实验环境 实验用的软硬件环境(配置).实验内容(算法、程序、步骤和方法) 这是实验报告极其重要的内容.这部分要写明依据何种原理、定律算法、或操作方法进行实验,要写明经过哪几个步骤.还应该画出流程图(实验装置的结构示意图),再配以相应的文字说明,这样既可以节省许多文字说明,又能使实验报告简明扼要,清楚明白。数据记录和计算 指从实验中测出的数据以及计算结果.结论(结果) 即根据实验过程中所见到的现象和测得的数据,作出结论。小结 对本次实验的体会、思考和建议。备注或说明 可写上实验成功或失败的原因,实验后的心得体会、建议等。 注意:实验报告将记入实验成绩; 每次实验开始时,交上一次的实验报告,否则将扣除此次实验成绩。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1