基于性能的拥塞控制算法PCC
2018-01-04 21:41
2586 查看
一次数据包的丢失,也许并不代表网络发生拥塞。但是在经典的tcp拥塞控制条件下,丢包作为网络拥塞信号,tcp的窗口就要减半,发送端就要减少向网络中发送的数据包数量。
若是丢包是如下原因,降窗明显不合理。
f might traverse a shallow buffer on a high-BDP link, with the loss due to bad luck in statistical multiplexing rather than high link utilization.
There may be a higher-rate competing flow.
There may be random non-congestion loss somewhere along the path such as noise packet loss.
关键的就是PCC的速率控制机制了,这个机制和后来出现的BBR算法几乎相同,增加发送速率对网络带宽进行探测。PCC按照监测周期(MI,Monitor Interval)更改发送速率,每四个MI形成两个对。在每个监测对中,分别按照速率(1+ϵ)r,(1−ϵ)r向网络中发包。四个监测周期后,速率更改为r,发送端等待反馈的ack,分别计算相应监测周期的效用函数(U+i,U−i,i=1,2)。如果U+i>U−i,∀i∈{1,2},则将发送速率调整为(1+ϵ)r;如果U+i<U−i,∀i∈{1,2},则将发送速率调整为(1−ϵ)r;若是其他情况,则保持当前的速率。
其采用的效用函数如下:
ui(x)=Ti(x)sigmoid(Li(x)−0.05)−xi(t)Li(t)(1)
xi(t)为数据包发送速率,Li(t)为丢包率,Ti(x)=xi(t)(1−Li(x))为吞吐量,当丢包率超过0.05,ui(x)为负,可以认为此时的网络状况极其糟糕。
这个算法,有缺点,带宽小的数据流竞争带宽慢,收敛速度较慢。但是保证了链路的利用率高。
[1]PCC: Re-architecting Congestion Control for Consistent High Performance
[2]拥塞控制算法分类
若是丢包是如下原因,降窗明显不合理。
f might traverse a shallow buffer on a high-BDP link, with the loss due to bad luck in statistical multiplexing rather than high link utilization.
There may be a higher-rate competing flow.
There may be random non-congestion loss somewhere along the path such as noise packet loss.
关键的就是PCC的速率控制机制了,这个机制和后来出现的BBR算法几乎相同,增加发送速率对网络带宽进行探测。PCC按照监测周期(MI,Monitor Interval)更改发送速率,每四个MI形成两个对。在每个监测对中,分别按照速率(1+ϵ)r,(1−ϵ)r向网络中发包。四个监测周期后,速率更改为r,发送端等待反馈的ack,分别计算相应监测周期的效用函数(U+i,U−i,i=1,2)。如果U+i>U−i,∀i∈{1,2},则将发送速率调整为(1+ϵ)r;如果U+i<U−i,∀i∈{1,2},则将发送速率调整为(1−ϵ)r;若是其他情况,则保持当前的速率。
其采用的效用函数如下:
ui(x)=Ti(x)sigmoid(Li(x)−0.05)−xi(t)Li(t)(1)
xi(t)为数据包发送速率,Li(t)为丢包率,Ti(x)=xi(t)(1−Li(x))为吞吐量,当丢包率超过0.05,ui(x)为负,可以认为此时的网络状况极其糟糕。
这个算法,有缺点,带宽小的数据流竞争带宽慢,收敛速度较慢。但是保证了链路的利用率高。
[1]PCC: Re-architecting Congestion Control for Consistent High Performance
[2]拥塞控制算法分类
相关文章推荐
- 【转载】TCP拥塞控制算法 优缺点 适用环境 性能分析
- 第九章 tcp拥塞控制--基于Linux3.10
- TCP拥塞控制及其标准算法
- 笔试算法题(57):基于堆的优先级队列实现和性能分析(Priority Queue based on Heap)
- TCP基于窗口的端到端的拥塞控制机制
- TCP/IP:拥塞算法与流量控制算法 学习小结
- 平衡边界作业算法并发仿真测试基于三层架构的Web系统的基准性能
- 拥塞控制算法测试——Planetlab平台实验
- 网络拥塞控制(四) TCP拥塞控制的其他算法
- 性能优化之算法和流程控制
- 基于漏桶(Leaky bucket)与令牌桶(Token bucket)算法的流量控制也叫过载保护
- js 性能优化之算法和流程控制
- 【趣味算法】三色旗问题:传统解法及基于队列的更好性能解法
- 基于IRT和CRT的试题难度计算控制算法
- 平衡边界作业算法并发仿真测试基于三层架构的Web系统的基准性能
- 有关基于TCP的拥塞控制技术探究
- QoS拥塞控制 —— 公平性算法
- 基于TCP拥塞控制算法的现实研究与性能提升
- 网络拥塞控制之TCP拥塞控制算法
- 基于MSRDS机器人仿真平台的多机器人PID编队控制算法