文档库 最新最全的文档下载
当前位置:文档库 › 文件传输课程设计

文件传输课程设计

文件传输课程设计
文件传输课程设计

能可靠工作的文件传输工具

1 理论知识(一级标题,黑体四号,加粗,单倍行距,段前后6磅)

1.1 传输文件工具工作原理分析(二级标题,宋体四号,加粗,单倍行距,段前后6磅)

程序使用的是基于TCP/IP的协议,用套接字来实现文件的传输。

1.1.1 TCP/IP的网络体系结构

TCP/IP协议采用层次体系结构,如图2所示,从图中可以看出,每一层在逻辑上都与通信端的对应层相连接。图中所示的服务器程序持续监听通信客户端;客户端仅周期性地与服务器相连接以交换数据,其中TCP协议层提供相当于OSI参考模型中传输层的服务,为收、发端应用程序提供通信;IP协议层负责提供统一的数据报;链路层主要功能是收、发IP层的IP数据报;TCP/IP之上是该协议提供的各种服务,而底层网络可以是不同的物理网络,如Ethernet、Token Ring、X.25公共分组交换网等。

图1 TCP/IP协议层模型(LAN)

1.1.2 套接字(Sockets)

套接字(Sockets)最早是由Berkeley大学提出在UNIX操作系统下实现TCP/IP通信协议的开发接口,随着Internet在全球范围内的广泛使用,Sockets已成为网络编程的通用接口。Microsoft公司以Sockets为基础开发的Winsock建立了Windows环境下网络间的编程接口。

套接字是对网络中不同主机上应用进程之间进行双向通信的端点的抽象,一个套接口就是网络上进程通信的一端,提供了应用层进程利用网络协议栈交换数据的机制。套接字可以分为流式套接字(Stream Sockets)、数据报套接字(Datagram Sockets)和原始套接字(Raw Sockets)。流式套接字最常用的套接字,提供面向连接的、无差错的、发送顺序一致的、包长度不限和非重复的网络信息的传输;数据报套接字提供无连接的服务,以独立的数据报进行传输,不保证顺序性、可靠性和无重复性;原始套接字提供对

下层网络的通信协议的访问,主要用于开发新的协议或用于提取较隐蔽的功能。

在程序设计中我们选择流式套接字搂完成C/S模式的通信,保证数据能够准确、无误的传输。图2所示的是流式套接字的基本通信方式。

图2 面向连接的流方式

1.2.3 传输原理

应用程序的网络通信是利用相同的通途协议来完成信息的传输。应用程序和Winsock都是工作在Windows的用户模式下,操作系统不仅仅通过Winsock,还需要底层的支持。套接字仿真器(套接字核心驱动程序)和传输驱动程序接口,起到了Winsock 和传输协议之间的通信桥梁作用。如图3所示,Winsock是网络通信应用程序于套接字仿真器间的接口,TDI是套接字仿真器和传输协议间的接口套接字核心模式,驱动程序复杂连接和缓冲区管理,以便向应用程序提供套接字仿真(在AFDSYS文件中实现),同时负责与底层传输驱动程序对话传输驱动程序接口(TDI)负责核心模式驱动程序与传输协议间的通信。

图3 套接字通信机制示意图

当应用程序利用Winsock发送和接收数据时,是由核心模式驱动程序AFDSYS负责管理发送和接收缓冲区来发送和接收数据。当应用程序调用send或WSASend函数来发送数据时,AFDSYS在后台负责把数据复制进他自己的发送缓冲区,然后send或WSASend函数立即返回,AFDSYS在后台把数据发送出去,远程客户端接收数据的情况也类似,由接收方的AFDSYS在后台负责把数据复制到自己的接收缓冲区,然后应用程序调用recv或WSARecv函数来接收数据时,把数据由AFDSYS管理的接收缓冲区复制到应用程序提供的缓冲区中。

AFDSYS管理的发送缓冲区SO-SNDBUF和接收缓冲区SO-RECVBUF在缺省时两个缓冲区的大小都为8,192个字节,但可以根据实际要求由应用程序设定,由于我们传输的对象是大数据量文件,因此需要对系统的发送缓冲区和接收缓冲区作相应的设定,以保障大数据量的文件数据的发送的接收。

1.2 问题的分析

1.2.1 通信的模式

由于是实现点对点的文件传输,因此在程序中我们使用的是C/S的模式来实现通信。对于C/S的模式,即分为客户端和服务端。服务端用来接收客户端的连接,实现两端之间互相传输文件。采用C/S的模式可以更好的体现程序的功能设计思想,充分调用在LAN中的server和client两方面的处理能力,极大的减少网络上的信息流通量。C/S体系结构有可能提供一种开放式的、易伸缩扩展的分布式计算机环境,并保护硬件等投资。

1.2.2 传输的可靠性

要想实现文件的可靠性传输,可以使用流式套接字。因为流式套接字提供面向连接的、无差错的、发送顺序一致的、包长度不限和非重复的网络信息的传输,能提供更好的可靠性。而对于数据报套接字提供的是无连接的服务,以独立的数据报进行传输,不保证顺序性、可靠性和无重复性,相比之下用流式套接字能提供更好的的可靠性传输。

2 程序设计与实现

2.1 程序设计

2.1.1 总体设计

本程序的文件传输系统的实现应包含服务端模块、客户端模块、界面显示模块等几个部分,整个程序采用VC++6.0完成,通信部分采用WINSOCK。程序使用流式套接字,基于C/S模型。在设计GUI界面时把客户端和服务端放在一个界面中,根据用户需要将程序设置成客户端和服务端。服务器和客户机的基本流程如图4所示。

在通信的时候主要可以分为两个部分,一个部分是控制信息的传输部分,而另一个部分就是文件的传输部分。传送的控制信息可以包含发送文件的请求,文件的名称、大小等,由于这方面的数据量比较小,因此采用了MFC 所提供的CSocket 类的串行化技术来实现。对于文件的传输,由于数据量相对来说比较大,所以用两个线程来实现文件的传输,一个线程用于发送,一个线程用于接收。图5是一个成功的文件传输过程的流程。

SendMsg

图4 服务器和客户机的基本流程

创建CServerSocket 类的对象

将sockets 与本地IP 和相应的端口绑定

Listen(),监听来自客户端的连接

创建CClientSocket 类的对象

Connect(),将套接字与服务器相连

接收客户端的连接请求

是否有建立连接?

为客户端建立连接

不为客户端建立连接,显示错误信息

ReceiveMsg/()SendMsg(),在套接字上收发信息 ReceiveMsg/()SendMsg(),在套接字上收发信息

是否有连接到服务器?

显示错误信息

服务器 客户机

图5 文件传输过程交互图

2.1.2 模块设计

(1)服务端模块

定义一个服务器端的套接字的类CServerSocket继承于CSocket类,创建一个类CServerSocket的对象,作为程序窗口类CFileTransfersDlg的成员变量。在服务器端建立一个类CServerSocket的对象,来监听客户端的连接。由于采用CSocket类的串行化技术来发送和接收信息,因此创建一个消息类CMessage继承类CObject来封装信息。可用函数Serialize(CArchive& ar)来实现串行化技术。最后用析构函数来结束Socket 连接

和释放Socket所占用的资源。

(2)客户端模块

定义一个客户端的套接字的类CClientSocket继承于CSocket类,创建一个类CClientSocket的对象,作为程序窗口类CFileTransfersDlg的成员变量。在客户器端建立一个类CClientSocket的对象,来与服务器建立连接。同服务器端一样使用消息类

CMessage封装信息,从而实现消息的接收和发送。可用函数Serialize(CArchive& ar)来实现串行化技术。最后用析构函数来结束Socket 连接和释放Socket所占用的资源。(3)界面显示模块

面向对象程序设计主要是基于用户事件响应的设计方式。而客户端图形界面(GUI)设计的中心问题是用户控制式。现代面向对象程序是事件驱动的,对象响应事件(消息)。对象之间的内部通信由外部用户激活的事件来触发。友好的界面设计包括以下六点方针,包括用户控制式、一致性、个性化和客户化、宽容、反馈。由于客户端程序与服务器程序很类似,所以就把客户端与服务器端打包在一起,通过按钮选择就可以确定本地主机是客户端还是服务器端了,而且这样也方便了文件的互传,只要安装了此软件,你既可以把本地主机当做服务器向远地主机发送文件,又可以把本地主机当做客户机接受从远地主机发来的文件。本程序的服务器的GUI界面如图6所示,客户机的GUI界面如图7所示。

图6 服务器的GUI界面

图7 客户机的GUI界面

2.2 程序的实现及测试情况

2.2.1 程序的实现

(1)实现步骤

①建立一个新工程FileTransfers

使用MFC AppWizard (exe) 建立一个新项目FileTransfers,选择基于对话框的应用,并在向导的第四步中,选择“Windows Socket”选项。

②建立所需的文件

程序中所需的文件如下:

头文件:

ClinetSocket.h

ServerSocket.h

Message.h

MyFileTrans.h

MyFileTransDlg.h

Resource.h

Stdafx.h

源文件:

CClinetSocket.cpp

CServerSocket.cpp

Message.cpp

FileTransfers.cpp

MyFileTrans.rc

MyFileTransDlg.cpp

stdafx.cpp

资源文件:

MyFileTrans.ico

MyFileTrans.rc2

(2)程序的使用

运行此软件后,首先要在界面上选择的是套接字类型,是服务器还是客户机。在服务器启动后,客户机中输入服务器的IP地址就可以连接到服务器。当连接成功后,就可以在传送端(服务器/客户机)选择要传输的文件,然后我们就可以在接收端(客户机/服务器)保存此文件。

2.2.2 程序的测试

(1)运行软件,选择套接字类型为服务器,然后点击“启动”按钮开启服务器,监听客户端的连接,如图8。

图8 服务器启动后的界面

(2)在运行软件,选择套接字类型为客户机,然后点击“连接”按钮连接到服务器,建立与服务器的连接,如图9。

图9 客户机启动后的界面

(3)在服务器端点击“选择文件”按钮,在弹出的窗口中选择要传输的文件(也可以在客户机中点击“选择文件”按钮来向服务器传输文件)。服务器端的操作如图10。

图10 服务器选择传输的文件

(3)在图10中点击“打开”后,在客户机中可以看到,如图11的结果。即客户机接收到服务器发来的请求,提示文件要保存的路径。

图11 客户机保存传输的文件

(4)在图11中点击“保存”后,在客户机和服务器中可以看到文件传送和接收的进度,如图12和图13。

图12 文件的传送进度

图13 文件的接收进度

(5)测试结果

比较发送的文件和接收的文件的大小。从图14可以看出,文件的长度和收到的长度大小相等,因此该程序实现了文件的可靠性传输。

图14 文件接收结果

参考文献

[1] 梁敏,陈万军.用于实现基于TCP/IP的局域网内点对点的大文件传输[J].西北民族大

学学报,2005年,26卷(期刊).

[2] 夏靖波,杜华桦,王晓东,段.Windows网络程序设计[M].西安:西安电子科技大学

出版社,2006.

[3]百度文库.基于Visual C++6.0的点对点文件传输实现[C] .

https://www.wendangku.net/doc/a39439809.html,/view/e23f441b6bd97f192279e933.html,2010-05-05

参考文献通常应为近3年的,至少5篇,其中最好有英文文献。其具体写法为:

1. 专著、论文集、毕业论文、报告等

[序号]作者.书名[文献类型标志].出版地:出版者,出版年.起止页码(任选).(文献类型标志:专著M;论文集C;报告R;其它文献Z)

2. 期刊

[序号]作者.篇名[J].刊名,年,卷(期刊).

3. 电子文献

[序号]主要责任者.电子文献题名[文献类型/载体类型] .电子文献的出版或可获得地址,发表或更新的期/引用日期(任选).

(文献类型标志:数据库(网上)DB(DB/OL);计算机程序(磁盘)CP(CP/DK);

光盘图书M/CD)

附录

程序的源代码

//ClientSocket.h

#if !defined(AFX_CLIENTSOCKET_H__E3382998_1502_46F5_B0EA_C52542E7F4F5__I NCLUDED_)

#define

AFX_CLIENTSOCKET_H__E3382998_1502_46F5_B0EA_C52542E7F4F5__INCLUDED _

#if _MSC_VER > 1000

#pragma once

#endif// _MSC_VER > 1000

#include"FileTransfersDlg.h"

#include"Message.h"

class CClientSocket : public CSocket

{

public:

CClientSocket();

virtual ~CClientSocket();

public:

CSocketFile* m_pFile;

CArchive* m_pArchiveIn;

CArchive* m_pArchiveOut;

void Init();

void Abort();

BOOL SendMsg(CMessage* pMsg);

void ReceiveMsg(CMessage* pMsg);

CClientSocket(CFileTransfersDlg* pdlgMain);

public:

virtual void OnReceive(int nErrorCode);

protected:

CFileTransfersDlg* m_pdlgMain;

};

#endif

//ServerSocker.h

#if !defined(AFX_LISTENSOCKET_H__9020F185_706C_4AAC_8CDE_DFC8F9DAD490__INCLUDED_) #define AFX_LISTENSOCKET_H__9020F185_706C_4AAC_8CDE_DFC8F9DAD490__INCLUDED_

#if _MSC_VER > 1000

#pragma once

#endif// _MSC_VER > 1000

#include"MyFileTransDlg.h"

class CServerSocket : public CSocket

{

// Attributes

public:

// Operations

public:

CServerSocket();

virtual ~CServerSocket();

// Overrides

public:

CServerSocket(CFileTransfersDlg* pdlgMain);

// ClassWizard generated virtual function overrides

//{{AFX_VIRTUAL(CServerSocket)

public:

virtual void OnAccept(int nErrorCode);

//}}AFX_VIRTUAL

// Generated message map functions

//{{AFX_MSG(CServerSocket)

// NOTE - the ClassWizard will add and remove member functions here.

//}}AFX_MSG

// Implementation

protected:

CFileTransfersDlg* m_pdlgMain;

};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCA TION}}

// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif// !defined(AFX_LISTENSOCKET_H__9020F185_706C_4AAC_8CDE_DFC8F9DAD490__INCLUDED_)

其它说明:

(1)文档页面设置为:上边距3厘米,下边距2.5厘米,左边距3厘米,右边距2厘米,如下图所示。

(2)文档一律用Word 2000版本以上编辑和排版,激光打印机、A4纸张打印。其中,封面、目录、评审表单面打印,正文双面打印。

(3)文档的装订顺序为:封面、评审表、目录、正文。若文档的最后一面的页码为偶数,则装订时要加装一张白纸。

(4)在Word中插入图片后,不要对图进行长宽方向的非比例缩放。在图上单击右键,在快捷菜单中选择“设置图片格式”命令,打开“设置图片格式”对话框,然后在其中的“大小”选项卡中设置图片高度为70%~80%(根据图片的具体大小确定,一般全屏图设为70%,对话框等其他图可设为80%,使图中文字经缩放后为6号字大小)。

(5)图表编号及章节标题编号不使用Word的自动编号功能。

(6)不要用空格或添加回车键的方式来调整对齐或上下间隔,而应该使用Word 自带的段落命令及分隔符等命令来调整。各级标题末尾不要加标点符号。

(7)不出现孤立编号,例如,不出现只有1.4.1而无1.4.2等后续编号的情况。

(8)表示数值范围用“34~56”,不用“34—56”。

(9)对于文档的正文部分,需在页脚部分设置页码,详见本文档中的第5、6页。

文件传输协议的(C语言)实现

课程设计:FTP的设计与实现 一、目的 Internet提供了很多类型的网络服务,这些服务实际上都是应用层的服务。FTP服务是基于TCP协议的网络服务。 文件传送是各种计算机网络都实现的基本功能,文件传送协议是一种最基本的应用层协议。通过完成一个文件传送协议FTP的实现,学会利用已有网络环境设计并实现简单应用层协议,掌握TCP/IP网络应用程序基本的设计方法和实现技巧。 二、内容和要求 每两人一组,分别实现FTP协议客户端程序和服务器程序。 客户端程序具有文件列表、下载文件、上传文件等常用功能。服务器程序支持改变工作目录、文件列表、下载文件等常用的服务。 因为FTP协议比较复杂,为了简单起见,客户端只实现FTP客户端协议的一个子集,总的来说有以下几个功能: ●连接到指定的FTP服务器; ●断开和主机的连接; ●进入子目录; ●退出子目录; ●列出服务器当前目录下的所有文件 ●从服务器下载指定的文件到本地(可以同时指定多个文件连续下载) ●从本地上传指定的文件到服务器 实现以上几个功能时会涉及到下面的几个FTP命令: ●USER username ●PASS password ●CWD directory-name ●PORT host-port ●TYPE A or I ●RETR filename

●STOR filename ●LIST directory 用户界面应该能够为程序输入下面的信息: ●服务器主机名 ●用户名、口令 ●数据的传送类型 ●要进入的服务器目录 ●要下载的远程文件名 ●要上载的本地文件名和远程文件名 同时,界面也为用户输出以下的信息: ●FTP服务器上的文件和目录列表 ●从服务器返回的应答 使用Socket进行Client/Server程序设计的一般连接过程是这样的:Server端Listen(监听)某个端口是否有连接请求,Client端向Server端发出Connect(连接)请求,Server端向Client端发回Accept(接受)消息。一个连接就建立起来了。Server端和Client端都可以通过Send,Write等方法与对方通信。 对于一个功能齐全的Socket,都要包含以下基本结构,其工作过程包含以下四个基本的步骤: (1)创建Socket; (2)打开连接到Socket的输入/出流; (3)按照一定的协议对Socket进行读/写操作; (4)关闭Socket. 第三步是程序员用来调用Socket和实现程序功能的关键步骤,其他三步在各种程序中基本相同。 /****************client.c****************/ #include #include #include #pragma comment(lib,"ws2_32.lib") #define DEFAULT_PORT 2302 #define DEFAULT_BUFFER 2048 #define DEFAULT_MESSAGE "This is a test of the emergency \ broadcasting system" char szServerip[128], // Server to connect to szMessage[1024]; // Message to send to sever int iPort = DEFAULT_PORT; // Port on server to connect to //DWORD dwCount = DEFAULT_COUNT; // Number of times to send message BOOL bSendOnly = FALSE; // Send data only; don't receive int dirfun();

文件传输系统的设计与实现.

JISHOU UNIVERSITY 专业课课程论文 文件传输系统的设计与实现题目: 作者: 学号: 所属学院:信息科学与工程学院 专业年级:计算机科学与技术 总评分: 完成时间:

文件传输系统的设计与实现 摘要 互联网的一大特点是实现信息共享,文件传输是信息共享的十分重要的内容之一。随之出现了许多FTP服务器来共享一些信息资源,编写一个操作简单,方便的FTP客户端来下载这些资源受到了人们的极大的欢迎。 FTP是一种用于在网上传输文件的协议,从原理上说,FTP是一个客户/服务器模式的应用协议。它用两个连接来实现:一个是控制连接,用来连接服务器和实现文件操作;一个是数据连接,用来实现数据传输。FTP的实现核心是命令/应答模式,FTP客户端将用户的所有FTP相关请求都转化为FTP服务器可识别的命令,然后发送到服务器,并接收和处理执行完毕后服务器传回的应答。 本程序是一个小型FTP服务器系统,实现了FTP服务器所应该具备的大多数功能,包括用户的登录,文件的上传、下载、删除,选择数据传输模式、目录选择等,并给出相应的提示。通过该程序的开发,基本上实现了一个FTP服务器所应该具有的功能,能够解释一般的FTP命令,并且符合RFC59规范。 本程序采用VC++6.0作为开发工具,设计步骤采用自顶向下的方法。 关键词:客户端;服务器;下载;上传;FTP

目录 第一章引言 (1) 1.1课题背景及意义 (1) 1.2课题研究现状 (1) 1.3研究内容 (2) 第二章FTP协议与原理 (3) 2.1 FTP简介 (3) 2.2 FTP的工作原理 (3) 2.3 FTP运行原理 (4) 2.4 FTP文件传输连接类型 (4) 第三章开发环境及工具介绍 (6) 3.1 C语言概述 (6) 3.2 VC++介绍 (6) 3.3 VC++6.0集成环境介绍 (6) 第四章FTP服务器需求分析 (8) 4.1 FTP文件传输的需求 (8) 4.2应解决的问题 (9) 4.3功能分析 (9) 第五章系统设计与实现 (10) 5.1功能要求 (10) 5.2开发工具 (10) 5.3主要功能与实现 (11) 5.4 菜单栏功能模块 (11) 5.5 查看功能模块 (13) 第六章系统测试 (18) 6.1系统可能出现的问题与不足 (18) 6.2 采用的测试类型 (18) 6.3 测试的过程与结果分析 (18) 总结 (20) 参考文献 (21)

职工管理系统java课程设计简单实现

目录 一、绪论 (1) 1.1关键技术介绍 (1) 1.1.1JAVA技术 (1) 1.1.2SQL数据库 (1) 二、需求分析 (2) 三、系统概要设计: (3) 3.1问题描述 (3) 3.2要求 (3) 3.3数据库设计 (3) 四、系统详细设计 (5) 4.1新员工信息录入 (5) 4.2显示员工信息 (7) 4.3修改员工信息 (8) 4.4查询员工信息 (10) 4.5删除员工信息 (13) 4.6员工信息排序 (15) 4.7员工信息统计 (16) 4.8注销 (17) 五、系统测试 (18) 5.1系统登录 (18) 5.2系统主界面.................................. 错误!未定义书签。 5.3新员工信息录入.............................. 错误!未定义书签。 5.4显示员工信息................................ 错误!未定义书签。 5.5修改员工信息................................ 错误!未定义书签。 5.6查询员工信息................................ 错误!未定义书签。 5.7删除员工信息................................ 错误!未定义书签。 5.8排列系统.................................... 错误!未定义书签。 5.9统计界面.................................... 错误!未定义书签。

5.10注销....................................... 错误!未定义书签。 六、总结 (19) 八、附录.......................................... 错误!未定义书签。

文件加密与解密—Java课程设计报告

JAVA课程设计题目:文件的加密与解密 姓名: 学号: 班级: 日期:

目录 一、设计思路 (3) 二、具体实现 (3) 三、运行调试与分析讨论 (8) 四、设计体会与小结 (11) 五、参考文献 (12) 六、附录 (12)

一、设计思路 自从Java技术出现以业,有关Java平台的安全性用由Java技术发展所引发的安全性问题,引起了越来越多的关注。目前,Java已经大量应用于各个领域,研究Java的安全性对于更好地利用Java具有深远的意义。使用Java的安全机制设计和实现安全系统更具有重要的应用价值。 本课程设计,主要实践Java安全中的JCE模块,包括密钥生成,Cipher对象初始化、加密模式、填充模式、底层算法参数传递,也涉及文件读写与对象输入输出流。 二、具体实现 本系统通过用户界面接收三个参数:明文文件、密文文件、口令。采用DES加密算法,密码分组链(Cipher Block Chaining,CBC)加密模式,PKCS#5-Padding的分组填充算法。因为CBC涉及到底层算法参数的解密密钥的传递,所以将明文文件中的字节块以密封对象(Sealed Object)的方式加密后,用对象流输出到密文文件,这样就将密文、算法参数、解密密钥三都密封到一个对象中了。口令的hash值作为产生密钥的参数。设计流程图如下所示: 文件加密与解密设计流程图

本系统中,包含Default,Shares,SecretKey,EncAndDec四个包共6个类组成。定义的几个参数:MAX_BUF_SIZE为每次从文件中读取的字节数,也是内存缓冲区的大小;加密算法为DES;加密模式是密码分组链(CBC)模式;分组填充方式是PKCS#5Padding。包和类结构图如下所示: 本课程设计,包和类结构图: 以下为包中的类的方法实现说明 Package Shares类结构图

文件传输协议的简单设计与实现(c语言.

文件传输协议的简单设计与实现(c语言,VC6.0) 使用Socket进行Client/Server程序设计的一般连接过程是这样的:Server端Listen(监听)某个端口是否有连接请求,Client端向Server端发出Connect(连接)请求,Server端向Client端发回Accept(接受)消息。一个连接就建立起来了。Server端和Client端都可以通过Send,Write等方法与对方通信。 对于一个功能齐全的Socket,都要包含以下基本结构,其工作过程包含以下四个基本的步骤: (1)创建Socket; (2)打开连接到Socket的输入/出流; (3)按照一定的协议对Socket进行读/写操作; (4)关闭Socket. 第三步是程序员用来调用Socket和实现程序功能的关键步骤,其他三步在各种程序中基本相同。 /****************client.c****************/ #include #include #include #pragma comment(lib,"ws2_32.lib") #define DEFAULT_PORT 2302 #define DEFAULT_BUFFER 2048 #define DEFAULT_MESSAGE "This is a test of the emergency \ broadcasting system" char szServerip[128], // Server to connect to szMessage[1024]; // Message to send to sever int iPort = DEFAULT_PORT; // Port on server to connect to //DWORD dwCount = DEFAULT_COUNT; // Number of times to send message BOOL bSendOnly = FALSE; // Send data only; don't receive int dirfun(); int getfun(); int putfun(); int pwdfun(); int cdfun(); int mdfun();

JAVA课程设计银行管理系统

大连科技学院java程序设计课程设计(B) 题目银行取款管理系统 学生姓名姚伟奇专业班级计算机(Z)13-1 指导教师李红职称讲师 所在单位信息科学系软件工程教研室 教学部主任王立娟 完成日期 2016年9月30日 课程设计报告单

综合评定: (优、良、中、及格、不及格)指导教师签字:2016年9月30日《java程序设计课程设计(B)》任务书 一、课程设计任务及要求: 任务:针对小型信息管理系统或若干综合性设计题目,选择一种软件开发模型,完成从需求分析、系统设计、系统实现,软件测试的全过程。 要求: (1) 根据软件系统开发的一般原则,完成相应系统的功能设计,完成主要功能模块的程序实现并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行,但所有学生必须经历整个系统的开发全过程,以便加深对系统开发全过程的认识。 (2)提交课程设计报告。 (3)指标: 要求完成课程设计报告3000字以上(约二十页);完成所设计的题目,设计题目的语句行数的和在200行语句以上。 二、工作量 2周(10个工作日)时间 三、计划安排 第1个工作日:查找相关资料、书籍,阅读示例文档,选择题目。 第2个工作日-第4个工作日:设计程序结构、模块图。 第5个工作日-第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。 第10个工作日:上交课程设计报告,由教师检查软件测试效果、检查课程设计报告,给出学生成绩。

指导教师签字:2016年9月19日

目录 题目:.................................................... 错误!未定义书签。 1.需求分析............................................ 错误!未定义书签。 2.概要设计............................................ 错误!未定义书签。 3.详细设计............................................ 错误!未定义书签。 4.编码................................................ 错误!未定义书签。 5.调试分析............................................ 错误!未定义书签。 6.测试结果及运行效果.................................. 错误!未定义书签。 7.系统开发所用到的技术................................ 错误!未定义书签。 8.课程设计总结........................................ 错误!未定义书签。参考文献................................................. 错误!未定义书签。5 附录全部代码............................................. 错误!未定义书签。

文件传输协议(FTP)

文件传输协议(FTP) 文件传输协议(File Transfer Protocol,FTP)是一个被广泛应用的协议,它使得我们能够在网络上方便地传输文件。早期FTP并没有涉及安全问题,随着互连网应用的快速增长,人们对安全的要求也不断提高。本文在介绍了FTP协议的基本特征后,从两个方面探讨了FTP安全问题的解决方案:协议在安全功能方面扩展;协议自身的安全问题以及用户如何防范之。 1. 简介 1.1 FTP的一些特性 早期对FTP的定义指出,FTP是一个ARPA计算机网络上主机间文件传输的用户级协议。其主要功能是方便主机间的文件传输,并且允许在其他主机上进行方便的存储和文件处理。[BA72]而现在FTP的应用范围则是Internet。 根据FTP STD 9定义,FTP的目标包括:[PR85] 1) 促进文件(程序或数据)的共享 2) 支持间接或隐式地使用远程计算机 3) 帮助用户避开主机上不同的 4) 可靠并有效地传输数据 关于FTP的一些其他性质包括:FTP可以被用户在终端使用,但通常是给程序使用的。FTP中主要采用了传输控制协议(Transmission Control Protocol,TCP)[PJ81],和Telnet 协议[PJ83]。 1.2 重要历史事件[PR85] 1971年,第一个FTP的RFC(RFC 114)由A.K. Bhushan在1971年提出,同时由MIT 与 Harvard实验实现。 1972年,RFC 172 提供了主机间文件传输的一个用户级协议。 1973年2月,在长期讨论(RFC 265,RFC 294,RFC 354,RFC 385,RFC 430)后,出现了一个官方文档RFC 454。 1973年8月,出现了一个修订后的新官方文档 RFC 542。确立了FTP的功能、目标和基本模型。当时数据传输协议采用NCP。 1980年,由于底层协议从NCP改变为TCP,RFC 765 定义了采用TCP的FTP。 1985年,一个作用持续至今的官方文档RFC 959(STD 9)出台。

加密解密课程设计

兰州商学院陇桥学院工学系课程设计报告 课程名称: Java 设计题目:加密与解密 系别:工学系 专业 (方向):信息管理与信息系统 年级、班:2012级(2)班 学生姓名:费亚芬 学生学号: 208

指导教师:张鑫 2014年7 月 1日 目录 一、系统开发的背景................................. 错误!未定义书签。 二、系统分析与设计................................. 错误!未定义书签。(一)............................................. 系统功能要求错误!未定义书签。(二)......................................... 系统模块结构设计错误!未定义书签。 三、系统的设计与实现............................... 错误!未定义书签。(一)图形用户界面模块 ........................... 错误!未定义书签。(二)加密操作模块 ............................... 错误!未定义书签。 (三)解密操作模块................................ 错误!未定义书签。(四)文件保存模块 ............................... 错误!未定义书签。

(五)文件选择模块 ............................... 错误!未定义书签。 四、系统测试....................................... 错误!未定义书签。(一)测试加密..................................... 错误!未定义书签。(二)测试选择加密文件............................. 错误!未定义书签。(三)测试生成加密文件............................. 错误!未定义书签。(四)测试浏览加密文件............................. 错误!未定义书签。(五)测试解密文件................................. 错误!未定义书签。 五、总结........................................... 错误!未定义书签。 六、附件(代码、部分图表) ......................... 错误!未定义书签。

(完整)实验一-文件传输协议设计要点

实验一:文件传输协议的设计与实现

目录 1.实验设计目的和要求 2.背景知识 3.课程设计分析 4.程序清单 5.运行结果 6.总结

1.课程设计目的和要求 文件传输是各种计算机的网络的基本功能,文件传送协议是一种最基本的应用层协议。它是按照客户或服务器模式进行的工作,提供交式的访问。是INTERNRT使用最广泛的协议之一。以及深入了解计算机网络是建立在TCP/IP网络体系结构上。 用 socket 编程接口编写俩个程序,分别为客户程序和服务器程序 1.掌握TCP/IP 网络应用程序基本的设计方法; 2.用socket 编程接口编写两个程序,分别为客户程序(client.c)和服务器程序(server.c); 3.撰写课程设计说明书。装订后的课程设计说明书不少于10面(含封面、任务书、目录、正文、参考文献、成绩评定表、封底)。 2.背景知识 第一个FTP的RFC由A.K.Bhushan 在1971年提出,同时由MIT 与Harvard实验实现,RFC 172提供了主机间文件传输的一个用户级协议。长期发展过程由于底层协议从NCP改变为TCP,RFC765定义了采用TCP的FCP. FTP协议在今天已经发展成熟,应用也越来越广很多开发的比较成熟的FTP 客户端软件已经得到了广泛的应用. 3.课程设计分析 Server端Client端 创建ServerSocket对象,在某端口提供监听服务Client端 等待来自Client端的服务请求 接受Client端的请求,用返回的创建Socket对象,向Server Socket建立连接的监听端口请求 通过向Socket中读写数据来通过向新的Socket中读写数 与Client端通信据来与Server端通信 关闭Socket,结束与Server端的通信关闭

计算机网络文件传输及管理系统课程设计报告

目录 摘要 (3) 第一章课程设计要求 (4) 一、设计任务 (3) 1.1.1 课程设计内容 (3) 1.1.2、课程设计的基本要求 (3) 二、设计基本思路及相关理论 (3) 1.2.1、TCP/IP协议 (3) 1.2.2、客户机/服务器模型 (4) 1.2.3、设计基本思路 (4) 第二章设计概要 (5) 2.1 功能设计 (5) 2.2 程序系统功能模块 (6) 2.3 功能分析 (7) 2.3.1 功能流程图: (7) 2.3.2 程序主要功能说明 (7) 第三章调试分析与测试结果 (23) 3.1服务器端与客户端 (23) 3.2文件管理的过程 (26) 第四章设计总结 (28) 参考文献 (28) 课程设计评分表 (30)

摘要 网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。 Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。常用的Socket类型有两种:流式Socket (SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。 Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 关键字:Socket、文件传输、多线程

java课程设计题目

java课程设计题目 设设HoMEWORK2012-02-2819:23 要求设明, 1.人一设~每设设设设一设目~如果列出多版本~只需要完成其中一版本两个个个即 可 2.由设委设设设设设各设设及其设目~下周以设子模式提交设目列表名设学档 3.每设必设完成相设的UML设;至少需要包括用例设、设设、设序设或者设作设,~UML 设可有Visio或者Rose或者StarUML或其他设似的工具完成 4.第六周设始机抽设设大家演示设述从随 设目列表如下, 1.打字游设(JavaGUI本地版/JSP版本/Javascript) 2.设文件设行明文加密(JavaGUI本地版) 3.在设设店设设站网(WEB版本) 4.5子棋游设(设版网/WEB版) 5.俄设斯方设(设版网/WEB版) 6.音设播放器(JavaGUI本地版) 7.设子相册(JavaGUI本地版) 8.多人聊天室((JavaGUI本地版/WEB版)9.模设考设系设(WEB版) 10.克游设扑(JavaGUI本地版/WEB版) 设设设明, 1.打字游设(JavaGUI本地版/JSP版本/Javascript)

设设背设设和打字速度, 可根据一片文章自设设入设设 整设设下落或者淡入淡出个 同设多设设出设个 设设入设设的设设分析设设功能 设分 2.设文件设行明文加密(JavaGUI本地版) DEC加解密,需要密设~可以解密 3.在设设店设设站网(WEB版本) 设设目的目的是设设一设合站~设设《在设设店》的基本功能~如管理设设~上设个网网 售网设设等功能。要求站能设布到Internet上。设站采用网 Jsp+JavaBean+JDBC+MySql|SQLServer等技设架~服设器端采用框Tomcat服设器。 4.5子棋游设(设版网/WEB版) 设设程序~完成下述功能,在大于9设的方形格棋设上~放置黑白色棋子条网两~两网弈两条人各设一色~通设设设~可以在任何设的交点上放置棋子~同色棋子~先同行、同列或者同设角设上5设设成一设者设设。条 5.俄设斯方设(设版网/WEB版) 设设程序~完成下述功能, 完成一可以人通设设设设的俄设斯方设游设~每一方都可以在自己的幕个两个网屏 上看到设方的前游设~游设先设束的一方设失设者当状况 6.音设播放器(JavaGUI本地版)

计算机网络课程设计报告文件传输协议的简单实现

课程设计 课程名称计算机网络课程设计 题目名称文件传输协议的简单设计与实现学生学院 专业班级___ _ 学号 学生姓名______ _________ 指导教师______ _____ 2010 年 1 月 5 日

设计摘要 关键词:SOCKET编程,FTPclient/server程序 摘要:本课程设计包含了文件传输协议的简单设计与实现。 文件传送是各种计算机网络实现的基本功能,文件传送协议是一种最基本的应用层协议按照客户/服务器的模式进行工作,提供交互式的访问,是INTERNET使用最广泛的协议之一。文件传输协议的简单设计与实现建立在计算机网络实验环境TCP/IP 网络体系结构之上,使用socket 编程接口编写两个程序,分别为客户程序和服务器程序(),实现下述命令功能:get , put, pwd, dir, cd, ?, quit 等,利用了已有网络环境设计并实现简单应用层协议。 本设计包括了具体设计任务,基本思路及所涉及的相关理论,设计流程图,调试过程中出现的问题及相应解决办法,实验运行结果,核心程序,个人体会及建议等。

目录 1、文件传输协议的简单设计与实现------------------------------18 1. 1 具体设计任务----------------------------------------------18基本思路及所涉及的相关理论--------------------------------18 1.2.1基本思路-------------------------------------------------18 2.2.2 相关理论--------------------------------------------18 设计流程图------------------------------------------------19 实验运行情况----------------------------------------------19 核心程序--------------------------------------------------22 2.5.1 服务器(sever)程序---------------------------------22 2.5.2 客户(client)程序----------------------------------29 心得体会-----------------------------------------------------------------------------37 参考文献--------------------------------------------------------38

文件传输程序设计讲解

Internet网络程序设计实验报告基于Socket的文件传输程序设计 姓名:莫敌 班级:软件 0904 学号:U200917895 指导老师:陆永忠 2012.03.31

目录 1 实验目的及要求 (3) 1.1 实验目的 (3) 1.2 实验要求 (3) 2 实验环境 (3) 3 实验程序设计 (3) 3.1 设计思想 (3) 3.2 程序设计流程框图 (4) 3.3 详细设计 (5) 3.3.1 界面设计 (5) 3.3.2 主要功能实现 (6) 3.4 运行结果 (9) 4 实验感想 (11)

1实验目的及要求 1.1实验目的 熟悉Socket的通讯机制,了解网络程序的设计方法。重点掌握基于TCP协议的Socket 网络编程。 1.2实验要求 设计界面,在服务器端和客户端传输图片和文件。如果是图片请显示该图片,如果是其他文件,则保存。 2实验环境 编译环境:Windows 7 + Visual Studio 2010 使用MFC编写。 运行环境:Windows 7操作系统。 3实验程序设计 3.1设计思想 根据实验的要求:在服务器和客户端之间传输文件和图片,则需要程序提供一种可靠的网络传输服务来保证文件在传输过程中无丢失、损坏。在分析了传输层协议TCP协议和UDP 协议后,了解到TCP协议提供的是一种面向连接的、可靠的字节流服务,而UDP协议提供的是一种无连接的、不可靠的数据报服务。由于程序的需求,即必须保证文件传输的可靠性,于是,我采用基于TCP协议的Windows sockets来设计实现本实验。

3.2程序设计流程框图 图1程序设计流程框图

学生信息管理系统java课程设计源代码

JAVA程序设计课程设计报告 课题: 学生信息管理系统 姓名: 学号: 同组姓名: 专业班级: 指导教师: 设计时间: 评阅意见: 评定成绩: 指

目录 一、系统描述 (2) 1、需要实现的功能 (3) 2、设计目的 (3) 二、分析与设计 (3) 1、功能模块划分 (3) 2、数据库结构描述 (4) 3、系统详细设计文档 (6) 4、各个模块的实现方法描述 (9) 5、测试数据及期望结果 (11) 三、系统测试 (16) 四、心得体会 (23) 五、参考文献 (24) 六、附录 (24)

一、系统描述 1、需求实现的功能 1.1、录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。 1.2、修改学生基本信息的功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 1.3、查询学生基本信息的功能 可使用“姓名”对已存有的学生资料进行查询。 1.4、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。 1.5、用户登陆 用不同的登录权限可以进入不同的后台界面,从而实现权限操作。 1.6、用户登陆信息设置 可以修改用户登陆密码 2、设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,

java文件加密解密课程设计

软件学院 课程设计报告书 课程名称面向对象程序设计 设计题目文本文档的加密与解密 专业班级财升本12-1班 学号 1220970120 姓名王微微 指导教师徐娇月 2013年 1 月

1 设计时间 2013年1月14日-2013年1月18日 2 设计目的 面向对象程序设计是一门实践性很强的计算机专业基础课程。通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。 3 设计任务 对文件进行加密解密 4 设计内容 4.1 需求分析 (1)给定任意一个文本文件,进行加密,生成另一个文件。 (2)对加密后的文件还原。 4.2 总体设计 4.2.1 包的描述 导入了java.awt; java.awt.event; java.io; javax.swing等包。 4.2.2 类的描述 Myframe类;E1类。其中Myframe类继承Frame类;可以扩展Frame的功能并且可以实例化的多种功能,这个类也实现了ActionListener这个接口,它是Java中关于事件处理的一个接口,ActionListener用于接收操作事件的侦听器接口。对处理操作事件感兴趣的类可以实现此接口,而使用该类创建的对象可使用组件的addActionListener 方法向该组件注册。在发生操作事件时,调用该对象的actionPerformed 方法。 4.3 页面设计

图4.3-1 显示页面 代码实现: addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } });

基于局域网的文件传输系统的设计与实现

基于局域网的文件传输系统的设计与实现 摘要 随着互联网技术的迅猛发展,计算机通信给人类文明带来了翻天覆地的变化。很多情况下,人们的日常工作需要借助文件传输来完成。但大多数文件传输功能都需要借助移动磁盘等硬件设备或Internet上的服务器才能实现。这就给那些具有大规模内部网络的用户造成了许多问题,如浪费资金、浪费网络资源、病毒入侵、降低了工作效率等。为了方便局域网内主机的资源共享,需要开发一个基于局域网的文件传输工具,在内部网络中实现文件交换。 基于局域网的文件传输系统的设计选用Delphi 为开发工具,以C/S模式通过建立Socket连接后实现局域网快速,准确,安全的点对点文件以及文件夹传输功能。本系统能够促进局域网内用户之间的文件资源共享,满足主机之间信息交流,确保文件及文件夹传输安全性,有效地提高工作效率。 设计共分为五大模块,分别为:一、介绍选题背景及意义和国内外研究现状; 二、介绍TCP/IP点对点协议技术,C/S架构的Delphi程序设计技术和Socket网络编程技术;三、对当前局域网文件传输进行需求分析并提出解决方案;四、根据解决方案对系统进行设计;五、对基于局域网的文件传输系统进行测试并得到测试结果。 关键词:C/S结构;网络通讯组件;点对点;Socket连接

The Design and Implementation of File Transfer System Based on LAN Abstract Along with the Internet technology swift and violent development, the computer correspondence the human culture has brought the earth-shaking change for. In very many situations, people's routine work needs to draw support from the file transfer to complete. But the majority file transfer function all needs to draw support moves hardware equipment or the Internet and so in the floppy disk server can realize This gave these to have the large-scale internal network user to create many problems, like the waste fund, the waste network resources, the viral invasion, reduced the working efficiency and so on. In order to facilitate in the local area network main engine resources sharing, needs to develop one based on the local area network file transfer tool, realizes the document exchange in internal network. The design and implementation of file transfer system base on LAN uses Delphi development tool,C/S mode through the establishment of Socket after connecting LAN users fast, accurate, the point-to-point security files and folders transmission functions. The system can contribute to LAN users to share file resources to meet the exchange of information between mainframe, ensure that the filets and folders transmission security, effectively improving efficiency. The design is divided into five major module altogether, including: First, introduction selected topic background and significance and domestic and foreign research present situation; Second, introduces the TCP/IP point to point protocol technology, C/S overhead construction Delphi programming technique and the Socket network programming technology; Third, carries on the demand to the current local area network file transfer to analyze and to propose the solution; Fourth, carries on the design according to the solution to the system; Fifth, to carries on based on the local area network file transfer system tests and obtains the test result. Key words:C/S structure; Network communication module; Point-to-point; Socket connection.

Java课程设计学生信息管理系统

《面向对象程序设计》课程设计报告题目:《**********》课程设计 学院:信息工程学院 姓名: *** **** ****** 学号: ** ** ** 专业:计算科学与技术 班级: ***** 指导教师: ***** 2015 年 12月

目录 目录 ................................................................... 摘要 ................................................................... 1.引言 ................................................................. 2.设计目的与任务 ........................................................ 3. 设计方案 ............................................................. 3.1总体设计...................................................... 3.2开发环境...................................................... 3.3层次图........................................................ 3.4界面预览...................................................... 3.4.1登录界面 .................................................. 3.4.2该管理员不存在( 用户名:name 用户密码:psw ) ............. 3.4.3学生信息管理界面 .......................................... 3.4.4填写学生信息 .............................................. 3.4.5录入学生信息 .............................................. 3.4.6查询学生信息 ..............................................

相关文档
相关文档 最新文档