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

广域网上,如何评价两台机器之间的网络质量?能够有一个可以计算“最短路径”的评分么?

  •  
  •   lsylsy2 · 2014-04-14 11:44:56 +08:00 · 5245 次点击
    这是一个创建于 3875 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有两台服务器,之间通过广域网(或者套一层VPN)链接;跑的应用以动态Web内容反向代理为例,但是不限于此;
    延迟、路由跳数、丢包率、带宽、等等……现在有没有一个算法,可以量化评价出一条线路的好坏?
    如果有一个在广域网上若干服务器构成的网络,从源到边缘节点可能经过多层代理,有一个可以计算“最短路径树”的评分么?
    如果没有现有的研究,大家又觉得从什么角度测量比较好?
    26 条回复    1970-01-01 08:00:00 +08:00
    ceyes
        1
    ceyes  
       2014-04-14 12:05:48 +08:00
    延迟、丢包率: ping
    跳数: traceroute
    带宽: netperf
    halfbloodrock
        2
    halfbloodrock  
       2014-04-14 12:07:00 +08:00   ❤️ 1
    thousandeyes !他可以帮你测试点到点的网络情况。我们用这个测机房是不是真的BGP

    https://app.thousandeyes.com/login?fwd=%2Fdashboard
    halfbloodrock
        3
    halfbloodrock  
       2014-04-14 12:09:13 +08:00
    est
        4
    est  
       2014-04-14 12:25:32 +08:00
    LZ应该把这个点子卖给360


    你的adsl 网络质量到 360.cn 打分89分,打败了全国99.9%的对手。
    lsylsy2
        5
    lsylsy2  
    OP
       2014-04-14 12:51:23 +08:00
    @ceyes 我是想要把这些综合在一起,然后能够给出一个“线路A比线路B好的结论”;

    @halfbloodrock 感谢,正在研究
    lsylsy2
        6
    lsylsy2  
    OP
       2014-04-14 13:03:01 +08:00
    @halfbloodrock 看了一眼,似乎是99刀每月……具体怎么收费还不清楚……

    @est 我想做的是服务器的,比如海底光缆最近……你懂的,比如说绕道新加坡和绕道香港也许速度就不同
    taomaree
        7
    taomaree  
       2014-04-14 13:10:44 +08:00   ❤️ 1
    可以用iperf测试
    lsylsy2
        8
    lsylsy2  
    OP
       2014-04-14 13:24:06 +08:00
    @taomaree 感谢已发送,正在研究。
    tywtyw2002
        9
    tywtyw2002  
       2014-04-14 13:31:38 +08:00 via iPhone
    自己写个算法被

    可以轻易比较出是1%丢包影响大 还是300ms延时影响大。

    找片论文看看
    tywtyw2002
        10
    tywtyw2002  
       2014-04-14 13:34:09 +08:00 via iPhone
    我记得之前有人搞vpn的时候因为丢包太严重。做了个随机丢包补偿去减少vpn中载荷的丢包率
    lsylsy2
        11
    lsylsy2  
    OP
       2014-04-14 13:39:35 +08:00
    @tywtyw2002 “随机”补偿……理论上不如稳定的双倍发包吧……?
    echo1937
        12
    echo1937  
       2014-04-14 13:41:54 +08:00
    楼主可以去看看路由器寻址算法,和你解决的问题基本是类似的.

    比如开放标准OSPF协议.
    lsylsy2
        13
    lsylsy2  
    OP
       2014-04-14 13:47:33 +08:00
    @echo1937 OSPF做过很粗略的研究(看了一些介绍、论文,没能看懂具体实现)
    OSPF做的应该是“给定带宽延迟,选择最短的路径”;
    但是它的应用范围是“我自己建立了骨干网络,路由器之间直接用双绞线or光纤连接”,这种情况下的网络情况应该比较简单;
    我想做的是“在广域网,在Internet这一个非常复杂非常多变的环境下,综合考虑诸如拥塞、掉包乃至机房超售这些情况”,计算出一个可以用来跑OSPF的 [网络质量评分] 。
    echo1937
        14
    echo1937  
       2014-04-14 14:10:57 +08:00
    @lsylsy2

    OSPF只是举个例子,我自身是做系统运维的,了解一些常见R&S的知识,但是对原理的掌握和你也差不多.

    但是你的应用场景和路由选择算法是高度相似的.路由算法使用了许多不同的metric以确定最佳路径。复杂的路由算法可以基于多个metric选择路由,并把它们结合成一个复合的metric。常用的metric包括路径长度/可靠性/延迟/带宽/负载/通信代价等等.

    OSPF不行还可以看看其他的路由选择算法,但是肯定是往这个方向走,无需自己造轮子.
    tywtyw2002
        15
    tywtyw2002  
       2014-04-14 14:10:59 +08:00 via iPhone
    @lsylsy2 双倍 带宽占用有些大。而且没啥必要,ack 双倍倒是无妨,数据包双倍有些扯淡了。

    ospf的考虑是在直连的条件下,非直连目前ospf不适用。

    广域网vpn性能优化其实一直都是很小众的东西,大企业直接mpls了 至少业务sla是保证的。

    我记得这个问题在v2ex上面看到不下5次。
    多服务器多级vpn在广域网下基本无解吧 那个调优太扯淡了。

    楼主如果跑缓存的话 最好用3层以上的东西去解决,3层解决这个东西太复杂了
    比如同时query2个parent cache server 哪个快要哪个内容。
    大文件的话在根据网络测量的加权去选择服务呗。

    测试得分还是根据自己的环境去写算法比较好,看看论文,我记得这方面论文不少
    lsylsy2
        16
    lsylsy2  
    OP
       2014-04-14 14:15:38 +08:00
    @tywtyw2002 主要问题就是动态内容,能缓存的缓存下来中间网络不太好也能忍,动态内容post请求什么的同时query两个显然就不行……而且有了这个算法之后哪怕我用来决定squid的“上层代理”走哪个也可以,这都是七层的事情了。


    @echo1937 见你楼下,广域网上这轮子似乎还真没什么好的方案,我之前也说过了,算法就是个最短路径,重点是那个“评分公式”应该。
    tywtyw2002
        17
    tywtyw2002  
       2014-04-14 14:20:25 +08:00 via iPhone
    @lsylsy2 看论文吧,找到了顺便告诉我下
    感觉关键字可以有。te(流量工程)

    两条路走
    一,做选路去。
    二,动态补偿。
    三,花钱。
    itsjoke
        18
    itsjoke  
       2014-04-14 15:33:48 +08:00
    拿OSPF举例是错了吧,这个明明是跟链路有关的
    pauldjinni
        19
    pauldjinni  
       2014-04-14 17:47:13 +08:00
    基调、阿里测、360测什么的不就是干这个事儿的么
    lsylsy2
        20
    lsylsy2  
    OP
       2014-04-14 19:42:59 +08:00
    @pauldjinni 他们测得应该是“从很多很多地方,访问你的网站,到底快不快”
    而我要的是“我现在ABCD几台服务器,到底是A-B-C这么走快,还是A-D-C这么走快,还是A-C直接走快”
    Livid
        21
    Livid  
    MOD
       2014-04-14 19:55:31 +08:00
    @halfbloodrock 这个服务是怎么收费的?按每台机器么?
    rrfeng
        22
    rrfeng  
       2014-04-14 20:11:00 +08:00
    这不是路由协议应该做的事情么
    halfbloodrock
        23
    halfbloodrock  
       2014-04-14 20:27:51 +08:00
    @Livid 具体怎么收费不是非常清楚,这个事另外的同事经手的,好像是按照时间收费。
    Livid
        24
    Livid  
    MOD
       2014-04-14 20:30:29 +08:00
    @halfbloodrock 那每个月大概是什么量级的费用呢?
    lsylsy2
        25
    lsylsy2  
    OP
       2014-04-14 20:59:30 +08:00
    @rrfeng 但是显然路由协议做的不够好,不然还要CDN干啥
    halfbloodrock
        26
    halfbloodrock  
       2014-04-15 09:41:18 +08:00
    @Livid 今早问了下,没问到具体价格,但是好像不是很贵。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2425 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 01:19 · PVG 09:19 · LAX 17:19 · JFK 20:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.