《2022年2022年即时通信工具通信原理 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年即时通信工具通信原理 .pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、即时通信工具1.什么是即时通信即时通信是基于网络的一种新兴应用,它最基本的特征就是信息的即时传递和用户的交互性,并可将音、视频通信、文件传输及网络聊天等业务集成为一体,为人们开辟了一种新型的沟通途径。简单地讲,即时通信是一种使人们能在网络上方便快捷识别在线用户并与他们实时交换信息的技术,并逐渐成为继电子邮件之后最受欢迎的在线通讯和交流方式。与传统通信方式相比,即时通信具备快捷、廉价、隐秘性高的特点,在网络中可以跨年龄、身份、行业、地域的限制,达到人与人、人与信息之间的零距离交流。2.即时通信的原理即时通信是一种基于网络的通信技术,涉及到 IP/TCP/UDP/Sockets、P2P、C/S、多
2、媒体音视频编解码/传送、Web Service 等多种技术手段。无论即时通信系统的功能如何复杂,它们大都基于相同的技术原理,主要包括客户/服务器(C/S)通信模式和对等通信(P2P)模式。C/S 结构以数据库服务为核心将连接在网络中的多个计算机形成一个有机的整体,客户机(Client)和服务器(Server)分别完成不同的功能。但在客户/服务器结构中,多个客户机并行操作,存在更新丢失和多用户控制问题。因此,在设计时要充分考虑信息处理的复杂程度来选择合适的结构。实际应用中,可以采用三层 C/S 结构,三层 C/S 结构与中间件模型非常相似,由基于工作站的客户层、基于服务器的中间层和基于主机的数据
3、层组成。在三层结构中,客户不产生数据库查询命令,它访问服务器上的中间层,由中间层产生数据库查询命令。三层C/S 结构便于工作部署,客户层主要处理交互界面,中间层表达事务逻辑,数据层负责管理数据源和可选的源数据转换。P2P 模式是非中心结构的对等通信模式,每一个客户(Peer)都是平等的参与名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 11 页 -者,承担服务使用者和服务提供者两个角色。客户之间进行直接通信,可充分利用网络带宽,减少网络的拥塞状况,使资源的利用率大大提高。同时由于没有中央节点的集中控制,系统的伸缩性较强,也能避免单点故障,提高系统的容错性能。但由于 P2P 网络的
4、分散性、自治性、动态性等特点,造成了某些情况下客户的访问结果是不可预见的。例如,一个请求可能得不到任何应答消息的反馈。当前使用的 IM 系统大都组合使用了C/S 和 P2P 模式。在登录 IM 进行身份认证阶段是工作在 C/S 方式,随后如果客户端之间可以直接通信则使用P2P 方式工作,否则以 C/S 方式通过 IM 服务器通信,如下图所示:3.常用的即时通信工具随着移动互联网的发展,互联网即时通信也在向移动化扩张。目前,微软、AOL、Yahoo、UcSTAR 等重要即时通信提供商都提供通过手机接入互联网即时通信的业务,用户可以通过手机与其他已经安装了相应客户端软件的手机或电脑收发消息。现在国
5、内的即时通信工具按照使用对象分为两类:一类是个人IM,如:腾讯 QQ,腾讯微信、百度 hi、移动飞信等。通过个人IM 文字消息、音视频通话、文件传输等功能,您可通过它找到志同道合的朋友,并随时与好友联络感情;另一类是企业用 IM,简称 EIM,如:RTX、EC 企业即时通信软件,UcSTAR、商务通等。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 11 页 -4.各类即时通信软件的实现过程按照即时通信的功能分类,可以将现在国内的流行即时通信工具分为3 类,第 1 类是腾讯 QQ、移动飞信、微软 MSN 之类,第 2 类是彩信 MMS,以及第 3类是最近特别流行的腾讯微信、米聊。
6、按照功能分类,下面详解一下其实现的过程:4.1 第1类:腾讯QQ、中国移动飞信A.腾讯 QQ QQ 是腾讯公司的一款即时通信软件,从1999 年开始应用至今,通过网络,实现文字、语音、视 频等通 信 方式,深受广大民众喜爱。这里列举的是QQ2007beta4 版本的通信原理,相信之后的版本暂时也不会有太大改动。登陆不管 UDP 还是 TCP,最终登陆成功之后,QQ 都会有一个 TCP 连接来保持在线状态。这个TCP 连接的远程端口一般是80,采用 UDP 方式登陆的时候,端口是 8000。因此,假如你所在的网络开放了80 端口,但没有屏蔽腾讯的服务器 IP,恭喜你,你是可以登陆成功QQ 的。聊
7、天消息通信采用 UDP 协议,通过服务器中转方式。因此,现在的IP 侦探在你仅仅跟对方发送聊天消息的时候是无法获取到IP 的。UDP 协议是不可靠协议,它只管名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 11 页 -发送,不管对方是否收到的,但它的传输很高效。但是,作为聊天软件,怎么可以采用这样的不可靠方式来传输消息呢?于是,腾讯公司采用了上层协议来保证可靠传输:如果客户端使用UDP 协议发出消息后,服务器收到该包,需要使用UDP 协议发回一个应答包。如此来保证消息可以无遗漏传输。之所以会发生在客户端明明看到“消息发送失败”但对方又收到了这个消息的情况,就是因为客户端发出的消息
8、服务器已经收到并转发成功,但客户端由于网络原因没有收到服务器的应答包引起的。文件/自定义表情传送QQ 可以传送文件,可以发送自定义表情。先说官方表情,官方表情实际发送的是命令字,而没有发送表情。客户端收到命令字后,会自动解释为对应的表情。自定义表情的传送是以文件传输方式进行的。下面说文件传输方式:A 要向 B 发送一个文件,于是发出一个文件传送请求。服务器收到这个文件传送请求后,转发给 B,同时在B 应答后,将A 的 IP 地址同时发送给B。B 这个时候就得到了 A 的真实 IP,这里的 IP 是你的本机 IP。也就是说,如果A 处在内网,B 得到的地址就是一个内网地址。B 得到了 A 的地址
9、之后,就会尝试去连接 A。如果 B 也处于内网,那么,显然A 跟 B 之间的连接是无法建立的。这个时候,客户端就会请求服务器进行文件中转。因为服务器具有公网IP,处在内网的 A 跟 B 都是可以连接到服务器的,于是,A 跟 B 的文件传送就通过服务器中转的方式,顺利进行。B.中国移动飞信飞信是中国移动的综合通信服务,即融合语音(IVR)、GPRS、短信等多种通信方式,覆盖三种不同形态(完全实时的语音服务、准实时的文字和小数据量通信服务、非实时的通信服务)的客户通信需求,实现互联网和移动网间的无缝通信服务。中国移动飞信的功能:免费文字聊天、移动速配。PC 对 PC 语音视频聊天免费,PC 对手机
10、语音视频聊天双向收费,手机对手机语音视频聊天也是双向收费。通过电脑或手机的飞信客户端免费发送短信到你好友的手机上使用手机语聊功能,随时随地组织或者参与两人或多至8 人的语音聊天名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 11 页 -飞信官方提供了 PC 客户端和手机客户端两种客户端来使用飞信业务。首先看一下手机客户端即时通信的登录过程:1)手机客户端激活数据网络(GPRS/EDGE/TD),使用 CMWAP 获取 IP 2)手机客户端通过 WAP 网关向飞信服务器发送登录请求3)WAP 网关接收到请求后,在请求中添加相应的手机号码,构造新的请求,发送至飞信服务器4)飞信服务器
11、根据登录请求中的用户信息,处理用户的登录,创建用户登录会话,并通过 WAP 网关返回登录响应手机客户端接收到响应后,完成登录。这个过程中还包含有获取配置、获取用户列表等交互内容,不详细表述。这个过程中,所有的消息,都是明文传送。登录之后,用户如果需要向朋友发送消息,流程大致如下:5)手机客户端通过 WAP 网关,向飞信服务器发送消息请求6)飞信服务器处理用户的消息请求,包括进行消息转发等操作7)飞信服务器通过 WAP 网关,向手机客户端返回发送消息响应这个过程中,经过 WAP 网关的消息,WAP 网关不做任何处理,详见下图:Fetion 手机客户端WAP 网关Fetion 服务器登录请求(不包
12、含用户信息)登录请求(包含用户手机号码)登录响应登录响应处理用户登录请求发送消息请求发送消息请求响应响应添加用户手机号码处理发送消息请求接下来看看官方 PC 客户端的登录过程:名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 11 页 -官方提供的 PC 客户端,支持任何网络。提供用户名(手机号码)/密码的设定,并以用户名/密码作为用户鉴权标识。具体来讲,其登录流程如下,如下图所示:Fetion PC 客户端Fetion 服务器登录请求(包含用户信息:手机号/密码)登录响应处理用户登录请求发送消息请求响应处理发送消息请求图 2 PC 客户端登录、消息流程1)PC 客户端通过网络向飞
13、信服务器发送登录请求,包含用户名/密码。此过程中,用户手机号码为明文传送,但密码为加密传送2)飞信服务器根据登录请求中的用户信息,处理用户的登录,创建用户登录会话,并返回登录响应3)PC 客户端接收到响应后,完成登录总的来说,移动飞信的即时通信过程和腾讯QQ 差不多。当用户 A 通过手机客户端或 PC 客户端,向用户 B 发送短信时,如果刚好用户B 不在线,也就是没在使用 PC 客户端或者手机客户端时,那么用户A 发给用户 B 的信息将通过飞信服务器转到移动短信中心SMS,再由 SMS 发送到用户 B 的手机,实现信息传送,如下图:名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共
14、11 页 -4.2 第2类:彩信彩信的英文名是 MMS,它是 Multimedia Messaging Service的缩写,意为多媒体信息服务,通常又称为彩信。它最大的特色就是支持多媒体功能,能够传递功能全面的内容和信息,这些信息包括文字、图像、声音、数据等各种多媒体格式的信息。以中国移动彩信为例,彩信在技术上实际并不是一种短信,而是在GPRS网络的支持下,以 WAP 无线应用协议为载体传送图片、声音和文字等信息。彩信业务可实现即时的手机端到端、手机终端到互联网或互联网到手机终端的多媒体信息传送。彩信是实现过程如下:A、发送方发送消息消息发送方编辑欲发送的多媒体消息。终端中存在MMSC 的信
15、息,它建立一个WAP 连接(CSD/GPRS),并将用WAP WSP 的协议进行编码后的消息作为一个WSP POST 内容发送出去。然后 WAP 网关以 HTTP 协议将内容传送给MMS 中继器,中继器再传至MMSC。MMSC 接收消息,将信息的内容将转换成MIME 的格式后存储,并进行数据分析,从而得到路由信息,用户终端信息,同时通过同一个WAP 连接对发起方做出响应,发送方终端显示“消息已发出”。名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 11 页 -B、MMSC 通知接收方MMSC 使用 WAP PUSH 向接收方发送一条通知消息。C、接收方提取消息如果接收方的终端已设
16、置成接收MMS消息它将建立一个WAP 连接(CSD/GPRS),并使用 WSP GET 从 MMSC 取回 MMS 消息。MMS 消息被作为一个WSP GET RESPONSE 的内容,通过同一个WAP连接发送至接收者。接收方终端仍通过同一个WAP 连接用 WSP POST 消息告知接收成功。D、MMSC 通知发送方发送成功MMSC 使用 WAP PUSH 告知发送方消息已送达,发送方终端显示“消息已送达”。从上述 MMS 发送的实现过程可以看到,MMSC 并不是直接将 MMS 消息发送给接收者,而是向其发送一个通知,告诉接收方有一条消息正在等待。根据终端设置的不同,接收方的终端将尝试立即提取
17、该消息,或者推迟一段时间提取,又或者仅仅将通知放在一边,不予理会。而当用户设置成“立即提取”时,除非消息真正被送达,否则用户并不知道将收到一条消息。终端自己处理消息的提取,然后才告知用户“消息已接收”。名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 11 页 -4.3 第3类:微信微信是腾讯公司于2011 年初推出的一款通过网络快速发送语音短信、视频、图片和文字,支持多人群聊的手机聊天软件。用户可以通过微信与好友进行形式上更加丰富的类似于短信、彩信等方式的联系。微信软件本身完全免费,使用任何功能都不会收取费用,微信时产生的上网流量费由网络运营商收取。因为是通过网络传送,因此微信不
18、存在距离的限制,即使是在国外的好友,也可以使用微信对讲。微信具体特点如下:A.特色功能支持发送语音短信、视频、图片(包括表情)和文字支持多人群聊,最高20 人支持查看所在位置附近使用微信的人支持微博、邮箱、漂流瓶、语音记事本、QQ 同步助手等插件功能B.多平台支持 iPhone、Android、Windows phone、塞班平台的手机之间相互收发消息C.省流量图片、语音和视频优化,1M 可发约 1000 条文字信息,1000 秒语音信息,约 1 分钟视频信息后台运行只消耗约2.4K/小时微信的即时通信实现过程:微信的即时通信原理和腾讯QQ 一样,这里就不详细解析其通信过程,如下图:名师资料总
19、结-精品资料欢迎下载-名师精心整理-第 9 页,共 11 页 -除了即时通信的功能,微信还具备以下比较有特色的功能:A.查看附近的人微信将会根据用户的地理位置找到附近同样开启这项功能的人,使用户轻松找到身边正在使用微信的他们。这个距离在100-1000 米之内,只要是开启了查看附近的人的微信用户,都能在列表中看到。名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 11 页 -B.摇一摇,找到世界各地同时在摇手机的人摇一摇是微信最独特也是最强大的功能,支持通过摇一摇手机找到同时也在摇手机的朋友。只要是在同一时间摇动手机的微信用户,不论你在地球哪一个角落,都可以通过这个功能认识彼此,非常强大。名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 11 页 -