Commit dd36181
committed
Sliding window pipeline + credit request bump + SmbClient accessors
Sliding window: each received response immediately triggers sending
the next chunk, keeping the TCP pipe full at all times. Replaces the
batch "send N, wait for all N" pattern that left gaps between windows.
Credit request bumped from 32 to 256 per request. The server grants
what it can afford — we just ask for more. Credits grow rapidly
(511 → 15,842 after 20 operations in diagnostic test).
Read pipeline: 64 KB chunks (CreditCharge=1, max concurrency).
Write pipeline: MaxWriteSize chunks (minimize overhead).
Window capped at 32 in-flight requests.
Added SmbClient::credits() and estimated_rtt() accessors.
Added diagnostic integration test for rapid pipelined writes.
521 unit tests + 15 integration tests, zero clippy warnings.1 parent 031d52b commit dd36181
4 files changed
Lines changed: 386 additions & 204 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
324 | 324 | | |
325 | 325 | | |
326 | 326 | | |
327 | | - | |
| 327 | + | |
328 | 328 | | |
329 | 329 | | |
330 | 330 | | |
| |||
369 | 369 | | |
370 | 370 | | |
371 | 371 | | |
372 | | - | |
| 372 | + | |
373 | 373 | | |
374 | 374 | | |
375 | 375 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
181 | 181 | | |
182 | 182 | | |
183 | 183 | | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
184 | 194 | | |
185 | 195 | | |
186 | 196 | | |
| |||
0 commit comments