即时通讯优化方案baidu.docx
《即时通讯优化方案baidu.docx》由会员分享,可在线阅读,更多相关《即时通讯优化方案baidu.docx(13页珍藏版)》请在冰豆网上搜索。
![即时通讯优化方案baidu.docx](https://file1.bdocx.com/fileroot1/2023-7/5/d51e2c97-7d80-43cc-b253-c54a754060f5/d51e2c97-7d80-43cc-b253-c54a754060f51.gif)
即时通讯优化方案baidu
即时通讯优化方案
目录
前言3
第1章当前平台IM技术介绍4
WebRTC简介4
WebRTC优劣4
第2章当前平台IM的突破方向5
2.1视音频编解码技术5
2.2设备对恶劣网络环境的适应能力6
2.3音频处理技术8
2.4IM主流应用功能的开发9
研发风险评估9
第3章第三方IM方案分析10
使用第三方IM流程图10
主流的第三方平台11
使用第三方平台的优势11
环信IM平台12
第4章总结14
前言
本方案产生的背景是纺织服装平台已经初步搭建即时通讯服务,实现Web视频聊天功能,并经过一段时间的使用测试,对所发现的用户体验问题、多客户端互通问题和技术问题的描述,针对这些问题及对即时通讯功能后续发展规划,做出此优化方案。
IM是(InstantMessaging)的英文缩写,全称为即时通讯技术,现在比较有名的产品有:
腾讯QQ、MSN、微信、中国飞信等等产品,即时通讯是一整套解决方案,其中包括了IM后端服务、IM客户端、硬件配置。
后端的服务由众多的业务系统组成,如:
Session存储、用户信息系统、文件管理系统、实时音视频服务、消息处理、推送系统等等构成,是一套业务复杂、流程大的处理方案。
第1章当前平台IM技术介绍
当前平台的IM实现是基于WebRTC技术进行构建的,与传统的中心服务型IM技术有根本的不同。
WebRTC简介
WebRTC是HTML5支持的重要特性之一,Web开发者能够基于浏览器(Chrome\FireFox\...)轻易快捷开发出丰富的实时多媒体应用,而无需下载安装任何插件,Web开发者也无需关注多媒体的数字信号处理过程,只需编写简单的Javascript程序即可实现。
终端用户通过本机浏览器与信令服务器进行信令信息交换,在获取到足够的信息,自动与其他终端建立通讯链接,实现P2P视频聊天。
WebRTC优劣
WebRTC优势
WebRTC是HTML5的主要特性,是国际组织W3C制定的行业标准。
目前WebRTC已经得到谷歌、微软、苹果等公司的大力发展并且在普及推广应用。
让苹果、安卓手机使用浏览器进行视频会议成为可能。
WebRTC使用的是P2P技术不占用服务器资源,节省了大笔服务器部署费用。
WebRTC局限性
1、由于WebRTC使用的是P2P技术不占用服务器资源,节省了大笔服务器部署费用。
但是受限客户端机器的性能及网络带宽,无法进行大规模的进行视频会议聊天;
2、WebRTC是Google提供的基于Chrome浏览器的开源项目。
浏览器市场被几大巨头支配,Google、Microsoft、Apple,中国国内有360、XX、QQ等。
这些浏览器厂商出于利益考虑,会人为的制造技术壁垒。
因此,基于WebRTC开发的项目,在浏览器适配,移动端适配上需要大量深度开发。
3、对于一些服务器功能如视频录制、视频监控等WebRTC有着先天的缺陷,无法很好的完成。
4、与传统中心服务型即时通讯技术相比,WebRTC属于新型的即时通讯技术,由于发展时间较短,其应用技术和配套功能都处于初始阶段,虽然实现了基本的即时通讯功能,但在用户体验与功能多样化上,还有待开发。
第2章当前平台IM的突破方向
2.1视音频编解码技术
视音频编码技术是视频会议系统的关键技术指标,是影响会议效果的重要因素。
目前视频会议系统中用到的视频编码技术主要有H.261、H.263、H.264、MPEG-2、MPEG-4等,音频编码技术主要有G.711、G.722、G.728、G.729、MP3等。
其中,H.264和MPEG-4这两种视频编码技术能够在低带宽下实现高清晰的动态图像效果,而且编码延时小,作为新一代视频编解码标准,其优势非常明显。
H.264具有许多与旧标准不同的新功能,它们一起实现了编码效率的提高。
特别是在帧内预测与编码、帧间预测与编码、可变矢量块大小、四分之一像素运动估计、多参考帧预测、自适应环路去块滤波器、整数变换、量化与变换系数扫描、熵编码、加权预测等实现上都有其独特的考虑。
而在音频编码方面,MP3是一种高效的声音压缩算法,其频响范围在20Hz到20KHz之间,采样频率达到44.1KHz,而且支持双声道编码,因此正在获得越来越广泛的应用。
2.2设备对恶劣网络环境的适应能力
网络的QoS可以在一定程度上保证视频会议的传输效果,但其作用是很有限的,尤其是在一些较为恶劣的网络环境下。
视频会议系统设备本身对恶劣网络环境的适应能力也将对会议效果产生较大的影响。
这些适应能力包括IP优先权设置、IP包排序、IP包重复控制、IP包抖动控制、丢包重传以及速率自动调整等。
2.2.1IP优先权(IPPrecedence)
在网络规划差分服务方式的QoS技术时,可通过多种匹配手段对进入数据网的业务包进行分类,包括IP地址、IP优先权(IPPrecedence)等。
其中,利用IP包中的IP优先权部分可以对音频、视频和RTCP(Multicast)数据流进行优先级划分。
当网络采用IPPrecedence进行流量匹配时,可通过视频设备发出的修改过IPPrecedence字段信息的视音频包进行入队列处理,以保证视频会议码流的优先传送。
2.2.2IP包排序
通常,网络的尽力传递机制无法保证其转发的数据包的正确次序。
对于H.323视频会议系统,如果视频设备按次序接收IP包,将带来错序问题,数据包的丢失或延迟将导致视频图像的冻结或声音的中断或抖动。
可通过视频设备支持IP包排序功能解决该问题,当IP包到达时,视频设备将对其次序进行验证,无序的包被退回,以维护发送给终端用户的音频和视频流的连续性。
2.2.3IP包重复控制
一个IP包经过承载网时可能会产生多个重复的副本,或为了适应恶劣网络环境系统可能采用重传机制时也会产生多个重复的副本,这样将引起视频图像的冻结或声音中断。
支持IP包重复控制的视频设备可通过该功能来纠正该错误,以维护发送给终端用户的音频和视频流的连续性。
2.2.4抖动控制
当音频和视频IP包离开发送端时,按照规则的间隔均匀的排列。
在通过网络之后,这一均匀的间隔因不同的延时大小而遭到破坏,从而产生抖动。
抖动会导致目标终端上音频和视频流的不连贯性。
支持抖动控制的视频设备可通过抖动缓存来实现抖动消除,以维护终端用户接收到的音频和视频流的连贯性。
2.2.5丢包重传
当网络拥塞严重时,网络设备(如路由器)会根据缓存大小并配合相关处理机制丢掉一些视频包,视频会议系统中视频包是采用UDP协议进行传输的,而UDP本身没有重传机制,因此会导致接收端出现图像丢帧或马赛克现象。
支持丢包重传的视频设备可通过添加丢包检测和重传的机制来保证会议图像的连贯性。
2.2.6自动速率调整技术
在一些恶劣的网络环境下,降低会议码率将有助于提高视音频的连贯性和实际效果。
如果视频设备支持动态速率调整技术,可以使终端和MCU能通过检测网络上有利和不利的因素来自动适应网络的容量和性能,通过动态调整视频会议的码率,为终端用户提供尽可能好的视频质量。
视频设备的自适应带宽调整功能主要是通过检测数据包丢失率来实现的。
如果终端检测到数据包丢失率超过了指定的阀值,它将自动降低视频会议码率,同时通知其它参会终端做相同的动作,从而提供一个具有最优视音频效果的会议码率。
2.2.7唇音同步技术
视频会议系统中视频信号和音频信号是分别编码、分别传输的,由于IP优先级和视音频包大小等因素的影响,会使视音频的同步包到达顺序不同,引起唇音不同步。
影响唇音不同步主要有两种因素:
网络传输时延和视音频处理时延不同。
当音频和视频包离开发送端时,音频包与对应的视频包保持同步。
但是,在通过承载网时,各种队列算法会对音频资料包和视频资料包进行不同的处理。
这将打乱音频资料包与相应的视频资料包的同步关系。
最终的结果导致声音与口型失去同步。
支持唇音同步的视频设备可通过使用IP包中的RTP时间戳信息来纠正这一问题。
利用RTP时间戳,设备能够确定哪一音频包与哪一视频包对应。
进一步重新调整相应的视音频包,以保证声音与口型的同步。
在发送端,处理音频所花费的时间不同于处理视频所花费的时间。
影响这一问题的因素包括声速与光速的不同、房间的大小和形状、音频和视频编码的算法的复杂性。
为了避免时间差,支持唇音同步的设备可通过在音频流的出发点增加一定的延迟,以获得声音与口型的同步;也可在接收端增加或减少音频延迟,以纠正发送端不恰当的延迟设置。
这样就保证远程会场在接收视频会议声音和图像时,实现唇音同步。
2.3音频处理技术
2.3.1自动回声抑制
召开多点视频会议时,每一个会场的声音编码器都将音频包向MCU传输,而MCU将发言会场的音频包向所有其他会场广播,当视频会议终端接收音频包时,将解码后的音频流与本地输入的音频流进行电平比较,去掉相同的部分,这样本地的声音就不会在自己的会场扬声器传出,引起音频的振荡,从而避免回声。
2.3.2自动增益控制
由于优先视频会议使全向式麦克风,放置在会场的中心位置,这样每一个发言人由于距离麦克风的位置不同,麦克风接受到的电平也不同。
为了保证传向远程的音频电平的平稳,在进行编码时要进行音频的增益处理,以保证一定范围内的发言人以同一个音调发言,这样远程会场的声音就不会忽高忽低。
2.3.3背景噪音消除
召开会议时不可避免地会有一些环境噪音,例如空调、风扇、交流电等电器设备持续发出的环境噪音,这些声音严重的影响了会议的音频质量。
自动噪声抑制系统会根据音频的高低、持续情况,判断是否为环境噪音,并且进行处理,以达到良好的声音会议效果。
2.4IM主流应用功能的开发
当前主流的IM服务普遍可实现以下功能:
1.单聊;
2.群聊;
3.富媒体消息(包含文字、表情、语音、地理位置、照片、视频、名片、自定义消息等);
4.消息回执;
5.离线消息;
6.离线消息推送;
7.实时音频;
8.实时视频;
9.不同客户端通讯(如Web和APP之间的通讯);
10.单用户离线消息保存;
11.群聊离线消息保存;
12.敏感词过滤;
13.反垃圾服务;
14.多端同步(用户的在线消息在不同平台如Web和APP之间实时同步);
15.多设备同步(用户在同一平台可同时登录多个设备并且在线消息在这些设备之间实时同步);
16.消息优先通道;
17.红包功能。
研发风险评估
音视频技术开发涉及面广,开发周期长,从以上IM的突破方向看,无论是底层通讯技术研发,还是前端应用功能研发,都需要大量的时间及人力。
借鉴当前主流IM开发公司的公开信息可以看出,其开发团队规模在100-500人之间,开发周期2年以上(初版)。
面对目前互联网发展的步伐,IM技术也日新月异,在这个用户为王的时代,功能和体验无疑是IM能否吸引用户使用的关键,从头开发一套完整的IM方案,去追赶现有专注于IM的主流上市公司,技术研发压力是巨大的。
而现有提供一套用户勉强可以使用的IM服务,无法与主流的IM应用竞争,最终会导致用户抗拒使用平台的IM,甚至对平台的IM功能产生不信任的印象,从而降低用户对平台的粘性,就算最终平台自主IM技术突破成功,用户的信任度也无法在短时间内挽回。
从我们服装产业链平台的使命上来看,我们的目的是为了将服装产业链,从原料供应到生产管控再到营销推广整体打通,我们的业务中心在于产业链平台的连通性。
IM作为一个沟通的工具,其作用在于实现通讯,而如何通讯,对于用户和平台业务来说,都是可以忽略的。
如果通过资源整合,利用现有成熟的主流IM服务,可以为用户提供体验良好的IM功能,提高用户的使用度,增强用户的粘性。
而开发团队可以专注于产业链平台业务流程的贯通,从而快速推进项目的前进。
因此,建议在平台建设的初始阶段,让成熟的第三方产品集成到我们的产品中,做到好用,省时,省力,省成本,为我们实现平台的主体目标创造更多时间和空间。
只要考虑并做到第三方服务不损害到主体架构,在这个核心的前提下,集成第三方IM服务不失为一个合理有效的方案。
第3章第三方IM方案分析
使用第三方IM流程图
使用第三方IM可直接对第三方IM服务器所提供的API接口进行调度,客户端与第三方IM服务器进行长链接,客户端1要发送一个消息给客户端2,可以直接将消息内容通过第三方IM服务器中转,服务器会回调给APP后台进行处理,接着IM服务器将消息内容转发到客户端2,即消息发送完成,其他功能同上。
主流的第三方平台
从互联网发展到现在,从最开始的简单文字聊天,再到表情,图片,文件传输,再到音视频聊天,从最开始的网页静态到留言再到即时聊天,发展中一步步的更新迭代,硬件的升级,从奢侈的通讯工具到娱乐性质转变的同时,市场萌生了大量的需求,同时对平台的要求也越来越高。
所谓有需求就会有市场,互联网涌现了一大批第三方IM平台,他们想尽办法满足普通用户,企业用户,协助整合更多的娱乐性质、非娱乐性质的平台,实现多元化的市场需求,为多样化的互联网贡献了自己的一份力,那么主流的IM平台有哪些呢,下面我们列举出部分平台,排名不分先后;
(1):
融云,
(2):
环信,
(3):
荣联,
(4):
网易云信,http:
//netease.im/
(5):
友盟,
(6):
腾讯IM,
具体的详情可通过上述网址进入了解。
使用第三方平台的优势
从这幅图可以看出,使用第三方IM服务,只是将客户端“握手”建立连接和信息转发托管到第三方IM服务,而用户信息以及业务的具体信息都不会暴露到第三方平台上。
同时市场上众多的IM服务,我们可以按照需求挑选符合我们项目的一款IM服务,许多IM服务也做到了更多个性化的定制,从功能上确实能够满足我们的项目。
从资源整合的角度来说,专业的事让专业的人去做,而我们要做的就是把所有精力集中在我们的业务上,用最专业的眼光,最专业的态度打造一款让人眼前一亮的产业链平台。
环信IM平台
截至2016年底,环信即时通讯云共服务了130176家APP客户。
现已覆盖包括保险、证券、银行、电商、教育、O2O等领域的众多标杆企业,包括快牙、汽车之家、猎聘、海豚浏览器、百合相亲、跟谁学、贝聊、泰康在线、中意人寿、中信证券、国美在线、优信二手车、新东方、新浪微博、链家、58到家、神州专车等典型用户。
环信IM平台是一款使用量较高的IM平台,市场反馈也是非常不错的IM平台,接下来将对该平台的功能及特性进行一个全面的介绍。
丰富的消息特性
富媒体消息,让用户畅所欲言
文字、表情、语音、图片、位置、红包、文件等
消息回执,实时掌握消息状态,确保消息必达
已发送,已接收,已阅读三种消息状态
可扩展,个性应用随心所欲
支持扩展字段,可自定义消息类型,如节日祝福、定时提醒等
单聊,还有群聊、聊天室
默认支持2000人群组,更大群组按需支持
全面的群组权限管理,群组状态管理
完善的公开/私有群组管理
支持群组中的私聊和@功能
实时语音、实时视频
环信即时通讯云提供实时音视频,你无需考虑复杂的音视频技术了
背景噪音消除,还原清晰语音
自适应抖动控制,语音对话更流畅
实时多线程编解码,极速视频不卡顿
先进的QoS算法,即使弱网络下,依旧保证视频质量
APP的用户粘性行为数据统计
12大指标组,数十项指标,大数据分析技术洞察APP活力
IM用户活跃度与行为分析
用户流失率、存留率统计
群用户、群消息统计分析
支持自定义指标组模型
数据安全性
传输全程数据加密,提供端到端的安全保障
不侵入APP的用户体系,保护客户隐私
TLS+HTTPS数据加密,与金融行业一致的加密级别
提供API接口分级权限管理机制,避免越权操作
第三方安全公司定期评估,每年持续安全审计
APP具有即时通讯功能,几行代码完成上线
环信即时通讯SDK,极简集成,快速上线
开源UIDemo,即插即用
无需修改或同步现有APP用户体系
单聊集成1-2天,群聊集成3-5天
平台支持:
Android,iOS,WebIM……
水平扩展亿级高并发架构
后端服务基于Erlang,动态扩容,热部署,高并发
Cassandra跨数据中心数据复制,高性能的读写请求和水平扩展
Kafka为核心的统一数据分发,高吞吐量
通过了CSTC千万级压力测试
第4章总结
通过上述的技术方案对比,包括列举出第三方以环信为代表的众多第三方即时通讯云平台中,可以直观的看到,使用第三方IM服务,可以提高我们平台用户的使用舒适度,提高平台吸聚效应的效率,可以降低IM投入开发的风险,提高产业链平台建设的速度。
众多的IM平台中,环信也较符合我们的项目需求,其一:
用户数据不需要直接装在到对方平台,这维护了我们平台核心数据的一大前提;其二:
接入用户多,这可以为接下来开发对接上提供更多的参考;其三,定制性强,这将满足平台变动有更多的可行性。