65 lines
8.3 KiB
TeX
65 lines
8.3 KiB
TeX
% !TEX root = ../bachelor-thesis.tex
|
||
|
||
\chapter{引言}
|
||
|
||
\section{研究背景}
|
||
|
||
|
||
% 最近,实时通信类应用在市场上的需求逐渐提升,实时通信类业务如在线会议,实时音视频通话以及云游戏、实时节目转播等应用场景迅速扩张。到2025年末,76\%的移动设备流量都是用于服务视频流量的\cite{ericsson_mobility_2025}。
|
||
|
||
% 在实时音视频通信的场景下,音视频信号的产生与接收端可能在地理上相隔较远,如果直接在用户之间通过公网建立连接点对点的连接传递数据,可能会由于链路整体距离长、跨国转发次数多而出现较长的延迟和严重的丢包,容易影响用户对实时音视频的观看体验。为了维持优秀的用户体验,保证音视频数据能低延迟、无丢失的传递至接收端,实时通讯服务的服务提供商通常选择部署云网络来为用户提供服务。云网络服务商在全球各地建立数据中心,允许实时通信服务商通过租用多个不同地区的计算与网络资源,构建跨区域互联的覆盖网络(Overlay Network),使音视频数据的产生者和接收者无需建立直接的点到点连接,而是就近从覆盖网络节点中发送和接收数据,经由覆盖网络将数据进行转发。
|
||
|
||
% (就近接入的图片)
|
||
|
||
云网络(Cloud Networking)是一种新型的网络部署与管理架构。云网络服务商通过预先在全球各地部署服务器与网络资源,其他软件服务的服务商可以通过租用这些计算和网络资源,并将他们进行互联,组建适用于自身业务需求的遍布全球的云网络。云网络是在物理网络及计算资源之上构建的逻辑网络,扩展或重新配置时只需要进行软件设置,而不需要对网络设备硬件进行更改。云网络易于配置、可靠性高、易于扩展等众多优点使得它被广泛应用于文件传输、实时音视频通话、企业资源管理等多种服务中。
|
||
|
||
对于跨区域的实时音视频通话业务,通话服务的服务商需要建立一条连接通话用户两端的双向连接。如图\ref{fig:云网络转发拓扑},通常,通话服务商选择使用云网络为进行通话的用户建立连接。通话的用户各自选择距离自己最近云网络接入网关接入云网络,数据经由云网关进入云网络进行转发,再从接收端用户接入的云网关发至接收端用户。对于实时通信业务来说,传输的延迟以及传输视频的卡顿率极大地影响用户体验(Quality of Experience, QoE)\cite{kataria2024titan},因此为了维持优秀的用户体验,云网络提供商必须确保云网络提供低延迟、低丢包率的转发链路。
|
||
|
||
\begin{figure}[htbp]
|
||
\centering
|
||
\includegraphics[width=\linewidth]{cloud_network_rtc.drawio.pdf}
|
||
\caption{云网络为音视频通话提供服务}
|
||
\label{fig:云网络转发拓扑}
|
||
\end{figure}
|
||
|
||
% 在云网络中,同一条逻辑链路的连接可以由多条物理链路抽象而成,即单个逻辑链路可以聚合多个链路的带宽,提升性能。进一步地,同一逻辑链路内的多个物理链路可以互相作为冗余备份,即使部分物理链路故障,云网络逻辑链路也能通过软件调度,依靠其它仍旧物理链路维持逻辑链路的联通,因而极大地提升了网络的可靠性。
|
||
|
||
% 为什么这个问题是难的?
|
||
|
||
% 我们提出了一个方法,实现这个方法有什么难的?
|
||
|
||
在云网络中,同一条逻辑链路的连接可以由多条物理链路抽象而成,云网络服务商通常同时提供专线与公网链路作为同一条物理链路的可选物理链路。通常来讲,专线的质量较高,延迟较低且稳定、丢包率低,能提供较好的传输质量和用户体验,但是高昂的价格对云服务商大规模使用带来挑战;与之相对地,公网链路的价格较低,但是容易受到网络中其它用户的影响,容易发生拥塞和竞争,传输质量容易发生波动,不能提供稳定优质的用户体验。因此,近期的研究主要聚焦在如何优化云网络的以在用户体验与运营成本之间取得平衡。
|
||
|
||
\section{研究现状}
|
||
|
||
物理链路调度类的工作\cite{kataria2024titan,wu2023xron}通过不断监控同一逻辑链路下的公网链路与专线链路的质量,并在公网质量优秀可以为用户提供优质服务的时段将部分流量经由公网链路发送,从而希望能以此降低在专线上发送的数据流量,从而降低使用专线的成本。然而实际上,本研究的测量表明用户的高需求时段与公网链路质量下降时段基本重合,有大量流量需要提供服务时恰逢公网链路质量下降不能满足用户体验需求,公网链路的分流效果有限,大量流量仍旧通过专线转发,实际成本下降效果有限。
|
||
|
||
链路优化工作\cite{bolot1999adaptivefec,huang2010skypefec,holmer2013webrtcfec}则放弃使用专线链路,通过在发送端加入冗余信息以对抗在公网链路上传输时,可能遭遇的丢包。然而,为了尽可能地恢复丢失的信息,算法必须悲观地估计在链路上传输时可能遭遇的最差情况,并据此估算需要加入的冗余信息量。这使得链路上为了恢复一小部分可能的丢包而额外传输了大量的冗余数据,造成了带宽的浪费,同时也提升了使用链路的流量成本。
|
||
|
||
已有的这些方法都没有很好地解决用户质量与运营成本的平衡问题,因为它们:
|
||
\begin{itemize}
|
||
\item 没有考虑用户需升高与公网链路质量下降的时间相关性;
|
||
\item 没有对公网链路丢包特性进行细致的建模。
|
||
\end{itemize}
|
||
这些工作都对真实公网的性质没有细致的研究,因而提出的方法不能很好地适应实际情况,造成运营成本居高不下。
|
||
|
||
\section{研究思路与贡献}
|
||
|
||
本文的作者通过在世界各地部署测试服务器,对真实的公网链路进行了持续的测量,并根据测量的结果,产生了两点观察:
|
||
\begin{enumerate}
|
||
\item 不同的公网链路的质量差距大。部分公网链路质量高,延迟稳定且丢包少,质量与专线几乎相同;还有一些公网链路的质量低,延迟不稳定,且易出现较为严重的丢包现象。这些低质量的公网链路通常是跨国链路。对于一条跨域的云网络连接,它通常在云网络内部也分为多段接力转发(见图\ref{fig:云网络转发拓扑}),而丢包通常只集中发生在跨域的一段链路中,使得端到端测量得到的丢包率较高;
|
||
\item 在丢包率较高的链路中,连续丢包的情况较为常见。一般的冗余算法直接在一段数据包发送之后立刻附上与之相匹配的冗余包,在公网链路上因连续丢包而导致同时丢失了数据包和冗余包而导致最终无法恢复丢失的数据。
|
||
\end{enumerate}
|
||
基于这两点观察,本文设计了一套新的基于交织前向纠错编码(Interleaved Forward Error Correction, Interleaved FEC)的跨国公网链路优化方法。本文提出的方法使用公网实现云网络中所有节点的互联,但只在低质量的链路片段上应用FEC冗余编码进行链路质量修复。本方法不需要使用专线连接,极大地降低了链路的使用成本,有选择性地在低质量链路上使用冗余编码,避免了在高质量链路上添加额外带宽。另外,应用交织编码技术,将冗余包与数据包间隔其它数据包发送,极大地降低了链路连续丢包对丢包恢复的影响。
|
||
|
||
本文作者使用Rust语言实现了基于本方法的分布式云网络转发与针对低质量链路的冗余包计算及丢包恢复算法。经过对真实网络的模拟实验,本文提出的方法将端到端带宽提升了xxx,流完成时间减少了xxx。
|
||
|
||
总结而言,本文主要的贡献是:
|
||
\begin{itemize}
|
||
\item 通过对公网链路的真实测量,指出了长距离跨域公网链路质量差的核心在于单段跨域链路片段存在链路质量差、连续丢包多的特性;
|
||
\item 提出了通过针对性地对低质量链路片段加入冗余,以最低的额外带宽开销实现对链路整体质量的提升;
|
||
\item 实现并测量了本文提出的链路优化方法在跨国公网链路场景下对端到端性能的提升。
|
||
\end{itemize}
|
||
|
||
\section{论文内容}
|