V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
airbotgo
V2EX  ›  问与答

有些软件对网络的强势占用,是如何做到的?

  •  
  •   airbotgo · 2023-01-10 08:10:53 +08:00 · 4275 次点击
    这是一个创建于 688 天前的主题,其中的信息可能已经有所发展或是发生改变。
    家庭宽带 300M ,路由器 2.4G & 5G 频段都在使用。
    观察到,只要家人刷抖音,我看 B 站直播就严重卡顿( 2.4G 、5G 都试过),只有用流量看。家人一停,网络就恢复正常了。

    抖音是如何做到的?如何解决这种网络问题?
    31 条回复    2023-01-11 11:21:02 +08:00
    singerll
        1
    singerll  
       2023-01-10 08:13:46 +08:00 via Android
    这是路由器的问题吧
    eason1874
        2
    eason1874  
       2023-01-10 08:15:31 +08:00   ❤️ 1
    估计是 PCDN 不停新建连接占用,空出来一个它就占一个
    wangxiaoaer
        3
    wangxiaoaer  
       2023-01-10 08:16:33 +08:00
    你的手机是不是苹果😆
    loading
        4
    loading  
       2023-01-10 08:21:30 +08:00
    路由器在高流量下小数据包(游戏 ping )转发性能就跟不上了。
    Ediacaran
        5
    Ediacaran  
       2023-01-10 08:35:32 +08:00
    是 pcdn 和连接数的原因的可能性很大。前几天测试 ipfs ,开着 ipfs desktop 的同时其他的软件访问网络就非常慢
    yolee599
        6
    yolee599  
       2023-01-10 08:36:04 +08:00 via Android
    路由器设置一下带宽配额,除了你之外,全部限速
    swulling
        7
    swulling  
       2023-01-10 08:41:57 +08:00 via iPhone
    换路由器可以解决
    Jammar
        8
    Jammar  
       2023-01-10 09:03:24 +08:00
    路由器开着 upnp,家里人一刷抖音,upnp 上面就一大堆端口,这个能禁用掉吗
    Phil1024
        9
    Phil1024  
       2023-01-10 09:26:58 +08:00
    难道我玩王者卡是老婆在刷抖音?
    ladypxy
        10
    ladypxy  
       2023-01-10 09:28:13 +08:00 via iPhone
    目前发现最牛逼的是 adobe 的更新
    只要开始更新,直接把带宽全吃掉,我挂 PT 下载几个种子的时候都做不到……
    securityCoding
        11
    securityCoding  
       2023-01-10 09:35:38 +08:00
    @Phil1024 我遇到过,只要我家人看短视频玩王者必卡
    echo1937
        12
    echo1937  
       2023-01-10 09:38:00 +08:00
    @eason1874 #2 最大可能性就是 2 楼这个 xd 说的情况

    曾经一段时间,b 站会使用 WebRTC 来实现 LPL 直播 p2p ,我用了 WebRTC Controller 插件关闭这个功能就好了。
    luomao
        13
    luomao  
       2023-01-10 09:42:09 +08:00   ❤️ 1
    我觉得可能是 b 站的问题,深圳 1000m 带宽 5G wifi ,b 站在某些时段非常卡顿(晚上居多),基本只能开 1080p 才不卡。可能是廉价 CDN 吧
    lhbc
        14
    lhbc  
       2023-01-10 09:43:49 +08:00 via Android
    不是游戏相关的问题
    假如你路由器能跑满 300M ,那包转发性能至少为
    300*1000*1000/1500=20 万
    没有游戏需要发送 20 万的包 /秒

    PCDN 的可能性最大
    lhbc
        15
    lhbc  
       2023-01-10 09:46:15 +08:00 via Android
    @lhbc 算错,还要除以 8 ,包转发性能为 2.5 万
    不影响结论
    8355
        16
    8355  
       2023-01-10 09:47:54 +08:00
    本质是 QOS 的问题 跟应用没有关系
    yufeng0681
        17
    yufeng0681  
       2023-01-10 09:53:54 +08:00   ❤️ 3
    直播和点播有区别。
    点播是提前加载,是下载模式,可以“并发”多个线程去下载 [类似迅雷]
    直播无法提前加载,在总带宽有限的情况下,都拥挤时, 点播是底层有损失但用户感知不到,直播是用户层直接感知到(卡顿)
    ----
    即便家人不用网络,相信看 B 站的直播,你也遇到过卡顿,只是不那么明显,频次高。 直播在网络底层没有得到特殊加成,卡顿就是必然会出现的。
    azure2023us
        18
    azure2023us  
       2023-01-10 09:54:29 +08:00 via Android
    路由禁用 upnp
    xuanyuanaosheng
        19
    xuanyuanaosheng  
       2023-01-10 09:56:17 +08:00
    遇到过,但是不知道怎么解决
    stephenyin
        20
    stephenyin  
       2023-01-10 10:17:53 +08:00
    直播 和 王者 都属于低延迟场景,空口信道繁忙的情况下必然引起延迟和 jitter 增大,端上的 jitterbuffer 算法只能解决均匀的稳定的 jitter ,当网络有瞬时较大抖动时只能卡住。
    解决办法:1.用网线; 2.用支持两个 5G 信道的路由器,并注意与周边别人家的信道隔开使用,尽量选较小频宽。
    yeqiu
        21
    yeqiu  
       2023-01-10 10:32:39 +08:00
    @yufeng0681 #17
    我觉得这个是正解,实时流量却网络的要求是很大的。游戏传输的数据小还不明显,直播(尤其是高清)传输的数据大,非常明显
    Phil1024
        22
    Phil1024  
       2023-01-10 10:49:59 +08:00
    @stephenyin 王者和抖音再不同的 ap 下 一个路由出口
    stephenyin
        23
    stephenyin  
       2023-01-10 11:20:11 +08:00
    @Phil1024 #22 两个 AP 的频段分配如何?
    datocp
        24
    datocp  
       2023-01-10 11:38:22 +08:00
    qos 解决流量和延迟两个对比关系,网络上似乎流传着带宽和延迟的换算公式,但不知道哪条公式正宗。。。

    1.在抢夺带宽方面,往往伴随着并发数量,像迅雷。但这个并发数量也不是越大越好,像 8M 的电信光纤就会表现为因为并发数超过局端限制(大概在 1200 条左右)而导致的网络流量不达标情况。此时只能通过 iptables limit 对并发进行抑制来达到连接正常握手的目的。

    2.然后之前测试 QQ 的旋风下载?出现更为奇异的情况,这种软件在下载微软的链接会跳转到 302 跳转链接。百思不得其解的问题,对 br-lan 接口实施了速度限制,但是实际下载速度远超设定。。。但除了旋风软件,其它软件正常。。。

    3.还是是并发,似乎当年使用上海电信的 20M 光纤。如果使用的是光猫直接拔号,存在用户接入数量的问题,我认为应该也是存在并发限制的。当年同样百思不得其解的问题,这个路由是 100mbps 端口,宽带也就 20mbps,可是如果没有 QOS 的作用,连路由管理界面都打不开。

    4.首先得承认电信的设备是内置一定 QOS 实现的。比如当年玩优酷挖矿,实际上不做任何 qos ,即便网络在 100%占用上行,玩英雄联盟一点也不卡反而是一个设定不当的 QOS 让游戏玩不成了。

    解决问题,

    1.实现 qos ,这个话题有点难不同路由实现都不一样,但它确实能改变网络拥塞情况。
    它通过将上行端口数据根据优先级出列,根据 tcp 握手过程带来下行流量相应的优先级改变。

    2.其它的一些辅助参数
    iptables -t mangle -S

    #重置 DSCP 标记优先级以避免在一些交换机出现异常优先级
    -A PREROUTING -i eth0.2 -j DSCP --set-dscp 0x00

    #这么多年一直这么用下载来的,解决 mtu 封包重组,有利于网络呑吐的提高,解决一些亚马逊英文站打开缓慢问题。
    -A FORWARD -o eth0.2 -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
    -A FORWARD -i eth0.2 -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
    ajyz
        25
    ajyz  
       2023-01-10 11:47:31 +08:00
    B 站感觉本就垃圾,多年非会员,最多 1080 高清反而觉得还行,前阵子信用卡活动获得一年大会员,然后切换高码或 4K 后,发现不少视频(非全部)时常卡顿
    Love4Taylor
        26
    Love4Taylor  
       2023-01-10 11:55:16 +08:00 via iPhone   ❤️ 1
    b 站 pcdn/mcdn 稀烂而已,烂中烂
    Phil1024
        27
    Phil1024  
       2023-01-10 13:26:05 +08:00
    @stephenyin 楼上楼下有线 mesh 不存在无线干扰 应该是抖音并发多 端口多 导致转发卡延迟高
    duanxianze
        28
    duanxianze  
       2023-01-10 13:31:55 +08:00
    同意楼上看法,并不是抖音多牛逼,而是 b 站太烂了
    xctcc
        29
    xctcc  
       2023-01-10 14:39:23 +08:00
    B 站我移动和联通双宽带都拯救不了,卡的批爆,不知道电信如何
    maplelin
        30
    maplelin  
       2023-01-10 18:13:05 +08:00
    @xctcc #29 深圳电信 PC 端画质第二档就开始卡,移动端稍微好点
    playboy0
        31
    playboy0  
       2023-01-11 11:21:02 +08:00
    B 站走教育网出口,基本 5s 卡一次,估计教育网是真的没有 cdn 了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3219 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:49 · PVG 20:49 · LAX 04:49 · JFK 07:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.