聊天系统需求分析.docx

上传人:b****2 文档编号:1956153 上传时间:2022-10-25 格式:DOCX 页数:24 大小:169.48KB
下载 相关 举报
聊天系统需求分析.docx_第1页
第1页 / 共24页
聊天系统需求分析.docx_第2页
第2页 / 共24页
聊天系统需求分析.docx_第3页
第3页 / 共24页
聊天系统需求分析.docx_第4页
第4页 / 共24页
聊天系统需求分析.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

聊天系统需求分析.docx

《聊天系统需求分析.docx》由会员分享,可在线阅读,更多相关《聊天系统需求分析.docx(24页珍藏版)》请在冰豆网上搜索。

聊天系统需求分析.docx

聊天系统需求分析

聊天系统_需求分析

系统分析与设计...................................................................................02.1需求分析...................................................................................102.2系统总体框架............................................................................12

2.2.1总体设计............................................................................12

2.2.2功能模块............................................................................132.3系统详细设计............................................................................24

2.3.1多线程设计........................................................................24

2.3.2数据库设计........................................................................25

2.3.3服务器的设计....................................................................25

2.3.4客户端的设计....................................................................26

2.3.5消息通信的设计................................................................26

绪论

1.1选题背景

1.1.1即时消息系统的研究现状

[1]即时消息系统(InstantMessenger~IM)是一种在后PC时代兴起的~以Internet网络为基础的~允许交互双方即时地传送文字、语音、视频等信息~能够跟踪网络用户在线状态的网络应用软件。

即时消息系统产生有着深刻的社会原因:

人们都有渴望社交~获得社会尊重、实现自我的需求~这正是即时消息软件风行的原动力~而物质文明的日益发达所带来副作用~又使得人们习惯与周围的人保持距离~以致人们更愿意对陌生人敞开心扉~在网络中可以跨越年龄、身份、行业、地域的限制~达到人与人、人与信息之间的零距离交流。

从这点上讲~即时消息系统的出现改变了人们的沟通方式和交友文化~大大拓展了个人生活交流的空间。

国内最为流行的即时消息软件是OICQ,简称QQ,。

它以良好的中文界面和不断增强的功能形成了一定的QQ网络文化。

该软件是由腾讯公司于1999年2月自主开发的基于Internet的即时消息系统。

腾讯QQ目前已成为中国最主要的即时消息服务网络软件。

作为一种即时消息工具~QQ支持显示好友在线、即时传送文字、语音和文件等功能。

QQ还与无线寻呼、GSM短信息、IP电话网互联~为用户提供互联网短信及信息增值服务。

腾讯QQ开发和拓展统一、高速、丰富的互联网应用平台、在线广告业务、移动通信业务、ISP及IP电话合作业务、企业商用即时消息服务、在线客户支持及在线呼叫业务。

1.1.2即时消息系统的发展趋势

21世纪将是网络化、信息化的世纪~信息的融合已经成为

[2]社会发展的主流方向。

即时消息系统将不断与信息交流领域的系统相互集成和渗透~扩展其自己的功能和应用范围~满足未来话音~数据和视频的多媒体应用需要~使即时消息以更丰富的接入方法~更高的服务质量~更友好的面貌呈现在世人的面前。

从功能角度来看~即时消息系统向支持全媒体方向发展~随着多媒体技术在网络应用中的发展~即时消息系统承载的媒体~不再局限于原来的文字、语音和文件的信息交换~信息载体扩展到图形、图像和流媒体等多媒体业务上。

目前ICQ和QQ预设了部分简单的表情图像~通过传输图像代码来传递表情图像~可以被视为即时消息开发商开发支持图形、图像为载体的即时消息软件的开端。

从应用范围角度来看~即时消息系统集中在Internet个人用户之间的信息交流应用~随着网络技术应用的发展~即时消息系统应用范围向园区化、集团化拓展~应用领域突破个人~而用于远程教学、远程医疗、远程演示、网络会议等领域。

1.1.3论文研究的主要内容

本论文的主要工作是利用编程技术建立一基于J2SE的即时消息系统~主要实现网络即时聊天功能。

在建立这个系统的过程中~我将会研究JAVA语言~多线程编程、网络编程以及数据据等方面的知识。

在我的论文中~我将会研究即时消息的发展~并针对不同即时消息工具之间不能互通的弊端~介绍即时消息系统中的应用。

为了更好地实现系统~我们还要研究J2SE技术。

在论文中介绍了J2SE的体系结构、系统设计以及J2SE的开发环境。

熟悉了开发平台~我们还要了解基于TCP/IP的Socket网络连接的基础知识~包括网络通信系统架构及Socket通信在该系统中的应用等内容。

在论文中将着重介绍网络即时消息系统的设计和实现~包括界面及各个功能模块的设计~给出了相应的流程图并对其功能做了详细描述~最终实现了客户端之间的即时聊天通信功能。

最后是结尾部分~对本文做了总结并

针对该系统提出了一些不足和今后需要改进的地方。

1.2技术背景

1.2.1C/S模型

在网络连接模式中,除对等网外,还有另一种形式的网络~即

[3]客户机/服务器网~Client/Server。

在客户机/服务器网络中~服务器是网络的核心~而客户机是网络的基础~客户机依靠服务器获得所需要的网络资源~而服务器为客户机提供网络必须的资源。

这里客户和服务器都是指通信中所涉及的两个应用进程,软件,。

使用计算机的人是计算机的‚用户?

user,而不是‚客户?

client,。

但在许多国外文献中~也经常把运行客户程序的机器称为client,这种情况下也可把client译为‚客户机?

~把运行服务器程序的机器称为server。

所以有时要根据上下文判断client与server是指软件还是硬件。

它是软件系统体系结构~通过它可以充分利用两端硬件环境的优势~将任务合理分配到Client端和Server端来实现~降低了系统的通讯开销。

目前大多数应用软件系统都是Client/Server形式的两层结构~由于现在的软件应用系统正在向分布式的Web应用发展~Web和Client/Server应用都可以进行同样的业务处理~应用不同的模块共享逻辑组件,因此~内部的和外部的用户都可以访问新的和现有的应用系统~通过现有应用系统中的逻辑可以扩展出新的应用系统。

这也就是目前应用系统的发展方向。

1.2.2TCP/IP协议

1.IP

网际协议IP是TCP/IP的心脏~也是网络层中最重要的

[4]协议。

IP层接收由更低层,网络接口层例如以太网设备驱动程序,发来的数据包~并把该数据包发送到更高层---TCP或U

DP层,相反~IP层也把从TCP或UDP层接收来的数据包传送到更低层。

IP数据包是不可靠的~因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。

IP数据包中含有发送它的主机的地址,源地址,和接收它的主机的地址,目的地址,。

高层的TCP和UDP服务在接收数据包时~通常假设包中的源地址是有效的。

也可以这样说~IP地址形成了许多服务的认证基础~这些服务相信数据包是从一个有效的主机发送来的。

IP确认包含一个选项~叫作IPsourcerouting~可以用来指定一条源地址和目的地址之间的直接路径。

对于一些TCP和UDP的服务来说~使用了该选项的IP包好像是从路径上的最后一个系统传递过来的~而不是来自于它的真实地点。

这个选项是为了测试而存在的~说明了它可以被用来欺骗系统来进行平常是被禁止的连接。

那么~许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。

2.TCP

[5]如果IP数据包中有已经封好的TCP数据包~那么IP将把它们向‘上’传送到TCP层。

TCP将包排序并进行错误检查~同时实现虚电路间的连接。

TCP数据包中包括序号和确认~所以未按照顺序收到的包可以被排序~而损坏的包可以被重传。

TCP将它的信息送到更高层的应用程序~例如Telnet的服务程序和客户程序。

应用程序轮流将信息送回TCP层~TCP层便将它们向下传送到IP层~设备驱动程序和物理介质~最后到接收方。

面向连接的服务,例如Telnet、FTP、rlogin、XWindows和SMTP,需要高度的可靠性~所以它们使用了TCP。

DNS在某些情况下使用TCP,发送和接收域名数据库,~但使用UDP传送有关单个主机的信息。

3.UDP

UDP与TCP位于同一层~但它不管数据包的顺序、错误或重发。

因此~UDP不被应用于那些使用虚电路的面向连接的

服务~UDP主要用于那些面向查询---应答的服务~例如NFS。

相对于FTP或Telnet~这些服务需要交换的信息量较小。

使用UDP的服务包括NTP,网络时间协议,和DNS,DNS也使用TCP,。

欺骗UDP包比欺骗TCP包更容易~因为UDP没有建立初始化连接,也可以称为握手,,因为在两个系统间没有虚电路,~也就是说~与UDP相关的服务面临着更大的危险。

4.TCP与UDP的端口结构

TCP和UDP服务通常有一个客户/服务器的关系~例如~一个Telnet服务进程开始在系统上处于空闲状态~等待着连接。

用户使用Telnet客户程序与服务进程建立一个连接。

客户程序向服务进程写入信息~服务进程读出信息并发出响应~客户程序读出响应并向用户报告。

因而~这个连接是双工的~可以用来进行读写。

两个系统间的多重Telnet连接是如何相互确认并协调一致呢,TCP或UDP连接唯一地使用每个信息中的如下四项进行确认:

源IP地址:

发送包的IP地址;

目的IP地址:

接收包的IP地址;

源端口:

源系统上的连接的端口;

目的端口:

目的系统上的连接的端口。

端口是一个软件结构~被客户程序或服务进程用来发送和接收信息。

一个端口对应一个16比特的数。

服务进程通常使用一个固定的端口~例如~SMTP使用25、Xwindows使用6000。

这些端口号是‘广为人知’的~因为在建立与特定的主机或服务的连接时~需要这些地址和目的地址进行通讯1.2.3编程技术

1.JAVA语言

[6]Java是由SunMicrosystems公司于1995年5月推出的Java程序设计语言,以下简称Java语言,和Java平台的总称。

用Java实现的HotJava浏览器,支持Javaapplet,显示了Java

的魅力:

跨平台、动态的Web、Internet计算。

从此~Java被广泛接受并推动了Web的迅速发展~常用的浏览器现在均支持Javaapplet。

另一方面~Java技术也不断更新。

Java语言的优良特性使得Java应用具有无比的健壮性和可靠性~这也减少了应用系统的维护费用。

Java对对象技术的

[7]全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。

Java的编译一次~到处可运行的特性使得

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1