论文部分内容阅读
在当今网络时代,FTP服务已经成为为人们提供数据传输的必要的通信方式。FTP系统通过连接全世界的Internet,实现各种文件的上传、下载和存储处理,将文件送到世界的各个角落,FTP不但能传递一般文件,还可以用来传递声音、图形、图像等不同类型的信息。Linux操作系统自从1991年问世以来,由于其使用灵活、费用低及系统小巧等优点,得到越来越多人的喜爱。其强大、稳定、简洁和高效的特性,也使Linux应用范围日渐扩大。许多IDC服务商均选择了Linux作为服务器操作系统,特别是在国外Linux服务器的占有率居多。所以,对Linux下FTP系统的设计具有很强的理论研究意义和现实研究意义。本次研究是着力设计一个基于Linux的具有基本功能的FTP系统。主要功能包括,上传、下载、用户登录认证和目录文件修改。首先对Linux下FTP系统实现基础进行了分析,包括UBUNTU操作系统、文件系统、TCP/IP网络协议栈的原理,以及其与FTP的接口关系,其中对FTP传输起关键作用的TCP协议做了比较具体的分析;在FTP协议原理部分,我们对FTP的工作模型、FTP的连接过程、FTP的命令与应答处理方法做了详细的介绍,并分析了FTP文件上传与下载的通讯机制。在系统设计实现部分,建立了服务器端和客户端两部分功能模块。在服务器端建立并实现了,用户管理模块、文件处理模块和命令处理模块。概述了FTP协议的由来,分析了FTP的工作模型和FTP的命令与应答的处理方式,以及FTP的控制连接与数据连接的建立方式,包括主动与被动这两种工作方式下的数据连接的建立过程。给出当前在INTERNET上非常流行的匿名FTP及其工作方式。严格遵循FTP的协议规范并结合LINUX平台来实现FTP协议及其应用,包括FTP的连接、文件的传输、主动和被动工作方式、处理客户端命令、进行文件操作等具体内容。并给出了程序流程图及核心部分的代码。通过对FTP系统的功能模块的测试和分析,本系统成功实现了课题的基本要求,能进行用户登录,完成上传下载等基本功能,并实现了与标准FTP程序的互联。