- Don't write router key backup when leaseSet keys are updated
- Synchronize to prevent concurrent writes (thanks Galen!)
- Backup keys every 7 days instead of every 5 minutes
- Remove several more stats
- Don't publish bw stats in first hour of uptime
- Publish floodfill stats even if other stats are disabled
- Changes not effective until 0.6.2.1 to provide cover.
* Reachability: Restrict peers with no SSU address at all from inbound tunnels
* News:
- Add display of last updated and last checked time
on index.jsp and configupdate.jsp
- Add a function to get update version (unused for now)
* config.jsp: Add another warning
* Shitlist:
- Add shitlistForever() and isShitlistedForever(), unused for now
- Sort the HTML output by router hash
* config.jsp: Add another warning
* netdb.jsp:
- Sort the lease HTML output by dest hash, local first
- Sort the router HTML output by router hash
- Sort the leases by expiration date in TunnelPool.locked_buildNewLeaseSet()
to make later LeaseSet comparisons reliable. This cleans up the code too.
- Fix broken old vs. new LeaseSet comparison
in ClientConnectionRunner.requestLeaseSet(),
so that we only sign and publish a new LeaseSet when it's really new.
Should reduce outbound overhead both in LeaseSet publishing and LeaseSet bundling,
and floodfill router load, since locked_buildNewLeaseSet() generates
the same LeaseSet as before quite frequently, often just seconds apart.
- Add exception to enforce max # of leases = 6, should be plenty
- Rewrite TunnelPool.locked_buildNewLeaseSet() so it doesn't add lots of
leases and then immediately remove them again, triggering
the new leaseSet size exception
- Remove the now unused LeaseSet.removeLease(lease) and
LeaseSet.removeLease(index)
- Store first and last expiration for efficiency
- Use CapacityBonus rather than ReachablilityBonus in the Capacity calculation
- Persist CapacityBonus rather than ReachabilityBonus
- Include SpeedBonus in the Speed calculation
- Prevent negative values in Speed and Capacity when using bonuses
- Clean up SpeedCalculator.java
* Stats: Add a fake uptime if not publishing stats, to get participating tunnels
* build.xml:
- Add an updateSmall target which includes only the essentials
- Clean up the build file some
- Remove empty eepsite/ and subdirs from i2pupdate.zip
* configtunnels.jsp: Add warning
* i2psnark: Catch a bencode exception (bad peer from tracker) earlier
* i2psnark-standalone: Fix exception http://forum.i2p/viewtopic.php?p=12217
- Call the previously unused profile.tunnelTestFailed()
(redefined to include a probability argument)
and severely downgrade a peer's capacity upon failures,
depending on tunnel length and direction.
This will help push unreachable and malicious peers
out of the High Capacity tier.
- Put recent fail rate on profiles.jsp
* ProfileOrganizer: Logging cleanup
* eepsite_index.html: Update add-host and jump links
* HTTP Proxy: Remove trevorreznik jump server from list
* TunnelPeerSelectors:
- Re-enable strict ordering of peers,
based on XOR distance from a random hash
- Restrict peers with uptime < 90m from tunnels (was 2h),
which is really 60m due to rounding in netDb publishing.
* i2psnark:
- Limit max pipelined requests from a single peer to 128KB
(was unlimited; i2p-bt default is 5 * 64KB)
- Increase max uploaders per torrent to 6 (was 4)
- Reduce max connections per torrent to 16 (was 24) to increase
unchoke time and reduce memory consumption
- Strictly enforce max connections per torrent
- Choke more gradually when over BW limit
* help.jsp: Add a link to the FAQ
* peers.jsp: Fix UDP direction indicators
* hosts.txt: Add update.postman.i2p
- Randomize the PeerCheckerTask start times to make global limiting
work better
- Calculate bw limits using 40s rather than 4m averages to make
bw limiting work better
- Change default bw limit from uplimit/3 to uplimit/2 due to
overhead reduction from the leaseset bundling change
- Restrict peers requiring introducers from inbound tunnels,
since it's slow and unreliable... and many of them advertise
NTCP, which seems unlikely to work
- Provide warning on summary bar if firewalled with inbound NTCP enabled
* Stats: Remove the bw.[send,recv]Bps[1,15]s stats unless
log level net.i2p.router.transport.FIFOBandwidthLimiter >= WARN
at startup (you didn't get any data unless you set the log level anyway)
* oldstats.jsp: Don't put 2 decimal places on integer event counts
* Remove the Internals link from the menu bar
* i2psnark: Extend startup delay from 1 to 3 minutes
- Fix a couple of tunnel cache cleaning bugs
- Cache based on source+dest pairs rather than just dest
- Send the reply leaseSet only when necessary,
rather than all the time (big savings in overhead)
- Enable persistent lease selection again
- Logging tweaks