预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共22页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Linux环境下基于TCP/IP及Socket技术的远程文件传送控制编程报告第PAGE\*MERGEFORMAT22页共NUMPAGES\*MERGEFORMAT22页Linux环境下基于TCP/IP及Socket技术的远程文件传送控制编程报告2013年5月目录TOC\o"1-3"\h\uHYPERLINK\l"_Toc357280288"一、编程目的PAGEREF_Toc357280288\h3HYPERLINK\l"_Toc357280289"二、通信原理PAGEREF_Toc357280289\h3HYPERLINK\l"_Toc357280290"(一)TCP/IPPAGEREF_Toc357280290\h3HYPERLINK\l"_Toc357280291"(二)SocketPAGEREF_Toc357280291\h4HYPERLINK\l"_Toc357280292"三、Linux虚拟环境安装PAGEREF_Toc357280292\h7HYPERLINK\l"_Toc357280293"(一)VMware简介PAGEREF_Toc357280293\h7HYPERLINK\l"_Toc357280294"(二)Linux简介PAGEREF_Toc357280294\h8HYPERLINK\l"_Toc357280295"(三)Linux虚拟环境安装PAGEREF_Toc357280295\h9HYPERLINK\l"_Toc357280296"四、设计过程PAGEREF_Toc357280296\h11HYPERLINK\l"_Toc357280297"(一)服务器端创建监听与文件管理PAGEREF_Toc357280297\h11HYPERLINK\l"_Toc357280298"(二)客户端连接与文件传输PAGEREF_Toc357280298\h12HYPERLINK\l"_Toc357280299"五、结果演示PAGEREF_Toc357280299\h12HYPERLINK\l"_Toc357280300"六、代码开发PAGEREF_Toc357280300\h13HYPERLINK\l"_Toc357280301"(一)服务器端PAGEREF_Toc357280301\h13HYPERLINK\l"_Toc357280302"(二)客户端PAGEREF_Toc357280302\h18HYPERLINK\l"_Toc357280303"七、结束语PAGEREF_Toc357280303\h20一、编程目的这次程序设计的目标是在以Linux为内核的操作系统下,实现多线程文件传输系统功能模块。系统模块分为服务器和客户端两部分,客户端实现对文件的上传、下载和查看服务器默认路径下的文件列表;服务器可以对文件进行管理操作,包括创建、删除和重命名等。多线程文件传输是一种一对多或者多对多的关系,一般是一个服务器对应着多个客户端。客户端通过socket连接服务器,服务器要为客户端创建一个单独进程(线程)监听每个客户端的请求。创建好连接之后文件就可以通过流的形式传输。linux内核中为我们提供了两种不同形式的读写流,包括read()、write()和send()、recv()。客户机对文件的查看指令也是通过流传递给服务器,服务器根据请求类型返回不同相应流。根据socket原理和特点绘画出链接流程图,将客户机与服务器的相互通信划分为不同的模块,每个模块负责独立的功能项。服务器输入指令管理目录下的文件,createfilename是创建文件命令,renameoldnamenewname是删除文命令,deletefilename是删除文件命令,同时监听着客户端的请求;客户端向服务器发送上传、下载和查看请求,从而得到不同的相应,包括将文件下载到当前路径下,从当前路径下上传文件给服务器,列出服务器的文件列表。二、通信原理Linux是计算机使用的主流操作系统之一,TCP/IP是广为应用的互联网协议,Linux为TCP/IP网络编程提供了一种网络进程通信机制:套接字接口(SocketsInterface)。以下将介绍Linux环境下套接字的基本概念及编程技术,并结合实例说明在Linux下如何用套接字实现客户机/服务器方式的进程通信。(一)TCP/IPTCP/IP即传输控制协议/网际协议(TransmissionControlProtocol/InternetProtocol),是一个由多种协议组成的协议族,他定义了计算机通