Commit Graph

5 Commits

Author SHA1 Message Date
hahahrfool
c5ab5a201c 由新的udp架构重新设计udp分离信道传输方式和vless v1协议并初步实现代码 2022-04-11 18:47:35 +08:00
hahahrfool
ca01f2494b 修订文档, 修订、优化代码
netLayer的 Relay 和 Relay_UDP 函数现在同时记录下载以及上传总流量

为了给 udp 的 单路 fullcone 机制作准备, 代码作出如下改动:
main.go 中的 dialClient 现在分成 dialClient 和 dialClient_andRelay 这两个函数。

变更 proxy.Client 接口,新增 IsUDP_MultiChannel 和 SetUDPDialFunc 方法

移除 vless v1部分的 crumfurs代码。 因为现在最新计划 将不再使用单独 crumfurs信道。

可参考 最新 vless_v1.md 文档中的改变。
2022-04-11 12:03:53 +08:00
hahahrfool
86e631b491 修订代码,注释 2022-04-09 02:00:03 +08:00
hahahrfool
3dc53554df 修订代码, 实现trojan协议 2022-04-08 22:44:01 +08:00
hahahrfool
447bd8749a 重构所有udp部分的代码! 摒弃了过去非常复杂的upd转发机制;
不再使用 UDP_Putter 等机制去转发udp,而是用一个 netLayer.MsgConn 结构

proxy.Server 和 proxy.Client 接口改动,

Client在握手udp时不再使用handshake方法, 而是用新的 EstablishUDPChannel 方法

Server 在 Handshake时会选择性返回两种接口,io.ReadWriteCloser 用于tcp, netLayer.MsgConn 用于 udp

此时vless、socks5、direct 的udp转发都已经成功经过了 go test 验证, 但是 main.go 还未修改。
2022-04-08 13:49:56 +08:00