导读:为了支持网易云信在娱乐社交领域打造融合通信云行业第一的品牌战略目标,建设覆盖全球的低延迟大规模传输网络,WE-CAN 在优化体验共享,降低传输延迟方面做了很多工作,本文将介绍 WE-CAN 全球智能路由网络的相关技术。本文为体验共享系列的第二篇。
文|Keith
网易云信服务端首席架构师
什么是 WE-CAN?
WE-CAN(Communications acceleration network)是网易云信自研的大规模分布式传输网络,它的主要目标是通过提供低延迟,高可靠的传输服务来保障音视频互动场景中的顺滑体验。
WE-CAN 的创新之处在于它是通过在公共互联网上架设一个 overlay 来达到这一目标的,且完全由软件方案实现,不依赖专线做远距离传输。通过组织起遍布全球的数百个节点,根据实时智能路由算法挑选出一条最佳的路径。
如果做一个类比,那么 WE-CAN 就好像一个高速公路系统,不管用户在哪里,他的数据只要能进入到这个系统,就能被快速地投递到目的地。
提供一个低延迟的传输服务的关键在于两点:如何找到一个最合适的高速入口,以及如何在复杂的高速路网中挑选出一条最佳的路径,这对应了 WE-CAN 的两大核心系统:调度和路由。围绕在这两大核心系统之外的就是我们遍布全球的数百个边缘节点组成的庞大网络。
WE-CAN 的节点
边缘节点
要提供低延迟高可靠的音视频传输服务,第一跳的质量非常关键。尤其是在移动设备日趋增多,网络情况日趋复杂的今天,就近接入非常重要。
IDC 边缘化是保证音视频上下行质量的重要手段。节点分布得越多,地理覆盖越广,就能服务越多的用户,在全球范围内做到“无死角、全覆盖”是 WE-CAN 的目标。为此,我们建设了数百个边缘机房,覆盖了国内每个省份的三大运营商。在海外覆盖了所有大洲的人口多、经济相对发达、互联网业务较多的国家。并且在每个大洲都建设有数个中心机房用作控制、调度、状态管理等核心服务部署。
WE-CAN 不但节点众多,而且有完善的节点运营机制。通过对各节点的密切实时监控,每日数据挖掘分析,我们建立了一套赛马机制,对质量不佳的节点进行淘汰,时刻保证所有节点都能提供稳定、优质的服务。
中转节点
为了把边缘节点串联起来,WE-CAN 建设了一批优质、稳定的中转节点,这些节点通常占据了各大洲、各地区的“骨干网络交通要道”,并且同时会兼顾多个运营商的线路,保证各边缘节点间的互联互通。
与边缘节点要求部署灵活、本地接入质量优、专注覆盖某一个或某一些 ISP 线路不同,中转节点作为 WE-CAN 网络骨干部分,承载的是跨 ISP、跨地区、跨国甚至跨大洲的流量,对传输质量稳定性有更高的要求。
WE-CAN总体架构图
WE-CAN 的调度
WE-CAN 的调度系统负责根据 SDK 的请求,分配一个合适的接入节点。支持这一分配策略背后的主要因素有两点:地理距离和历史数据。
由地理位置进行就近调度
对于 SDK 的调度来说,客户端的 IP 地址是最重要的输入参数,根据 IP 地址可以解析出用户所在的地理位置和 ISP 信息,在调度时,如果我们没有针对此 IP 地址的历史数据或者数据不够充分,那么就会直接为其分配一个就近的同 ISP 节点。
由历史数据进行择优调度
如果 SDK 曾经跟服务器进行过通信,或者与服务器进行过探测,则我们会根据其历史通话、探测数据来进行判断。
对于曾经有连续登录失败、音视频卡顿、探测质量很差的服务器,在调度时会进行避免。对于各项指标都比较出色的服务器,调度时会优先考虑。
调度系统的其他技术难点
一个优秀的边缘节点调度系统不但要保证每一次调度结果都是最优的,作为一个核心服务,它本身的稳定性、使用性能、并发能力、成本优化能力等也是重要指标。
如在大频道蜂拥入会的场景下,调度系统能否抗住瞬时 QPS 压力,在兼顾频道汇聚的前提下能否防止对单台服务器进行过载保护,这些都是保证线上业务稳定的核心技术难题,WE-CAN 的调度系统在这些方面都有深厚的积累和业界领先的解决方案。
WE-CAN 的路由
WE-CAN 在全球范围内部署了数百个节点,在国内做到了省级单位三大运营商网络全覆盖,在海外的人口稠密地区、经济发达国家也都有优质本地节点部署,真正让用户做到就近接入。
将这张庞大的网络组织起来,提供基于公共互联网的低延迟传输服务是 WE-CAN 路由系统的职责。
WE-CAN 各节点会相互进行质量探测,以真实的业务数据指标为主,以人为主动探测结果为辅,可以得到各个维度的实时节点质量数据,根据这些数据在我们的控制中心通过智能路由算法可以得出各节点间 top k 的最优路径,这些路径的变化情况会及时反馈到各中转节点上去,指导路由转发策略。
WE-CAN 的路由策略是一个复杂的实时变化的结果,考虑的因素除了传输质量外还有流量限制和成本优化,并且在实际使用中也并不一定总是走最优路径。因为节点的网络状况是在不停变化的,在网络拥塞的情况下如果等到节点数据上报反馈到控制中心再经过路由计算下发到节点进行路径切换往往已经过去了数十秒甚至更久。在这种情况下需要各节点根据当前运行状况在 top k 路径上进行一定范围的动态调整。
WE-CAN路由示意图
结语
基于 WE-CAN 大规模传输网络,网易云信可以在全球范围内提供稳定、低延迟的音视频服务。我们会持续优化节点部署、接入调度,路径规划等核心技术能力,让用户得到更好的实时互动体验。
相关阅读推荐