V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Siril
V2EX  ›  宽带症候群

讨论: 有没有类似 Multipath TCP 的, 可以用的现成的轮子

  •  
  •   Siril · 2016-08-01 09:47:39 +08:00 · 4153 次点击
    这是一个创建于 3032 天前的主题,其中的信息可能已经有所发展或是发生改变。
    设想如下情形:

    site A 位置没有有线连接接入 internet , 有 多个 3g 和 一条远距离的 wifi 。
    几条无线链路均有不定时大幅度的延迟波动和丢包率波动,甚至不定时断线。
    site B 有一条固定 ip 专线,连接很稳定。

    目标: 从 site A 到 site B 做个 神奇的 vpn , 延迟相对稳定,丢包<1%,自动地负载均衡叠加带宽。

    若能实时地按当前丢包率和延迟计算不同线路的权重, 按此权重加冗余,
    或者简单粗暴地在不同线路上重复发包,
    那么 丢包率和延迟都能大大降低。

    这个应该是可以实现的吧?

    上面举了个相似的例子, 实际的应用场景你们猜得到 :P
    6 条回复    2016-08-02 08:29:44 +08:00
    paw
        1
    paw  
       2016-08-01 09:51:06 +08:00   ❤️ 1
    轮子功家的那个叫自由门的爬墙软件就是这么实现的,不过是走 UDP 疯狂发包....
    TCP 的 目前没注意到有没
    Siril
        2
    Siril  
    OP
       2016-08-01 10:03:06 +08:00
    @paw
    怪不得那么难封,以前一直坚挺。。。
    ---------

    以自用的 static key 的 ovpn 为例,我观察到 tcp 比 udp 稳定,
    大概是因为 udp 丢包太高了,或者就是丢包太高了。

    如果搞个代理程序,客户端监听 udp 端口,服务端向指定端口转发,
    把 udp 的数据包弄一点儿魔法分多个 tcp 连接从不同线路传输,
    “不同线路” 包括多个墙内线路 和 多个墙外转发地址,甚至动态增减,

    然后以此自制的隧道承载 ovpn ,

    大概可以搞定目前的墙,除非被人工介入分析了协议特征。
    Siril
        3
    Siril  
    OP
       2016-08-01 10:08:06 +08:00
    如果加入 自制的流量整形,数据包大小、时序特征全搞乱,
    通信过程分不同线路转发, 单条线路上没有完整的通信过程,
    甚至同一个数据包在不同的连接上伪装成不同的协议,
    也可以很大程度上对抗 DPI 吧。
    snsd
        4
    snsd  
       2016-08-01 14:29:57 +08:00 via iPhone
    @Siril 自由门曾经查过海外出口,走的是台湾中华电信, 36 打头的一个 ip 。不过现在也不稳定了,用起来一卡一卡的
    akw2312
        5
    akw2312  
       2016-08-02 03:25:01 +08:00 via Android
    @snsd 36 開頭是家用 ip...
    中華電信的家用是可以免費申請固定 IP 的。
    snsd
        6
    snsd  
       2016-08-02 08:29:44 +08:00 via iPhone
    @akw2312 多少万一年?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3145 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:36 · PVG 08:36 · LAX 16:36 · JFK 19:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.