好文档 - 专业文书写作范文服务资料分享网站

在Linux下基于TCP协议的文件传输程序汇总

天下 分享 时间: 加入收藏 我要投稿 点赞

合同协议模板

Linux下基于TCP/IP协议的文件传输程序

【设计目的】

通过Linux C编程,设计一个基于TCP/IP的文件传输系统,实现网络文件的收发 【设计环境】 Ubuntu 12.04 【设计方案】 (1)文件读写

任意文件都可以二进制的方式进行读写,为了实现任意文件类型的传输,在读写文件的过程中,必须采用二进制的读写方式。 (2)传输协议

为了保证数据的正确性,文件传输需要采用一种可靠的传输协议。UDP协议实现比较简单,但UDP面向无连接,传输过程中,会出现丢包的情况,导致数据发送失败。故采用面向连接的TCP/IP协议,防止传输过程中的数据丢失的情况。 (3)大文件的传输

对于比较大的文件,应该进行分包操作,以防止占用过多的内存,导致文件发送失败。 【设计流程】

如图1所示,服务器程序作为文件的发送方。首先,服务器端输入要发送的文件。然后,创建一个流式套接字(SOCK_STREAM),进行绑定。绑定成功后,执行监听,当有客户发送连接请求,执行Accept(),接收来自客户端的请求。

连接建立后,首先服务器向客服端发送的文件的文件名及扩展名等信息。信息发送完毕,服务器方将待发送的数据读入缓冲区,通过套接字将数据发送出去。发送完成后退出,并显示发送完成的信息。

可编辑可修改,欢迎下载

合同协议模板

图1 服务器流程图

如图2所示,客户端程序完成文件的接收操作。首先,创建一个流式套接字。套接字创建成功后,对该套接字进行绑定。绑定成功后,向服务器方发送连接请求。连接成功后,首先,接收服务器发送的文件信息。接收成功后,开始数据的接收。文件接收完毕,显示文件已接收完成。

可编辑可修改,欢迎下载

合同协议模板

图2 客户端流程图

【设计测试】

了验证设计的正确性,在Ubuntu 12.04系统上对可执行文件进行了回环测试。 步骤如下:

(1)测试文件a.txt及服务器端文件源fileserver.c和可执行文件fileserver

可编辑可修改,欢迎下载

在Linux下基于TCP协议的文件传输程序汇总

合同协议模板Linux下基于TCP/IP协议的文件传输程序【设计目的】通过LinuxC编程,设计一个基于TCP/IP的文件传输系统,实现网络文件的收发【设计环境】Ubuntu12.04【设计方案】(1)文件读写任意文件都可以二进制的方式进行读写,为了实现任意文件类型的传输,在读写文件的
推荐度:
点击下载文档文档为doc格式
55nkg16fbg79ew80o94h77xpo584e200qyf
领取福利

微信扫码领取福利

微信扫码分享