基于UDP的文件传输

2019-07-13 09:08发布

B.1     基于UDP的文件传输


代码下载地址:http://download.csdn.net/detail/xsl1990/4970910

内容:
我们需要在客户和服务器间传送一个文件。 流程: 1.客户端向服务器发送请求的文件名; 2.服务器打开相应的文件,把文件内容读出并传送给客户端; 3.客户端收到数据后把它写入本地文件中; 要求: 完成UDP的客户、服务器程序; 服务器的固定端口号为20000; 文件发送的结束以一个长度为零的UDP报文作为标志; 对于超大文件,要求实现简单的流量控制; 研究每次发送的数据包大小对传输时间的影响。 观察并思考: 按如下要求修改代码,观察并回答如下的问题(套接口函数出错时,输出错误代码): 1.       发送长度为65535(超过UDP最大长度65507)字节的数据,观察结果。 2.       接收端开辟的接收缓冲区(1000字节)小于发送端发送的数据长度(1024字节),观察结果。 3.       根据局域网的最大传输单元(MTU)来设计合适大小的UDP报文是多少? 4.       测试大文件(>100MB)的读取时间,研究块的大小对文件读取是否有影响。[int GetTickCount()可获取时间] 块的大小 1K 10K 50K 100K …   读取时间             5.       研究块的大小对文件传输的影响 块的大小 1K 10K 50K 100K …   读取传输时间             6.       其它您有疑问的地方?
基于udp文件传输  代码比较简单   就是添加了一些文件操作的内容 原理图如下:



服务器:





实验效果图如下: 现在服务器输入你要写入的空白文件 注意路径的输入形式 D:\********
服务器效果图:


客服端图:



路径输入顺序: 先在服务器端输入文件路径  也就是空白的文件路径 再在客户端输入传送的文件路径 具体代码  这里就不给出了
稍后给出下载地址