Commit History

Author SHA1 Message Date
  Adam Ierymenko 4e4fd51117 boring doc stuff 9 years ago
  Adam Ierymenko 3883ac08c7 Docs and cleanup. 9 years ago
  Adam Ierymenko 740eb6ebc4 Simplify Peer locking to eliminate deadlock with new path recursion check code (and also probably improve performance). 9 years ago
  Adam Ierymenko b3e3d4cacc Instead of using binary packet comparison, add a callback to the API to explicitly check whether paths should be used. Check in with this callback (if present) when learning new paths or sending initial packets. 9 years ago
  Adam Ierymenko 1023ef23b7 Remove somewhat ugly and costly anti-recursion hack -- we will switch to more explicit methods. 9 years ago
  Adam Ierymenko a56fbc1929 Close another potential anti-recursion loophole. 9 years ago
  Adam Ierymenko 47ce52228b Roots should probably not do this since it would likely be a waste of packets. 9 years ago
  Adam Ierymenko 9aee72099e AntiRecursion cleanup and some other minor things. 9 years ago
  Adam Ierymenko 05b2c0743f Tighten up dead path detection. Should now auto-detect dead paths in less than 10 seconds at a very small cost in ECHO requests (or HELLOs for older peers). GitHib issue #272 9 years ago
  Adam Ierymenko 4d94ae77b4 simplify if 9 years ago
  Adam Ierymenko d8143a5e18 Implement first pass on rapid dead path detection, and increment version to 1.1.3 (dev) 9 years ago
  Adam Ierymenko 436c1fac1d Selectively move over changes from "edge" to "dev" excluding netcon. 9 years ago
  Adam Ierymenko 0940d673db Always advertise to the cluster when we have a peer even if we have also initiated handoff. This might be the cause of the warmup problem -- will test later. At the very least it should not hurt anything due to pick-latest logic and the fact that cluster members with only suboptimal paths do not respond to WANT_PEER. 9 years ago
  Adam Ierymenko 32ec378e3b Announce that we have peers on the cluster when we first see them to improve startup times, and add a result crunching script to tests/http. 9 years ago
  Adam Ierymenko 2cc50bdb10 Try bringing back TTL escalation -- may help with Docker (IP-MASQ) type NAT 9 years ago
  Adam Ierymenko 35c4e28f31 Mark geo-redirected paths as suboptimal and do not report that we have a peer if all we have is one of these. Also a few other small fixes. 9 years ago
  Adam Ierymenko 57b71bfff0 Cluster simplification and refactor work in progress... 9 years ago
  Adam Ierymenko 6bc8c9d8ef Clustering cleanup, still a work in progress. 9 years ago
  Adam Ierymenko 5f39d5b7ea Further pare down Cluster messaging and rename some stuff. 9 years ago
  Adam Ierymenko a42d714a87 . 9 years ago
  Adam Ierymenko a994573a43 Eliminate some more dead code. We may do path trust, but not like that. 9 years ago
  Adam Ierymenko cdc99bfee1 Add a circuit breaker for VERB_PUSH_DIRECT_PATHS. 9 years ago
  Adam Ierymenko cc1b275ad9 Replicate peer endpoints and forget paths if we have them -- this allows two clusters to talk to each other, whereas forgetting all paths does not. 9 years ago
  Adam Ierymenko cc6080fe38 (1) No need to confirm if we are a root (small optimization), (2) Refactor peer affinity tracking. 9 years ago
  Adam Ierymenko 218ef07d8e Build fix in TRACE mode. 9 years ago
  Adam Ierymenko 16bc3e0398 Factor out RemotePath subclass of Path -- no longer needed, just cruft. 9 years ago
  Adam Ierymenko 40976c02a4 Forget paths to peers if we are handing them off. 9 years ago
  Adam Ierymenko a1a0ee4edb Fix infinite loop in Cluster, clean up some stuff elsewhere, and back out rate limiting in PUSH_DIRECT_PATHS for now (but we will do something else to mitigate amplification attacks) 9 years ago
  Adam Ierymenko 9617208e40 Some cleanup, and use VERB_PUSH_DIRECT_PATHS to redirect newer peers. 9 years ago
  Adam Ierymenko 69857b4ba8 Refactor cluster redirects to move code to push peers out of the actual Cluster function that checks for redirect, and clean up Peer::received() to be a bit more logical. 9 years ago