当前位置: 首页 > article >正文

技术分享| anyRTC之RTN网络

RTN(Real-time Network)中文名:实时音视频传输网络。

RTN是最近几年由各大RTC的云厂商提出的一个全新架构的音视频实时传输网络概念。类似于直播的CDN网络,RTN是对音视频的实时性又强烈要求的场景而设计的,原理上全球端到端的时延通过RTN网络可以控制在300ms以内。

anyRTC是RTC的云厂商中较早一批提出RTN概念的厂商,anyRTC是如何实现RTN网络的呢?下面我们来详细介绍一下:

一.介绍

首先介绍几个专用名词:
A.SN:推流节点 – 多种协议的客户端推流到此节点。

B.RN:路由节点 – 将流路由给不同区域的客户端。

C.GN:拉流节点 – 将流分发给多种协议的客户端。

D.RoutePath:路由线路 – 流从一个区域到另外一个区域的路径。

anyRTC实现的是可配置化的动态RTN网络,网络可大可小,最小的可以只有一台机器,最大的是可以支持千万级的并发,覆盖全球的RTN网络。

在这里插入图片描述

二.实现场景

1.单机版

在这里插入图片描述

单机服务只需要推流和拉流的功能,A用户推流,B用户拉流。

适用场景:
A.测试,不需要复杂的网络架构。

B.业务量较小的私有化音视频通讯场景。

2.进阶版

在这里插入图片描述

如果业务中需要2个服务,这时候必须有RN节点,通过RN节点,可以将区域A的流路由到区域B,反之亦然。

适用场景:
A.内外网穿透:在很多行业中,比如金融,公安,消防等领域,对于网络安全要求非常高,需要做到内外网隔离,通过固定端口进行数据互通。

B.跨区互通:比如一个公司新疆和上海都有业务,如果服务只部署在新疆或者上海,对应的另外一个区域的用户体验就会非常差,通过各自区域部署节点,本国用户用各自的节点,只有在两区域之间有互动时,通过RN把流中转给对方。

C.跨国运营:比如一个公司中国和美国都有业务,如果美国要求本国的数据必须本地化存储和传输,通过各自区域部署节点,本国用户用各自的节点,进行数据存储和传输,只有在两国之间有互动时,通过RN把流中转给对方。

3.高阶版

在这里插入图片描述

多区域的RTN网络,适用于高并发高接入量的应用场景,这时候RN服务独立出来,专门做流路由的工作,SN和GN也可以分离,因为当应对大并发时,拉流的业务需求会多得多。

适用场景:
A.RTC云服务厂商,服务有大量RTC接入或者直播接入的场景。

B.多国运营,针对不同国家提供可落地的个性化服务,结合当地法律适配更多场景的运营策略。

C.更低延时的直播CDN分发,CDN厂家可以使用RTN网络来传输节点之间的数据流,然后在各自的落地点进行直播CDN分发。

D.更高规格的网络安全,在行业内,存在网络的隔离区特别多的业务需求,这时候可以使用多区域RTN部署,解决各个网络之间的透传。

E.垮多运营商,比如移动,联通,电信,沃达丰等,各个运营商之间如果直连效果可能不会太好,此时可以在不同运营商的机房中部署服务,RN节点部署在三线机房,通过RN节点进行数据互传。

三.总结

anyRTC通过可配置化的RTN网络,组建了一张全球的RTC传输网络,anyRTC的RTN网络自上线以来实现了超过1000+天的连续稳定运行,平均每日服务的客户接入量超过50w+。同时不久的将来,anyRTC也会开放RTN网络服务,敬请期待吧!

在这里插入图片描述


http://www.kler.cn/a/149796.html

相关文章:

  • JQuery封装的ajax
  • 【Linux】TCP原理
  • VMware虚拟机安装Win7专业版保姆级教程(附镜像包)
  • 天才的懈怠 : 平衡二叉树
  • 前端知识点---Javascript的对象(Javascript)
  • Spark 的容错机制:保障数据处理的稳定性与高效性
  • 解决苹果手机iphone手机强制重启
  • 6-4 jmu-python-发牌
  • Vue框架学习笔记——事件scroll和wheel的区别
  • C#中反射的使用总结
  • 后端整合Swagger+Knife4j接口文档
  • Redis-安装、配置和修改配置文件、以及在Ubuntu和CentOS上设置Redis服务的开机启动和防火墙设置,以及客户端连接。
  • 面试题库之JAVA基础篇(一)
  • springboot自动重启及SpringBoot Developer tools简介
  • 22-Python与设计模式--状态模式
  • 2023亚太地区数学建模B题思路分析+模型+代码+论文
  • LeetCode 5 最长回文子串
  • Oracle Linux 9.3 发布
  • 大模型加载的参数介绍及推荐表,temperature、top_k、top_p、num_beams、num_beam_groups、do_sample等
  • Python压缩、解压文件
  • 数据库中生成列的对比
  • C 语言头文件
  • 图书管理系统源码,图书管理系统开发,图书借阅系统源码配置和运行图解源码已附加
  • 【华为OD题库-042】战场索敌-java
  • Kafka集群部署详细教程
  • Bug 检查 0x7B:INACCESSIBLE_BOOT_DEVICE(未解决)