Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add VLESS seed configurations #3260

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

Add VLESS seed configurations #3260

wants to merge 8 commits into from

Conversation

yuhan6665
Copy link
Member

@yuhan6665 yuhan6665 commented Apr 13, 2024

@RPRX I think it is ready for review now. I still need to do some test, including compatibility.
I feel this code structure is much better than before. Flexible to implement padding, delay and independent scheduler in the future. Although I don't how to design the user config ;) so currently the config is just on/off and actual values are hard coded and features are basic. But I think the concept should be easy to grasp, e.g:

message Addons {
  string Flow = 1;
  bytes Seed = 2;
  SeedMode Mode = 3;
  string Duration = 4;  // "0-8" means apply to number of packets, "1000b-" means start applying once both side exchange 1kb data, counting two-ways
  PaddingConfig Padding = 5;
  DelayConfig Delay = 6;
  SchedulerConfig Scheduler = 7;
}

enum SeedMode {
  Unknown = 0;
  PaddingOnly = 1;
  PaddingPlusDelay = 2;
  IndependentScheduler = 3;
}

message PaddingConfig {
  uint32 RegularMin = 1;
  uint32 RegularMax = 2;
  uint32 LongMin = 3;
  uint32 LongMax = 4;
}

message DelayConfig {
  bool IsRandom = 1;
  uint32 MinMillis = 2;
  uint32 MaxMillis = 3;
}

message SchedulerConfig {
  uint32 TimeoutMillis = 1; // original traffic will not be sent right away but when scheduler want to send or pending buffer times out
  // Other TBD  
}

- Seed is decoupled with XTLS Vision, which means Seed can turn on without flow
- XTLS Vision now use Seed config to configure its padding only mode
@yuhan6665 yuhan6665 marked this pull request as ready for review April 29, 2024 04:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant