[发明专利]一种WebRTC客户端连接动态自适应选择的方法有效
申请号: | 201410188155.2 | 申请日: | 2014-05-06 |
公开(公告)号: | CN103945003B | 公开(公告)日: | 2017-06-06 |
发明(设计)人: | 双锴;苏森;冯恺;徐鹏;王玉龙 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京思创毕升专利事务所11218 | 代理人: | 郭韫 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 webrtc 客户端 连接 动态 自适应 选择 方法 | ||
技术领域
本发明属于WebRTC、HTML5WebSocket等技术领域,具体涉及一种WebRTC客户端连接动态自适应选择的方法。
背景技术
随着Web技术的发展和浏览器的普及,基于浏览器的Web应用以及使用Web技术开发的移动终端原生应用越来越多。因为浏览器及其所代表的Web开发技术具备良好的跨平台性和可移植性,不仅可以做到不同操作系统之间的跨平台,而且在一定程度上还可以不做任何修改的移植到移动终端设备上。
WebRTC的全称是Web based Real-Time CommunicationS,即基于Web的实时通信。WebRTC在IETF和W3C两大互联网标准化组织都有相应的工作组,目的是实现无插件浏览器之间的多媒体实时通信,即浏览器原生支持多媒体通信,而不需要借助于Adobe Flash或其他插件。
目前市场上有很多基于Web浏览器的实时通信应用,但全部是以即时通信为主,要实现多媒体通信还需要借助于浏览器插件。在Web应用中实现实时通信的难点就在于HTTP协议(请参考:RFC2616,Hypertext Transfer Protocol--HTTP/1.1,IETF Network Working Group,http://datatracker.ietf.org/doc/rfc2616/)不支持服务器主动Push信息至运行于浏览器中的Web应用,除非Web应用主动发送请求至服务器,否则服务器无法主动将信息发送至Web应用。这就导致在基于Web的实时通信领域中,好友发送来的信息或系统产生的通知无法在第一时间发送至用户,也就是说基于Web的实时通信应用无法保证最基本的“实时性”。
针对上述问题,目前主流的Web实时通信应用中主要采用HTTP轮询、HTTP长连接和HTTP流来模拟服务器Push(请参考:周婷,IBM DeveloperWorks文章,Comet:基于HTTP长连接的“服务器推”技术,http://WWW.ibm.com/developerworks/cn/web/wa-lo-comet/)技术。
如图1所示,HTTP轮询(Polling):即Web应用每隔一段时间就向服务器发起一个HTTP请求,请求获得更新的消息和通知,服务器将需要传回至Web应用的消息放到HTTP响应的消息体中,发送至WebRTC客户端。
使用HTTP轮询机制,浏览器会定期(一般用Interval表示)发送HTTP请求,并随即接收响应,
HTTP轮询是浏览器在实时信息传送方面的首次尝试。显然,如果知道消息传递的准确时间间隔,轮询将是一个很好的方法,因为可以将客户端的请求同步为只有服务器上的信息可用时才发出。但是,实时数据的到来往往不可预测,不可避免会产生一些不必要的请求,在低消息率的情况下会有很多无用的连接不断地打开和关闭,且固定的时间间隔无疑会在一定程度上加大消息的平均延迟。
如图2所示,HTTP长连接(Long Polling):浏览器向服务器发送一个请求,服务器会在一段时间内将其保持在打开状态。如果服务器在此期间收到一个通知,就会向客户端发送一个包含消息的响应。如果时间已到却还没有收到通知,服务器会发送一个响应消息来终止打开的请求。
在HTTP长连接中,浏览器会发送一个完整的HTTP请求给服务器,请求中设置了超时时间(Timeout),服务器接收到该请求后并不直接返回响应,而是保持一个处于打开状态的响应,该响应持续更新并无限期或是在一段时间内处于打开状态。每当有消息可发送时,该响应就会被更新,但服务器永远不会发出响应完成的信号,这样连接就会一直保持在打开状态以便后续消息的发送。
除此之外,还有一种基于HTTP协议实现的服务器Push技术,称为HTTP流(Streaming),即服务器收到HTTP请求后,利用HTTP响应传输数据,但数据传输完成后并不关闭HTTP连接,HTTP连接只会在通信出现错误或连接超时时关闭,这时Web应用再重新发起一个HTTP请求即可。HTTP流和HTTP长连接的原理比较接近,只是当即时消息等信息量很大时,与传统HTTP轮询方式相比,长连接方式并无实质上的性能改善,而HTTP流在一定程度上减少了HTTP的数量,但也增加了开发的复杂度。
HTTP长连接(包括HTTP流)技术是目前应用最广的基于Web浏览器的实时通信应用通信机制解决方案,很多成熟的应用和产品使用的都是HTTP长连接技术。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410188155.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种特殊深孔的加工方法
- 下一篇:桁架式智能钻孔设备及弧形板钻孔方法