前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ISCC 2023 | 在RTC中采用基于学习的递归神经网络进行拥塞控制

ISCC 2023 | 在RTC中采用基于学习的递归神经网络进行拥塞控制

作者头像
用户1324186
发布2023-12-14 17:15:21
5800
发布2023-12-14 17:15:21
举报
文章被收录于专栏:媒矿工厂

作者:Jingshun Du, Chaokun Zhang∗, Shen He, and Wenyu Qu 来源:ISCC '23 论文题目:Learning-Based Congestion Control Assisted by Recurrent Neural Networks for Real-Time Communication 论文链接:https://ieeexplore.ieee.org/abstract/document/10218019 内容整理:王柯喻

目录

  • 引言
  • 挑战
  • 相关工作
  • 模型搭建
    • 问题建模
    • 系统环境
    • LSTM预测模型
  • 实验
    • 实验环境
    • 实验数据
    • 对比实验
  • 总结

引言

近年来,实时通信(RTC)在许多场景中得到了广泛的应用,而拥塞控制(CC)是改善此类应用体验的重要方法之一。准确的带宽预测是CC方案的关键。然而,设计一个有效的拥塞控制方案与准确的带宽预测是具有挑战性的,主要是因为它本质上是一个部分可观察的马尔可夫过程(POMDP)问题,很难使用传统机器学习的方法来解决。本文提出了一种新的混合 CC 机制 LRCC,它结合了基于注意力的长短期记忆(LSTM)和强化学习(RL),通过将递归神经网络提供的带宽记忆信息加入到 RL 决策过程中,实现了更精确的带宽预测和拥塞控制。

挑战

WebRTC 作为网页 RTC 的开源项目,近年来受到了用户的广泛关注。因此,提升WebRTC应用的用户体验成为当下研究重点。拥塞控制旨在将网络链路的数据流保持在带宽瓶颈附近。如图1所示,在发送速率达到带宽瓶颈后,接收速率停止增加,相反,延迟开始显著增加。这是由于发送速率太大,导致网络上的数据流超过了瓶颈,这反映了准确预测带宽瓶颈的重要性。近年来,流媒体领域提出了许多基于带宽预测的CC 方案。然而,考虑到 WebRTC 对低延迟(500ms以内)的更高要求,WebRTC 中的带宽预测必须更准确,波动和误差更小。

图 1 接收速率和发送速率方面的延迟变化

相关工作

许多以前的作品提出了不同的CC计划。传统的 TCP CC算法主要依靠检测丢包或吞吐量的变化来控制拥塞窗口的大小,从而控制数据发送速率,如Vegas 和Cubic 。这种类型的算法的问题是,检测到的带宽值将以锯齿状的方式波动,导致不稳定的发送速率。在RTC领域中,GCC 和 SCReAM是现有的启发式方案,它们基于固定模型估计带宽,但可能在适应比特率和延迟方面面临限制。

模型搭建

问题建模

本文将 RTC 场景中的拥塞控制问题建模为 POMDP ,其可以描述为6元组(S,A,T,R,Ω,O)。S、A、T、R是 MDP 的状态、动作、转换和奖励。Ω是观测空间,所以观测o满足o ∈ Ω。观测值o是根据概率分布o ~ O(s)从底层系统状态生成的,它可以被视为一些关键的网络指标。现在强化学习中 agent 接收观察向量 o,然后根据 o选择动作a ∈A,即未来带宽的预测值。置信状态 b 符合 S 上的概率分布。用 b(s)表示置信状态 b 分配给状态s的概率,现在我们可以为策略 π 定义以下值函数:

V^{π}(b)= E_{π}[ \sum\limits_{t=0}^{h}\gamma^{t}R(b_{t},\pi(b_{t}))|b_{0}=b] \quad (1)

其中

R(b_{t},\pi(b_{t})) = \sum_{s\in S}R(b_{t},\pi(b_{t}))b_{t}(s)

,

\gamma

是奖励折扣因子。使

V^{π}

最大化的策略π称为最优策略。它满足Bellman 最优性方程:

V^{*}(b)=\mathop{max}\limits_{a \in A}[\sum\limits_{s\in S}R(s,a)b(s)+\gamma\sum\limits_{o \in O}p(o|b,a)V^{*}(b^{a,o})] \quad (2)

可以把LRCC看作一个强化学习框架,它的目标是优化系统状态值V(b),这意味着LRCC需要从连续动作空间 A 中选择能够最大化系统奖励累积的动作 a。然后可以使用QoE因素来构建奖励系统以促进学习。

系统环境

图2 系统架构

选择 AlphaRTC 作为 RTC 系统的基础,它从RTC 系统中分离出拥塞控制模块,以方便研究人员设计拥塞控制。LRCC 在 AlphaRTC 提供的接口文件中实现,完成拥塞控制的仿真。总的来说,AlphaRTC 提供了运行和调试我们基于强化学习的拥塞控制方案 LRCC 的环境。LRCC框架如图2所示。LRCC 可以获得 AlphaRTC 运行时的 RTP 统计信息,包括平均时延 Dt、平均丢包率Lt、平均接收速率 Rt、最后预测带宽 Pt。带宽收集器将收集最近的接收速率 Rt 并生成吞吐量序列作为 LSTM 预测模型的输入。LSTM 预测模型将输出下一个时间间隔的初步预测带宽 Btk ,并且Btk将与上述 RTP 统计数据一起添加到状态向量。状态生成器将汇集这些统计数据并得到5维向量 St ,其可以被视为先前建模过程中提到的观测值。最后,将 RL agent 输出的增益系数 μ 和LSTM模型输出的预测带宽 B 一起发送到融合网络。融合网络的输出值是最终的带宽预测值 P ,可以看作是前面建模过程中提到的动作 a。P 流将作为 RTCP 反馈数据发送到模拟器,AlphaRTC 根据它调整媒体编码参数。

LSTM预测模型

LSTM模型

LRCC采用基于注意力的 LSTM 模型进行带宽预测。带宽收集器将不断更新最新的历史吞吐量序列作为LSTM模型的输入。LSTM模型的输出被分配不同的权重,并被注意力机制取代,以获得初步的带宽值 B。

注意机制

图 3 基于注意力的LSTM

硬注意和软注意是典型的注意机制。本文采用软注意力机制,因为它可以在收敛过程中学习权重。注意力机制提取历史吞吐量序列中的关键信息,可以进一步提高带宽预测的准确性。基于注意力的LSTM如图3所示。在图中,h和c分别表示LSTM的隐藏层输出和中间语义向量。

训练算法

强化学习算法选择基于演员-评论家框架的最近策略优化(PPO)。PPO 是 openAI 的默认算法,性能良好,可以满足任务需求。图4描绘了 RL 代理网络的结构。在初步特征提取之后,它与两个完全连接的层相结合。最后,演员网络输出动作,评论家网络输出用于评估动作质量的值。

奖励函数

奖励函数支持增加带宽利用率的行为,并惩罚导致高数据包延迟和高数据包丢失率的行为。定义为:

Reward= \alpha ×rate_{pkt}-\beta ×loss_{pkt}-\gamma×delay_{pkt} \quad (3)

其中

rate_{pkt}

是最后一个区间的接收率,

loss_{pkt}

是最后一个区间的损失率,

delay_{pkt}

是最后一个区间的延迟。根据实验经验α、β和γ的值分别设置为10、10和2.5。

融合网络

LSTM 模型的预测结果不稳定,对不同网络环境的适应性差,难以应对突发的带宽波动。因此,通过将 RL代理的输出 μ 与带宽 B 相结合来获得最终的带宽预测 P。这种设计可以防止过度波动。然而,它们的映射方法都是简单的基于规则的映射,面对不同的网络环境,性能会有所下降。因此,本文设计了一个简单的融合网络作为映射函数,它由一个具有一维输出的多层感知器(MLP)实现,打破了传统的输入线性组合,可以接受训练以适应新的环境。μ 和 B 被输入到融合网络以获得最终带宽预测值 P

实验

实验环境

Ubuntu 20.04系统、64 G RAM、Intel(R)Xeon(R)Silver 4208 CPU(2.10 GHz)和GeForce RTX 3090(24 G VRAM)

实验数据

使用 OpenNetLab 提供的网络数据作为输入。这些网络轨迹是通过使用 iperf 探测真实的网络环境获得的。迹线包含各种网络场景,包括 4G 网络、5G网络和有线网络。每个跟踪记录不断变化的网络环境(例如延迟、丢失和带宽容量)。以4G 3mbps跟踪为例,它以200ms的粒度记录了超过60秒的吞吐量。4G 走线的平均带宽从500kbps到3Mbps,5G走线的平均带宽从12Mbps到13Mbps,有线走线的平均带宽从900Kbps到35Mbps。上述跟踪的25%指定[20%,50%]丢包率,其中40%指定[200 ms,500 ms]往返时间(RTT)。

对比实验

选择了以下三个具有代表性的 CC 方案进行实验评估。它们分别代表了现有的先进的完全启发式计划,完全基于RL的计划,和混合计划。

  1. GCC :GCC 是一个经典的完全启发式算法。它是WebRTC 使用的默认 CC 方案,它使用基于延迟的状态机模型和基于丢失的规则,根据从RTCP数据包收集的网络状态给予比特率
  2. PPO :PPO 是一个完全的 RL 方案。这是OpenNetLab提供的用例中的方案。PPO 将网络反馈的统计数据作为输入,直接输出预测带宽。
  3. HRCC :HRCC 是一种混合 CC 方案,它使用RL代理和GCC,结合了启发式方案和基于 RL 的方案的优点。RL代理周期性地生成增益系数以调整由启发式方案估计的带宽。

图 5 与不同cc方案的对比

在3种不同的网络场景下进行仿真,比较LRCC与其他CC方案。结果如图5所示,与其他CC方案相比,LRCC在所有QoE指标上具有最佳性能。与目前仍广泛使用的启发式方案GCC相比,LRCC可以将4G网络的整体QoE性能提高25%。这是因为引入了基于注意力的强化学习中的LSTM,以及历史吞吐量的内存信息可以被RL代理利用,从而在部分可观测的环境中更好地微调最终的带宽预测值,即可有效减少网络中视频数据流量超过带宽瓶颈的现象。

图 6 各方案关键指标

此外本文还对 4G 场景下各方案的关键指标进行了分析比较,认为 4G 痕迹比其他痕迹更能反映低带宽的网络环境。各方案关键指标测试结果见图6。每个方案用20分表示,因为每个方案都测试了20次。由图6(a)和图6(B)可知,在相同的时延条件下,LRCC比其他方案具有更高的接收速率和更低的丢包率。从图6(c)中散点的三维分布趋势可以明显看出,LRCC在延迟、丢包率和接收率等所有关键指标方面都具有最佳性能。

总结

本文提出了一种新的 RTC 应用拥塞控制方案 LRCC。利用 LSTM 的记忆功能来辅助 RL 决策,从而实现准确的带宽预测和更好的环境适应性。在各种网络场景中的实验表明,比其他方案相比 LRCC 可以实现更好的性能指标和 QoE 指标。本工作可以为高质量的 RTC 应用提供一些启示。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 媒矿工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引言
  • 挑战
  • 相关工作
  • 模型搭建
    • 问题建模
      • 系统环境
        • LSTM预测模型
        • 实验
          • 实验环境
            • 实验数据
              • 对比实验
              • 总结
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档