基于UDP协议快速文件传输系统设计与实现
[关键词:UDP协议,文件传输] [热度 ]提示:此毕业设计论文完整版包含【论文】 作品编号:rjgc0467,word全文:32页,合计:11000字 |
本文主要解决在使用UDP协议进行文件传输时遇到的网络拥塞,丢包和乱序问题。通过建立socket套接字,对传输速度进行限制,对丢包进行重发,从而实现端到端的文件传输。
服务器端设计I/O复用和多线程用户收发机制,UDP协议的无连接特性相比于TCP可以在资源相同的情况下创建更多用户线程,使用户数量大大提高。客户端将包的收发和文件读写分离,提高收发和读写的效率。
本文所设计的文件传输系统是以Linux内核的机器上实现的,使用C语言[2]进行程序设计。因为C语言面向过程的特性,可以让我们更加清楚地看到在文件传输的过程中系统资源的调度和使用。通过这个程序设计也可以提高对于C语言的认识和运用能力,更加熟悉地运用其的各类函数库,提高自己的逻辑思维的能力。
主要内容
本课题针对socket,通过限定传输速度和设置队列预处理来解决UDP协议进行文件传输时遇到的拥塞问题。通过I/O多路复用完成服务器端的本身命令的响应和对于客户端请求的响应。通过多线程设置增加用户的数量。在客户端设计数据收发和文件读写的分离,提高传输的效率。最终以命令行的形式展示设计。
章节安排
本文的章节安排:
1).第一章作为整体的概述。主要包括研究课题的目的、意义;课题的前景和主要内容。
2).第二章介绍课题中运用的关键的技术。主要包括对于互联网传输层量大协议的简介,以及socket函数库中的函数运用,stat函数库中对于文件的状态操作运用,pthread库中对于线程操作的函数。semaphore库中对于信号量操作的函数,还有一些涉及传输的必要内容。
3).第三章是系统的总体设计,包含了服务器端的设计和客户端的设计和流程,主要描述了系统的功能模板设计。
4).第四章是功能模块的详细设计和实现方法,以及关键代码。
5).第五章是对于整个服务器和客户端设计的总结和对自身工作的总结。
服务端内部流程
服务器端内部设计如图3.2在服务器开启后同时对标准输入和socket描述符进行监听,当标准输入数据可读时,读取当前输入的信息,然后根据该信息进行字符串匹配,找到对应的函数功能命令,并进执行,如输入为退出服务器命令,则服务器端退出,提示服务器退出并且不再继续监听描述符。如果不是退出命令,则执行对应函数,执行完后输出提示结果然后继续监听描述符集合。
当socket描述符有数据可读时,便可以收到来自客户端的信息数据,接收完成后再服务端创建客户端的线程并记录客户端的IP地址和端口号。然后根据接收到的数据包的种类,进行分类处理,处理完毕后调用对应的功能函数对文件进行操作,最后把得到的数据发送给客户端,与客户端进行数据交互,完成交互数据之后,输出数据传输完成提示并关闭这个客户端的线程,然后输出线程关闭提示返回描述符集合继续监听描述符的变化......
提示:此毕业设计论文完整版包含【论文】 作品编号:rjgc0467,word全文:32页,合计:11000字 |
本软件工程毕业设计论文作品由 毕业论文设计参考 [http://www.qflunwen.com] 征集整理——基于UDP协议快速文件传输系统设计与实现(论文)!
-
没有关键字相关信息!