[GH-ISSUE #2626] [Feature Request] 应对运营商Udp QoS的一个建议——集成udp2raw #2089

Closed
opened 2026-05-05 13:20:36 -06:00 by gitea-mirror · 16 comments
Owner

Originally created by @aa51513 on GitHub (Oct 19, 2021).
Original GitHub issue: https://github.com/fatedier/frp/issues/2626

Describe the feature request

UDP流量超过某个阈值的时候,会触发QoS限制,导致大量的丢包,严重影响体验

最近我发现了一个非常好的东西udp2raw软件:
https://github.com/wangyu-/udp2raw
可以把udp流量伪装成tcp流量,从而绕过Udp QoS

经过我简单测试之后,发现效果提升非常明显!Udp不再丢包!

这个伪装要求是端到端的,正好frp也是端到端的,就非常适合了

希望能在以后的开发过程中融入此功能选择,集成在项目当中,最大优化本软件!

Describe alternatives you've considered

No response

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @aa51513 on GitHub (Oct 19, 2021). Original GitHub issue: https://github.com/fatedier/frp/issues/2626 ### Describe the feature request UDP流量超过某个阈值的时候,会触发QoS限制,导致大量的丢包,严重影响体验 最近我发现了一个非常好的东西udp2raw软件: https://github.com/wangyu-/udp2raw 可以把udp流量伪装成tcp流量,从而绕过Udp QoS 经过我简单测试之后,发现效果提升非常明显!Udp不再丢包! 这个伪装要求是端到端的,正好frp也是端到端的,就非常适合了 希望能在以后的开发过程中融入此功能选择,集成在项目当中,最大优化本软件! ### Describe alternatives you've considered _No response_ ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
gitea-mirror 2026-05-05 13:20:36 -06:00
Author
Owner

@sklohk commented on GitHub (Oct 19, 2021):

分享目前使用中的方式:
client side: frpc -> tinvpn -> udp2raw <===> server side: udp2raw <- tinyvpn <- frps
tinyvpn 与 udp2raw 是同一开发者
效果挺好,不需要合并

<!-- gh-comment-id:946883831 --> @sklohk commented on GitHub (Oct 19, 2021): 分享目前使用中的方式: client side: frpc -> tinvpn -> udp2raw <=~=~=> server side: udp2raw <- tinyvpn <- frps tinyvpn 与 udp2raw 是同一开发者 效果挺好,不需要合并
Author
Owner

@zzlinwq commented on GitHub (Oct 27, 2021):

效果挺好是什么意思?延时变好?

<!-- gh-comment-id:953069237 --> @zzlinwq commented on GitHub (Oct 27, 2021): 效果挺好是什么意思?延时变好?
Author
Owner

@zzlinwq commented on GitHub (Oct 27, 2021):

分享目前使用中的方式: client side: frpc -> tinvpn -> udp2raw <===> server side: udp2raw <- tinyvpn <- frps tinyvpn 与 udp2raw 是同一开发者 效果挺好,不需要合并

效果挺好是什么意思?延时变好?

<!-- gh-comment-id:953069543 --> @zzlinwq commented on GitHub (Oct 27, 2021): > 分享目前使用中的方式: client side: frpc -> tinvpn -> udp2raw <=~=~=> server side: udp2raw <- tinyvpn <- frps tinyvpn 与 udp2raw 是同一开发者 效果挺好,不需要合并 效果挺好是什么意思?延时变好?
Author
Owner

@sklohk commented on GitHub (Oct 28, 2021):

frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。

<!-- gh-comment-id:953424422 --> @sklohk commented on GitHub (Oct 28, 2021): frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。
Author
Owner

@sklohk commented on GitHub (Oct 28, 2021):

client side: frpc -> tinvpn -> udp2raw <===> server side: udp2raw <- tinyvpn <- frps tinyvpn
分享另一个稳定的做法,当有双wan 时,如一是电信线路,二是移动线路,可以同时设定各自的frpc通道,一主一备,cron定时检测通道,主不通换备,主通了换回主,转换只需修改frpc中服务器的地址,也就是tinyvpn配置中的两个内部地址

<!-- gh-comment-id:953428318 --> @sklohk commented on GitHub (Oct 28, 2021): client side: frpc -> tinvpn -> udp2raw <===> server side: udp2raw <- tinyvpn <- frps tinyvpn 分享另一个稳定的做法,当有双wan 时,如一是电信线路,二是移动线路,可以同时设定各自的frpc通道,一主一备,cron定时检测通道,主不通换备,主通了换回主,转换只需修改frpc中服务器的地址,也就是tinyvpn配置中的两个内部地址
Author
Owner

@zzlinwq commented on GitHub (Oct 28, 2021):

frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。

MTU你设为多少? 不能调大?

<!-- gh-comment-id:953455904 --> @zzlinwq commented on GitHub (Oct 28, 2021): > frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。 MTU你设为多少? 不能调大?
Author
Owner

@wangyu- commented on GitHub (Nov 4, 2021):

frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。

udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(--mode 0)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。

<!-- gh-comment-id:960352319 --> @wangyu- commented on GitHub (Nov 4, 2021): >frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。 udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(`--mode 0`)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。
Author
Owner

@sklohk commented on GitHub (Nov 4, 2021):

谢谢 wangyu,终于可以解决游戏问题,用了快两年了,没学全面,羞啊。

<!-- gh-comment-id:960451233 --> @sklohk commented on GitHub (Nov 4, 2021): 谢谢 wangyu,终于可以解决游戏问题,用了快两年了,没学全面,羞啊。
Author
Owner

@sklohk commented on GitHub (Nov 4, 2021):

frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。

udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(--mode 0)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。

您好,Mr.Wangyu,
刚刚再阅读您的作品的说明,还不懂如何设置,我用时都是 --mode 0, 现在要解决的情景是xbox live party 的mtu要求:>=1464,上网是pppoe, mtu=1492, 使用的路线是 wiregurad(or openvpn) -> udpspeederv2 - udp2raw <==> udp2raw <- udpspeederv2 <- wireguard(or openvpn),udp2rawspeederv2 --mode 0, 当wg or opvn mtu > 1150 时,logread(我用openwrt)就会出现mtu > 1200 的警告,所以一直只能设定 mtu=1150,希望能得到指导,可以达到1464,带宽降低不影响游戏,游戏有5m带宽就足够。
期待您的指导。

<!-- gh-comment-id:960519918 --> @sklohk commented on GitHub (Nov 4, 2021): > > frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。 > > udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(`--mode 0`)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。 您好,Mr.Wangyu, 刚刚再阅读您的作品的说明,还不懂如何设置,我用时都是 --mode 0, 现在要解决的情景是xbox live party 的mtu要求:>=1464,上网是pppoe, mtu=1492, 使用的路线是 wiregurad(or openvpn) -> udpspeederv2 - udp2raw <==> udp2raw <- udpspeederv2 <- wireguard(or openvpn),udp2rawspeederv2 --mode 0, 当wg or opvn mtu > 1150 时,logread(我用openwrt)就会出现mtu > 1200 的警告,所以一直只能设定 mtu=1150,希望能得到指导,可以达到1464,带宽降低不影响游戏,游戏有5m带宽就足够。 期待您的指导。
Author
Owner

@wangyu- commented on GitHub (Nov 4, 2021):

--mode 0下,只要冗余参数 -fx:y 里面x不是1,分片是自动的。不用特殊设置。 如果确实玩不了,可能是别的地方出了问题。

<!-- gh-comment-id:960551009 --> @wangyu- commented on GitHub (Nov 4, 2021): `--mode 0`下,只要冗余参数 `-fx:y` 里面x不是1,分片是自动的。不用特殊设置。 如果确实玩不了,可能是别的地方出了问题。
Author
Owner

@sklohk commented on GitHub (Nov 4, 2021):

好,谢谢,我继续学习。
有个建议,也是玩游戏的,tinyfecvpn 能否发展支持tap bridge, 把远端的内网桥接到本地
sk

<!-- gh-comment-id:960630422 --> @sklohk commented on GitHub (Nov 4, 2021): 好,谢谢,我继续学习。 有个建议,也是玩游戏的,tinyfecvpn 能否发展支持tap bridge, 把远端的内网桥接到本地 sk
Author
Owner

@zzlinwq commented on GitHub (Nov 4, 2021):

frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。

udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(--mode 0)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。

您好,Mr.Wangyu, 刚刚再阅读您的作品的说明,还不懂如何设置,我用时都是 --mode 0, 现在要解决的情景是xbox live party 的mtu要求:>=1464,上网是pppoe, mtu=1492, 使用的路线是 wiregurad(or openvpn) -> udpspeederv2 - udp2raw <==> udp2raw <- udpspeederv2 <- wireguard(or openvpn),udp2rawspeederv2 --mode 0, 当wg or opvn mtu > 1150 时,logread(我用openwrt)就会出现mtu > 1200 的警告,所以一直只能设定 mtu=1150,希望能得到指导,可以达到1464,带宽降低不影响游戏,游戏有5m带宽就足够。 期待您的指导。
你不是用tinyvpn?

<!-- gh-comment-id:961077429 --> @zzlinwq commented on GitHub (Nov 4, 2021): > > > frs/c的使用,着重在稳定流畅,延迟问题,在玩游戏时比较重要,但udp2raw对玩xbox游戏有致命影响,就是其mtu太低,无法达到live party 的要求。 > > > > > > udp2raw单独用是有MTU限制,但是UDPspeeder和tinyfecVPN都有用户态分片能力(`--mode 0`)。udp2raw+UDPspeeder/tinyfecVPN配合用,MTU最大可以支持到3000多。 > > 您好,Mr.Wangyu, 刚刚再阅读您的作品的说明,还不懂如何设置,我用时都是 --mode 0, 现在要解决的情景是xbox live party 的mtu要求:>=1464,上网是pppoe, mtu=1492, 使用的路线是 wiregurad(or openvpn) -> udpspeederv2 - udp2raw <==> udp2raw <- udpspeederv2 <- wireguard(or openvpn),udp2rawspeederv2 --mode 0, 当wg or opvn mtu > 1150 时,logread(我用openwrt)就会出现mtu > 1200 的警告,所以一直只能设定 mtu=1150,希望能得到指导,可以达到1464,带宽降低不影响游戏,游戏有5m带宽就足够。 期待您的指导。 你不是用tinyvpn?
Author
Owner

@sklohk commented on GitHub (Nov 4, 2021):

tinyfecvpn使用中,用于做frps/c通道,udp2raw-udpspeederv2-wireguard or openvpn or openconnect也用。这是由于tinyfecvpn是一对一的,当要做服务器端时,如果用tinyfecvpn,就得为每个连接开一个通道;wg, opvn, oc(ocserv)就可以设定为服务器端,接受n+1连接服务。tinyfecvpn最喜欢就是 tiny, 轻,简单。

<!-- gh-comment-id:961202094 --> @sklohk commented on GitHub (Nov 4, 2021): tinyfecvpn使用中,用于做frps/c通道,udp2raw-udpspeederv2-wireguard or openvpn or openconnect也用。这是由于tinyfecvpn是一对一的,当要做服务器端时,如果用tinyfecvpn,就得为每个连接开一个通道;wg, opvn, oc(ocserv)就可以设定为服务器端,接受n+1连接服务。tinyfecvpn最喜欢就是 tiny, 轻,简单。
Author
Owner

@zzlinwq commented on GitHub (Nov 5, 2021):

wg, opvn

wg, opvn可以支持·IPV6吗? tinyfecvpn支持·IPV6

<!-- gh-comment-id:961630285 --> @zzlinwq commented on GitHub (Nov 5, 2021): > wg, opvn wg, opvn可以支持·IPV6吗? tinyfecvpn支持·IPV6
Author
Owner

@sklohk commented on GitHub (Nov 5, 2021):

一直没有使用ipv6, 遇到ipv6都关掉。也没学习,不懂啊。

<!-- gh-comment-id:961713665 --> @sklohk commented on GitHub (Nov 5, 2021): 一直没有使用ipv6, 遇到ipv6都关掉。也没学习,不懂啊。
Author
Owner

@github-actions[bot] commented on GitHub (Dec 6, 2021):

Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.

<!-- gh-comment-id:986337149 --> @github-actions[bot] commented on GitHub (Dec 6, 2021): Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#2089
No description provided.