网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > 课程设计 > 正文

ftp程序的设计

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务
ftp程序的设计1  FTP设计任务目的及要求 141.1 设计目的 142  FTP工作原理及设计方案 142.1 设计思路 142.2 设计流程图 152.3设计方案 153 FTP核心程序 164 FTP实验结果 185  总结 20文献 20一、 实验目的文件传送是各种计算机网络都实现的基本功能,文件传送协议是一种最基本的应用层协议按照客户/服务器的模式进行工作,提供交互式的访问,是INTERNET使用最广泛的协议之一。本实验的目的是,学会利用已有网络环境设计并实现简单应用层协议,掌握TCP/IP 网络应用程序基本的设计方法和实现技巧。二、 实验内容和要求1、实验内容我们的计算机网络实验环境建立在TCP/IP 网络体系结构之上。各计算机除了安装TCP/IP 软件外,还安装了TCP/IP 开发系统。实验室各计算机具备Windows环境中套接字socket 的编程接口功能,可为用户提供全网范围的进程通信功能。本实验要求学生利用这些功能,设计和实现一个简单的文件传送协议。2、具体要求用socket 编程接口编写两个程序,分别为客户程序(client.c)和服务器程序(server.c),该程序应能实现下述命令功能:get:取远方的一个文件put:传给远方一个文件pwd:显示远主当前目录dir:列出远方当前目录cd :改变远方当前目录? :显示你提供的命令quit :退出返回这此命令的具体工作方式(指给出结果的形式)可以参照FTP 的相应命令,有余力的同学可以多实现几个命令。最后,写出实验报告。三、 实验主要仪器设备和材料联网计算机。四、 实验方法、步骤及结构测试1) 关于端口号(假设用SERV_PORT 来表示)的设定,原则上2000 至5000都可用,为避免冲突,建议取你学号后三位数加上2000,比如学号为971234,则可定义: #define SERV_PORT 22342) 客户和服务程序中要有相应的include 文件(参考所给例子程序)3) 有些同学的server 方程序支持多连接,为了不占用更多的系统资源,并发连接数限制在3 个以内。4) 最后提交源程序,撰写实验报告,在实验报告中说明设计的思路。五、 课程设计进程安排序号 设计各阶段内容 地点 起止日期1 选择课程设计题目,分析题目要求及熟悉实验软件。 实验2号楼202 2008.12.222 查阅资料,提出设计方案并讨论。 图书馆 2008.12.233 进行编译并调试程序 实验2号楼202 2008.12.264 调试程序、改进 实验2号楼202 2008.12.275 检查 实验2号楼202 2008.12.28
六、 应收集的资料及主要参考文献1) 程良伦主编,《网络工程概论》,机械工业出版社. 20072) 苏峰,黄金双,汤蕾编著,《Visual C++.NET编程实例》,清华大学出版社.20043) 黄嘉辉编著,《Internet与TCP/IP程序设计之C++ Builder高手》,清华大学出版社.2001发出任务书日期:  2008年 12月 22日  指导教师签名:计划完成日期:    2008年 12月 29日  基层教学单位责任人签章:
主管院长签章:1  FTP设计任务目的及要求1.1 设计目的文件传送是各种计算机网络都实现的基本功能,文件传送协议是一种最基本的应用层协议按照客户/服务器的模式进行工作,提供交互式的访问,是INTERNET使用最广泛的协议之一。本实验的目的是,学会利用已有网络环境设计并实现简单应用层协议,掌握TCP/IP 网络应用程序基本的设计方法和实现技巧。
1.2 设计要求1、实验内容我们的计算机网络实验环境建立在TCP/IP 网络体系结构之上。各计算机除了安装TCP/IP 软件外,还安装了TCP/IP 开发系统。实验室各计算机具备Windows环境中套接字socket 的编程接口功能,可为用户提供全网范围的进程通信功能。本实验要求学生利用这些功能,设计和实现一个简单的文件传送协议。
2、具体要求用socket 编程接口编写两个程序,分别为客户程序(client.c)和服务器程序(server.c),该程序应能实现下述命令功能:get:取远方的一个文件put:传给远方一个文件pwd:显示远主当前目录dir:列出远方当前目录cd :改变远方当前目录? :显示你提供的命令quit :退出返回这此命令的具体工作方式(指给出结果的形式)可以参照FTP 的相应命令,有余力的同学可以多实现几个命令。最后,写出实验报告。2  FTP工作原理及设计方案2.1 设计思路利用Win32 Internet API 支持FTP应用程序开发,一开始需要以InternetOpen建立Internet Session的句柄,接着以InternetConnect建立FTP服务的Handle。并利用Win32 Internet API实现FTP的pwd、ls、dir、及cd指令,实行put和get的功能。2.2 设计流程图 2.3设计方案InternetConnect的FTP设置与FTP服务器建立连接,建成FTP客户机的雏形,与FTP服务器建立连接成功后,返回FTP服务器针对不同用户所开放的目录名称,利用ftpgetcurrentdirectory来完成,返回服务器当前的目录名称。通过利用Win32 Internet API实现FTP的pwd、ls、dir、及cd指令,FTP最重要的就是下载及上传文件的功能,在FTP的指令中,下载可以利用get或mget指令,而上传则利用put或mput指令。在Win32 Internet API中,与FTP的get或mget指令功能相同的函数是FtpGetFile函数,其功能是将FTP服务器上的文件下载至本地的目录中,实行put和get的功能。334
 
ftp程序的设计|网络概论课程设计报告|报告FTP核心程序 switch(cmdbuf[0])  {  case 'c':   {    memset(cmdbuf,0,20);    recv(AcceptSocket, cmdbuf, 20, 0);    Sleep(5);    chdir(cmdbuf);    closesocket(AcceptSocket);   }   break;  case 'd':   {         bWorking = finder.FindFile("*.*");    while (bWorking)    {          bWorking = finder.FindNextFile();     memset(sendbuf,0,50);             }closesocket(AcceptSocket);   }break;  case 'g':   {    FILE *p;    char buffer[1024];    memset(buffer,0,1024);    recv(AcceptSocket,sendbuf,strlen(sendbuf)+1,0);    p=fopen(sendbuf,"rb");    if(p==NULL)    {     send(AcceptSocket,"1",strlen("1")+1,0);    }    else    {     send(AcceptSocket,"0",strlen("0")+1,0);     while(fread(buffer,sizeof(char),sizeof(buffer),p)!=NULL)     {      send(AcceptSocket,buffer,sizeof(buffer),0);     }    }    fclose(p);    closesocket(AcceptSocket);       }    break;  case 'p':   {    FILE *p;    char buffer[1024];    memset(buffer,0,1024);    recv(AcceptSocket,sendbuf,strlen(sendbuf)+1,0);    p=fopen(sendbuf,"wb");//    while(recv(AcceptSocket,buffer,sizeof(buffer),0)!=NULL)//    {//     fwrite(buffer,sizeof(char),sizeof(buffer),p);//    }    while(1)    {     int ret;     ret=recv(AcceptSocket,buffer,sizeof(buffer),0);          if(ret==0)     {      memset(buffer,0,1024);      break;     }     fwrite(buffer,sizeof(char),sizeof(buffer),p);    }    fclose(p);    closesocket(AcceptSocket);    cout<<"over";   }    break;  case '?':   {    memset(sendbuf,0,50);  lwfree.cn    send(AcceptSocket,sendbuf,strlen(sendbuf)+1,0);    closesocket(AcceptSocket);
   }break;  case 'q':break;  default:   {            cdpath=getcwd(NULL,0);    end=strlen(cdpath);    memset(sendbuf,0,50);    for(int i=begin;i 
网络概论课程设计报告 FTP实验结果1)改变目录命令命令行输入:cd d:/结果输出: 2)dir查询命令命令行输入:dir结果输出: 3)显示提供的命令命令行输入:?结果输出: 4)get下载命令命令行输入:get结果输出: 
5)put上传命令命令行输入:put结果输出:  5  总结本次课程设计较好地实现了要求做到的功能,但同时也遇到了不少的困难和挑战。通过本次课程设计使我学会利用已有网络环境设计并实现简单应用层协议,掌握TCP/IP 网络应用程序基本的设计方法和实现技巧。这次设计基本上都是以找资料为主,因为很多的程序都是我们之前没有接触过的,要自己开发比较困难,而且时间比较紧逼,基本上很难独立完成。正因如此,这次实验以小组为单位设计,减少了难度,减轻了我们的负担。但在设计过程中还是存在较多的问题,通过讨论逐步解决,而我们在当中也学到了很多的新知识,新方法,提高了自己的编程能力。文献1.程良伦主编,《网络工程概论》,机械工业出版社. 20072.苏峰,黄金双,汤蕾编著,《Visual C++.NET编程实例》,清华大学出版社.20043.黄嘉辉编著,《Internet与TCP/IP程序设计之C++ Builder高手》,清华大学出版社.2001
  • 上一篇资讯: 管理学论文中国房价上涨的原因
  • 下一篇资讯: PING程序的设计
  • 相关资讯

    网学推荐

    原创论文

    文章排行榜

    设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师