在Linux下基于TCP协议的文件传输程序.docxVIP

  • 8
  • 0
  • 约5.05千字
  • 约 11页
  • 2020-12-31 发布于天津
  • 举报

在Linux下基于TCP协议的文件传输程序.docx

Linux下基于TCP/IP协议的文件传输程序 【设计目的】 通过Linux C编程,设计一个基于 TCP/IP的文件传输系统,实现网络文件的收发 【设计环境】 Ubu ntu 12.04 J 【设计方案】 (1 )文件读写 任意文件都可以二进制的方式进行读写, 为了实现任意文件类型的传输,在读写文件的过程 中,必须采用二进制的读写方式。 (2 )传输协议 为了保证数据的正确性,文件传输需要采用一种可靠的传输协议。 UDP协议实现比较简单, 但UDP面向无连接,传输过程中,会出现丢包的情况,导致数据发送失败。故采用面向连 接的TCP/IP协议,防止传输过程中的数据丢失的情况。 (3)大文件的传输 对于比较大的文件,应该进行分包操作,以防止占用过多的内存,导致文件发送失败。 【设计流程】 如图1所示,服务器程序作为文件的发送方。首先,服务器端输入要发送的文件。然后, 创建一个流式套接字(SOCK_STREAM),进行绑定。绑定成功后,执行监听,当有客户发 送连接请求,执行 Accept(),接收来自客户端的请求。 连接建立后,首先服务器向客服端发送的文件的文件名及扩展名等信息。 信息发送完毕,服 务器方将待发送的数据读入缓冲区, 通过套接字将数据发送出去。发送完成后退出,并显示 发送完成的信息。 图1服务器流程图 如图2所示,客户端程序完成文件的接收操作。首先,创建一个流式套接字。

文档评论(0)

1亿VIP精品文档

相关文档