我找到了一个名为Tunnel Splitter的项目,它可以满足我的需求,但它不再可用。
所以我想用python从头开始。但是我对tcp/ip编程不是很熟悉,所以我想从一些简单的动作开始——只需创建一个端口转发代理并使其复用以最大限度地利用带宽,所以似乎Twisted提供的PortForward符合我的要求要求。
但是我找不到任何有关如何进行单个连接多路复用的信息,因此将不胜感激。
我找到了一个名为Tunnel Splitter的项目,它可以满足我的需求,但它不再可用。
所以我想用python从头开始。但是我对tcp/ip编程不是很熟悉,所以我想从一些简单的动作开始——只需创建一个端口转发代理并使其复用以最大限度地利用带宽,所以似乎Twisted提供的PortForward符合我的要求要求。
但是我找不到任何有关如何进行单个连接多路复用的信息,因此将不胜感激。
有时间考虑一下,可能 PortForward 不是您想要继续的事情。
如果我要创建这样的东西,我会这样做:
LOAD_BALANCED_APP <-> [LOCAL_SOCKS_SERVER -- (de)multiplexer] <->UDP<-> [(de)multiplexer -- REMOTE_SOCKS_SERVER] <-> SERVICE
您可以从 Twisted 中获取 Socks 实现,将接收和发送逻辑分成两个单独的部分,使用(解)多路复用器作为这两个科学怪人之间的粘合剂。我建议您从(解)多路复用器逻辑开始并首先解决:使用不同数量的连接,在另一端恢复确切的流,处理丢失的连接和丢失的对话序列。当你有了它,工作和通用 - 我正在考虑每个盒子有两对消费者/生产者,为此添加 Socket 服务器或任何其他类似代理的服务应该是轻而易举的事。