aboutsummaryrefslogtreecommitdiffstats
path: root/src/swarm/source.rs
Commit message (Collapse)AuthorAgeFilesLines
* unify request_sync logictv8 days1-3/+2
|
* unify source resettv8 days1-3/+9
|
* rename PING/PONG to STATUS/STATUS_REPLYtv11 days1-2/+2
|
* talk about "transport" unless mycelium is meanttv12 days1-11/+11
|
* unify lock logictv13 days1-12/+4
|
* refresh peers after stalltv13 days1-1/+6
|
* avoid stalled sourcetv13 days1-2/+24
| | | | | | | | | | | | | A source given up for not answering our sync messages could become the source again straight away. Whoever asks first after the reset takes the role, and that's often the same peer, which would then stall for another delivery limit. Now, a stalled source isn't chosen again for one more delivery_limit. If it's the only candidate, catching up waits that long and then tries it again. Before, a retry with that peer couldn't have helped any sooner anyway: a source is only given up after a whole delivery limit without a sync message, and that clock restarts when it is chosen again.
* MYCELIUM_DELIVERY_LIMIT -> Timing::delivery_limittv13 days1-6/+3
|
* require catch-up source to make progresstv13 days1-1/+89
|
* add chunked download and use it during rejointv2026-10-241-1/+1
|
* add swarm statstv2026-10-241-0/+1
|
* record RTT sampling instanttv2026-10-241-2/+3
|
* prefer closer sources to catch uptv2026-10-241-3/+42
|
* enrich keepalive contenttv2026-10-231-0/+169
Add ready and syncs_with_you flags as well as actual heads, so the peer - ready: same meaning as in the sync message - syncs_with_you: sender counts recipient as member and in same epoch - heads: allows to tell who's behind or if both sides have changes