V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
newshbb
V2EX  ›  程序员

UDP 流量一大,整个服务器的网络就崩溃

  •  
  •   newshbb · 284 天前 · 2337 次点击
    这是一个创建于 284 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一台 Linux 服务器上的 UDP 服务(类似 STUN ),大概服务几十万个客户,每秒大概 50Mb 输入流量,在 aws/vultr/aliyun 上都没问题,但是在 azure/digitocean/hetzner 跑不起来,后三者都是同样的问题,服务器上 ping 也 ping 不出去,我这边 ssh 也连不上,不过没有关的连接没问题,我的 udp 服务也基本瘫痪,流入很大,但是有效流出很少。azure 的 support 倒是很热情,电话邮件来回好几天,可就是解决不了问题,instance 也重建好几遍,数据中心也换了好几个。

    不知道大家有没有遇到过,有啥 linux 参数可以调节一下?

    谢谢

    11 条回复    2024-02-23 22:00:05 +08:00
    laminux29
        1
    laminux29  
       284 天前   ❤️ 2
    1.对比一下两边的硬件情况。

    2.aws/vultr/aliyun ,这 3 个能跑起来的 Linux ,直接 tar + zstd 整机备份到 azure 上,看看情况。
    patrickyoung
        2
    patrickyoung  
       284 天前 via iPhone
    pps 有多大,像是触发了防 ddos
    FabricPath
        3
    FabricPath  
       284 天前
    试试 sysctl -w net.netfilter.nf_conntrack_max=5000000
    opengps
        4
    opengps  
       284 天前
    公网大流量走 udp 很容易受到限制,这个限制往往在网络层面,不再你机器内部,所以你先查查流量不到你服务器的原因是哪个环节
    lambdaq
        5
    lambdaq  
       284 天前
    @FabricPath 感觉 conntrack 都是 tcp 的吧。。udp 也用 conntrack ?
    ttvast
        6
    ttvast  
       284 天前
    服务器先搞一个带外管理,看看数据包到底有没有到达服务器。
    newshbb
        7
    newshbb  
    OP
       284 天前
    @opengps
    @patrickyoung
    不像,因为 azure 的 support 自己也没查出来
    4kingRAS
        8
    4kingRAS  
       284 天前
    你的出流量是哪个地方的监控,如果是宿主机的监控,那说明是宿主机里的限制,看 netstat -s 有无信息,dmesg -T 如果有限制会报错。如果是出口网关的监控,那就看链路上有没有限制
    FabricPath
        9
    FabricPath  
       284 天前
    @lambdaq conntrack -L
    al772
        10
    al772  
       284 天前
    我们的产品在 Azure 上有个已知问题,UDP 连接会被砍掉,Azure 的设计缺陷,关键词 flow control
    newshbb
        11
    newshbb  
    OP
       284 天前
    @4kingRAS vnstat
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1096 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:21 · PVG 03:21 · LAX 11:21 · JFK 14:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.