ginuerzh / gost

GO Simple Tunnel - a simple tunnel written in golang
MIT License
15.57k stars 2.44k forks source link

负载均衡: i/o timeout 未统计为 失败 #781

Open lovitus opened 2 years ago

lovitus commented 2 years ago
gost -L socks5://127.0.0.1:10001 -L rtcp://127.0.0.1:10001/127.0.0.1:8888  -L rudp://127.0.0.1:10001/127.0.0.1:8888  \
-F 'ss://chacha20-ietf-poly1305:PWD@1:1?ip=1.1.1.1:64443,2.2.2.2:14443,3.3.3.3:14443,4.4.4.4:64443&strategy=fifo&max_fails=1' \
-F socks5://127.0.0.1:8888?mbind=true 

2022/01/17 03:23:31 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37562->1.1.1.1:64443: i/o timeout; retrying in 1s
2022/01/17 03:23:37 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37574->1.1.1.1:64443: i/o timeout; retrying in 2s
2022/01/17 03:23:44 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37582->1.1.1.1:64443: i/o timeout; retrying in 4s
2022/01/17 03:23:53 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37594->1.1.1.1:64443: i/o timeout; retrying in 6s
2022/01/17 03:24:04 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37606->1.1.1.1:64443: i/o timeout; retrying in 6s
2022/01/17 03:24:15 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37616->1.1.1.1:64443: i/o timeout; retrying in 6s
...
2022/01/17 03:26:52 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37754->1.1.1.1:64443: i/o timeout; retrying in 6s
2022/01/17 03:27:03 forward.go:416: [rtcp] accept error: read tcp 192.168.3.4:37764->1.1.1.1:64443: i/o timeout; retrying in 6s
...

负载均衡

i/o timeout没有算作 连接失败,造成使用fifo会一直卡在第一个节点, 无法启动,和故障无法切换

load-balancing

i/o timeout error doesn't count as Failure in LB, will use the first node in the IP list always.