Commit Graph

116 Commits

Author SHA1 Message Date
nineap 8c9a9c7cc7 dev countour and off logs 2026-07-02 15:15:10 +07:00
Kirill 3b2296a6d9 fix: stabilize tunnel downloads (deadlock, stuck-consumer eviction, real diagnostics)
Downloads were dying and stalling under real network conditions. Root causes
fixed in the muxer's stream-delivery path:

- dispatch_to_local held a DashMap Ref across a nested remove_stream call,
  self-deadlocking the leg's reader task whenever a stream's backlog needed
  eviction — permanently losing a tokio worker thread per occurrence.
- Eviction now runs off the hot path entirely, in a periodic background
  reaper, and only fires when a stream is both over its byte budget AND has
  made no delivery progress for an RTT-adaptive grace window (was a flat
  300ms then 5s, which killed merely-slow-but-alive consumers).
- The server never told the client when a bridge ended normally (only on
  failed connect), leaving the client's virtual TCP socket stuck in
  CloseWait for a full idle timeout and slowing the whole engine loop.
- The client's upload path silently dropped in-flight chunks when all tunnel
  legs were briefly down instead of pausing and retrying like the server
  bridge already did.
- Tried end-to-end credit-based flow control for the download producer;
  reverted the enforcement (kept the dormant frame/API) after it proved
  worse than the pre-existing local channel backpressure — RTT-coupled
  pauses produced burst-then-stall downloads and jitter/ping spikes on the
  shared physical leg.
- Server-side diagnostics snapshot was a stub (always-empty tunnel state,
  misleading placeholder trigger); now aggregates real per-session Muxer
  metrics from the SessionManager.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-02 15:06:00 +07:00
nineap 582ad714ae client log sends to proxy 2026-06-30 19:49:50 +07:00
nineap f7a76353ea docs [AI] 2026-06-30 18:51:09 +07:00
Kirill 18cad76e38 refactor: improve networking layer with enhanced engine, muxer, and diagnostics
- Refactored connection engine with better state management
- Improved muxer with enhanced protocol handling
- Updated connection bridge and diagnostics
- Added new network constants and configuration options
- Enhanced session tracking and error handling
- Updated dependencies in Cargo.toml
2026-06-30 12:34:04 +07:00
nineap 38dfd588c1 warnings fix 2026-06-29 18:07:53 +07:00
nineap 47208853c9 diagnostics, recconections fix and bufferbloat fixes 2026-06-25 17:14:26 +07:00
nineap b6056b2a66 device to smoltcp [AI] 2026-06-25 14:00:00 +07:00
nineap 30a843d8a6 fixes warnings and bufferbloat problems 2026-06-25 13:36:40 +07:00
nineap cab3c10c85 warning fix 2026-06-18 13:44:38 +07:00
nineap 4edf472d1f killswitch in session fix and no console on windows 2026-06-11 19:40:49 +07:00
nineap b83d3b5bf1 killswitch in session 2026-06-11 19:35:35 +07:00
nineap 05696a836a allocation optimization and in place crypt 2026-06-05 00:22:38 +07:00
nineap 6cd4d001ad refactor: update tunnel MTU, optimize Frame parsing, and improve connection stability 2026-06-02 16:26:02 +07:00
nineap ae557b4848 muxer cleaning update, head on line blocking fix 2026-05-03 13:41:46 +07:00
nineap 7fb40f6be1 smoltcp updates breaking changes fix 2026-05-02 21:02:30 +07:00
nineap 738fa8ca9b loggin update 2026-05-02 18:55:37 +07:00
nineap a58e077bea udl update 2026-04-30 14:37:41 +07:00
nineap 9e29104828 AI FULL KILLSWITCH AND EXCEPTIONS 2026-04-30 14:28:15 +07:00
nineap 2d70f33257 bufferbloat fixes, deadlocks and buf sizes change 2026-04-16 13:14:16 +07:00
nineap f5f1d20f54 bufferbloat fixes and reconnect 2026-04-15 13:33:38 +07:00
nineap fac16c5296 backpressures fixes and recieve/send sync 2026-04-14 16:59:36 +07:00
nineap a6ca710954 backpressure, bufferbloat fix and legs reconnects 2026-04-14 16:35:59 +07:00
nineap 6d3bc81a6e real rtt and new fixed smoltcp 2026-04-14 16:05:02 +07:00
nineap 11b810ad65 all unbounded and remove AI hallucinations 2026-04-12 15:14:42 +07:00
nineap 732f55c01d updates muxer legs select, buf sizes and constantsa 2026-04-11 22:48:33 +07:00
nineap 6009eca8a7 return buffer list size 64 2026-04-10 21:20:37 +07:00
Трапезников Кирилл Иванович c0c5943da7 buf size changes, update leg select, update client socket, set lowat 2026-04-10 20:52:41 +10:00
Трапезников Кирилл Иванович eb23825bf5 fix donwload error 2026-04-10 15:33:10 +10:00
Трапезников Кирилл Иванович a503122ace bbr and buffers fixes 2026-04-10 15:00:14 +10:00
Трапезников Кирилл Иванович 11d2b4e1d9 split codec and dynamic tcp sockers 2026-04-10 11:27:38 +10:00
nineap aa9234fc72 bufferbloat but high speed 2026-04-06 14:43:04 +07:00
nineap 6b5f7b23d8 remove updates 2026-04-05 22:51:11 +07:00
nineap aa66d93dbf buf sizes update and capacity change 2026-04-05 17:21:10 +07:00
nineap 2078a96f0e update warning remove 2026-04-05 14:14:11 +07:00
nineap 240c4e3c20 nice buf sizes and moved duration in consts 2026-04-05 13:48:56 +07:00
nineap 1ab28cefcf update connection quality speed 2026-04-03 19:34:03 +07:00
nineap 2db4ba1e9d stable connection 2026-04-03 18:53:13 +07:00
nineap 780750171b buffers update, warning fixes, ghosts killed 2026-04-03 18:18:10 +07:00
nineap e53a95692e clean comments 2026-04-03 12:06:58 +07:00
nineap b90083539c fixes and upgrades. async remove, buf changes 2026-04-03 11:43:03 +07:00
nineap 337f191cca leg select change and improve speed 2026-04-02 16:34:33 +07:00
nineap dadf165da6 fixed dedadlocks and buffer changes 2026-03-31 10:34:15 +07:00
nineap 71acb52386 logger creates file 2026-03-30 14:34:21 +07:00
nineap 1f97db97c4 remove jitter and socket size changes 2026-03-29 15:41:43 +07:00
nineap a9f89433fa tx/rx changes and buf size and capacity changes 2026-03-29 12:35:06 +07:00
nineap f8ca7d05be trafic info into uniffi 2026-03-27 16:33:57 +07:00
nineap f4c6f2efdd sessions and muxer legs 2026-03-27 15:57:04 +07:00
nineap fffc3794b9 fixes udp and mtu 2026-03-26 20:33:33 +07:00
nineap c07662f72c return udp changes 2026-03-26 20:28:23 +07:00