CN111740990B - 用于拦截和解密指纹保护的媒体流量的方法和系统 - Google Patents

用于拦截和解密指纹保护的媒体流量的方法和系统 Download PDF

Info

Publication number
CN111740990B
CN111740990B CN202010566479.0A CN202010566479A CN111740990B CN 111740990 B CN111740990 B CN 111740990B CN 202010566479 A CN202010566479 A CN 202010566479A CN 111740990 B CN111740990 B CN 111740990B
Authority
CN
China
Prior art keywords
media
rtc
server
endpoint
webrtc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010566479.0A
Other languages
English (en)
Other versions
CN111740990A (zh
Inventor
卡尔·埃里克·斯塔尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IPalive AB
Original Assignee
IPalive AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by IPalive AB filed Critical IPalive AB
Publication of CN111740990A publication Critical patent/CN111740990A/zh
Application granted granted Critical
Publication of CN111740990B publication Critical patent/CN111740990B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1046Call controllers; Call servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0066Details of access arrangements to the networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了在实时通信中拦截和解密媒体路径。本公开涉及建立或重新建立媒体流,用于在服务中使用指纹来拦截和解密实时通信(RTC)媒体流量,以进行保护,防止中间人攻击。

Description

用于拦截和解密指纹保护的媒体流量的方法和系统
本申请是申请号为201680023929.3、名称为“在实时通信中建立媒体路径”的中国发明专利申请的分案申请。
相关申请的交叉引用
本申请基于并要求于2015年5月5日提交的美国临时申请序列号62/157,359的优先权,其全部公开内容通过引用并入本文。
技术领域
本方法、电信装置、系统或软件模块总体涉及电信领域。
背景技术
目前的全球电话网络,PSTN(公共交换电话网络),被建立以用于有限带宽(仅3.5kHz)的话音通信。宽带网络,例如互联网,也可以用于实时的个人到个人通信,例如通常称为VoIP(基于因特网协议的语音)的语音通信。互联网在端点之间传输数据,而不管数据内容或应用程序如何,因此被称为传输网络。
VoIP或更广泛的实时通信(RTC)也用于简易老式电话服务(POTS)之外的多媒体通信,例如视频、呈现技术和即时通信。存在用于RTC的标准和草案,其通常由互联网工程任务组(IETF)定义。
会话发起协议(SIP,RFC 3261)是一种用于RTC的广泛使用的协议。RFC(请求注释)是IETF定义的互联网标准。Web实时通信(WebRTC)是在由IETF和万维网联盟(W3C)正在开发和实施标准化的网页浏览器中构建的RTC。
RTC协议用于在端点装置之间建立媒体流,例如语音和视频,通常提供类似电话的功能和服务。它们经常定义呼叫建立过程,即呼叫是如何发起、进行和完成的。
数据通信网络通常是诸如互联网的分组交换网络,将数据分组转发到由分组的地址指定的目的地。数据分组通常还包含从其发送的源地址。数据分组可以是包含请求、响应或表示文件、文档或媒体(如电影和语音)的数据的消息,并且在端点之间交换。
数据通信网络还可以包括通过网络地址转换器(NAT)或防火墙与全球网络通信的专用段、内部网或局域网(LAN),其通常被组合并且被称为NAT或防火墙,有时也被称访问路由器。
在分组交换网络中,流量是正在被发送和接收的数据分组。
实时流量是语音或诸如视频的其他媒体的数据流。这样的媒体流被类似电话的服务或通过网络的呼叫使用。
媒体路径通过网络传送这样的媒体流,所述网络可以由不同类型的多个网段组成。
诸如各种装置、客户端和服务器之类的端点具有一个或多个网络接口,例如以太网、WiFi或LTE无线电接口,所述端点利用其连接到网络接入点。
网络中的地址可以是数字(如IPv4或IPv6地址)或如完全限定域名(FQDN)的符号地址,其,例如通过域名系统(DNS)服务,被进一步解析为数字地址。
这样的地址还可以由端口号进一步指定,以指示正在使用的或简单地用作上述地址类型的扩展(例如,具有指定端口的IPv4地址132.64.75.1:1234)的协议,其在此情形中通常可以是网络地址的一种形式。
诸如各种装置、客户端和服务器之类的端点在网络中具有一个或多个地址,在这些地址,它们可以发送或接收流量。通常,端点的地址取决于端点的网络接口和网络的接入点。
服务器是由客户端访问的网络装置。客户端可以是连接到网络的计算机或装置上的程序。
应用服务器是向用户提供服务或功能的服务器。
网络接入点具有不同的位置,并且可以使用诸如以太网、ADSL调制解调器、电缆调制解调器、光纤的不同固定接入技术以及诸如WiFi、3G、4G、LTE等的各种无线和移动技术。
除了诸如公共因特网和专用内部网或LAN之类的普通网段之外,还存在专用网段,例如携带用于语音,并也可能用于视频但不用于通用数据流量的的信令和媒体的电话类网络。IP语音(VoIP)可以因为它在移动世界中被呼叫而通过普通数据网络(例如互联网或互联网电视(OTT)),或者通过例如使用IP网络的LTE语音(VoLTE)等的专用网段。
信令通常是在网络段上的端点、代理和服务器之间的信令信道中的消息。例如,当失去无线覆盖、改变装置的接口或改变网段的接入点时,信令信道上的信令可能被中断,但随后可以被恢复以重新建立信令连接。
防火墙和NAT通常阻止实时通信,这是一个由专用网络边缘的会话边界控制器(SBC)或者通过例如NAT会话穿透实用程序(STUN,RFC 5389)、使用中继穿透NAT(TURN,RFC5766)和交互式连接建立(ICE,RFC 5245)的方法或协议来解决的问题。
TURN服务器中继两个网络地址之间的流量,并且是中继服务器的示例。TURN服务器可以由RTC端点发现,并且在密封的网段中,它然后必须用于密封网段外的RTC媒体流量。
SBC还实现用于VoIP和RTC的安全性和互操作性功能,并且经常用于将互联网电话服务提供商(ITSP)的VoIP服务连接到IP-PBX,也称为SIP中继链接。
IP-PBX是互联网协议(IP)专用分组交换机(PBX)。
呼叫中心通常基于IP-PBX或统一通信(UC)解决方案,所述解决方案通过ITSP的SIP中继线接收呼叫。这些呼叫通常通过电话网络的免费电话号码(美国的800个号码)发起。
PBX或UC功能可以是交互式语音应答(IVR)、队列、语音和视频邮件。
即时通信(IM)、呈现技术、屏幕共享和组呼是其他RTC功能。
协议是定义通信语言和方法的一组规则。
示例是描述要使用哪种媒体和编解码器以及应该往哪里发送媒体的会话描述协议(SDP,RFC 4566)。这样的实时通信可以由一个端点提供给另一端点,后者可以凭其意愿和媒体能力应答,以在端点之间建立媒体通信会话。这是一个提供和应答协议(O/A协议)。
O/A协议通常确定媒体类型,例如,指定要使用哪种编解码器的语音和视频。
这样的O/A协议还可以建议如何在端点之间建立媒体路径的方法和候选方案,所述方法和候选方案例如由用于穿透NAT的ICE协议定义。
通常为了实时通信的目的而建立媒体路径,而更广泛的术语“通信路径”是指用于传送可以或可以不表示媒体的数据的直接或间接信道。
媒体端点是耦合到网络上的媒体路径的端点,以允许媒体流流动,所述媒体流通常包含表示语音或视频的实时流量。
再次建立已在媒体端点之间建立的媒体路径被称为将被重新建立。
如果媒体端点可以通过或不通过服务器(例如TURN服务器)将媒体路径直接建立到另一媒体端点,则媒体端点具有点对点媒体能力。相互点对点媒体能力意味着两个端点是兼容的,并且可以在彼此之间建立直接媒体路径。
会话发起协议(SIP)用于找到用户并在SIP客户端之间建立呼叫,其实时通信装置,例如硬件SIP电话或软件SIP电话,是计算机上的软件应用程序。SIP是使用注册器和代理服务器找到用户的信令协议,并进一步使用SDP O/A协议在SIP客户端端点之间建立媒体信道。SIP客户端通常包括SIP用户代理,将用户连接到SIP代理。
网络实时通信(WebRTC)是正在被标准化的一组推建规范和协议,用于扩展网页浏览器,以允许在它们之间实时通信。WebRTC不指定用于找到用户的信令,但允许连接到同一个网络服务器的网络浏览器使用SDP O/A协议来建立媒体信道,用于它们之间的实时通信。WebRTC使用ICE协议,包括STUN和TURN,在WebRTC媒体端点之间建立媒体路径。
因此,包括媒体端点的RTC装置可以在WebRTC浏览器中实现,WebRTC浏览器从网络服务器检索其程序代码(HTML和Java Script形式)。
对于WebRTC,媒体流使用DTLS-SRTP协议进行加密,并且被保护以免受“中间人”攻击。保护涉及通过另一个信道或路径在双方之间交换指纹(用于生成加密密钥的证书的数字签名),而不是用于生成加密密钥。这意味着媒体流量不能仅仅通过拦截媒体路径或信令路径来解密。
网络浏览器是在计算机或智能电话上运行的程序,用于访问万维网(网络)、互联网上的服务或在网络服务器上实现的内部网。
软件应用程序是在计算机或智能电话上运行的其他程序。
网络服务器可以将程序代码,通常为Java Script,转移到网络浏览器以在其中执行,这是与WebRTC一起使用的技术。
超文本传输协议(HTTP)URL(或简称“链接”)标识web资源并指定执行它时的动作。例如,URL可以指网络资源/wiki/Main_Page,其相关的程序代码可以通过HTTP从服务器获得,该服务器的域名可以是/wiki/Main_Page之前的example.org。
在WebRTC浏览器中执行HTTP URL,可以发起将从被寻址的web服务器建立的呼叫,这是正在出现的WebRTC技术的有用特征。这样的URL可以包含电话号码和呼叫的其他信息,以例如当URL可以用于呼叫时建立时间限制。
WebRTC HTTP URL可能很长、难以理解,然而存在缩短链接的服务,例如Bitly,在代表Bitly存储的、长HTTP URL的唯一字符串之后使用其短域名bitly,因此当URL在网络浏览器中执行时,它会转到Bitly,Bitly将其重定向到完整的长网络链接。
这样的WebRTC点击通话链接可以由WebRTC服务器生成并存储,WebRTC服务器在浏览器中被点击时将被呼叫。例如由跟随有服务器的域名的唯一字符串组成、缩短的链接将被传递给要在WebRTC浏览器中执行此链接的用户。时间限制可以通过加密最后的有效时间或简单地通过仅在WebRTC服务器中存储链接转换来实现,只要其有效就行。点击呼叫链接,或执行此类链接的按钮,也可以在网站上使用,然后经常具有上下文相关性,即它们可以携带谁点击了链接、可能已经进行了哪些选择、它被点击的时间以及从哪儿被点击的信息。
一些浏览器支持WebRTC,一些浏览器不支持WebRTC,一些浏览器比其他浏览器更好。因此,定义和识别特定域名扩展可能是有利的,例如wrtc.company.com中的wrtc,所述特定域名扩展在用于调用另外可能不可用的WebRTC功能的WebRTC HTTP URL链接中。
网关用于在不同网段或协议之间进行转换,以允许服务在更多用户之间起作用。
客户端在需要时访问其服务器,但RTC客户端,例如SIP或WebRTC客户端,还需要保持与其服务器的连接,用于传入信令,用于呼入或用于针对正在进行的呼叫重新建立媒体路径。
媒体端点通常知道在哪些地址之间建立携带媒体流量(媒体流)的媒体路径,从而可以确定该媒体路径是否取决于特定的地址变化。
是移动装置的智能电话可以在不使用时进入休眠以节省剩余的电池使用时间,但是经常可以被唤醒,以便例如接收消息,或通过来自集中式推送通知服务器的所谓推送通知来为VoIP的呼入作准备。
VoIP、软客户端、智能电话以及具有RTC的扩展通信可能性和功能正在使RTC客户端的图形用户界面(GUI)变得重要。改进GUI的一种方式是基于呼叫状态(例如,空闲、活动、组呼、挂起、队列n、传输、未接收到的呼入等)来组织单独列表中的联系人(个人或用户),其中每一个联系人(在列表中或是单个)均有列出当前可用的选项(例如,呼叫、挂断、传输、挂起、会议连接、静音/取消静音视频、静音/取消静音、发送消息、更改呈现以及还可能的管理任务)的可扩展的操作菜单。这样的菜单可以通过在联系人的线上的、智能手机通常使用的小符号,例如三个垂直点符号或菜单行符号,来扩展。
在实时媒体信道中,双音多频(DTMF)数字可以通过编码成音频或在数据分组中的带外编码被传送。DTMF定义的符号是0、1、2、3、4、5、6、7、8、9、#、*、A、B、C和D。
专利申请WO2013/108121A2公开了一种用于在全球传输网络和通信网络的专用域之间的边界处进行实时通信的电信装置,该通信网络包括用于通信协议的代理、用于使用实时通信协议以穿透防火墙的流量的部件、用于由通信协议发起以穿透防火墙的实时流量的部件、以及用于在电信装置和与其通信的第二装置之间创建互信的部件。
所引用的申请涉及通过NAT和防火墙的媒体流,但没有教导如何建立用于呼叫切换、用于拦截和解密媒体流量或用于建立直接媒体路径的媒体流。
美国专利申请US2004/0122976A1公开了一种集成的移动管理机制,该机制监视移动主机的移动程度和其执行的应用程序。移动主机在通过主干网络互连的无线接入的微移动域之间移动。当移动主机静止时,MIP-LR和SIP系统进行操作,以确保分别到达/来自移动主机的TCP和RTP/UDP数据包通过主干正确地路由到主机的当前域。MMP系统通过该域发送数据包。当主机在域内移动时,MMP系统更新路由至移动主机的新位置的域。当移动主机在域之间移动时,主机获得新的IP地址,并且MMP系统在新域内建立到移动主机的新位置的路由。
针对实现呼叫的移动或切换的所引用的申请,在这样的通信网络中,即其基础是网络中的通信服务器可以由客户端从网络的接入点寻址的通信网络中,比在通信网络中重建媒体流a,需要更多系统(像包括提供临时转交地址的服务器的MIP-LR SIP和MMP系统)。
专利申请US2014/009724A1公开了企业策略到WebRTC交互会话的分布式应用以及相关的方法和系统。
然而,所引用的申请并不通过拦截网关建立媒体路径以及教导如何使用指纹在服务中拦截和解密流量以防止中间人的攻击。
专利申请DE10 2014 108888A1公开了Web实时通信(WebRTC)虚拟代理以及相关方法、系统和WebRTC提供/应答交换,并且经由一个或多个虚拟WebRTC代理建立第一WebRTC客户端与一个或多个虚拟WebRTC代理之一之间的第一WebRTC交互流、以及建立第二WebRTC交互流。
然而,所引用的申请不涉及不同网段中的端点之间的直接媒体路径,所述不同网段通过与网关集成的服务器互连。
发明内容
利用现代网络和具有耦合到存储器的处理器的电信装置、服务器和网关,电话术正在演进为实时通信,RTC,并且在网络上建立媒体路径后,经由网络上的信令信道建立呼叫,其中RTC媒体流量,如语音或视频,可以在媒体端点之间流动。
在一个方面,呼叫的切换在一环境中实现,其中RTC装置,例如智能电话或膝上型计算机,可以具有若干网络接口,例如Wi-Fi、LTE无线或有线以太网,并且通过在RTC装置连接到服务器时创建连接标识、随后监视和测试信令信道和媒体路径两者,以及在对网络的访问改变时恢复信令信道的连接并在需要时建立或重新建立媒体路径,而在不同网段,例如互联网、内部网或电话类型的网段,从不同的接入点访问网络。
在另一方面,对媒体路径的重新建立的需要由用于信令信道和媒体路径的地址的各种改变来确定。
在另一方面,发送消息以监视信令信道的频率适应于呼叫是否正在进行或是否存在需要保持有效的NAT或防火墙开口,以节省处理器容量和功耗。
在另一方面,形成网关以用于连接在与信令或媒体不兼容的端点之间的呼叫,或用于通过与信令或媒体不兼容的网段连接呼叫。
在另一方面,通过包括代理和媒体服务器拦截网关来建立或重新建立媒体路径,用于监视、分析和记录的目的。
在另一方面,通过包括TURN服务器拦截网关来建立或重新建立媒体路径,用于监视、分析和记录的目的。
在另一方面,通过建立或重新建立直接媒体路径来避免不同类型的网段上的媒体路径,用于更丰富媒体、改进媒体质量、降低网络负载或降低成本呼叫。
在另一方面,用于通过具有不同类型的网段的网络进行通信的系统使用两个或更多个RTC装置。
在另一方面,一种用于通过网络进行通信的系统,其中耦合到RTC装置的用户代理在服务器或互连服务器中实现。
在另一方面,互连服务器使用SIP协议,并且耦合到RTC装置的SIP用户代理在服务器中而不是在RTC装置中实现,如果RTC装置本身是SIP客户端,会是这种情况。
在另一方面,通过偏离其定义的协议,而不是在网关中,实现与端点或与网段的兼容性,以便卸载网关。
在一个方面,一种用于在端点(其具有一个网络接口或多个不同类型的、连接到不同类型的网段处的网络接入点的网络接口)之间建立或重新建立媒体路径来实现呼叫切换的方法是通过提供包括第一媒体端点、第二媒体端点和服务器的实时通信装置来实现的,RTC装置、第二媒体端点和服务器中的每一个均具有存储器和耦合到存储器的处理器,使得可以从在将要使用RTC装置和第二媒体端点的网段的接入点的地址处到达服务器,设置RTC装置的至少一个连接到某个网络接入点的网络接口以在RTC装置和服务器之间发送和接收消息,以及通过使用提供和应答协议(O/A协议)以在RTC装置和第二媒体端点之间建立和重新建立媒体路径,然后在RTC装置和服务器建立连接之后,通过创建在RTC装置和服务器之间共享的唯一连接标识以允许不响应的连接被识别和恢复,并且当用于连接到服务器的RTC装置所使用的网络接入点或网络接口可改变时或者当用于媒体路径的接入点或网络接口可以在呼叫期间改变时,通过由RTC装置收集从网段处的接入点到服务器的地址,来配置RTC装置和第二媒体端点以具有点对点媒体能力。
在另一方面,RTC装置可以在网段处通过以下方式中的一个或多个收集从接入点到服务器的地址:从呼叫建立过程检索一个或多个到服务器的地址;检索作为来自服务器的消息的源地址的、到服务器的一个或多个地址;从服务器接收向服务器传送一个或多个地址的消息;使用DNS或其他数据库查找到服务器的地址;将预定地址的列表存储到服务器;由RTC装置重复发送消息到服务器的地址;如果没有收到响应,则尝试到服务器的其他收集的地址,直到收到响应并通过继续发送消息到响应收到的地址来恢复信令连接性;在RTC装置与服务器之间恢复信令之后,由RTC装置将连接标识提交给服务器,用于恢复特定的连接,以便能够接收呼叫或使用O/A协议来建立或重新建立在RTC装置与第二媒体端点之间的媒体路径;通过监视或获知是否需要重新建立媒体路径,由RTC装置确定对媒体路径的重新建立的需要;如果需要重新建立媒体路径,则在RTC装置和第二媒体端点之间,通过经由服务器使用O/A协议,由RTC装置来发起媒体路径的重新建立。
在另一方面,用于在端点(其具有一个网络接口或多个不同类型的、连接到不同类型的网段处的网络接入点的网络接口)之间建立或重新建立媒体路径的方法包括由RTC装置确定对媒体路径的重新建立的需要,所依据的是改变地址的事件或媒体路径条件的出现,采取了以下方式中的一个或多个,所述RTC装置检测或得知来自服务器的消息,即用于连接到服务器的其地址已经改变,并且所述媒体路径取决于该改变的地址;RTC装置从服务器接收消息,其中与较早的消息相比,该消息的目的地地址已经改变,并且该媒体路径取决于改变的地址;RTC装置检测到其用于媒体路径的地址已经改变;该RTC装置从经由服务器来自第二媒体端点的消息得知,由第二媒体端点用于媒体路径的地址已经改变;以及该RTC装置检测或得知在RTC装置与第二媒体端点之间的媒体路径的任一方向上的流量已经停止或变得不畅。
在另一方面,用于在端点(其具有一个网络接口或多个不同类型的、连接到不同类型的网段处的网络接入点的网络接口)之间建立或重新建立媒体路径的方法包括取决于呼叫是否正在进行,或是否存在需要保持有效的NAT或防火墙开口而由RTC装置适配重复将消息发送到服务器的频率。
在另一方面,用于在端点(其具有一个网络接口或多个不同类型的、连接到不同类型的网段处的网络接入点的网络接口)之间建立或重新建立媒体路径的方法包括将第二媒体端点与形成网关的服务器集成,当由RTC装置使用的协议需要媒体加密,加密密钥通过媒体端点在媒体路径上协商,并且通过检查通过信令信道仅对服务器可用的指纹来防止中间人攻击时,用于将呼叫连接到与RTC装置关于信令或媒体不兼容的端点,或者用于通过关于信令或媒体不兼容的网段连接呼叫。
在另一方面,一种用于在端点之间建立媒体路径的方法,用于拦截和解密RTC装置与使用通信协议的RTC服务之间的实时通信媒体流量,其中媒体流量通过使用指纹而受到保护,以防止中间人攻击,用于监视、分析和记录的目的,所述方法通过提供包括第一媒体端点、第二媒体端点、RTC服务器和拦截网关的实时通信装置来实现,RTC装置、第二媒体端点、RTC服务器和拦截网关中的每一个均具有存储器和耦合到该存储器的处理器,利用拦截网关与用于由RTC服务和媒体服务器使用的通信协议的代理集成,代理和媒体服务器中的每一个均具有存储器和耦合到该存储器的处理器,通过重写消息的代理在RTC装置与媒体服务器之间以及在媒体服务器与第二媒体端点之间建立RTC媒体路径,通过重写消息的代理来设置指纹,用于由媒体服务器拦截、解密和传送RTC媒体流量,以及配置RTC装置以使用用于由RTC服务使用的通信协议的所述代理。
在另一方面,一种用于在端点之间建立媒体路径的方法,用于拦截和解密RTC装置与使用TURN协议的RTC服务之间的实时通信媒体流量,其中媒体流量通过使用指纹而受到保护,以防止中间人攻击,用于监视、分析和记录的目的,所述方法通过提供包括第一媒体端点、第二媒体端点、RTC服务器和拦截网关的实时通信装置来实现,RTC装置、第二媒体端点、RTC服务器和拦截网关中的每一个均具有存储器和耦合到该存储器的处理器,将具有存储器和耦合到该存储器的处理器的TURN服务器与拦截网关集成,通过配置RTC装置或RTC服务配置以使用TURN服务器,或通过其中一个媒体端点在密封网段中发现TURN服务器,而在RTC装置与TURN服务器之间以及在TURN服务器与第二媒体端点之间建立RTC媒体路径,以及由第一媒体端点或第二媒体端点将用于RTC媒体流量的解密密钥传送到拦截网关,以解密通过拦截网关的RTC媒体流量。
在另一方面,一种用于在具有点对点媒体能力的端点之间建立或重新建立媒体路径的方法,所述端点通过网络与不同类型的网段之间的网关连接,来实现直接媒体路径,用于更丰富的媒体、改进媒体质量、降低网络负载或降低成本呼叫,所述方法通过提供包括第一媒体端点、第二媒体端点和互连服务器的实时通信装置来实现,RTC装置、第二媒体端点和互连服务器中的每一个均具有存储器和耦合到存储器的处理器,通过使用提供和应答协议(O/A协议)来配置RTC装置和第二媒体端点以具有点对点媒体能力,以建立和重新建立用于不同类型的媒体流量的媒体路径,尝试在RTC装置和第二媒体端点之间建立呼叫,不知道它们是否具有相互的点对点媒体能力或不知道互连服务器是否在RTC装置和第二媒体端点之间传送O/A协议,以在RTC装置和第二媒体端点之间建立直接媒体路径,由RTC装置将第一信令信道建立到与第二媒体端点连接的互连服务器,并由RTC装置接收关于相互的点对点媒体兼容性的指示,然后调用用于直接媒体路径的建立或重新建立的进程。
在另一方面,用于直接媒体路径的建立或重新建立的进程由以下方式中的一个或多个来调用:由RTC装置请求使用O/A协议来建立用于呼叫的直接媒体路径,所述O/A协议可通过RTC装置和第二媒体端点之间的端到端信令信道被压缩;由RTC装置请求在RTC装置与第二媒体端点之间,通过建立的第一媒体路径,使用可被压缩的O/A协议来建立用于呼叫的直接媒体路径;由RTC装置发送关于呼叫建立的信息和RTC装置连接到的互连服务器的网络地址,所述网络地址可以是HTTP URL的形式,所述HTTP URL可以通过建立的第一媒体路径或通过端到端信令信道来缩短、压缩、限制时间或DTMF编码,以建立用于使用O/A协议的呼叫的直接媒体路径;以及由第二媒体端点接收关于相互的点对点媒体兼容性的指示;然后调用用于直接媒体路径的建立或重新建立的进程。
在另一方面,用于直接媒体路径的建立或重新建立的进程由以下方式中的一个或多个调用:由第二媒体端点请求在RTC装置与第二媒体端点之间,通过端到端信令信道,使用可被压缩的O/A协议来建立用于呼叫的直接媒体路径;由第二媒体端点请求在RTC装置与第二媒体端点之间,通过建立的第一媒体路径,使用可被压缩的O/A协议来建立用于呼叫的直接媒体路径;以及由第二媒体端点发送关于呼叫建立的信息和第二媒体端点连接到的互连服务器的网络地址,所述网络地址可以是HTTP URL的形式,所述HTTP URL可以通过建立的第一媒体路径或通过端到端信令信道被缩短、压缩、限制时间或DTMF编码,以建立用于使用O/A协议的呼叫的直接媒体路径。
在另一方面,第二端点是另一个RTC装置或网关。
在另一方面,用于通过网络进行通信的系统包括两个或更多个RTC端点。
在另一方面,系统的客户端由电信装置实现。
在另一方面,可以是会话边界控制器的一部分的系统的服务器端由电信装置实现。
在另一方面,用于电信的装置包括程序并且可以向客户端发送程序。
在另一方面,用于电信的装置是网络服务器。
在另一方面,系统的客户端或服务器端由在网络浏览器中,或者作为用于智能电话、平板电脑、膝上型计算机或个人计算机或计算机服务器的应用程序,或者在包括用于执行程序的处理器的电信装置中的软件模块实现。
在另一方面,软件模块包括执行功能的程序,诸如:向端点发送消息(164),所述消息(164)可以通过媒体路径(146)被缩短、压缩、限制时间或DTMF编码;接收来自端点的消息(164),所述消息(164)可以通过媒体路径(146)被缩短、压缩、限制时间或DTMF编码;在使用用于媒体流量的替代媒体路径之前,建立额外的替代媒体路径,该媒体路径的质量或其他度量被评估;使用会话发起协议(SIP)进行实时通信;使用网络实时通信(WebRTC)协议进行实时通信;使用交互式连接建立(ICE)在端点之间建立媒体路径;使用“NAT会话穿透实用程序”(STUN)协议建立媒体路径;使用“使用中继穿透NAT”(TURN)协议使用中继建立媒体路径;从自学习进程存储知识,无论端点或网段是否具有相互的点对点媒体兼容性;生成WebRTC HTTP URL点击呼叫链接,所述链接可能会受到时间限制、可以被存储在WebRTC服务器中并以缩短的形式发送到WebRTC浏览器用户;执行WebRTC HTTP URL链接,所述链接可能受时间限制、被存储在WebRTC服务器中并以缩短的形式从WebRTC浏览器用户接收;在用于调用另外可能不可用的WebRTC功能的WebRTC HTTP URL链接中标识特定的域名扩展,例如在wrtc.company.com中的wrtc;在用于RTC客户端的图形用户界面中基于呼叫状态组织在列表中的联系人;通过移动应用程序中使用的小的三垂直点符号或菜单行符号,在用于RTC客户端的图形用户界面中表示用于单个联系人的可扩展动作菜单;唤醒智能手机或其他移动设备,以通过推送通知接收来电;集成专用分组交换机(PBX)功能;集成会话边界控制器(SBC)功能;集成统一通信(UC)解决方案功能;将WebRTC集成到SIP网关功能;集成呼叫中心或联系中心功能,生成上下文相关的点击呼叫链接;执行上下文相关的点击呼叫链接;使用WebRTC浏览器作为客户端连接呼叫代理;并且提供即时通信(IM)、呈现技术、屏幕共享和组呼功能。
在另一方面,耦合到系统的RTC装置的用户代理在服务器、互连服务器或RTC服务器中实现。
在另一方面,互连服务器在彼此之间使用SIP协议,并且在互连服务器中实现耦合到RTC装置的SIP用户代理。
在另一方面,服务器或互连服务器与网关或拦截网关组合。
在另一方面,当用于媒体端点的所定义的O/A协议与端点或网段不兼容时,通过偏离所定义的O/A协议,在媒体端点中实施与端点和网段兼容以进行通信的O/A协议,卸载网关从而实现通信,并且当用于媒体端点的所定义的媒体路径能力与端点或网段不兼容时,通过偏离所定义的媒体路径能力,在媒体端点中实现与端点和网段兼容以进行通信的媒体路径能力,卸载网关从而实现通信。
附图说明
并入本文并形成本说明书一部分的附图示出了本发明的各种实施例,并且与具体实施方式一起还用于解释本发明的原理,并且使相关的技术人员能够制作和使用本发明。在附图中,相似的参考号表示相同的或功能相似的元件。本发明更完整的理解及其许多附带的优点将易于获得,在结合附图考虑时,通过参考以下详细描述可以更好地理解,其中:
图1示出了根据相关技术的装置、端点、服务器、代理和包括连接处理器的存储器的网关;
图2示出了根据相关技术,使用一个服务器、用于两个RTC装置之间的实时通信的系统;
图3示出了根据相关技术,用于不同网段处的端点之间的实时通信的系统;
图4示出了根据相关技术,用于由网关分离的不同网段上的端点之间的实时通信的系统;
图5示出了根据本发明实施例,使用一种方法的系统,该方法用于端点之间的呼叫切换;
图6示出了根据本发明实施例,使用一种方法的系统,该方法用于呼叫切换,该系统包括网关;
图7示出了根据本发明实施例,使用一种方法的系统,该方法用于使用代理和媒体服务器拦截和解密实时通信(RTC)媒体流量;
图8示出了根据本发明实施例,使用一种方法的系统,该方法用于使用TURN服务器拦截和解密实时通信(RTC)媒体流量;
图9示出了根据本发明的实施例,使用一种方法以在不同类型的网段上的端点之间获得直接媒体路径的系统;
图10A和10B示出了根据实施例,用于在呼叫切换的端点之间建立或重新建立媒体路径的进程;
图11示出了根据使用代理的实施例,用于建立用于拦截端点之间的RTC流量的媒体路径的进程;
图12示出了根据使用TURN服务器的实施例,用于建立用于拦截端点之间的RTC流量的媒体路径的进程;以及
图13示出了根据实施例,用于在端点之间建立或重新建立直接媒体路径的进程。
具体实施方式
在图5中示出了根据实施例,用于在端点之间建立或重新建立媒体路径的方法,其中端点具有一个网络接口194或多个不同类型的网络接口194,并且被连接到在不同类型的网段104、106、108处的网络接入点140,来实现呼叫切换。
移动电话通常允许在通过不同的手机信号塔接入电话网络时维持呼叫并继续。类似地,当使用不同的网络接口(例如,固定以太网、Wi-Fi、移动3G数据和LTE)和经由各种网络接入服务提供商时,建立和重新建立媒体流的这个实施例允许实时通信装置(RTC装置)200(例如,智能电话上的软件客户端或应用程序),以当网络接入点改变时保持正在进行的呼叫。
为了实现这种切换呼叫的能力,包括媒体端点202和与其通信的另一媒体端点203的实时通信装置(RTC装置)200通过使用提供和应答协议(O/A协议)160而具有点对点媒体能力,以在它们之间建立和重新建立媒体路径146。这种媒体路径可以通过图3所示的防火墙或NAT以及图1所示的TURN服务器。
两个端点可以连接到服务器210,在某个地址120处可从网段104、106和108处的接入点140到达该服务器210,其中将使用该端点;
RTC装置(200)经由连接到某个网络接入点140的至少一个网络接口(194),该网络接入点140通过发送和接收消息164建立到服务器210或通过服务器210的信令信道。
即使由于经由另一网段104、106、108访问,服务器210的数字地址可能已经改变,RTC装置200也可以经由在DNS中查找的FQDN到达服务器210。服务器210可以利用在各段上的单独地址120连接到几个网段。然后改变其对另一网段104、106、108的访问的RTC装置200可以在接入点140改变之前,在其所连接的各个网段104、106、108上从服务器210接收服务器210的地址120,然后可以经由新的网段重新连接。
在RTC装置200与服务器210之间建立连接之后,在RTC装置200与服务器210之间创建和共享唯一的连接标识以允许识别和恢复不响应的连接。
当由用于连接到服务器210的RTC装置200使用的网络接入点140或网络接口194可能改变时,或者当用于媒体路径146的接入点140或网络接口194可能在呼叫期间改变时,以下步骤可以建立或重新建立媒体路径146:
-RTC装置(200)通过以下方式从在网段104、106和108处的接入点140收集到服务器210的地址120:从呼叫建立进程检索一个或多个到服务器210的地址120;从服务器210检索一个或多个作为消息164的源地址的、到服务器210的地址120;接收将一个或多个地址120传送到服务器210的、来自服务器210的消息164;使用DNS或查找到服务器210的地址120的其他数据库;或者存储到服务器210的预定地址120的列表。
-RTC装置200将消息164重复地发送到服务器210的地址120,并且如果没有接收到响应,则尝试到服务器210的其他收集的地址120,直到接收到响应,并且通过继续发送消息(164)到接收响应的地址(120)来恢复信令连接性。
-如果恢复了RTC装置200与服务器210之间的信令,则RTC装置200向服务器210呈现连接标识,用于恢复特定连接,以便能够接收呼叫或使用O/A协议160,从而在RTC装置200与第二媒体端点203之间建立和重新建立媒体路径。
-RTC装置210通过监视或得知媒体路径146是否需要被重新建立,来确定对媒体路径的重新建立的需要。
-如果需要重新建立媒体路径,则RTC装置200通过经由服务器210使用O/A协议160来发起媒体路径146的重新建立。
媒体信道通常被分开地监视,并且仅当已被中断或显示不良品质时试图重新建立。
在另一个进行呼叫切换的实施例中,也参考图5,RTC装置200可以通过出现以下改变的地址或媒体路径条件中的一个来检测对媒体路径的重新建立的需要:
-RTC装置200检测来自服务器210的消息164或从该消息164得知,其用于连接到服务器210的地址已经改变,并且媒体路径146取决于该改变的地址。
-RTC装置200从服务器210接收消息164,其中消息164的目的地地址与先前消息相比已经改变,并且媒体路径164取决于该改变的地址。
-RTC装置200检测到其用于媒体路径146的地址已经改变。
-RTC装置200经由服务器从来自第二媒体端点203的消息164得知,用于由第二媒体端点使用的媒体路径146的地址已经改变。
-RTC装置200检测或得知在RTC装置200和第二媒体端点203之间的媒体路径146的任一方向上的流量已经停止或变得不畅。
媒体信道通常是分开监视的,并且只有当中断或显示差的质量时才试图重新建立。
在另一进行呼叫切换的实施例中,也参考图5,RTC装置200根据呼叫是否正在进行或者是否存在需要保持有效的NAT或者防火墙开口来适配将消息重复发送到服务器210的频率。
图6中示出了另一个实施例,其中当RTC装置200使用的协议需要媒体加密和加密密钥由媒体端点202、203在媒体路径146上协商,并通过检查通过信令信道仅对服务器210可用的指纹来进行保护免受中间人攻击时,网关222将第二媒体端点203与服务器210集成,用于将呼叫连接到关于信令或媒体,与RTC装置200不兼容的端点,或用于在关于信令或媒体不兼容的网段104、106、108上连接呼叫。
图7中示出了根据实施例,用于在端点之间建立或重新建立媒体路径,以使用通信协议拦截和解密RTC装置200和RTC服务228之间的实时通信(RTC)媒体流量的方法,其中媒体流量通过使用指纹而受到保护,以防止中间人攻击,用于监视、分析和记录的目的。
例如WebRTC的现代协议不仅允许加密媒体流量,而且甚至授权在端点之间加密媒体流量,并且包括进行保护以防止中间人攻击,使得呼叫中心和其他人难以监视、分析和记录RTC通信。在该实施例中,代理211用于获得对信令的控制,并且媒体服务器214正在拦截、解密和中继转发媒体流量。
实时通信装置(RTC装置)200包括第一媒体端点202、第二媒体端点203、RTC服务器218和拦截网关224,RTC装置200、第二媒体端点203、RTC服务器218和拦截网关224中的每一个均具有存储器192和耦合到存储器192的处理器190。
拦截网关224集成了用于由RTC服务228和媒体服务器214使用的通信协议的代理211,代理211和媒体服务器214中的每一个均具有存储器192和耦合到存储器192的处理器190。
由重写消息164、164b的代理211在RTC装置200与媒体服务器214之间以及在媒体服务器214与第二媒体端点203之间建立RTC媒体路径。
指纹由重写消息164、164b的代理211设置,用于由媒体服务器214进行RTC媒体流量的拦截、解密和传送。
RTC装置200被配置成使用用于由RTC服务228使用的通信协议的所述代理211。
图8中示出了根据另一个实施例,用于在端点之间建立或重新建立媒体路径,以使用TURN协议来拦截和解密RTC装置200与RTC服务228之间的实时通信(RTC)媒体流量的方法,其中媒体流量通过使用指纹而受到保护,以防止中间人的攻击,用于监视、分析和记录的目的。
例如WebRTC的现代协议不仅允许加密媒体流量,而且甚至授权在端点之间加密媒体流量,并且包括进行保护以防止中间人攻击,使得呼叫中心和其他人难以监视、分析和记录RTC通信。在该实施例中,TURN服务器216正在中继转发媒体流量。
如果如IETF draft-schwartz-rtcweb-return-06中所描述的那样TURN服务器被认为是“密封的”,或者如果TURN服务器被软件应用程序自动发现或分配并被强制为将要使用,则媒体流将流经TURN服务器。
拦截网关也可以内置在IP默认网关或媒体端点之间的防火墙/NAT中。
拦截服务器的另一个位置可能在处理本地或专用网络与全球传输网络之间的实时流量的装置中,以处理RTC处于专用域上并且外部流量将要被监视的使用情况。也可以使用所提出的方法来分析到这种专用域的、将其媒体发送到所述拦截服务器的远程用户。
此外,客户端,例如配置为这样做的WebRTC浏览器,可以通过修改ICE程序或通过其他方式通过拦截服务器来建立媒体。
对于不实施传递密钥或不通过拦截服务器建立媒体的客户端,例如,当前浏览器,这样的东西可以通过插件或扩展添加到浏览器。
实时通信装置(RTC装置)200包括第一媒体端点202、第二媒体端点203、RTC服务器218和拦截网关224,RTC装置200、第二媒体端点203、RTC服务器218和拦截网关224中的每一个均具有存储器192和耦合到存储器192的处理器190。
拦截网关224将具有存储器192和与存储器192耦合的处理器190的TURN服务器216与拦截网关224集成。
通过配置RTC装置200或RTC服务228以使用TURN服务器216,或者通过发现密封网段中的TURN服务器216的媒体端点202或203之一,在RTC装置200与TURN服务器216之间以及在TURN服务器216与第二媒体端点203之间建立RTC媒体路径。
用于RTC媒体流量的解密密钥由第一媒体端点202或由第二媒体端点203传送到拦截网关224,以解密通过拦截网关224的RTC媒体流量。
拦截服务器还可以内置到通常处理媒体流以穿透NAT和防火墙的SBC(会话边界控制器)中。
图9示出了根据实施例,用于在具有点对点媒体能力的端点202、203之间建立或重新建立媒体路径的方法,所述端点通过网络与不同类型的网段104、106、108之间的网关222连接,来实现用于更丰富的媒体、改进媒体质量、降低网络负载或降低成本呼叫的直接媒体路径。
即使当呼叫从LAN(内部网类型的网段)上或因特网上的计算机客户端或IP电话开始时,VoIP服务几乎总是将网关功能包括在电话类型的网段中,甚至当其它端点是兼容的VoIP电话时,媒体流量也受到限制或代价昂贵,因为它涉及电话类型的网段。使用现代协议,例如WebRTC和SIP或其组合,也能够进行视频,在兼容端点之间建立直接媒体路径将是有利的,而不是通过电话类型的网段建立媒体路径。
实时通话呼叫,今天也是大多数电话呼叫,将在两步进程中的端点与信令信道上的消息连接,信令信道可以通过几个网段和互连服务器210、212,随后是媒体信道建立,其也可通过几个网段和服务器。这些连接中的任何一个可以用于在端点之间发送和接收至少有限数量的数据,并且应当注意,用于常规语音电话的媒体路径仍然能够,例如以DTMF数字的形式,传送数据内容。
当两个端点已经在彼此之间建立信令信道或媒体路径(其不是端点之间的直接媒体路径)时,可能有利的是继续设置进程以建立或重新建立端点之间的、也称为点对点媒体路径的直接媒体路径,所述媒体路径否则可能是多个其间具有网关的网段之间的媒体路径。端点中的任一个可以向另一端点指示它具有点对点媒体路径能力,并且端点中的任一个可以发起这样的建立或重建。在这种情况下,这种直接媒体路径可以包括TURN服务器,并且仍然被认为是直接媒体连接。
通过使用O/A协议,发起媒体路径的建立或重新建立可以在信令信道或媒体路径上以信号表示。然而,如果媒体路径仅用于语音,则O/A协议可能太长,使得,例如,不能编码成DTMF数字,并且不能通过该语音信道传输。在这种情况下,可以使用压缩版本的O/A协议。或者(通常更好地),一个端点可以请求另一个端点连接到自身连接到的相同服务器,通过该端点可以执行O/A协议,并且可以建立端点之间的直接媒体连接。
该机制可以在WebRTC浏览器中实现,该浏览器与通过其信令被传送的服务器(网络服务器)联系。然后可以将该请求实现为通过信令信道或媒体路径将HTTP URL传送到另一端点,之后,完整的O/A协议可以经由当时的公用服务器210以信号表示。
实时通信装置(RTC装置)200包括第一媒体端点202、第二媒体端点203和互连服务器212、212b,RTC装置200、第二媒体端点203和互连服务器212、212b中的每一个均具有存储器192和耦合到存储器192的处理器190。
RTC装置200和第二媒体端点203被配置为通过使用提供和应答协议(O/A协议)来具有点对点媒体能力,以便建立和重新建立用于不同类型媒体流量的媒体路径。
当尝试在RTC装置200和第二媒体端点203之间建立呼叫时,不知道它们是否具有相互的点对点媒体兼容性,或者不知道互连服务器212、212b是否在RTC装置200和第二媒体端点203之间传送O/A协议,以在RTC装置200和第二媒体终点203之间建立直接媒体路径148,以下步骤可以建立直接媒体路径148:
-RTC装置200建立到互连服务器212b的第一信令信道150,第二媒体端点203连接到互连服务器212b。
-或者RTC装置200接收到关于相互的点对点媒体兼容性的指示,然后调用用于直接媒体路径的建立或重新建立的以下进程之一:
RTC装置200请求在RTC装置200与第二媒体端点203之间,通过端到端信令信道152,使用可被压缩的O/A协议来建立用于呼叫的直接媒体路径148;或
RTC装置200请求在RTC装置200与第二媒体端点203之间,通过建立的第一媒体路径146,使用可被压缩的O/A协议来建立用于呼叫的直接媒体路径148;或
RTC装置200发送关于呼叫建立的信息和RTC装置200连接到的互连服务器212的网络地址,所述网络地址可以是HTTP URL的形式,其可以通过建立的第一媒体路径146或通过端到端信令信道152被缩短、压缩、限制时间或DTMF编码,用于使用O/A协议建立用于呼叫的直接媒体路径148。
-或者第二媒体端点203接收关于相互的点对点媒体兼容性的指示,然后调用用于直接媒体路径的建立或重新建立的以下进程之一:
第二媒体端点203请求在RTC装置200与第二媒体端点之间,通过建立的第一媒体路径146,使用可以被压缩的O/A协议来建立用于呼叫的直接媒体路径148;或
第二媒体端点203请求在RTC装置200与第二媒体端点之间,通过建立的第一媒体路径146,使用可以被压缩的O/A协议来建立用于呼叫的直接媒体路径148;或
第二媒体端点203发送关于呼叫建立的信息和第二媒体端点203连接到的互连服务器212b的网络地址,所述网络地址可以是HTTP URL的形式,其可以通过建立的第一媒体路径146或通过端到端信令信道152被缩短、压缩、限制时间或DTMF编码,用于使用O/A协议建立用于呼叫的直接媒体路径148。
对于另一实施例,参考图5、7、8和9,第二端点203可以是另一个RTC装置200或网关222、224。
另一实施例可以是用于通过网络进行通信的系统,该系统使用用于建立或重新建立媒体路径的方法,还包括两个或更多个端点202、203、203b。
在另一实施例中,耦合到RTC装置200的用户代理在服务器210或互连服务器212、212b中实现。
参考图9的另一实施例是其中互连服务器212、212b在彼此之间使用SIP协议,并且耦合到RTC装置200的SIP用户代理在互连服务器212、212b中实现的系统。
参考图6的另一实施例是卸载网关222来实现通信:(i)当用于媒体端点202、203、203b的所定义的O/A协议与端点208或206或网段104、106或108不兼容时,通过偏离所定义的O/A协议,在媒体端点202、203、203b中实现与端点和网段兼容以与其通信的O/A协议;以及(ii)当用于媒体端点202、203、203b的所定义的媒体路径能力与端点208或206或网段104、106或108不兼容时,通过偏离所定义的媒体路径能力,在媒体端点202、203、203b中实现与端点和网段兼容以与其通信的媒体路径能力,从而卸载网关222来实现通信。
在另一个实施例中,用于通过网络通信的系统包括两个或更多个RTC端点。
在另一个实施例中,系统的客户端由电信装置实现。
在另一个实施例中,可以是会话边界控制器的一部分的系统的服务器端由电信装置实现。
在另一个实施例中,用于电信的装置包括程序,并且可以向客户端发送程序。
在另一个实施例中,用于电信的装置是网络服务器。
在另一个实施例中,系统的客户端或服务器端由网络浏览器中的软件模块实现,软件模块或作为用于智能手机、平板电脑、膝上型计算机或个人计算机或计算机服务器的应用程序,或在包括用于执行程序的处理器的电信装置中。
在另一个实施例中,耦合到系统的RTC装置的用户代理在服务器、互连服务器或RTC服务器中实现。
在另一个实施例中,互连服务器在彼此之间使用SIP协议,并且在互连服务器中实现与RTC装置耦合的SIP用户代理。
在另一个实施例中,服务器或互连服务器与网关或拦截网关组合。
在图10A和10B中示出了根据实施例,用于在用于呼叫切换的端点之间建立或重新建立媒体路径的进程。在图10A所示的第一操作1002中,提供包括第一媒体端点、第二媒体端点和服务器的实时通信装置(RTC装置)。在第二操作1004中,使在网段处的接入点的地址可到达服务器。在第三操作1006中,连接到某个网络接入点的RTC装置的至少一个网络接口被设置成在RTC装置和服务器之间发送和接收消息。在第四操作1008中,RTC装置和第二媒体端点被配置为通过使用提供和应答协议(O/A协议)而具有点对点媒体能力,以建立和重新建立RTC装置与RTC装置之间的媒体路径。在第五操作1010中,创建在RTC装置和服务器之间共享的唯一连接标识以允许识别和恢复不响应的连接。在第六操作1012中,由RTC装置从在网段处的接入点收集到服务器的地址。在图10B所示的第七操作1014中,消息由RTC装置重复发送到服务器的地址,并且如果没有收到响应,则尝试到服务器的其他收集的地址,直到收到响应,并且通过继续向收到响应的地址发送消息来恢复信令连接。在第八操作1016中,RTC装置向服务器呈现连接标识以恢复特定连接,以便能够接收呼叫或使用O/A协议来建立或重新建立RTC装置和第二媒体端点之间的媒体路径。在第九操作1018中,由RTC装置确定重新建立媒体路径的需要,并且如果需要重新建立媒体路径,则发起媒体路径的重新建立。
在图11中示出了根据使用代理的实施例,用于建立用于拦截端点之间的RTC流量的媒体路径的进程。在第一操作1102中,提供包括第一媒体端点、第二媒体端点、RTC服务器和拦截网关的实时通信(RTC)装置。在第二操作1104中,利用拦截网关集成用于由RTC服务和媒体服务器使用的通信协议的代理。在第三操作1106中,在RTC装置与媒体服务器之间以及在媒体服务器与第二媒体端点之间建立RTC媒体路径。在第四操作1108中,由重写消息的代理来设置用于拦截的指纹,用于由媒体服务器来进行RTC媒体流量的解密和传送。在第五操作1110中,RTC装置被配置为使用用于由RTC服务使用的通信协议的代理。
在图12中示出了根据使用TURN服务器的实施例,用于建立用于拦截端点之间的RTC流量的媒体路径的进程。在第一操作1202中,提供包括第一媒体端点、第二媒体端点、RTC服务器和拦截网关的实时通信装置(RTC装置)。在第二操作1204中,TURN服务器与拦截网关集成。在第三操作1206中,在RTC装置与TURN服务器之间以及在TURN服务器与第二媒体端点之间建立RTC媒体路径。在第四操作1208中,用于RTC媒体流量的解密密钥由第一媒体端点(202)或由第二媒体端点传送到拦截网关(224)。
在图13中示出了根据实施例,用于在端点之间建立或重新建立直接媒体路径的进程。在操作1302中,提供了包括第一媒体端点、第二媒体端点和互连服务器的实时通信装置(RTC装置),RTC装置、第二媒体端点和互连服务器中的每一个均具有存储器和耦合到存储器的处理器。在操作1304中,通过使用提供和应答协议(O/A协议),将RTC装置和第二媒体端点配置为具有点对点媒体能力,以便建立和重新建立用于不同类型的媒体流量。在操作1306中,尝试在RTC装置与第二媒体端点之间建立呼叫,不知道它们是否具有相互的点对点媒体兼容性,或者不知道互连服务器是否在RTC装置与第二媒体端点之间传送O/A协议,以在RTC装置和第二媒体端点之间建立直接媒体路径。在操作1310中,RTC装置接收关于相互的点对点媒体兼容性的指示,然后调用用于直接媒体路径的建立或重新建立的进程。在操作1312中,第二媒体端点接收关于相互的点对点媒体兼容性的指示,然后调用用于直接媒体路径的建立或重新建立的进程。
实施例可以在计算硬件(计算设备)和/或软件,例如(在非限制性示例中)可以存储、检索、处理和/或输出数据和/或与其他计算机通信的任何计算机中实施。实施实施例的程序/软件可以被记录在包括计算机可读记录介质的计算机可读介质上。实现实施例的程序/软件也可以通过传输通信介质传输。计算机可读记录介质的示例包括磁记录设备、光盘、磁光盘和/或半导体存储器(例如RAM、ROM、FLASH等)。磁记录装置的示例包括硬盘装置(HDD)、软盘(FD)和磁带(MT)。光盘的示例包括DVD(数字通用光盘)、DVD-RAM、CD-ROM(光盘-只读存储器)和CD-R(可记录)/RW。通信介质的示例包括载波信号。
此外,根据实施例的一个方面,可以提供所描述的特征、功能和/或操作的任何组合。
根据详细说明书,实施例的许多特征和优点是显而易见的,因此,所附权利要求书旨在覆盖落入其真实精神和范围内的实施例的所有这些特征和优点。此外,由于本领域技术人员将容易想到许多修改和变化,因此不希望将本发明的实施例限制在所示和所描述的精确结构和操作上,因此所有适当的修改和等同物可以被认为落入其范围内。
在说WebRTC时,它也可能意味着(或应用于)其他实时通信协议或通常的通信方式。

Claims (11)

1.一种用于在端点之间建立媒体路径,用于使用通信协议来拦截和解密实时通信RTC装置(200)和RTC服务(228)之间的媒体流量的方法,其中所述媒体流量通过使用指纹而受到加密保护以防止中间人攻击,用于监视、分析和记录的目的,所述方法包括:
提供包括第一媒体端点(202)和第二媒体端点(203)以及RTC服务器(218)和拦截网关(224)的所述RTC装置(200),所述RTC装置(200)、所述第二媒体端点(203)、所述RTC服务器(218)和所述拦截网关(224)中的每一个均将实现所述方法的软件存储在存储器(192)和耦合到所述存储器(192)的处理器(190)中;
所述方法还包括:
利用所述拦截网关(224)与用于由所述RTC服务(228)和媒体服务器(214)使用的通信协议的代理(211)集成,所述代理(211)和所述媒体服务器(214)中的每一个均将实现所述方法的软件存储在存储器(192)和耦合到所述存储器(192)的处理器(190)中;
其特征在于:
由所述RTC装置(200)在所述RTC装置(200)与所述媒体服务器(214)之间,以及由所述RTC装置(200)在所述媒体服务器(214)与所述第二媒体端点(203)之间,以及由重写消息(164、164b)的所述代理(211)建立RTC媒体路径;
通过重写所述消息(164、164b)的所述代理(211)设置指纹,用于经由所述媒体服务器(214)进行RTC媒体流量的拦截、解密和传送;以及
配置所述RTC装置(200)以使用用于由所述RTC服务(228)使用的所述通信协议的所述代理(211);
从而通过使用指纹在电信服务中通过拦截网关建立媒体路径来拦截和解密媒体流量,以进行保护,防止中间人攻击。
2.根据权利要求1所述的方法,其中,所述通信协议包括TURN协议;
所述方法还包括:
将实现所述方法的软件存储在存储器(192)和耦合到所述存储器(192)的处理器(190)中的TURN服务器(216)与所述拦截网关(224)集成;
其特征在于:
由所述RTC装置(200)在所述RTC装置(200)与所述TURN服务器(216)之间,以及由所述RTC装置(200)在所述TURN服务器(216)与所述第二媒体端点(203)之间,并且通过配置所述RTC装置(200)或所述RTC服务(228)以使用所述TURN服务器(216),或者通过在密封网段中发现所述TURN服务器(216)的所述媒体端点(202或203)之一来建立RTC媒体路径;以及
由所述第一媒体端点(202)或由所述第二媒体端点(203)将用于所述RTC媒体流量的解密密钥传送到所述拦截网关(224),用于解码通过所述拦截网关(224)的所述RTC媒体流量。
3.根据权利要求1或2所述的方法,其中所述第二媒体端点(203)是另一RTC装置(200)或网关(222、224)。
4.一种用于使用根据权利要求1所述的方法,通过网络进行通信的系统,还包括两个或更多个端点(202、203、203b)。
5.根据权利要求4所述的系统,其中耦合到所述RTC装置(200)的用户代理在所述RTC服务器(218)中实现。
6.一种实现根据权利要求4所述的媒体端点的电信装置。
7.一种实现根据权利要求4所述的拦截网关(224)或RTC服务器(218)的电信装置,其中所述拦截网关(224)或RTC服务器(218)是会话边界控制器(SBC)的一部分。
8.实现根据权利要求4所述的拦截网关(224)或RTC服务器(218)的电信装置,其中所述电信装置包含程序并且能够将所述程序发送到客户端,其中所述程序实现端点的一部分。
9.根据权利要求8所述的电信装置,其中所述程序在并入所述电信装置中的网络服务器上。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,在网络浏览器中,或者作为用于智能电话、平板电脑、个人计算机或计算机服务器的应用程序,或者在包括耦合到存储器的、用于执行程序的处理器的电信装置中实现根据权利要求4所述的系统的媒体端点或者拦截网关(224)或RTC服务器(218)。
11.根据权利要求10所述的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时,执行从以下组成的组中选择的功能:
将消息(164)发送到媒体端点,所述消息能够通过媒体路径(148)被压缩或以其他方式缩短、限制时间或DTMF编码,
从媒体端点接收消息(164),所述消息能够通过媒体路径(148)被压缩或以其他方式缩短、限制时间或DTMF编码,
建立额外的替代媒体路径,在针对所述媒体流量使用所述替代媒体路径之前,其质量或其他度量被评估,
使用会话发起协议(SIP)实时通信,
使用网络实时通信,WebRTC协议,实时通信,
使用交互式连接建立(ICE)在媒体端点之间建立媒体路径,
使用NAT会话穿透实用程序,STUN协议,建立媒体路径,
使用“使用中继穿透NAT”,TURN协议,建立媒体路径,
存储来自自学习进程的知识,无论媒体端点或网段是否具有相互的点对点媒体兼容性,
生成WebRTC HTTP URL点击呼叫链接,这能够是时间限制的、能够存储在WebRTC服务器中并以缩短的形式发送到WebRTC浏览器用户,
执行WebRTC HTTP URL链接,这能够是时间限制的,其存储在WebRTC服务器中,并以缩短的形式从WebRTC浏览器用户接收,
在WebRTC HTTP URL链接中识别特定域名扩展,以调用WebRTC功能,所述WebRTC功能在不被调用时不可用,
根据呼叫状态,在用于客户端的图形用户界面中,在列表中组织联系人,
由在移动应用程序中使用的小的三垂直点符号或菜单线符号代表用于客户端的图形用户界面中的单个联系人的可扩展动作菜单,
唤醒智能电话或其他移动装置,以通过推送通知接收来电,
集成私人交换机(PBX)功能,
集成会话边界控制器(SBC)功能,
集成统一通信(UC)解决方案功能,
将WebRTC集成到SIP网关功能,
集成呼叫中心或接触中心功能,
生成上下文相关的点击呼叫链接,
执行上下文相关的点击呼叫链接,
使用WebRTC浏览器作为客户端连接呼叫代理,
提供即时通信(IM)、呈现、屏幕共享和群组通话功能。
CN202010566479.0A 2015-05-05 2016-05-05 用于拦截和解密指纹保护的媒体流量的方法和系统 Active CN111740990B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562157359P 2015-05-05 2015-05-05
US62/157359 2015-05-05
PCT/IB2016/000713 WO2016178090A2 (en) 2015-05-05 2016-05-05 Establishing media paths in real time communications
CN201680023929.3A CN107567703B (zh) 2015-05-05 2016-05-05 在实时通信中建立媒体路径

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680023929.3A Division CN107567703B (zh) 2015-05-05 2016-05-05 在实时通信中建立媒体路径

Publications (2)

Publication Number Publication Date
CN111740990A CN111740990A (zh) 2020-10-02
CN111740990B true CN111740990B (zh) 2023-02-28

Family

ID=56550248

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202011447139.2A Active CN112600832B (zh) 2015-05-05 2016-05-05 用于直接媒体路径而不是通过网关的方法和系统
CN201680023929.3A Active CN107567703B (zh) 2015-05-05 2016-05-05 在实时通信中建立媒体路径
CN202010566479.0A Active CN111740990B (zh) 2015-05-05 2016-05-05 用于拦截和解密指纹保护的媒体流量的方法和系统

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202011447139.2A Active CN112600832B (zh) 2015-05-05 2016-05-05 用于直接媒体路径而不是通过网关的方法和系统
CN201680023929.3A Active CN107567703B (zh) 2015-05-05 2016-05-05 在实时通信中建立媒体路径

Country Status (6)

Country Link
US (2) US10298628B2 (zh)
EP (3) EP4243372A3 (zh)
JP (2) JP6899328B2 (zh)
KR (1) KR102475020B1 (zh)
CN (3) CN112600832B (zh)
WO (1) WO2016178090A2 (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3022093A1 (fr) * 2014-06-10 2015-12-11 Orange Procede d'etablissement d'une session webrtc
US10819755B1 (en) * 2016-09-16 2020-10-27 Ribbon Communications Operating Company, Inc. Communications apparatus, systems, and methods for preventing and/or minimizing session data clipping
CN109792433B (zh) * 2016-09-28 2022-07-12 瑞典爱立信有限公司 用于将设备应用绑定到网络服务的方法和装置
US9942322B1 (en) * 2017-04-07 2018-04-10 T-Mobile Usa, Inc. Call log update across mobile device and WebRTC client device
KR102327489B1 (ko) * 2017-05-25 2021-11-18 (주)마켓디자이너스 Rtc 스위칭을 이용한 모바일 과외 플랫폼 서버 및 모바일 과외 서비스 제공 방법
JP6469266B1 (ja) * 2018-01-22 2019-02-13 エヌ・ティ・ティ・アドバンステクノロジ株式会社 通信システム
US10673939B2 (en) * 2018-05-04 2020-06-02 Citrix Systems, Inc. WebRTC API redirection with window monitoring/overlay detection
FI20185419A1 (en) 2018-05-08 2019-11-09 Telia Co Ab communication Management
US10986219B2 (en) 2018-06-19 2021-04-20 At&T Intellectual Property I, L.P. LTE fault-tolerant signaling approach
US10904210B2 (en) * 2018-11-21 2021-01-26 Microsoft Technology Licensing, Llc Dynamic bookmarking of web addresses accessed via short URL
FI129164B (en) * 2018-12-20 2021-08-13 Telia Co Ab Communication solution
KR102240904B1 (ko) * 2019-01-24 2021-04-15 주식회사 브리지텍 WebRTC 기반 콜센터 서비스 방법 및 그 장치
CN110460878B (zh) * 2019-07-19 2022-01-11 视联动力信息技术股份有限公司 一种视频通信链路的切换方法和装置
KR102339553B1 (ko) * 2019-12-19 2021-12-16 ㈜오버플로우 화면을 확대하여 표시하며 실시간으로 중계하는 장치 및 이의 동작 방법
CN111541648B (zh) * 2020-03-25 2022-09-20 杭州数梦工场科技有限公司 网络连接检测方法、装置、电子设备和存储介质
JP6973871B2 (ja) * 2020-05-20 2021-12-01 Necプラットフォームズ株式会社 中継装置、通信システム、中継方法及びプログラム
US11350314B2 (en) * 2020-07-13 2022-05-31 Agora Lab, Inc. System and method for classifying network data packets with provided classifier identifiers
CN112653661B (zh) * 2020-09-08 2023-04-07 厦门亿联网络技术股份有限公司 一种VoIP网络限制下的媒体恢复方法和系统
CN112218388A (zh) * 2020-09-15 2021-01-12 贵阳朗玛信息技术股份有限公司 一种断网重连的方法及装置
CN112217690B (zh) * 2020-09-18 2022-06-14 苏州浪潮智能科技有限公司 一种计算节点之间局域网可用的并发测试方法及系统
CN112202882B (zh) * 2020-09-29 2022-03-25 联想(北京)有限公司 一种传输方法、客户端及传输系统
US11838375B2 (en) * 2020-11-12 2023-12-05 Harman International Industries, Incorporated Universal software communication bus
CN112953925B (zh) * 2021-02-05 2022-08-16 广州启智信息科技有限公司 基于sip协议和rtc网络实时音视频通信系统及方法
CN113132376B (zh) * 2021-04-14 2022-11-22 腾讯科技(深圳)有限公司 媒体数据处理方法及装置、系统、电子设备和存储介质
CN113726895B (zh) * 2021-08-31 2023-08-25 广州艾美网络科技有限公司 文件传输方法、装置及网络ktv系统
EP4170994B1 (en) * 2021-10-19 2024-01-17 Tata Consultancy Services Limited A multi-master hybrid telerobotics system with federated avatar control
KR102556286B1 (ko) * 2021-11-24 2023-07-17 주식회사 디오티스 인터넷 환경에서의 WebRTC 기반 통화 연결 방법 및 그 장치
JP2023081226A (ja) 2021-11-30 2023-06-09 株式会社リコー 通信管理装置、通信システム、通信管理方法、及びプログラム
US11864077B2 (en) * 2022-03-16 2024-01-02 Cisco Technology, Inc. Media stream handover using wireless connected devices

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013108121A2 (en) * 2012-01-17 2013-07-25 IPalive AB A device, software module, system or business method for global real-time telecommunication

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2805107B1 (fr) * 2000-02-10 2002-04-05 Bull Cp8 Procede de gestion de transmissions de donnees multimedias via un reseau de type internet, notamment de donnees telephoniques, et carte a puce pour la mise en oeuvre du procede
US20040122976A1 (en) * 2002-10-24 2004-06-24 Ashutosh Dutta Integrated mobility management
JP4564739B2 (ja) * 2003-11-07 2010-10-20 シャープ株式会社 サーバ装置および通信システム
JP2007142786A (ja) * 2005-11-18 2007-06-07 Hitachi Ltd ハンドオーバサーバ及びそれと通信可能な移動通信端末
CN100454921C (zh) * 2006-03-29 2009-01-21 华为技术有限公司 一种数字版权保护方法及系统
JP4683655B2 (ja) * 2006-09-07 2011-05-18 株式会社三菱東京Ufj銀行 アクセス中継装置、アクセス中継システム、及びアクセス中継方法
JP2008252456A (ja) * 2007-03-30 2008-10-16 Toshiba Corp 通信装置、及び通信方法
CN100566340C (zh) * 2007-07-25 2009-12-02 中国科学院沈阳计算技术研究所有限公司 支持p2p媒体传输的sip软交换系统及其实现方法
JP5157668B2 (ja) * 2008-06-19 2013-03-06 富士通株式会社 通信装置および通信方法
US8542805B2 (en) * 2009-05-14 2013-09-24 Voxeo Corporation System and method for encrypted media service in an interactive voice response service
CN101834874A (zh) * 2010-05-21 2010-09-15 四川长虹电器股份有限公司 一种能穿透防火墙的多媒体网络通信方法
JP5247769B2 (ja) * 2010-07-21 2013-07-24 株式会社トヨタIt開発センター ソフトウェア無線機およびソフトウェア更新方法
US8638356B2 (en) * 2011-07-08 2014-01-28 Skype Communication system
CN103580986B (zh) * 2012-07-30 2016-12-21 华为终端有限公司 一种实时通信方法、终端设备、实时通信服务器及系统
WO2014026316A1 (zh) * 2012-08-13 2014-02-20 华为技术有限公司 媒体数据传输方法及设备
US9363133B2 (en) * 2012-09-28 2016-06-07 Avaya Inc. Distributed application of enterprise policies to Web Real-Time Communications (WebRTC) interactive sessions, and related methods, systems, and computer-readable media
US8972829B2 (en) * 2012-10-30 2015-03-03 Broadcom Corporation Method and apparatus for umbrella coding
US8750250B2 (en) * 2012-12-04 2014-06-10 Bandwidth.Com, Inc. Personalized user session information for call handoff
US9473581B2 (en) * 2013-02-04 2016-10-18 Oracle International Corporation Integrated web-enabled session border controller
ES2555653T3 (es) * 2013-02-22 2016-01-07 Telefónica Digital España, S.L.U. Método y sistema para conferencia de telecomunicación basada en una red entre pares (P2P) y en servidor de retransmisión central combinado que usa un protocolo de telefonía y conferencia
US9525718B2 (en) * 2013-06-30 2016-12-20 Avaya Inc. Back-to-back virtual web real-time communications (WebRTC) agents, and related methods, systems, and computer-readable media
US9112840B2 (en) * 2013-07-17 2015-08-18 Avaya Inc. Verifying privacy of web real-time communications (WebRTC) media channels via corresponding WebRTC data channels, and related methods, systems, and computer-readable media
US9531678B1 (en) * 2013-10-15 2016-12-27 Progress Software Corporation On-premises data access and firewall tunneling
CN103702062A (zh) * 2013-12-27 2014-04-02 Tcl集团股份有限公司 一种音视频通讯方法、装置及系统
US9986014B2 (en) * 2015-03-27 2018-05-29 Intel Corporation Systems and techniques for web communication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013108121A2 (en) * 2012-01-17 2013-07-25 IPalive AB A device, software module, system or business method for global real-time telecommunication

Also Published As

Publication number Publication date
JP2020174396A (ja) 2020-10-22
JP6899328B2 (ja) 2021-07-07
EP4243371A2 (en) 2023-09-13
CN107567703B (zh) 2022-03-08
JP2018515959A (ja) 2018-06-14
US20160330252A1 (en) 2016-11-10
EP4243371A3 (en) 2023-09-27
US10298628B2 (en) 2019-05-21
JP7100786B2 (ja) 2022-07-14
EP4243372A3 (en) 2023-09-27
CN107567703A (zh) 2018-01-09
EP3292675A2 (en) 2018-03-14
WO2016178090A3 (en) 2017-01-05
EP3292675C0 (en) 2023-07-12
CN112600832B (zh) 2023-05-19
EP3292675B1 (en) 2023-07-12
KR20180015627A (ko) 2018-02-13
US10298629B2 (en) 2019-05-21
CN111740990A (zh) 2020-10-02
US20180205769A1 (en) 2018-07-19
KR102475020B1 (ko) 2022-12-07
WO2016178090A2 (en) 2016-11-10
EP4243372A2 (en) 2023-09-13
CN112600832A (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN111740990B (zh) 用于拦截和解密指纹保护的媒体流量的方法和系统
US11057365B2 (en) Method and system for creating a virtual SIP user agent by use of a webRTC enabled web browser
US9497127B2 (en) System and method for a reverse invitation in a hybrid peer-to-peer environment
US9319439B2 (en) Secured wireless session initiate framework
US20080215669A1 (en) System and Method for Peer-to-Peer Connection of Clients Behind Symmetric Firewalls
US9781258B2 (en) System and method for peer-to-peer media routing using a third party instant messaging system for signaling
US9307049B2 (en) Voice-over-IP-(VoIP-) telephony computer system
JP2013240053A (ja) モバイル端末における高度なリアルタイムip通信の方法及びシステム
US20120180117A1 (en) Method for Realizing End-to-End Call, End-to-End Call Terminal and System
US9100729B2 (en) Method for handling a telecommunications connection, telecommunications arrangement, switching device and network coupling device
KR100660123B1 (ko) Nat 통과를 위한 브이.피.엔 서버 시스템 및 브이.피.엔클라이언트 단말기

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant