实时通信RTC连接方法、服务器及存储介质技术

技术编号:30753695 阅读:23 留言:0更新日期:2021-11-10 12:07
本发明专利技术实施例涉及通信技术领域,公开了一种实时通信RTC连接方法、服务器及存储介质,服务器被配置为业务进程与UDP端口一一对应绑定,在基于从服务器的TCP端口接收的一个或多个客户端发送的用于资源协商的SDP请求信息后,业务进程向各客户端分别发送SDP响应信息,该SDP响应信息中携带处理SDP请求的业务进程对应的UDP端口信息;业务进程从对应的UDP端口接收客户端发送的UDP连接请求,并采用UDP connect方式进行UDP连接,从而实现RTC连接。由于本方案中,预先配置业务进程与UDP端口一一对应,从而使同一UDP端口接收的所有客户端的所有UDP请求都可以被输送到同一业务进程,实现在有限端口下服务多个用户端,从而解决因开辟大量端口所带来的安全性差、运营维护难度大等问题。等问题。等问题。

【技术实现步骤摘要】
实时通信RTC连接方法、服务器及存储介质


[0001]本专利技术实施例涉及通信
,特别涉及一种实时通信RTC连接方法、服务器及存储介质。

技术介绍

[0002]实时通信(Real

time Communications,RTC)最开始是由谷歌提出的,采用webrtc应用于web视频会议,传输层协议使用用户数据报协议(User Datagram Protocol,UDP),且针对的是客户端之间的P2P方式,所以端口是动态变化的,针对每个连接都是动态的分配端口。由于是客户端与客户端通信,因此传统方式的是采用在客户端侧开辟多个端口,每个端口对应一个客户端来区分与其连接的其他不同的客户端。因为同时连接的其他客户端并不会太多,所以在客户端侧采用动态的为每个与其连接的其他不同的客户端配置一个端口的方式不会存在太大问题。
[0003]当直播中的内容分发网络(Content Delivery Network,CDN)与RTC开始逐渐联系起来时,端口开辟方式开始成为一个需要密切关注的问题。因为在服务器一侧,一个服务器可能需要同时连接成千上万的客户端进行网络直播,如果仍采用传统方式为每一个客户端配置一个端口,则需要配置的端口数量将会很大,从而出现因端口数量庞大而导致的端口维护困难、易遭到攻击,且服务的客户数量有限等问题。

技术实现思路

[0004]本专利技术实施方式的目的在于提供一种数据处理方法、服务器及存储介质,能够有效解决传统RTC方式为适应CDN服务而开辟大量端口所带来的安全性差、运营维护难度大等问题。
[0005]为解决上述技术问题,本专利技术的实施方式提供了一种实时通信RTC连接方法,应用于服务器,所述服务器被配置为针对所述服务器上启动的业务进程分配UDP端口进行绑定,使业务进程与UDP端口一一对应,所述方法包括:
[0006]基于从所述服务器的TCP端口接收的一个或多个客户端发送的用于资源协商的SDP请求信息,向各客户端分别发送SDP响应信息,所述SDP响应信息中携带处理所述SDP请求的业务进程对应的UDP端口信息;
[0007]所述业务进程从对应的UDP端口接收所述客户端发送的UDP连接请求,并采用UDP connect方式进行UDP连接。
[0008]本专利技术的实施方式还提供了一种服务器,包括:
[0009]至少一个处理器;以及,
[0010]与所述至少一个处理器通信连接的存储器;其中,
[0011]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的实时通信RTC连接方法。
[0012]本专利技术的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述
计算机程序被处理器执行时实现如上所述的实时通信RTC连接方法。
[0013]本专利技术实施方式相对于现有技术而言,服务器被配置为业务进程与UDP端口一一对应绑定,在基于从服务器的TCP端口接收的一个或多个客户端发送的用于资源协商的SDP请求信息后,业务进程向各客户端分别发送SDP响应信息,该SDP响应信息中携带处理SDP请求的业务进程对应的UDP端口信息;业务进程从对应的UDP端口接收客户端发送的UDP连接请求,并采用UDP connect方式进行UDP连接,从而实现RTC连接。由于本方案中,预先配置业务进程与UDP端口一一对应,从而使同一UDP端口接收的所有客户端的所有UDP请求都可以被输送到同一业务进程,实现在有限端口下服务多个用户端,从而解决因开辟大量端口所带来的安全性差、运营维护难度大等问题。
[0014]并且,由于业务进程与UDP端口一一对应,避免同一客户端的UDP请求被输送到不同业务进程时而导致业务进程因无法从其他进程获取相关数据而不能执行业务处理。
[0015]并且,由于处于SDP请求的业务进程在SDP响应信息中携带的是与本业务进程对应的UDP端口,故可以将同一客户端的SDP请求和UDP请求传输到同一业务进程中,避免当这两个类型的请求路由到不同业务进程时而导致业务进程因无法从其他进程获取相关数据而不能执行业务处理。
[0016]并且,由于采用UDP connect方式进行UDP连接,可以对同一客户端的不同UDP请求实现有状态连接。
[0017]另外,处理SDP请求的业务进程为服务器基于负载均衡原则从本地已启动的业务进程中选择的一个业务进程。通过负载均衡可以将所有客户端的RTC连接均匀的分配到各个业务进程中,从而平衡后续各业务进程的UDP请求的业务量。
[0018]另外,所述SDP响应信息中携带业务进程生成的第一校验信息;UDP连接请求中携带第二校验信息;所述业务进程采用UDP connect方式进行UDP连接之前,包括:基于第一校验信息对第二校验信息进行校验,若校验通过则执行采用UDP connect方式进行UDP连接的处理。通过设置校验信息,以保证UDP连接的安全性和有效性。
[0019]另外,所述SDP请求信息为携带在客户端发送的HTTP请求信息中的offer信息,HTTP请求信息中还包含客户端本次发起的SDP请求的相关信息;SDP响应信息为携带在业务进程发送的HTTP响应信息中的answer信息;第一验证信息为包含在answer信息中的一个属性信息;业务进程接收SDP请求信息之后,还包括:业务进程创建各SDP请求信息对应的映射表项;所述映射表项包括:SDP请求的相关信息,以及第一校验信息。通过创建映射表项,可将SDP请求的相关信息、校验信息进行映射,方便对SDP请求信息进行校验,以及后续查询SDP请求的相关信息。
[0020]另外,基于第一校验信息对第二校验信息进行校验,包括:若已存储的映射表项中存在第二校验信息对应的映射表项,则校验成功。
[0021]另外,所述第一校验信息包括:生成第一校验信息的时间戳、业务进程标识和RTC连接序号。该生成方式可以最大限定保证校验信息的唯一性。
[0022]另外,所述SDP请求的相关信息包括:所请求流媒体的域名和流名信息。
[0023]另外,所述offer信息包括:客户端支持的音视频编码参数;所述answer信息包括:服务器反馈的音视频编码参数;其中,所述服务器反馈的音视频编码参数为,所述服务器基于所述HTTP请求信息中的域名和流名信息,从直播服务器获取的直播的音视频编码参数,
并将该音视频编码参数作为所述服务器反馈的音视频编码参数。
[0024]另外,所述UDP连接请求包含基于STUN协议的绑定请求,所述第二校验信息为携带在绑定请求中的STUN鉴权信息。通过第二校验信息实现服务器对STUN协议的绑定请求进行校验。
[0025]另外,所述采用UDP connect方式进行UDP连接的处理,包括:创建本次连接的唯一文件描述符,将所述文件描述符与所述业务进程所对应的端口进行绑定,并通过反向链接对端的地址,将本次连接对应的五元组信息进行关联;基于所述文件描述符将本次本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实时通信RTC连接方法,其特征在于,应用于服务器,所述服务器被配置为针对所述服务器上启动的业务进程分配UDP端口进行绑定,使业务进程与UDP端口一一对应,所述方法包括:基于从所述服务器的TCP端口接收的一个或多个客户端发送的用于资源协商的SDP请求信息,向各客户端分别发送SDP响应信息,所述SDP响应信息中携带处理所述SDP请求的业务进程对应的UDP端口信息;所述业务进程从对应的UDP端口接收所述客户端发送的UDP连接请求,并采用UDP connect方式进行UDP连接。2.根据权利要求1所述的方法,其特征在于,所述处理所述SDP请求的业务进程为所述服务器基于负载均衡原则从本地已启动的业务进程中选择的一个业务进程。3.根据权利要求1所述的方法,其特征在于,所述SDP响应信息中携带所述业务进程生成的第一校验信息;所述UDP连接请求中携带第二校验信息;所述业务进程采用UDP connect方式进行UDP连接之前,包括:基于所述第一校验信息对所述第二校验信息进行校验,若校验通过则执行采用UDP connect方式进行UDP连接的处理。4.根据权利要求3所述的方法,其特征在于,所述SDP请求信息为携带在所述客户端发送的HTTP请求信息中的offer信息,所述HTTP请求信息中还包含所述客户端本次发起的SDP请求的相关信息;所述SDP响应信息为携带在所述业务进程发送的HTTP响应信息中的answer信息;所述第一验证信息为包含在所述answer信息中的一个属性信息;所述业务进程接收所述SDP请求信息之后,还包括:所述业务进程创建各所述SDP请求信息对应的映射表项;所述映射表项包括:所述SDP请求的相关信息,以及所述第一校验信息。5.根据权利要求4所述的方法,其特征在于,基于所述第一校验信息对所述第二校验信息进行校验,包括:若已存储的映射表项中存在所述第二校验信息对应的映射表项,则校验成功。6.根据权利要求4所述的方法,其特征在于,所述第一校验信息包括:生成所述第一校验信息的时...

【专利技术属性】
技术研发人员:陈祥祥庄晓川
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1