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

2016-08-01 09:47:39 +08:00
 Siril
设想如下情形:

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

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

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

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

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

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

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

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

大概可以搞定目前的墙,除非被人工介入分析了协议特征。
Siril
2016-08-01 10:08:06 +08:00
如果加入 自制的流量整形,数据包大小、时序特征全搞乱,
通信过程分不同线路转发, 单条线路上没有完整的通信过程,
甚至同一个数据包在不同的连接上伪装成不同的协议,
也可以很大程度上对抗 DPI 吧。
snsd
2016-08-01 14:29:57 +08:00
@Siril 自由门曾经查过海外出口,走的是台湾中华电信, 36 打头的一个 ip 。不过现在也不稳定了,用起来一卡一卡的
akw2312
2016-08-02 03:25:01 +08:00
@snsd 36 開頭是家用 ip...
中華電信的家用是可以免費申請固定 IP 的。
snsd
2016-08-02 08:29:44 +08:00
@akw2312 多少万一年?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/296259

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX