用WebRTC进行P2P通信:我应该使用SDK吗

作者:Lasse Lumiaho,Binoy Chemmagate(原文链接

翻译:刘通

原标题:Using WebRTC for P2P: Should I Use an SDK?

之前只在科幻小说里出现过使用手持设备进行实时音视频通信的场景现在已经成为了日常生活的一部分。随着科技的发展,能够帮助开发者为产品添加实时通信功能的WebRTC等框架蓬勃发展,为新的通信应用程序开辟了道路,并改善了对现有应用程序的服务和参与度。

对于许多希望进入WebRTC领域的开发人员来说,最大的问题之一是是否使用WebRTC软件开发工具包(SDK)。当预期的目标是严格的一对一,点到点(P2P)的通信时尤其如此。

在本地WebRTC库或SDK之间进行选择时需要考虑什么

尽管WebRTC内置的P2P功能可以处理简单的RTC通信,但还有其他因素需要考虑。其中最需要考虑的一点是信令,或者是发起和维持通话的整个过程。这设计启动会话;通过网络服务器协商路径和保护每个用户的安全措施;处理密码安全和加密;以及写生任何可能发生的媒体交换。

有趣的是,WebRTC框架没有指定应该用来处理应用程序或服务的信令方法或协议。这是IETF和W3C的标准化组织在WebRTC背后做出的有意识的决定,旨在改善与现有协议的街荣幸并避免不必要的冗余。它使开发人员能够自行确定使用的最佳协议和技术,从而使其应用程序或服务符合WebRTC标准。一个想要创造创新性的应用程序或者服务的小公司,如果专注于设置信令后端或者从根本技术上创新的话会花费大量的时间和金钱,还不如使用现成的SDK来加速进程,这样它们就能专心开发能够使他们产品独一无二的东西。

使用SDK的另一个好处是它们可以为先对简单的P2P服务提供改进的可扩展性和可靠性。如果将ICE框架与TURN和STUN服务器结合使用,以及处理NAT防火墙问题都不是你想要考虑的事的话,那么SDK应该是你的首要选项。由于和信令一样,WebRTC没有指定应该使用的技术,框架或者方法,因此开发人员可以尽可能的行市可靠运行并可以满足增长需求的后端架构。

还有使用现成SDK的另外一个原因:它可以实时洞察客户如何使用你的WebRTC应用程序或服务。WebRTC分析可以给你提供改善服务,增加客户参与度以及提供更多价值的宝贵方法。另一方面,从头开始创建这些分析方法是一个代价高昂的难题,而SDK可以帮你避开它。

开创实时通信的新时代

毫无疑问,WebRTC带来了实时通信的新时代。通过使用当前可用的SDK,开发团队可以节省大量时间和金钱,提高可靠性,并确保WebRTC应用程序或服务的长期可扩展性,即使是一个相对简单的P2P产品。

填写常用邮箱,接收社区更新

WebRTC 中文社区由

运营