Is your feature request related to a problem? Please describe.
Yes.
A common deployment for Hysteria 2 is:
Client → Relay (middle server) → Exit server
In many cases, the relay server has limited bandwidth. For example, I may have three relay servers, each with only 10 Mbps uplink. A single live stream requires around 25–30 Mbps, so one relay server is not sufficient. Currently, I have to manually split traffic or deploy external bonding software.
It would be useful if Hysteria 2 could support bandwidth aggregation across multiple relay nodes.
Describe the solution you'd like
I'd like Hysteria 2 to provide a pluggable bandwidth aggregation mechanism.
For example:
- Configure multiple relay servers as a relay group.
- Hysteria automatically distributes packets across the available relays.
- The receiver reorders and reconstructs the original stream.
- If one relay fails, traffic is automatically redistributed to the remaining relays.
- The aggregated throughput can exceed the bandwidth limit of any individual relay.
Example:
- Relay A: 10 Mbps
- Relay B: 10 Mbps
- Relay C: 10 Mbps
Expected available throughput: approximately 30 Mbps (depending on network conditions), allowing a single 25 Mbps live stream to pass through.
A plugin architecture would also allow the community to experiment with different aggregation algorithms without changing Hysteria's core.
Describe alternatives you've considered
Current alternatives include:
- Running external bonding software (such as MLVPN or similar solutions).
- Manually splitting traffic across multiple relay servers.
- Increasing the bandwidth of a single relay server.
These approaches either increase deployment complexity or are not always available due to provider bandwidth limits.
Additional context
This feature would mainly benefit users running high-bitrate live streaming or other continuous large-bandwidth traffic through relay servers.
The key goal is bandwidth aggregation rather than failover. Existing load balancing or failover mechanisms cannot increase the available bandwidth for a single connection, while an aggregation plugin could potentially do so.
Is your feature request related to a problem? Please describe.
Yes.
A common deployment for Hysteria 2 is:
Client → Relay (middle server) → Exit server
In many cases, the relay server has limited bandwidth. For example, I may have three relay servers, each with only 10 Mbps uplink. A single live stream requires around 25–30 Mbps, so one relay server is not sufficient. Currently, I have to manually split traffic or deploy external bonding software.
It would be useful if Hysteria 2 could support bandwidth aggregation across multiple relay nodes.
Describe the solution you'd like
I'd like Hysteria 2 to provide a pluggable bandwidth aggregation mechanism.
For example:
Example:
Expected available throughput: approximately 30 Mbps (depending on network conditions), allowing a single 25 Mbps live stream to pass through.
A plugin architecture would also allow the community to experiment with different aggregation algorithms without changing Hysteria's core.
Describe alternatives you've considered
Current alternatives include:
These approaches either increase deployment complexity or are not always available due to provider bandwidth limits.
Additional context
This feature would mainly benefit users running high-bitrate live streaming or other continuous large-bandwidth traffic through relay servers.
The key goal is bandwidth aggregation rather than failover. Existing load balancing or failover mechanisms cannot increase the available bandwidth for a single connection, while an aggregation plugin could potentially do so.