38、对等网络视频流的部分视频复制与网络自适应QoS控制

对等网络视频流的部分视频复制与网络自适应QoS控制

在当今互联网环境下,网络多媒体应用对于网络服务质量有着特殊的要求,而传统的互联网服务模式难以满足这些需求。本文将探讨对等网络视频流的部分视频复制策略以及网络自适应QoS控制方法,以提升视频流的服务质量。

对等网络视频流的部分视频复制

在对等网络视频流中,部分视频复制是一种重要的策略。客户端在完成视频流播放后,会根据自身的可用磁盘空间和输出带宽存储部分视频片段。这里主要研究了两种方案:合作方案和非合作方案。

贪婪算法与近似比

在选择用于视频流的对等节点时,使用了贪婪算法。贪婪算法选择的对等节点数量最多可能是最优解决方案中对等节点数量的HP倍。在这种情况下,视频片段的数量决定了近似比。当有M个片段时,近似比为H(M)。由于贪婪算法会在每个客户端请求电影时执行,因此高效实现至关重要。贪婪集合覆盖算法可以在O(∑S∈F | S |)时间内运行,其运行时间与网络中存储的片段总数成正比。

如果领导者能够找到满足请求的集合覆盖,它会将集合覆盖中的对等节点列表及其本地向量发送给请求客户端。请求客户端会联系这些对等节点并从它们那里流式传输视频。如果一个片段存储在集合覆盖中的多个对等节点上,请求客户端可以根据其他标准(如延迟或跳数)选择一个对等节点。

基于区域的合作方案

随着网络规模的扩大,单个领导者可能无法处理所有客户端的请求。为了减轻领导者的负载,将网络划分为多个区域,每个区域都有一个区域领导者。

区域划分涉及将区域R的一些节点移动到区域R′。只有当区域R和R′都能独立处理客户端请求时,才会进行划分,否则会忽略划分的想法。在做出划分决策时,会考虑对等节点之间的距离和网络条件。对等节点之间的距离由它们之间存在的公共片段数量决定,并将其归一化到0到1之间的值。网络条件包括网络的延迟和带宽,也将其值设置在0到1之间。因此,对等节点之间的边的成本为aα + bβ,其中α + β = 1,α和β是用户定义的参数。

划分区域时需要解决以下挑战:
- 何时可以进行区域划分?
- 如何为区域R′选择领导者?
- 如何创建平衡的自给自足区域?

下面是区域划分算法:

Split-Region(R,a,b)
01 p ←leader(R)
02 for each i ∈R
03
    di,p = Compute-Distance(i,p)
04 C ←∅
05 for each i ∈R
06
    if di,p > D′
07
        C ←C ∪{node i}
08 q ←Select-Leader(C)
09 R′ ←{q}
10 for each i ∈R
11
    di,q = Compute-Distance(i,q)
12
    if di,p > di,q
13
        R′ ←R′ ∪{node i}
14
        R ←R −{node i}
15 if SET-COVER(R′) = False
16
    for each i ∈R
17
        di,q = Compute-Distance(i,q)
18
        D = Sort di,q in increasing order
19
    for each i ∈D
20
        if SET-COVER(R′) = False or num-of-nodes(R′) < low-threshold
21
            R′ ←R′ ∪{node i}
22
            R ←R −{node i}
23
    if num-of-nodes(R′) > high-threshold or SET-COVER(R) = False
24
        Abort Split test
21 return

该算法以区域R和参数a、b为输入。如果min count大于M′,则可以调用Split-Region算法,否则区域太小无法划分。其中M′、D′是用户定义的参数,min count是系统中片段i的最小副本数。第8行从候选集中随机选择一个节点作为区域R′的领导者,第9行将该节点从区域R移动到区域R′,使其成为区域R′的领导者。算法会继续将节点从区域R移动到区域R′,直到可以为R′找到集合覆盖,或者区域R′中的节点数量小于低阈值。如果区域R′中的节点数量大于高阈值,则无法实现平衡划分,会中止划分测试并将区域R和R′的节点合并。低阈值和高阈值用于创建平衡的自给自足区域。

实验结果

通过广泛的模拟实验,对合作方案和非合作方案进行了比较。模拟使用csim编写,初始时只有源节点拥有电影,电影请求按照泊松分布到达。模拟使用了λ = 0.001、0.0001和0.0003三个值。电影被分为100个片段,客户端在流式传输后会存储一些片段。结果基于所有片段权重相等的同质情况,异质情况是未来的研究方向。50%的客户端存储10 - 20个片段,另外50%存储20 - 50个片段。20%加入网络的客户端会一直留在网络中直到模拟结束。由于对等节点可以根据输出带宽设置存储的视频比例,每个对等节点在给定时间最多可以为一个客户端提供视频。在模拟中,节点存储的最小片段数为10,对应电影的10%;最大存储片段数为50,对应电影的50%。电影时长为120分钟。

有两组实验结果:第一组中,流式传输后节点会一直留在网络中直到模拟结束;第二组中,80%的节点会在网络中停留5 - 24小时,20%的节点会一直留在网络中直到模拟结束。模拟时长为1个月。

使用以下指标来比较合作方案和非合作方案的性能:
|指标|含义|理想情况|
|----|----|----|
|min-max count|系统中片段i的最小和最大副本数|min和max之间的差距小|
|utility value|效用函数的值|效用图中的曲线平滑|
|number of supplying peers|流式传输会话中涉及的平均供应对等节点数量|供应对等节点数量少|
|success-failure count|成功和失败的流式传输会话数量|成功数量多,失败数量少|

实验结果表明,当所有节点都一直留在网络中直到模拟结束时,合作方案和非合作方案的图表相似;但在节点停留5 - 24小时的情况下,两者有所不同。在这种情况下,合作方案在支持的流式传输会话数量方面表现更好,但大规模实施合作方案不可行,因为用于集合覆盖的节点可能彼此距离很远,而且合作方案的集中式性质也存在问题,因为领导者的故障会导致流式传输无法进行。非合作方案表现合理,可以通过在对等网络上使用有限范围广播以分布式方式实现。拥有更多的供应对等节点增加了多个对等节点拥有一个片段副本的可能性,客户端可以根据网络延迟和跳数等标准选择对等节点。

下面是区域划分和视频流过程的mermaid流程图:

graph LR
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px;
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
    classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px;

    A([开始]):::startend --> B(客户端请求电影):::process
    B --> C{领导者找到集合覆盖?}:::decision
    C -->|是| D(发送对等节点列表和本地向量):::process
    D --> E(客户端联系对等节点并流式传输视频):::process
    C -->|否| F(不进行流式传输):::process
    G(网络规模扩大):::process --> H(划分网络为区域):::process
    H --> I{区域可划分?}:::decision
    I -->|是| J(选择区域领导者):::process
    J --> K(移动节点到新区域):::process
    K --> L{区域平衡?}:::decision
    L -->|是| M(完成区域划分):::process
    L -->|否| N(中止划分测试):::process
    I -->|否| O(不进行区域划分):::process
网络自适应QoS控制

新兴的网络多媒体应用对底层网络提出了特殊要求,如实时处理、保证服务和不同级别的网络服务质量。然而,当前的互联网“一视同仁”服务模式不适合这些多媒体通信。

差异化服务模型

为了满足多媒体应用的QoS需求,互联网工程任务组(IETF)提出了差异化服务(DiffServ,或DS)模型。该模型根据一组比特(即DSCP)为聚合流量流分配不同的资源,而不是为单个数据包流分配资源。目前定义了两种服务模型:高级服务(PS)和保证服务(AS),为每个节点的IP数据包提供不同级别的转发保证。

高级服务旨在提供低损耗、低延迟和有保证的带宽服务(即绝对服务差异化),它需要进行准入控制以防止其他服务类别的资源饥饿,因此在灵活性和保证之间进行了权衡。而保证服务在DS类之间提供相对服务差异化,即高优先级类别的服务优于(或至少不低于)低优先级类别。由于大多数近期的多媒体应用(如流式视频)对偶尔的数据包丢失和延迟波动越来越有弹性,DiffServ网络的保证服务因其简单性和灵活性而更具吸引力。

然而,保证服务仅提供定性的差异化,服务保证有限。最近的一些研究工作试图在不牺牲可扩展性和简单性的前提下,加强相对服务差异化下的服务保证。最著名的方法之一是比例差异化服务(PDS)模型,它通过使不同类别的延迟或丢失率的比率大致恒定来量化服务差异。该模型允许网络运营商独立于类负载变化控制多个类之间的质量间隔。

QoS映射框架

在DiffServ架构内,提出了各种视频交付场景,以将应用程序和网络集成在一起,以增强媒体流式传输。一种可能的场景是将应用程序需求自适应地结合到适当的网络资源参数(如端到端延迟、抖动、数据包丢失和带宽)中。因此,需要一种根据网络情况进行自适应的QoS映射机制,以动态地为终端系统提供端到端的QoS保证,并提高网络利用率。

为此,提出了一个可扩展的自适应QoS映射控制框架,该框架由主动QoS控制和被动QoS控制组成,以网络类/流为粒度,用于支持感知服务差异化的视频流式传输。QoS控制框架与相应域的定价或策略基础设施紧密耦合,使较高级别的服务更昂贵。在给定一定的成本约束下,用户/应用程序应根据合同规定的QoS级别找到最佳方式。

网络自适应QoS控制

尽管底层网络的资源供应策略得到严格管理,但由于瞬时类负载波动,仍然会出现不稳定的网络服务情况。这些不稳定情况阻碍了视频应用程序持续实现其期望的服务要求。由于应用程序感知的端到端QoS主要取决于当前的网络负载条件,视频应用程序应响应这种波动。

主要思想是在DiffServ域的入口处将显式拥塞通知(ECN)机制与主动QoS映射控制相结合。这样不仅可以将网络类的状态通知给终端主机应用程序,还可以在入口侧触发被动QoS调整。模拟结果表明,这种方法可以提高在资源不足的网络中流式视频的QoS性能。

下面是网络自适应QoS控制的流程:
1. 应用程序向DiffServ网络发送视频流请求。
2. 入口节点进行主动QoS映射控制,根据应用程序的QoS要求和网络资源情况分配网络类。
3. 在网络传输过程中,监测网络的负载情况和拥塞状态。
4. 如果检测到拥塞,使用ECN机制通知入口节点。
5. 入口节点根据ECN通知触发被动QoS调整,例如降低某些低优先级类别的带宽分配。
6. 持续监测和调整,以保证视频应用程序的QoS。

通过这种网络自适应QoS控制方法,可以在复杂多变的网络环境中更好地满足视频流应用的服务质量需求。未来的研究可以进一步探索如何结合合作方案和非合作方案的优点,开发混合方案,以及在异质情况下优化视频流和QoS控制策略。

对等网络视频流的部分视频复制与网络自适应QoS控制

合作方案与非合作方案的详细对比分析

为了更清晰地了解合作方案和非合作方案的特点,我们进一步深入对比它们在不同方面的表现。

从片段副本分布的均衡性来看,合作方案在min - max count指标上表现出色。在模拟中,其min和max之间的差距相对较小,这意味着片段在系统中的分布更为均匀。例如,在某个时间段内,合作方案下每个片段的副本数波动范围相对较窄,而在非合作方案中,由于节点之间缺乏协调,部分片段的副本数可能会出现极大的差异,导致min和max之间的差距较大。这种均衡的片段分布有助于提高视频流的可靠性,减少因某些片段副本过少而导致的播放中断问题。

在效用值方面,合作方案的效用图曲线更加平滑。这是因为合作方案在复制视频片段时,会综合考虑整个网络的情况,以最大化效用函数为目标。当有节点加入或离开网络时,合作方案能够更平稳地调整资源分配,使得效用值的变化更加缓和。而非合作方案由于节点独立决策,可能会在节点动态变化时出现效用值的突然上升或下降,导致曲线不够平滑。

供应对等节点数量上,合作方案通常能实现较少的供应对等节点参与流式传输会话。这是因为合作方案通过合理的集合覆盖算法,能够更精准地选择提供视频片段的节点,避免了不必要的节点参与。相比之下,非合作方案可能会因为缺乏全局协调,使得更多的节点参与到流式传输中,增加了客户端管理流式会话的难度。

从成功 - 失败计数指标来看,合作方案在支持的流式传输会话数量上具有明显优势。在模拟中,随着内容的复制和传播,合作方案的成功计数逐渐增加,失败计数相应减少。特别是在λ = 0.001的情况下,这种优势更加显著。这是因为合作方案能够更好地协调节点之间的资源,提高视频流的成功率。然而,非合作方案在某些情况下也有其优势,例如当节点停留时间较短且新节点加入率较低(如λ = 0.0001)时,大部分新加入的客户端会由领导者进行流式传输,此时非合作方案的表现相对较好。

下面我们用一个表格来更直观地对比合作方案和非合作方案的各项指标:
|指标|合作方案|非合作方案|
|----|----|----|
|min - max count|min和max差距小,片段分布均衡|min和max差距大,片段分布不均|
|utility value|效用图曲线平滑|效用图曲线波动较大|
|number of supplying peers|供应对等节点数量少|供应对等节点数量多|
|success - failure count|成功计数高,失败计数低|在特定情况下表现较好,如低加入率时|

区域划分算法的优化思路

区域划分算法在对等网络的可扩展性和负载均衡方面起着关键作用,但目前的算法仍有一些可以优化的地方。

首先,在选择区域领导者的过程中,当前算法是从候选集中随机选择一个节点作为领导者。这种随机选择的方式可能会导致选择的领导者并非最优,无法充分发挥区域的性能。可以考虑引入一些评估指标,如节点的带宽、存储容量、网络连接稳定性等,来选择更合适的领导者。例如,可以计算每个候选节点的综合得分,得分高的节点作为领导者,这样可以提高区域的整体性能。

其次,在判断区域是否可划分时,仅考虑了min count和M′的关系,以及区域的大小。可以进一步结合网络的实时负载情况和节点的动态变化来做出更准确的决策。例如,当某个区域的负载过高,且相邻区域有足够的资源时,可以提前进行区域划分,以避免出现网络拥塞。

另外,在移动节点到新区域的过程中,可以采用更智能的策略。当前算法是根据节点与领导者的距离来决定是否移动节点,这种方式可能会导致一些节点在区域之间频繁移动,增加了网络的开销。可以考虑引入节点的历史行为和偏好,例如节点经常访问的内容、与其他节点的合作频率等,来决定节点的归属区域,减少不必要的节点移动。

以下是优化后的区域划分算法的mermaid流程图:

graph LR
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px;
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
    classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px;

    A([开始]):::startend --> B(检查区域负载和节点动态):::process
    B --> C{区域可划分?}:::decision
    C -->|是| D(评估候选领导者节点):::process
    D --> E(选择综合得分最高的节点为领导者):::process
    E --> F(根据节点历史行为和偏好移动节点):::process
    F --> G{区域平衡?}:::decision
    G -->|是| H(完成区域划分):::process
    G -->|否| I(调整节点移动策略):::process
    I --> F
    C -->|否| J(不进行区域划分):::process
网络自适应QoS控制的未来发展方向

网络自适应QoS控制虽然在提高视频流服务质量方面取得了一定的成果,但随着网络技术的不断发展和多媒体应用的日益多样化,仍有许多可以探索的方向。

一方面,可以进一步结合人工智能和机器学习技术,实现更智能的QoS控制。例如,利用深度学习算法对网络的历史数据进行分析,预测网络的负载变化和拥塞情况,提前进行QoS调整。这样可以更加精准地满足视频应用的服务需求,减少因网络波动导致的服务质量下降。

另一方面,可以加强不同网络层之间的协同控制。目前的QoS控制主要集中在网络层和传输层,未来可以将应用层的信息也纳入考虑范围,实现端到端的全局优化。例如,根据视频应用的具体内容(如视频的分辨率、帧率等)和用户的观看习惯,动态调整网络资源的分配,提供更加个性化的服务。

此外,随着5G等新一代网络技术的普及,网络的带宽和延迟特性将得到极大改善。可以针对5G网络的特点,优化QoS控制策略,充分发挥5G网络的优势。例如,利用5G网络的低延迟特性,实现更实时的拥塞控制和QoS调整。

综上所述,对等网络视频流的部分视频复制和网络自适应QoS控制是解决网络多媒体应用服务质量问题的重要手段。通过不断优化合作方案和非合作方案,改进区域划分算法,以及探索网络自适应QoS控制的新方向,可以在复杂多变的网络环境中为用户提供更加稳定、高效的视频流服务。

提供了基于BP(Back Propagation)神经网络结合PID(比例-积分-微分)控制策略的Simulink仿真模型。该模型旨在实现对杨艺所著论文《基于S函数的BP神经网络PID控制器及Simulink仿真》中的理论进行实践验证。在Matlab 2016b环境下开发,经过测试,确保能够正常运行,适合学习和研究神经网络控制系统中的应用。 特点 集成BP神经网络:模型中集成了BP神经网络用于提升PID控制器的性能,使之能更好地适应复杂控制环境。 PID控制优化:利用神经网络的自学习能力,对传统的PID控制算法进行了智能调整,提高控制精度和稳定性。 S函数应用:展示了如何在Simulink中通过S函数嵌入MATLAB代码,实现BP神经网络的定制化逻辑。 兼容性说明:虽然开发于Matlab 2016b,但理论上兼容后续版本,可能会需要调整少量配置以适配不同版本的Matlab。 使用指南 环境要求:确保你的电脑上安装有Matlab 2016b或更高版本。 模型加载: 下载本仓库到本地。 在Matlab中打开.slx文件。 运行仿真: 调整模型参数前,请先熟悉各模块功能和输入输出设置。 运行整个模型,观察控制效果。 参数调整: 用户可以自由调节神经网络的层数、节点数以及PID控制器的参数,探索不同的控制性能。 学习和修改: 通过阅读模型中的注释和查阅相关文献,加深对BP神经网络PID控制结合的理解。 如需修改S函数内的MATLAB代码,建议有一定的MATLAB编程基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值