27、拥塞控制机制的竞争分析

拥塞控制机制的竞争分析

1. 测试指标与方法

在网络拥塞控制机制的研究中,定义了几个重要的指标:
- 收敛时间(CT) :记为 Tc,它反映了两个协议在带宽分配上达到平衡状态的速度。
- T80 :指的是流 A 的吞吐量达到流 B 吞吐量 80% 时的时间。
- 流 B 的开始时间 :记为 Tf2。

基于这些指标,对 17 种 TCP 变体进行了一系列测试,构建了四个矩阵来呈现测试结果。
| 矩阵 | 含义 |
| ---- | ---- |
| 矩阵一(表 1) | 每行代表先开始传输的 TCP 变体,每个单元格显示该变体与列对应的 TCP 变体对抗时的 TPP 值。 |
| 矩阵二(表 2) | 与表 1 标准相同,但单元格值代表后开始传输的 TCP 变体的 TPP 值。 |
| 矩阵三(表 3) | 表示公平性指数,该值在 0 到 1 之间,值越接近 1 表示两个协议对可用带宽的使用越公平。 |
| 矩阵四(表 4) | 表示收敛时间,部分值显示为 N/C,意味着在某些情况下,两个流的瞬时吞吐量差值无法在小于 20% 的范围内维持公平平衡状态。 |

以下是表 1 中先开始传输的流的 TPP 值示例:
| | Bic | Compound | Cubic | Fack | Highspeed | HTCP | Hybla | Illinois | LowPriority | NewReno | Reno | Sack | Tahoe | Vegas | Veno | Westwood | YeAH |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| Bic | 0.311 | 0.317 | 0.315 | 0.314 | 0.317 | 0.319 | 0.274 | 0.314 | 0.317 | 0.318 | 0.314 | 0.314 | 0.318 | 0.538 | 0.316 | 0.316 | 0.280 |
| Compound | 0.316 | 0.316 | 0.317 | 0.315 | 0.316 | 0.316 | 0.256 | 0.315 | 0.316 | 0.313 | 0.315 | 0.315 | 0.313 | 0.520 | 0.315 | 0.314 | 0.287 |
| Cubic | 0.317 | 0.314 | 0.315 | 0.310 | 0.314 | 0.315 | 0.270 | 0.318 | 0.314 | 0.315 | 0.312 | 0.312 | 0.315 | 0.564 | 0.315 | 0.314 | 0.293 |
|… |… |… |… |… |… |… |… |… |… |… |… |… |… |… |… |… |… |

2. 协议行为分析

为了更好地理解这些协议的行为,以下是通过测试得出的三种基本行为类型:
1. Case 1 :协议 A 先开始,使用最大可用带宽。当协议 B 开始时,B 的资源利用率增长受限,吞吐量稳定在远低于 A 的水平。例如,Illinois 与 Vegas 对抗(图 6)以及 Vegas 与 Compound 对抗(图 8),Vegas 无论是先传输还是后传输,都放弃了对可用带宽的使用。
2. Case 2 :协议 A 开始时使用大部分可用带宽,但当协议 B 启动后,B 会超越 A,获取更多资源并显著减少 A 的使用量。如 Westwood 与 Hybla 的模拟(图 10),Hybla 表现出很强的带宽占用攻击性,其 CWND(拥塞窗口)的演变(图 11)也证实了这一点。
3. Case 3 :协议 A 先传输并占用大量带宽,协议 B 启动后,两者没有明显的主导优势,经过波动后逐渐实现带宽的公平分配。例如 Reno 与 Cubic(图 12)以及 YeAH 与 Veno(图 14),它们的瞬时吞吐量演变决定了双方对带宽的几乎平等使用,但达到平衡状态的时间有所不同。

以下是这三种行为的 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(协议 A 开始传输):::process --> B{协议 B 开始传输}:::decision
    B -->|Case 1| C(协议 B 资源利用受限):::process
    B -->|Case 2| D(协议 B 超越协议 A):::process
    B -->|Case 3| E(双方波动后公平分配带宽):::process
3. 指标分析的重要性

仅使用 TPP 值无法完全解释协议的行为。因此,引入了吞吐量 - 时间(Throughput vs. Time)和拥塞窗口 - 时间(CWND vs. Time)的图表,以更详细地观察每个流的瞬时变化。通过这些图表,可以定性地了解数据流量随时间的演变,以及拥塞控制算法如何调整策略以适应可用带宽。

例如,在 Hybla 与 Cubic 的对抗中,从吞吐量 - 时间图(图 2 和图 3)可以看出,Hybla 倾向于占用可用带宽,损害了 Cubic 的数据传输。而 CWND - 时间图(图 4 和图 5)则显示,Hybla 通过不断尝试增加传输速率来增大 CWND,这种激进行为会引发周期性的拥塞状态,影响 Cubic 的拥塞控制,导致 Cubic 为避免信道崩溃而减小 CWND。

综上所述,TPP、收敛时间和公平性指数这三个指标为分析两个协议共享网络资源的行为提供了简洁有效的方式。通过对这些指标的分析,可以深入了解不同 TCP 变体的拥塞控制机制在竞争环境中的表现。

4. 不同协议的特点
  • 激进型协议 :像 Hybla 和 Illinois 这类为高带宽 - 延迟积(BDP)网络开发的 TCP 变体,以及基于丢包的反应式算法(如 YeAH),在带宽使用上表现出明显的激进性。这导致它们在带宽协商中存在不稳定性,需要较长时间才能达到平衡状态,例如 YeAH 与 Veno(图 14)以及 Hybla 与 Veno(图 16)的对抗。
  • 友好型协议 :Westwood 是一种基于带宽估计的反应式协议,在资源协商时对其他变体更友好,大多数情况下能在短时间内达到平衡状态。
  • 特殊协议 Vegas :Vegas 在与其他协议竞争时,在带宽协商中表现出明显的劣势,但其与同类型实例竞争时,公平性指数表明能在短时间内实现资源的公平分配,即具有 intra - protocol 公平性,但缺乏 inter - protocol 公平性。

以下是不同协议特点的总结表格:
| 协议类型 | 特点 | 示例 |
| ---- | ---- | ---- |
| 激进型 | 带宽使用激进,协商不稳定,平衡时间长 | Hybla、Illinois、YeAH |
| 友好型 | 资源协商友好,短时间达平衡 | Westwood |
| 特殊型 | 与其他协议竞争弱,同类型竞争公平性好 | Vegas |

通过对这些协议特点的分析,可以为网络拥塞控制机制的优化和选择提供有价值的参考。在实际网络环境中,可以根据不同的需求和场景,选择合适的 TCP 变体来提高网络性能和资源利用率。

未来,这种分析方法有望扩展到分析更多流竞争资源的情况,为网络拥塞控制的研究提供更广阔的视角。

拥塞控制机制的竞争分析

5. 公平性指数与收敛时间矩阵

为了量化 17 种测试变体的拥塞控制算法策略的结果,构建了另外两个矩阵,分别代表公平性指数和收敛时间。

公平性指数矩阵(表 3)反映了两个协议协商可用带宽使用的情况。该指标值在 0 到 1 之间,值为 1 表示两个协议公平使用可用带宽,越接近 0 表示带宽分配越不公平。

Bic Compound Cubic Fack Highspeed HTCP Hybla Illinois LowPriority NewReno Reno Sack Tahoe Vegas Veno Westwood YeAH
Bic 0.999 0.999 0.999 1.000 0.999 1.000 0.998 0.999 0.999 1.000 1.000 1.000 1.000 0.777 0.999 0.999 0.996
Compound 0.999 0.999 0.999 1.000 0.999 1.000 0.996 0.999 0.999 1.000 1.000 1.000 1.000 0.805 0.998 0.999 0.999
Cubic 0.999 0.999 0.999 1.000 0.999 1.000 0.999 0.999 0.999 1.000 1.000 1.000 1.000 0.749 0.999 0.999 0.999

收敛时间矩阵(表 4)表示当流 B 开始传输时,流 A 已使用整个信道容量,流 B 开始争夺带宽,直到流 B 达到流 A 吞吐量的 80% 的时间。部分值显示为 N/C,意味着不存在两个流吞吐量差值小于 20% 且能维持公平平衡的时间。

Bic Compound Cubic Fack Highspeed HTCP Hybla Illinois LowPriority NewReno Reno Sack Tahoe Vegas Veno Westwood YeAH
Bic 5.900 5.400 5.300 1.400 5.400 3.300 8.900 5.400 5.400 1.800 1.400 1.400 1.800 N/C 7.800 5.800 5.900
Compound 6.400 5.900 5.450 1.900 5.900 3.900 8.900 5.900 5.900 2.400 1.900 1.900 2.400 N/C 10.450 6.450 6.900
Cubic 6.400 3.450 5.400 1.850 3.450 3.900 8.400 3.450 3.450 1.900 1.850 1.850 1.900 N/C 9.400 6.400 6.450
6. 典型案例分析

为了更直观地理解不同协议对抗的情况,以下是 5 个典型案例的分析:
1. Illinois 与 Vegas :公平性指数为 0.775,收敛时间为 N/C。从吞吐量 - 时间图(图 6)可以看出,Vegas 在与 Illinois 竞争时,几乎放弃了对带宽的使用,体现了 Vegas 在与其他协议竞争时的劣势。
2. Vegas 与 Compound :公平性指数为 0.714,收敛时间为 N/C。同样,在这个对抗中,Vegas 无法有效地获取带宽,带宽分配极不公平。
3. Westwood 与 Hybla :公平性指数为 1,收敛时间为 0.39s。这表明 Westwood 和 Hybla 最终实现了公平的带宽分配,且收敛速度较快,体现了 Westwood 在资源协商上的友好性。
4. Reno 与 Cubic :公平性指数为 0.999,收敛时间为 4.85s。双方在经过一定时间的波动后,实现了近乎公平的带宽分配。
5. YeAH 与 Veno :公平性指数为 0.994,收敛时间为 14.4s。虽然最终实现了公平分配,但收敛时间较长,反映了 YeAH 在带宽使用上的激进性导致的协商不稳定。

以下是典型案例的总结表格:
| 案例 | 公平性指数 | 收敛时间 | 特点 |
| ---- | ---- | ---- | ---- |
| Illinois 与 Vegas | 0.775 | N/C | Vegas 竞争劣势 |
| Vegas 与 Compound | 0.714 | N/C | Vegas 竞争劣势 |
| Westwood 与 Hybla | 1 | 0.39s | 公平分配且收敛快 |
| Reno 与 Cubic | 0.999 | 4.85s | 波动后公平分配 |
| YeAH 与 Veno | 0.994 | 14.4s | 收敛时间长,协商不稳定 |

7. 总结与展望

综上所述,TPP、收敛时间和公平性指数这三个指标为分析两个协议共享网络资源的行为提供了有效的方式。通过对这些指标的分析,可以深入了解不同 TCP 变体的拥塞控制机制在竞争环境中的表现。

不同类型的 TCP 变体在带宽使用和资源协商上表现出不同的特点。激进型协议虽然能快速获取带宽,但可能导致协商不稳定和收敛时间长;友好型协议能在短时间内实现公平分配;而特殊的 Vegas 协议在与其他协议竞争时处于劣势,但在同类型竞争中表现良好。

在实际网络环境中,可以根据不同的需求和场景,选择合适的 TCP 变体来提高网络性能和资源利用率。例如,在对带宽分配公平性要求较高且对收敛时间敏感的场景中,可以选择友好型协议;而在需要快速获取带宽的场景中,可以考虑激进型协议,但需要注意其可能带来的协商不稳定问题。

未来,这种分析方法有望扩展到分析更多流竞争资源的情况,为网络拥塞控制的研究提供更广阔的视角。通过进一步研究不同协议在复杂网络环境中的行为,可以开发出更高效、更公平的拥塞控制机制,以适应不断发展的网络需求。

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(选择场景):::process --> B{对公平性要求高?}:::decision
    B -->|是| C(选择友好型协议):::process
    B -->|否| D{需要快速获取带宽?}:::decision
    D -->|是| E(选择激进型协议):::process
    D -->|否| F(根据其他因素选择):::process

通过以上的分析和总结,希望能为网络拥塞控制机制的研究和应用提供有价值的参考。

源码地址: https://pan.quark.cn/s/d1f41682e390 miyoubiAuto 米游社每日米游币自动化Python脚本(务必使用Python3) 8更新:更换cookie的获取地址 注意:禁止在B站、贴吧、或各大论坛大肆传播! 作者已退游,项目不维护了。 如果有能力的可以pr修复。 小引一波 推荐关注几个非常可爱有趣的女孩! 欢迎B站搜索: @嘉然今天吃什么 @向晚大魔王 @乃琳Queen @贝拉kira 第三方库 食用方法 下载源码 在Global.py中设置米游社Cookie 运行myb.py 本地第一次运行时会自动生产一个文件储存cookie,请勿删除 当前仅支持单个账号! 获取Cookie方法 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 按刷新页面,按下图复制 Cookie: How to get mys cookie 当触发时,可尝试按关闭,然后再次刷新页面,最后复制 Cookie。 也可以使用另一种方法: 复制代码 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 控制台粘贴代码并运行,获得类似的输出信息 部分即为所需复制的 Cookie,点击确定复制 部署方法--腾讯云函数版(推荐! ) 下载项目源码和压缩包 进入项目文件夹打开命令行执行以下命令 xxxxxxx为通过上面方式或取得米游社cookie 一定要用双引号包裹!! 例如: png 复制返回内容(包括括号) 例如: QQ截图20210505031552.png 登录腾讯云函数官网 选择函数服务-新建-自定义创建 函数名称随意-地区随意-运行环境Python3....
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值