即时通信系统的模块分析与设计说明
即时通信系统是一个基于局域网或者 Internet 网应用的实时交互方式,IM 的迅速发展正在急剧地改变人们通信、协作和娱乐的方式。网络上的用户可以利用 IM 软件实现文字、音频和视频等信息的即时传送,以与点对点的数据交换,它的研究涉及到网络安全、P2P、C/S、Web Service 等诸多技术领域。
即时通信系统一般由客户端软件和服务器软件两部分组成。客户端为用户提供使用各种功能服务的界面,服务器为客户端提供登陆、即时信息交流和管理等服务。双方在首次进行即时通信前必须先在计算机中安装即时通信客户端软件,然后登陆到提供即时通信服务的服务器,经注册后获得由服务器统一分配的唯一标识符后方可开始通信。
系统总体构架图如图 2-1 所示。客户端发起连接请求,服务器担任中转者的角色,将网络包从发送方转交给接受方,这采用了 C/S 模式[7];由于客户之间使用音频、视频与传输文件等服务,通信数据量较大,此时由服务器转发会出现响应不与时、服务器负载过重等问题,因此,当提供这些服务时,通常由服务器进行协商,在两个客户端建立 P2P 连接,进行直接传送。
即时通信系统的模块分析与设计主要包括以下几个方面:
1. 即时信息收发模块:它是即时通信系统的基本功能,用于在联系人间完成文本信息的收发。用户可以实时查看其它用户的在线状态,若在线则与之进行实时交流。
2. 文件传输模块:它通过在联系人间建立传输链路来收发文件,几十兆的文件瞬间即可到达接收方。
3. 语音视频交流模块:它完成联系人间语音和视频文件的传送,使交流者虽身处异地也如同面对面交流一样。
4. 网络会议模块:它为多个用户提供视频会议功能,会议由主持人发起,并通过即时信息收发模块向与会人员发出会议邀请。与会者使用屏幕共享展示会议中所需的资料,使用电子白板[8]表达自己的观点,优秀的音频视频效果使网络会议与真正的会议无异。
5. 电子模块:它集成了到达提醒,离线消息转功能,用户可使用此模块直接进行电子的收发。
客户端软件层次结构如图 3-1 所示。客户端主界面框架是软件的总框架,管理其它所有模块。登录和状态管理模块,文字通信模块和好友管理模块均是软件界面的组成部分。网络通信模块提供网络接口,包括 UDP 通信和 TCP 通信,同时提供网络包的封装和解包的函数接口。本地数据管理提供对本地数据结构和本地文件的访问,维护和管理的函数接口,同时提供对注册表维护管理的函数接口。
即时通信系统的设计需要考虑到安全性分析和设计,以提高即时通信软件的安全。例如,蠕虫等病毒会利用 P2P 通信网络进行传播,因认证机制欠严密造成用户账号和密码被盗;因此,我们需要进行安全性分析和设计以提高即时通信软件的安全。
即时通信安全威胁包括窃听威胁、冒充威胁、拒绝服务攻击等。为了提高即时通信软件的安全性,需要对系统进行安全性分析和设计,对系统进行加密、身份验证、访问控制等安全机制的实现。
即时通信系统的模块分析与设计需要考虑到系统的安全性分析和设计,以提高即时通信软件的安全性和可靠性。同时,需要对系统的功能模块和软件层次结构进行详细的设计和实现,以满足用户的需求和期望。
评论0
最新资源