文件传输系统设计文档

文件传输系统设计文档

ID:6744285

大小:479.50 KB

页数:18页

时间:2018-01-24

文件传输系统设计文档_第1页
文件传输系统设计文档_第2页
文件传输系统设计文档_第3页
文件传输系统设计文档_第4页
文件传输系统设计文档_第5页
资源描述:

《文件传输系统设计文档》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、文件传输系统设计文档 1引言21.1编写目的21.2背景21.3部分用到的词定义22程序详细设计32.1程序描述32.2功能32.3性能102.4模块划分102.5程序系统的结构112.5.1串行化的传输112.5.2并行的传输112.5.3SOCKET类的封装122.5.4SOCKET的TCP连接流程图122.5.5服务器端数据流图132.5.6客户端数据流图142.6接口/类具体设计162.7任务分配182.8尚未解决的问题182.9BUG记录18181引言1.1编写目的按照公司布置的实习任务,实现文件传输系统,并完成代码的撰写,

2、在编写代码的过程中,对学过的专业知识进行回顾,加强编写代码的能力和逻辑思维能力,初步掌握C++网络编程原理。在撰写设计文档的过程中,对一个项目的设计开发过程进行梳理,熟悉设计文档编写的规范和要求,为今后项目开发打下坚实的基础。1.2背景该项目是在VisualC++的MFC下进行的开发,要求对C++语言熟练的掌握,系统的开发涉及到网络原理的SOCKET编程和操作系统的多线程编程技术。文件传输功能成为现在流行的即时通信工具不可少的一部分。要实现一个功能较完善的文件传输工具,若只能实现文件的发送与接收,显然是不够的。本文开发的文件传输工具,

3、通过使用多线程、自定义的传输命令等技巧,实现了多个用户之间并发传输多个文件,并可以在传输过程进行简单交互的功能。1.3部分用到的词定义Socket:通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。CSocket类:是MFC对WindowsSocket编程的类的封装,其派生于CAsyncSocket类,即是CAsyncSocket类的更抽象的封装,用该类来完成Socket编程将更方便。串行化:将对象存储到介质(如文件、内在缓冲区等)中或是以二进制方式通过网络传输

4、。之后可以通过反串行化从这些连续的字节(byte)数据重新构建一个与原始对象状态相同的对象,因此在特定情况下也可以说是得到一个副本,但并不是所有情况都这样。18TCP:TransmissionControlProtocol传输控制协议,是一种面向连接的、可靠的、基于字节流的运输层通信协议。多线程:为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。2程序详细设计2.1程序描述2.1.1利用socket进行TCP连接 文件传输系统包括一个服务器端和一个客户端。接收方是TCP的服务器

5、端,发送方是TCP的客户端。2.1.2同步的多线程传输方式要实现并行传输,即服务器端可以同时接收几个客户端发送的文件,我们采用了同步的多线程方式,在程序中有两类线程:接收线程和发送线程,其中监听线程在接收端,发送线程在发送端。2.1.3发送端与接收端的交互  a.发送端询问接收端,是否同意接收文件以及接收端的应答。  b.在传输过程中发送端取消文件发送。  c.在传输过程中接收方取消文件接收。2.2功能1.文件在传输过程时应不影响用户界面其它的操作;2.在正式传输文件前,发送方应先发送请求,接收方可以同意或拒绝文件发送,接收方同意后才

6、能进行传输;3.客户端在文件传输过程中,可以显示文件的信息,如文件名,保存路径,文件大小;以及显示传输进度,如完成的百分比,速度;4.文件在传输过程中接收方和发送方都可以取消文件传输过程;5.可以多个客户端同时向服务器并行发送文件;6.传输过程中,服务器端和客户端可以进行对话。18l功能界面图:图1-1客户端操作界面图1-2服务器操作界面18l客户端的用例图:图1-3客户端用例图客户端用例描述:用例1:连接参与者:客户端用户前置条件:1、启动Client.exe          2、设置好正确的IP地址和端口后置条件:与服务器端建立

7、连接 触发条件:点击“连接”正常流程:1、创建客户端套接字          2、与服务器建立连接          3、初始化套接字 异常流程:1、IP地址为空,提示“IP地址不能为空”          2、客户端连接套接字创建失败,消息对话框提示          3、客户端连接套接字连接失败,消息对话框提示          4、服务器的问题,消息对话框提示§初始化错误§对方没有启动§对方已经关闭§连接的尝试被拒绝18§在一个非套接字上尝试了一个操作§特定的地址已在使用中§与主机的连接被关闭 §一般性错误           

8、用例2:断开参与者:客户端用户 前置条件:与服务器端连接 后置条件:与服务器端断开连接触发条件:点击“断开”正常流程:1、告诉服务器连接被断开             2、关闭客户端套接字            3、弹出

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。