zoukankan      html  css  js  c++  java
  • 线上案例-调参-设置滑动窗口提高视频云播放性能

    默认情况下,我们验证拥塞窗口大小:

    在一台发送端服务器上:

    nc -l 9987 &  (打开一个9987的端口并在后台)

    再找一台服务器:

    nc 发送端服务器地址 9987  (不停发包给9987)

    在发送端服务器上:

    ss -o state established '( dport = :9987 )' -i (查看已建立的9987具体tcp链接)

    Netid Recv-Q Send-Q Local Address:Port Peer Address:Port
    tcp 0 0 [::ffff:IP]:http [::ffff:IP]:9987 timer:(keepalive,9.235ms,0)
    sack bbr wscale:8,8 rto:245 rtt:44.209/22.104 mss:1460 rcvmss:536 advmss:1460 cwnd:10 segs_out:10 segs_in:12 bbr:(bw:0bps,mrtt:44.209) send 2.6Mbps lastsnd:159381 lastrcv:159381 lastack:5718 pacing_rate 7.5Mbps rcv_space:14600 minrtt:44.209

    从cwnd:10 可知腾讯云服务器默认情况下拥塞窗口大小为10。

    ---

    简单概念:

    发送方维持一个拥塞窗口 cwnd ( congestion window )的状态变量。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化。发送方让自己的发送窗口等于拥塞。

    发送方控制拥塞窗口的原则是:只要网络没有出现拥塞,拥塞窗口就再增大一些,以便把更多的分组发送出去。但只要网络出现拥塞,拥塞窗口就减小一些,以减少注入到网络中的分组数。

    由此可见,适当增大拥塞窗口是可以提高网络性能。

    ---

    调整cwnd参数为50

    ip route change table 100 default dev eth1 proto static initcwnd 50
    ip route change table 200 default dev eth2 proto static initcwnd 50
    ip route change table 300 default dev eth3 proto static initcwnd 50

    设置生效后,再次验证,即可看到cwnd最大可以达到50。

    ---

    设置后查看云播数据的统计,秒开率从56%提高到60%出一些,效果很明显。

    参考文档:https://blog.csdn.net/ligupeng7929/article/details/79597423

  • 相关阅读:
    Git 分支管理
    Git 保存工作区
    Git 版本控制
    Git 基本命令-详细版本
    Git 初始化配置
    Git 基本概念:分区
    JavaScript 调试
    JavaScript 错误
    JS 判断字符串是否全部为字母
    JS 判断输入字符串是否为数字、字母、下划线组成
  • 原文地址:https://www.cnblogs.com/normanlin/p/14235745.html
Copyright © 2011-2022 走看看