I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
history.txt 480 KiB
Newer Older
complication's avatar
complication committed
    * Fix an issue in EepGet whereby sending of "etag" and "lastModified" headers
      broke retrying.
zzz's avatar
zzz committed

2007-09-27  zzz
    * Implement pushback of NTCP transport backlog to the outbound tunnel selection code
    * Clean up the NTCP and UDP tables on peers.jsp to be consistent,
      fix some of the sorting
zzz's avatar
zzz committed

2007-09-22  zzz
    * Send messages for the same destination out the same outbound
      tunnel to reduce out-of-order delivery.
zzz's avatar
zzz committed

2007-09-19  zzz
    * i2psnark: Fix broken multifile torrent Delete;
        cleanup Storage resources in AddTorrent;
        don't autostart torrent after Create
zzz's avatar
zzz committed

2007-09-18  zzz
    * eepsite_index.html: Add links to trevorreznik address book
    * streaming lib: Fix SocketManagerFactory to honor options on outbound connections
    * streaming lib: Fix setDefaultOptions() when called with a ConnectionOptions parameter
    * i2psnark: Don't make outbound connections to already-connected peers
    * i2psnark: Debug logging cleanup
zzz's avatar
zzz committed

2007-09-14  zzz
    * eepget: Increase header timeout to 45s
    * HTTP proxy: Return a better error message for localhost requests
    * tunnels: Fix PooledTunnelCreatorConfig memory leak
zzz's avatar
zzz committed

2007-09-09  zzz
    * eepget: Add support for Last-Modified and If-Modified-Since
    * addressbook: Finish incomplete support for Last-Modified

2007-09-08  zzz
    * eepget: Copy over SocketTimeout.java file from syndie

2007-09-07  jrandom
    * eepget: Merge timeout support from syndie
jrandom's avatar
jrandom committed

* 2007-08-23  0.6.1.29 released
zzz's avatar
zzz committed

2007-08-12  zzz
    * readme.html - Add inproxy.tino.i2p, replace search.i2p with eepsites.i2p,
      tweak the eepsite and troubleshooting sections
zzz's avatar
zzz committed

2007-08-11  zzz
    * Add stats for individual tunnel rates (nice when graphed)
    * i2psnark: Fix outbound tunnel nickname
complication's avatar
complication committed

2007-08-05  Complication
    * Update the sharing calculator on config.jsp
      and explain the trade-off even more thoroughly.
complication's avatar
complication committed

2007-08-04  Complication
    * Lower the threshold between the K and L bandwidth class,
      so that K is now < 12 KB/s, instead of <= 16 KB/s.
      Hopefully this lets people with 128 kbit/s (16 KB/s) upload lines
      participate in routing, if they keep the default share percentage.
zzz's avatar
zzz committed

2007-07-16  zzz
    * i2psnark: Add tooltip info for choked/uninterested
zzz's avatar
zzz committed

2007-07-16  zzz
    * Make selection of graphed data configurable via configstats.jsp,
      remove most of the default graphs to save some memory
zzz's avatar
zzz committed

2007-07-15  zzz
    * Add current values to graph legends
    * Fix up previous Rate fix to check for divide by zero
complication's avatar
complication committed

2007-07-14  Complication
    * Take the post-download routerInfo size check back out of ReseedHandler,
      since it wasn't helpful, and a lower limit caused false warnings.
    * Give EepGet ability to enforce a min/max HTTP response size.
    * Enforce a maximum response size of 8 MB when ReseedHandler
      downloads into a ByteArrayOutputStream.
    * Refactor ReseedHandler/ReseedRunner from static to ordinary classes,
      change invocation from RouterConsoleRunner accordingly.
    * Add an EepGet status listener to ReseedHandler to log causes of reseed failure,
      provide status reports to indicate the progress of reseeding.
    * Enable icon for default eepsite, and the index page
      of the router console (more later).
zzz's avatar
zzz committed

2007-07-14  zzz
    * Clean up graphs.jsp - set K=1024 where appropriate,
      output image sizes in html, catch ooms, other minor tweaks
    * Fix current event count truncation which fixes graphs with low
      60-sec event counts displaying high values
      (bw.* and router.* graphs for example were 1.5x too high)
      Affects all "events per period" (non-lifetime) counts.
zzz's avatar
zzz committed

2007-07-09  zzz
    * i2psnark: give a better error message for a non-i2p torrent
zzz's avatar
zzz committed

2007-07-07  zzz
    * Add auto-detect IP/Port to NTCP. When enabled on config.jsp,
      SSU will notify/restart NTCP when the external address changes.
      Now you can enable inbound TCP without a static IP or dyndns service.
zzz's avatar
zzz committed

2007-07-04  zzz
    * Display calculated share bandwidth and remove load testing
      on config.jsp
zzz's avatar
zzz committed

2007-07-01  zzz
    * Replace broken option i2np.udp.alwaysPreferred with
      i2np.udp.preferred and adjust UDP bids; possible settings are
      "false" (default), "true", and "always".
      Default setting results in same behavior as before
      (NTCP is preferred unless it isn't established and UDP is established).
      Use to compare NTCP and UDP transports.
jrandom's avatar
jrandom committed

2007-06-27  jrandom
    * fix for a streaming lib bug that could leave a thread waiting
      indefinitely (thanks Complication!)
complication's avatar
complication committed

2007-06-16  Complication
    * First pass on EepGet and ReseedHandler improvements,
      please avoid use on routers which matter!
    * Give EepGet ability of downloading into an OutputStream,
      such as the ByteArrayOutputStream of ReseedHandler.
    * Detect failure to reseed better, report it persistently
      and more verbosely, provide a link to logs
      and suggest manual reseed.
complication's avatar
complication committed

2007-05-06  Complication
    * Fix the build.xml file, so the preppkg build target won't try copying files
complication's avatar
complication committed
      which became deprecated with the old Syndie (thanks for alerting, itsu!)
zzz's avatar
zzz committed

2007-03-31  zzz
    * Add trevorreznik jump server to the http proxy error page
    * Add anonymity to the trackers supporting details links in i2psnark
zzz's avatar
zzz committed

2007-03-24  zzz
    * Remove Syndie from build targets and navbar
zzz's avatar
zzz committed

2007-03-22  zzz
    * i2psnark tracker handling tweaks:
    -   Add link to tracker details page (Postman only for now, requires bytemonsoon patch)
    -   Add Base URL to tracker list configuration
    -   Web page links built from tracker list Base URLs
    -   Only build and sort tracker list once
    -   Add anonymityWeb tracker to default list
    -   Add tooltip info for TrackerErrs
    -   Stop torrent if not registered with tracker
    -   Mark temp files as delete on exit
zzz's avatar
zzz committed

2007-03-18  zzz
    * i2psnark: Cleanup some handling of saved partial pieces
    * i2psnark: Put bit counting in Bitfield.java for efficiency
    * i2psnark: Save torrent completion state in i2psnark.config
jrandom's avatar
jrandom committed
* 2007-03-17  0.6.1.28 released
zzz's avatar
zzz committed

2007-03-13  zzz
    * i2psnark: Make max total uploaders configurable (thanks Amiga4000!)
jrandom's avatar
jrandom committed

2007-03-12  jrandom
    * dodge a race on startup (thanks zzz!)
zzz's avatar
zzz committed

2007-03-10  zzz
    * Streaming lib: Change initial RTT deviation from RTT to RTT/2
      (RFC 2988) to reduce early RTO values
zzz's avatar
zzz committed

2007-03-08  zzz
    * i2psnark changes to improve upload performance:
    *  Implement total uploader limit (10)
    *  Don't timeout non-piece messages out
    *  Change chunk size to 32K (was 64K)
    *  Change request limit to 64K (was 256K)
    * i2psnark: Disconnect from seeds when complete

2007-03-07  zzz
    * Remove dynamic router keys from config.jsp
zzz's avatar
zzz committed

2007-03-07  zzz
    * Streaming lib changes to improve upstream performance during congestion:
    *   Change min window size from 12 to 1
    *   Change max timeout from 10 to 45 sec
    *   Change initial timeout from 10 to 15 sec
    *   Change intial window size for i2psnark from 12 to 1
    *   Change slow start growth rate for i2psnark from 1/2 to 1

2007-03-04  zzz
    * Update eepsite_index.html
zzz's avatar
zzz committed

2007-03-03  zzz
    * Upgrade from Jetty 5.1.6 to 5.1.12 which fixes spaces in URL
    * Add a updaterWithJetty build target
zzz's avatar
zzz committed

2007-03-03  zzz
    * Implement priority sending for NTCP
    * Disable trimForOverload() in tunnel BuildExecutor which
      was preventing tunnel builds when outbound traffic was high
      (i.e. most of the time when running i2psnark)

2007-02-28  zzz
    * i2psnark: File reopen cleanup

2007-02-28  zzz
    * i2psnark: Add peer details to web page
jrandom's avatar
jrandom committed

* 2007-02-15  0.6.1.27 released

2007-02-15  jrandom
    * Limit the whispering floodfill sends to at most 3 randomly
      chosen from the known floodfill peers
jrandom's avatar
jrandom committed

2007-02-14  jrandom
    * Don't filter out KICK and H(ide oper status) IRC messages
      (thanks Takk and postman!)
jrandom's avatar
jrandom committed

2007-02-13  jrandom
    * Tell our peers about who we know in the floodfill netDb every
      6 hours or so, mitigating the situation where peers lose track
      of floodfill routers.
    * Disable the Syndie updater (people should use the new Syndie,
      not this one)
    * Disable the eepsite tunnel by default
zzz's avatar
zzz committed

2007-01-30  zzz
    * i2psnark: Don't hold _snarks lock while checking a snark,
      so web page is responsive at startup
zzz's avatar
zzz committed

2007-01-29  zzz
    * i2psnark: Add NickyB tracker
zzz's avatar
zzz committed

2007-01-28  zzz
    * i2psnark: Don't hold sendQueue lock while flushing output,
      to make everything run smoother
zzz's avatar
zzz committed

2007-01-27  zzz
    * i2psnark: Fix orphaned Snark reader tasks leading to OOMs
complication's avatar
complication committed

2007-01-20  Complication
    * Drop overlooked comment
complication's avatar
complication committed

2007-01-20  Complication
    * Modify ReseedHandler to query the "i2p.reseedURL" property from I2PAppContext
      instead of System, so setting a reseed URL in advanced configuration has effect.
    * Clean out obsolete reseed code from ConfigNetHandler.
zzz's avatar
zzz committed

2007-01-20  zzz
    * i2psnark: More choking rotation tweaks
    * Improve performance by not reading in the whole
      piece from disk for each request. A huge memory savings
      on 1MB torrents with many peers.

2007-01-17  zzz
    * Add new HTTP Proxy error message for non-http protocols
zzz's avatar
zzz committed

2007-01-17  zzz
zzz's avatar
zzz committed
    * Add note on Syndie index.html steering people to new Syndie

2007-01-16  zzz
zzz's avatar
zzz committed
    * i2psnark: Fix crash when autostart off and
      tcrrent started manually
zzz's avatar
zzz committed

2007-01-16  zzz
    * i2psnark: Fix bug caused by last i2psnark checkin
      (ConnectionAcceptor not started)
    * Don't start PeerCoordinator, ConnectionAcceptor,
      and TrackerClient unless starting torrent
jrandom's avatar
jrandom committed

2007-01-15  jrandom
    * small guard against unnecessary streaming lib reset packets
      (thanks Complication!)
zzz's avatar
zzz committed

2007-01-15  zzz
    * i2psnark: Add 'Stop All' link on web page
    * Add some links to trackers and forum on web page
    * Don't start tunnel if 'Autostart' unchecked
    * Fix torrent restart bug by reopening file descriptors
zzz's avatar
zzz committed

2007-01-14  zzz
    * i2psnark: Improvements for torrents with > 4 leechers:
      choke based on upload rate when seeding, and
      be smarter and fairer about rotating choked peers.
    * Handle two common i2psnark OOM situations rather
      than shutting down the whole thing.
    * Fix reporting to tracker of remaining bytes for
      torrents > 4GB (but ByteMonsoon still has a bug)
zzz's avatar
zzz committed

2006-10-29  zzz
    * i2psnark: Fix and enable generation of multifile torrents,
      print error if no tracker selected at create-torrent,
      fix stopping a torrent that hasn't started successfully,
      add eBook and GayTorrents trackers to form,
      web page formatting tweaks
jrandom's avatar
jrandom committed

* 2006-10-10  0.6.1.26 released

complication's avatar
complication committed
2006-10-29  Complication
    * Ensure we get NTP samples from more diverse sources
      (0.pool.ntp.org, 1.pool.ntp.org, etc)
    * Discard median-based peer skew calculator as framed average works,
      and adjusting its percentage can make it behave median-like
    * Require more data points (from at least 20 peers)
      before considering a peer skew measurement reliable

jrandom's avatar
jrandom committed
2006-10-10  jrandom
    * Removed the status display from the console, as its more confusing
      than informative (though the content is still displayed in the HTML)
complication's avatar
complication committed

2006-10-08  Complication
    * Add a framed average peer clock skew calculator
    * Add config property "router.clockOffsetSanityCheck" to determine
      if NTP-suggested clock offsets get sanity checked (default "true")
    * Reject NTP-suggested clock offsets if they'd increase peer clock skew
      by more than 5 seconds, or make it more than 20 seconds total
    * Decrease log level in getMedianPeerClockSkew()
zzz's avatar
zzz committed

2006-09-29  zzz
    * i2psnark: Second try at synchronization fix - synch addRequest()
      completely rather than just portions of it and requestNextPiece()
jrandom's avatar
jrandom committed

2006-09-27  jrandom
    * added HMAC-SHA256
    * properly use CRLF with EepPost
    * suppress jbigi/jcpuid messages if jbigi.dontLog/jcpuid.dontLog is set
    * PBE session key generation (with 1000 rounds of SHA256)
    * misc SDK helper functions
complication's avatar
complication committed

2006-09-26  Complication
    * Take back another inadverent logging change in NTCPConnection
complication's avatar
complication committed

2006-09-26  Complication
    * Take back an accidental log level change
complication's avatar
complication committed

2006-09-26  Complication
    * Subclass from Clock a RouterClock which can access router transports,
      with the goal of developing it to second-guess NTP results
    * Make transports report clock skew in seconds
    * Adjust renderStatusHTML() methods accordingly
    * Show average for NTCP clock skews too
    * Give transports a getClockSkews() method to report clock skews
    * Give transport manager a getClockSkews() method to aggregate results
    * Give comm system facade a getMedianPeerClockSkew() method which RouterClock calls
      (to observe results, add "net.i2p.router.transport.CommSystemFacadeImpl=WARN" to logging)
    * Extra explicitness in NTCP classes to denote unit of time.
    * Fix some places in NTCPConnection where milliseconds and seconds were confused
zzz's avatar
zzz committed

2006-09-25  zzz
    * i2psnark: Paranoid copy before writing pieces,
      recheck files on completion, redownload bad pieces
    * i2psnark: Don't contact tracker as often when seeding
zzz's avatar
zzz committed

2006-09-24  zzz
    * i2psnark: Add some synchronization to prevent rare problem
      after restoring orphan piece
zzz's avatar
zzz committed

2006-09-20  zzz
    * i2psnark: Eliminate duplicate requests caused by i2p-bt's
      rapid choke/unchokes
    * i2psnark: Truncate long TrackerErr messages on web page
zzz's avatar
zzz committed

2006-09-16  zzz
    * i2psnark: Implement retransmission of requests. This
      eliminates one cause of complete stalls with a peer.
      This problem is common on torrents with a small number of
      active peers where there are no choke/unchokes to kickstart things.
zzz's avatar
zzz committed

2006-09-13  zzz
    * i2psnark: Fix restoral of partial pieces broken by last patch
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2006-09-13  zzz
zzz's avatar
zzz committed
    * i2psnark: Mark a peer's requests as unrequested on disconnect,
      preventing premature end game
    * i2psnark: Randomize selection of next piece during end game
    * i2psnark: Don't restore a partial piece to a peer that is already working on it
    * i2psnark: strip ".torrent" on web page
    * i2psnark: Limit piece size in generated torrent to 1MB max
zzz's avatar
zzz committed

2006-09-09  zzz
    * i2psnark: Add "Stalled" indication and stat totals on web page
zzz's avatar
zzz committed

2006-09-09  zzz
    * i2psnark: Fix bug where new peers would always be sent an "interested"
      regardless of actual interest
    * i2psnark: Reduce max piece size from 10MB to 1MB; larger may have severe
      memory and efficiency problems
jrandom's avatar
jrandom committed

* 2006-09-09  0.6.1.25 released
jrandom's avatar
jrandom committed

2006-09-08  jrandom
    * Tweak the PRNG logging so it only displays error messages if there are
      problems
    * Disable dynamic router keys for the time being, as they don't offer
      meaningful security, may hurt the router, and makes it harder to
      determine the network health.  The code to restart on SSU IP change is
      still enabled however.
    * Disable tunnel load testing, leaning back on the tiered selection for
      the time being.
    * Spattering of bugfixes

2006-09-07  zzz
    * i2psnark: Increase output timeout from 2 min to 4 min
    * i2psnark: Orphan debug msg cleanup
    * i2psnark: More web rate report cleanup
zzz's avatar
zzz committed

2006-09-05  zzz
    * i2psnark: Implement basic partial-piece saves across connections
    * i2psnark: Implement keep-alive sending. This will keep non-i2psnark clients
      from dropping us for inactivity but also renders the 2-minute transmit-inactivity
      code in i2psnark ineffective. Will have to research why there is transmit but
      not receive inactivity code. With the current connection limit of 24 peers
      we aren't in any danger of keeping out new peers by keeping inactive ones.
    * i2psnark: Increase CHECK_PERIOD from 20 to 40 since nothing happens in 20 seconds
    * i2psnark: Fix dropped chunk handling
    * i2psnark: Web rate report cleanup
zzz's avatar
zzz committed

2006-09-04  zzz
    * i2psnark: Report cleared trackerErr immediately
    * i2psnark: Add trackerErr reporting after previous success; retry more quickly
    * i2psnark: Set up new connections more quickly
    * i2psnark: Don't delay tracker fetch when setting up lots of connections
    * i2psnark: Reduce MAX_UPLOADERS from 12 to 4

2006-09-04  zzz
    * Enable pipelining in i2psnark
    * Make i2psnark tunnel default be 1 + 0-1

2006-09-03  zzz
    * Add rate reporting to i2psnark
complication's avatar
complication committed

2006-09-03  Complication
    * Limit form size in SusiDNS to avoid exceeding a POST size limit on postback
    * Print messages about addressbook size to give better overview
    * Enable delete function in published addressbook
complication's avatar
complication committed

2006-08-21  Complication
    * Fix error reporting discrepancy (thanks for helping notice, yojoe!)
jrandom's avatar
jrandom committed

2006-08-03  jrandom
    * Decrease the recently modified tunnel building timeout, though keep
      the scaling on their processing

2006-07-31  jrandom
    * Increase the tunnel building timeout
    * Avoid a rare race (thanks bar!)
    * Fix the bandwidth capacity publishing code to factor in share percentage
      and outbound throttling (oops)
complication's avatar
complication committed

2006-07-29  Complication
    * Treat NTP responses from unexpected stratums like failures
jrandom's avatar
jrandom committed

* 2006-07-28  0.6.1.24 released
jrandom's avatar
jrandom committed

2006-07-28  jrandom
    * Don't try to reverify too many netDb entries at once (thanks
      cervantes and Complication!)
jrandom's avatar
jrandom committed

2006-07-28  jrandom
    * Actually fix the threading deadlock issue in the netDb (removing
      the synchronized access to individual kbuckets while validating
      individual entries) (thanks cervantes, postman, frosk, et al!)
jrandom's avatar
jrandom committed

* 2006-07-27  0.6.1.23 released
jrandom's avatar
jrandom committed

2006-07-27  jrandom
    * Cut down NTCP connection establishments once we know the peer is skewed
      (rather than wait for full establishment before verifying)
    * Removed a lock on the stats framework when accessing rates, which
      shouldn't be a problem, assuming rates are created (pretty much) all at
      once and merely updated during the lifetime of the jvm.
jrandom's avatar
jrandom committed

2006-07-27  jrandom
    * Further NTCP write status cleanup
    * Handle more oddly-timed NTCP disconnections (thanks bar!)
jrandom's avatar
jrandom committed

2006-07-26  jrandom
    * When dropping a netDb router reference, only accept newer
      references as part of the update check
    * If we have been up for a while, don't accept really old
      router references (published 2 or more days ago)
    * Drop router references once they are no longer valid, even if
      they were allowed in due to the lax restrictions on startup
jrandom's avatar
jrandom committed

2006-07-26  jrandom
    * Every time we create a new router identity, add an entry to the
      new "identlog.txt" text file in the I2P install directory.  For
      debugging purposes, publish the count of how many identities the
      router has cycled through, though not the identities itself.
    * Cleaned up the way the multitransport shitlisting worked, and
      added per-transport shitlists
    * When dropping a router reference locally, first fire a netDb
      lookup for the entry
    * Take the peer selection filters into account when organizing the
      profiles (thanks Complication!)
    * Avoid some obvious configuration errors for the NTCP transport
      (invalid ports, "null" ip, etc)
    * Deal with some small NTCP bugs found in the wild (unresolveable
      hosts, strange network discons, etc)
    * Send our netDb info to peers we have direct NTCP connections to
      after each 6-12 hours of connection uptime
    * Clean up the NTCP reading and writing queue logic to avoid some
      potential delays
    * Allow people to specify the IP that the SSU transport binds on
      locally, via the advanced config "i2np.udp.bindInterface=1.2.3.4"
jrandom's avatar
jrandom committed

* 2006-07-18  0.6.1.22 released

2006-07-18  jrandom
    * Add a failsafe to the NTCP transport to make sure we keep
      pumping writes when we should.
    * Properly reallow 16-32KBps routers in the default config
      (thanks Complication!)
complication's avatar
complication committed

2006-07-16  Complication
    * Collect tunnel build agree/reject/expire statistics
      for each bandwidth tier of peers (and peers of unknown tiers,
      even if those shouldn't exist)
jrandom's avatar
jrandom committed

2006-07-14  jrandom
    * Improve the multitransport shitlisting (thanks Complication!)
    * Allow routers with a capacity of 16-32KBps to be used in tunnels under
      the default configuration (thanks for the stats Complication!)
    * Properly allow older router references to load on startup
      (thanks bar, Complication, et al!)
    * Add a new "i2p.alwaysAllowReseed" advanced config property, though
      hopefully today's changes should make this unnecessary (thanks void!)
    * Improved NTCP buffering
    * Close NTCP connections if we are too backlogged when writing to them
jrandom's avatar
jrandom committed

2006-07-04  jrandom
    * New NIO-based tcp transport (NTCP), enabled by default for outbound
      connections only.  Those who configure their NAT/firewall to allow
      inbound connections and specify the external host and port
      (dyndns/etc is ok) on /config.jsp can receive inbound connections.
      SSU is still enabled for use by default for all users as a fallback.
    * Substantial bugfix to the tunnel gateway processing to transfer
      messages sequentially instead of interleaved
    * Renamed GNU/crypto classes to avoid name clashes with kaffe and other
      GNU/Classpath based JVMs
    * Adjust the Fortuna PRNG's pooling system to reduce contention on
      refill with a background thread to refill the output buffer
    * Add per-transport support for the shitlist
    * Add a new async pumped tunnel gateway to reduce tunnel dispatcher
      contention
complication's avatar
complication committed

2006-07-01  Complication
    * Ensure that the I2PTunnel web interface won't update tunnel settings
      for shared clients when a non-shared client is modified
      (thanks for spotting, BarkerJr!)
cervantes's avatar
cervantes committed

2006-06-14  cervantes
    * Small tweak to I2PTunnel CSS, so it looks better with desktops
      that use Bitstream Vera fonts @ 96 dpi
jrandom's avatar
jrandom committed

* 2006-06-14  0.6.1.21 released
jrandom's avatar
jrandom committed

2006-06-13  jrandom
    * Use a minimum uptime of 2 hours, not 4 (oops)
jrandom's avatar
jrandom committed

2006-06-13  jrandom
    * Cut down the proactive rejections due to queue size - if we are
      at the point of having decrypted the request off the queue, might
      as well let it through, rather than waste that decryption
jrandom's avatar
jrandom committed

2006-06-11  Kloug
    * Bugfix to the I2PTunnel IRC filter to support multiple concurrent
      outstanding pings/pongs
jrandom's avatar
jrandom committed

2006-06-10  jrandom
    * Further reduction in proactive rejections
jrandom's avatar
jrandom committed

2006-06-09  jrandom
    * Don't let the pending tunnel request queue grow beyond reason
      (letting things sit for up to 30s when they fail after 10s
      seems a bit... off)
jrandom's avatar
jrandom committed

2006-06-08  jrandom
    * Be more conservative in the proactive rejections
complication's avatar
complication committed

2006-06-04  Complication
    * Trim out sending a blank line before USER in susimail.
      Seemed to break in rare cases, thanks for reporting, Brachtus!
jrandom's avatar
jrandom committed

jrandom's avatar
jrandom committed
* 2006-06-04  0.6.1.20 released

2006-06-04  jrandom
    * Reduce the SSU ack frequency
    * Tweaked the tunnel rejection settings to reject less aggressively

jrandom's avatar
jrandom committed
2006-05-31  jrandom
    * Only send netDb searches to the floodfill peers for the time being
    * Add some proof of concept filters for tunnel participation.  By default,
      it will skip peers with an advertised bandwith of less than 32KBps or
      an advertised uptime of less than 2 hours.  If this is sufficient, a
      safer implementation of these filters will be implemented.
jrandom's avatar
jrandom committed

* 2006-05-18  0.6.1.19 released

2006-05-18  jrandom
    * Made the SSU ACKs less frequent when possible
complication's avatar
complication committed

2006-05-17  Complication
    * Fix some oversights in my previous changes:
      adjust some loglevels, make a few statements less wasteful,
      make one comparison less confusing and more likely to log unexpected values
jrandom's avatar
jrandom committed

2006-05-17  jrandom
    * Make the peer page sortable
    * SSU modifications to cut down on unnecessary connection failures
jrandom's avatar
jrandom committed

2006-05-16  jrandom
    * Further shitlist randomizations
    * Adjust the stats monitored for detecting cpu overload when dropping new
      tunnel requests
jrandom's avatar
jrandom committed

2006-05-15  jrandom
    * Add a load dependent throttle on the pending inbound tunnel request
      backlog
    * Increased the tunnel test failure slack before killing a tunnel
complication's avatar
complication committed

2006-05-13  Complication
    * Separate growth factors for tunnel count and tunnel test time
    * Reduce growth factors, so probabalistic throttle would activate
    * Square probAccept values to decelerate stronger when far from average
    * Create a bandwidth stat with approximately 15-second half life
    * Make allowTunnel() check the 1-second bandwidth for overload
      before doing allowance calculations using 15-second bandwidth
    * Tweak the overload detector in BuildExecutor to be more sensitive
      for rising edges, add ability to initiate tunnel drops
    * Add a function to seek and drop the highest-rate participating tunnel,
      keeping a fixed+random grace period between such drops.
      It doesn't seem very effective, so disabled by default
      ("router.dropTunnelsOnOverload=true" to enable)
jrandom's avatar
jrandom committed

2006-05-11  jrandom
    * PRNG bugfix (thanks cervantes and Complication!)
jrandom's avatar
jrandom committed

* 2006-05-09  0.6.1.18 released

2006-05-09  jrandom
    * Further tunnel creation timeout revamp
complication's avatar
complication committed

2006-05-07  Complication
    * Fix problem whereby repeated calls to allowed() would make
      the 1-tunnel exception permit more than one concurrent build
jrandom's avatar
jrandom committed

2006-05-06  jrandom
    * Readjust the tunnel creation timeouts to reject less but fail earlier,
      while tracking the extended timeout events.
jrandom's avatar
jrandom committed

2006-05-04  jrandom
    * Short circuit a highly congested part of the stat logging unless its
      required (may or may not help with a synchronization issue reported by
      andreas)
complication's avatar
complication committed

2006-05-03  Complication
    * Allow a single build attempt to proceed despite 1-minute overload
      only if the 1-second rate shows enough spare bandwidth
      (e.g. overload has already eased)
complication's avatar
complication committed

2006-05-02  Complication
    * Correct a misnamed property in SummaryHelper.java
      to avoid confusion
    * Make the maximum allowance of our own concurrent
      tunnel builds slightly adaptive: one concurrent build per 6 KB/s
      within the fixed range 2..10
    * While overloaded, try to avoid completely choking our own build attempts,
      instead prefer limiting them to 1
jrandom's avatar
jrandom committed

2006-05-01  jrandom
    * Adjust the tunnel build timeouts to cut down on expirations, and
      increased the SSU connection establishment retransmission rate to
      something less glacial.
    * For the first 5 minutes of uptime, be less aggressive with tunnel
      exploration, opting for more reliable peers to start with.
jrandom's avatar
jrandom committed

2006-05-01  jrandom
    * Fix for a netDb lookup race (thanks cervantes!)
jrandom's avatar
jrandom committed

2006-04-27  jrandom
    * Avoid a race in the message reply registry (thanks cervantes!)
jrandom's avatar
jrandom committed

2006-04-27  jrandom
    * Fixed the tunnel expiration desync code (thanks Complication!)
jrandom's avatar
jrandom committed

* 2006-04-23  0.6.1.17 released
jrandom's avatar
jrandom committed

2006-04-19  jrandom
    * Adjust how we pick high capacity peers to allow the inclusion of fast
jrandom's avatar
jrandom committed
      peers (the previous filter assumed an old usage pattern)
    * New set of stats to help track per-packet-type bandwidth usage better
    * Cut out the proactive tail drop from the SSU transport, for now
    * Reduce the frequency of tunnel build attempts while we're saturated
    * Don't drop tunnel requests as easily - prefer to explicitly reject them
jrandom's avatar
jrandom committed

* 2006-04-15  0.6.1.16 released
jrandom's avatar
jrandom committed

2006-04-15  jrandom
    * Adjust the proactive tunnel request dropping so we will reject what we
      can instead of dropping so much (but still dropping if we get too far
      overloaded)
jrandom's avatar
jrandom committed

2006-04-14  jrandom
    * 0 isn't very random
    * Adjust the tunnel drop to be more reasonable
jrandom's avatar
jrandom committed

2006-04-14  jrandom
    * -28.00230115311259 is not between 0 and 1 in any universe I know.
    * Made the bw-related tunnel join throttle much simpler
jrandom's avatar
jrandom committed

2006-04-14  jrandom
    * Make some more stats graphable, and allow some internal tweaking on the
      tunnel pairing for creation and testing.
jrandom's avatar
jrandom committed

* 2006-04-13  0.6.1.15 released
jrandom's avatar
jrandom committed

2006-04-12  jrandom
    * Added a further failsafe against trying to queue up too many messages to
      a peer.
jrandom's avatar
jrandom committed

2006-04-12  jrandom
    * Watch out for failed syndie index fetches (thanks bar!)
jrandom's avatar
jrandom committed

2006-04-11  jrandom
    * Throttling improvements on SSU - throttle all transmissions to a peer
      when we are retransmitting, not just retransmissions.  Also, if
      we're already retransmitting to a peer, probabalistically tail drop new
      messages targetting that peer, based on the estimated wait time before
      transmission.
    * Fixed the rounding error in the inbound tunnel drop probability.
jrandom's avatar
jrandom committed

2006-04-10  jrandom
    * Include a combined send/receive graph (good idea cervantes!)
    * Proactively drop inbound tunnel requests probabalistically as the
      estimated queue time approaches our limit, rather than letting them all
      through up to that limit.
jrandom's avatar
jrandom committed

2006-04-08  jrandom
    * Stat summarization fix (removing the occational holes in the jrobin
      graphs)
jrandom's avatar
jrandom committed

2006-04-08  jrandom
    * Process inbound tunnel requests more efficiently
    * Proactively drop inbound tunnel requests if the queue before we'd
      process it in is too long (dynamically adjusted by cpu load)
    * Adjust the tunnel rejection throttle to reject requeusts when we have to
      proactively drop too many requests.
    * Display the number of pending inbound tunnel join requests on the router
      console (as the "handle backlog")
    * Include a few more stats in the default set of graphs
jrandom's avatar
jrandom committed

2006-04-06  jrandom
    * Fix for a bug in the new irc ping/pong filter (thanks Complication!)
jrandom's avatar
jrandom committed

2006-04-06  jrandom
    * Fixed a typo in the reply cleanup code
jrandom's avatar
jrandom committed

* 2006-04-05  0.6.1.14 released
jrandom's avatar
jrandom committed

2006-04-05  jrandom
    * Cut down on the time that we allow a tunnel creation request to sit by
      without response, and reject tunnel creation requests that are lagged
      locally.  Also switch to a bounded FIFO instead of a LIFO
    * Threading tweaks for the message handling (thanks bar!)
    * Don't add addresses to syndie with blank names (thanks Complication!)
    * Further ban clearance
jrandom's avatar
jrandom committed

2006-04-05  jrandom
    * Fix during the ssu handshake to avoid an unnecessary failure on
      packet retransmission (thanks ripple!)
    * Fix during the SSU handshake to use the negotiated session key asap,
      rather than using the intro key for more than we should (thanks ripple!)
    * Fixes to the message reply registry (thanks Complication!)
    * More comprehensive syndie banning (for repeated pushes)
    * Publish the router's ballpark bandwidth limit (w/in a power of 2), for
jrandom's avatar
jrandom committed
      testing purposes
    * Put a floor back on the capacity threshold, so too many failing peers
      won't cause us to pick very bad peers (unless we have very few good
      ones)
    * Bugfix to cut down on peers using introducers unneessarily (thanks
      Complication!)
    * Reduced the default streaming lib message size to fit into a single
      tunnel message, rather than require 5 tunnel messages to be transferred
      without loss before recomposition.  This reduces throughput, but should
      increase reliability, at least for the time being.
    * Misc small bugfixes in the router (thanks all!)
    * More tweaking for Syndie's CSS (thanks Doubtful Salmon!)
jrandom's avatar
jrandom committed

2006-04-01  jrandom
    * Take out the router watchdog's teeth (don't restart on leaseset failure)
jrandom's avatar
jrandom committed
    * Filter the IRC ping/pong messages, as some clients send unsafe
      information in them (thanks aardvax and dust!)
jrandom's avatar
jrandom committed

2006-03-30  jrandom
    * Substantially reduced the lock contention in the message registry (a
      major hotspot that can choke most threads).  Also reworked the locking
      so we don't need per-message timer events
    * No need to have additional per-peer message clearing, as they are
      either unregistered individually or expired.
    * Include some of the more transient tunnel throttling
jrandom's avatar
jrandom committed

* 2006-03-26  0.6.1.13 released
jrandom's avatar
jrandom committed

2006-03-25  jrandom
    * Added a simple purge and ban of syndie authors, shown as the
      "Purge and ban" button on the addressbook for authors that are already
      on the ignore list.  All of their entries and metadata are deleted from
      the archive, and the are transparently filtered from any remote
      syndication (so no user on the syndie instance will pull any new posts
      from them)
    * More strict tunnel join throtting when congested
jrandom's avatar
jrandom committed

2006-03-24  jrandom
    * Try to desync tunnel building near startup (thanks Complication!)
    * If we are highly congested, fall back on only querying the floodfill
      netDb peers, and only storing to those peers too
    * Cleaned up the floodfill-only queries
jrandom's avatar
jrandom committed

2006-03-21  jrandom
    * Avoid a very strange (unconfirmed) bug that people using the systray's
      browser picker dialog could cause by disabling the GUI-based browser
      picker.
    * Cut down on subsequent streaming lib reset packets transmitted
    * Use a larger MTU more often
    * Allow netDb searches to query shitlisted peers, as the queries are
      indirect.
    * Add an option to disable non-floodfill netDb searches (non-floodfill
      searches are used by default, but can be disabled by adding
      netDb.floodfillOnly=true to the advanced config)
jrandom's avatar
jrandom committed

2006-03-20  jrandom
    * Fix to allow for some slack when coalescing stats
    * Workaround some oddball errors
jrandom's avatar
jrandom committed

2006-03-18  jrandom
    * Added a new graphs.jsp page to show all of the stats being harvested
jrandom's avatar
jrandom committed

2006-03-18  jrandom
    * Made the netDb search load limitations a little less stringent
    * Add support for specifying the number of periods to be plotted on the
      graphs - e.g. to plot only the last hour of a stat that is averaged at
      the 60 second period, add &periodCount=60
jrandom's avatar
jrandom committed

2006-03-17  jrandom
    * Add support for graphing the event count as well as the average stat
      value (done by adding &showEvents=true to the URL).  Also supports
      hiding the legend (&hideLegend=true), the grid (&hideGrid=true), and
      the title (&hideTitle=true).
    * Removed an unnecessary arbitrary filter on the profile organizer so we
      can pick high capacity and fast peers more appropriately
jrandom's avatar
jrandom committed

2006-03-16  jrandom
    * Integrate basic hooks for jrobin (http://jrobin.org) into the router
      console.  Selected stats can be harvested automatically and fed into
      in-memory RRD databases, and those databases can be served up either as
      PNG images or as RRDtool compatible XML dumps (see oldstats.jsp for
      details).  A base set of stats are harvested by default, but an
      alternate list can be specified by setting the 'stat.summaries' list on
      the advanced config.  For instance:
      stat.summaries=bw.recvRate.60000,bw.sendRate.60000
    * HTML tweaking for the general config page (thanks void!)
    * Odd NPE fix (thanks Complication!)
complication's avatar
complication committed

2006-03-15  Complication
    * Trim out an old, inactive IP second-guessing method
      (thanks for spotting, Anonymous!)
jrandom's avatar
jrandom committed

2006-03-15  jrandom
    * Further stat cleanup
    * Keep track of how many peers we are actively trying to communicate with,
      beyond those who are just trying to communicate with us.
    * Further router tunnel participation throttle revisions to avoid spurious
      rejections
    * Rate stat display cleanup (thanks ripple!)
    * Don't even try to send messages that have been queued too long
zzz's avatar
zzz committed

2006-03-05  zzz
    * Remove the +++--- from the logs on i2psnark startup
jrandom's avatar
jrandom committed

2006-03-05  jrandom
    * HTML fixes in Syndie to work better with opera (thanks shaklen!)
    * Give netDb lookups to floodfill peers more time, as they are much more
      likely to succeed (thereby cutting down on the unnecessary netDb
      searches outside the floodfill set)
    * Fix to the SSU IP detection code so we won't use introducers when we
      don't need them (thanks Complication!)
    * Add a brief shitlist to i2psnark so it doesn't keep on trying to reach
      peers given to it
    * Don't let netDb searches wander across too many peers
    * Don't use the 1s bandwidth usage in the tunnel participation throttle,
      as its too volatile to have much meaning.
    * Don't bork if a Syndie post is missing an entry.sml
complication's avatar
complication committed

2006-03-05  Complication
    * Reduce exposed statistical information,
      to make build and uptime tracking more expensive
complication's avatar
complication committed

2006-03-04  Complication
    * Fix the announce URL of orion's tracker in Snark sources
complication's avatar
complication committed

2006-03-03  Complication
    * Explicit check for an index out of bounds exception while parsing
      an inbound IRC command (implicit check was there already)
jrandom's avatar
jrandom committed

2006-03-01  jrandom
    * More aggressive tunnel throttling as we approach our bandwidth limit,
      and throttle based off periods wider than 1 second.
    * Included Doubtful Salmon's syndie stylings (thanks!)
zzz's avatar
zzz committed

2006-02-27  zzz
    * Update error page templates to add \r, Connection: close, and
      Proxy-connection: close to headers.
jrandom's avatar
jrandom committed

* 2006-02-27  0.6.1.12 released

2006-02-27  jrandom
    * Adjust the jbigi.jar to use the athlon-optimized jbigi on windows/amd64
      machines, rather than the generic jbigi (until we have an athlon64
      optimized version)
jrandom's avatar
jrandom committed

2006-02-26  jrandom
    * Switch from the bouncycastle to the gnu-crypto implementation for
      SHA256, as benchmarks show a 10-30% speedup.
    * Removed some unnecessary object caches
    * Don't close i2psnark streams prematurely
jrandom's avatar
jrandom committed

2006-02-25  jrandom
    * Made the Syndie permalinks in the thread view point to the blog view
    * Disabled TCP again (since the live net seems to be doing well w/out it)
    * Fix the message time on inbound SSU establishment (thanks zzz!)
    * Don't be so aggressive with parallel tunnel creation when a tunnel pool
      just starts up
jrandom's avatar
jrandom committed

2006-02-24  jrandom
    * Rounding calculation cleanup in the stats, and avoid an uncontested
      mutex (thanks ripple!)
    * SSU handshake cleanup to help force incompatible peers to stop nagging
      us by both not giving them an updated reference to us and by dropping
      future handshake packets from them.
jrandom's avatar
jrandom committed

2006-02-23  jrandom
    * Increase the SSU retransmit ceiling (for slow links)
    * Estimate the sender's SSU MTU (to help see if we agree)
jrandom's avatar
jrandom committed

2006-02-22  jrandom
    * Fix to properly profile tunnel joins (thanks Ragnarok, frosk, et al!)
    * More aggressive poor-man's PMTU, allowing larger MTUs on less reliable
      links
    * Further class validator refactorings
jrandom's avatar
jrandom committed

2006-02-22  jrandom
    * Handle a rare race under high bandwidth situations in the SSU transport
    * Minor refactoring so we don't confuse sun's 1.6.0-b2 validator
complication's avatar
complication committed

2006-02-21  Complication
    * Reactivate TCP tranport by default, in addition to re-allowing
jrandom's avatar
jrandom committed

* 2006-02-21  0.6.1.11 released
jrandom's avatar
jrandom committed

jrandom's avatar
jrandom committed
2006-02-21  jrandom
jrandom's avatar
jrandom committed
    * Throttle the outbound SSU establishment queue, so it doesn't fill up the
      heap when backlogged (and so that the messages queued up on it don't sit
      there forever)
    * Further SSU memory cleanup
jrandom's avatar
jrandom committed
    * Clean up the address regeneration code so it knows when to rebuild the
      local info more precisely.
jrandom's avatar
jrandom committed

2006-02-20  jrandom
    * Properly enable TCP this time (oops)
    * Deal with multiple form handlers on the same page in the console without
      being too annoying (thanks blubb and bd_!)
jrandom's avatar
jrandom committed

2006-02-20  jrandom
    * Reenable the TCP transport as a fallback (we'll continue to muck with
      debugging SSU-only elsewhere)
jrandom's avatar
jrandom committed

2006-02-20  jrandom
    * Major SSU and router tuning to reduce contention, memory usage, and GC
      churn.  There are still issues to be worked out, but this should be a
      substantial improvement.
    * Modified the optional netDb harvester task to support choosing whether
      to use (non-anonymous) direct connections or (anonymous) exploratory
      tunnels to do the harvesting.  Harvesting itself is enabled via the
      advanced config "netDb.shouldHarvest=true" (default is false) and the
      connection type can be chosen via "netDb.harvestDirectly=false" (default
      is false).

2006-02-19  dust
    * Added pruning of suckers history (it used to grow indefinitely).
jrandom's avatar
jrandom committed

2006-02-19  jrandom
    * Moved the current net's reseed URL to a different location than where
      the old net looks (dev.i2p.net/i2pdb2/ vs .../i2pdb/)
    * More aggressively expire inbound messages (on receive, not just on send)
    * Add in a hook for breaking backwards compatibility in the SSU wire
      protocol directly by including a version as part of the handshake.  The
      version is currently set to 0, however, so the wire protocol from this
      build is compatible with all earlier SSU implementations.
    * Increased the number of complete message readers, cutting down
      substantially on the delay processing inbound messages.
    * Delete the message history file on startup
    * Reworked the restart/shutdown display on the console (thanks bd_!)
jrandom's avatar
jrandom committed

2006-02-18  jrandom
    * Migrate the outbound packets from a central component to the individual
      per-peer components, substantially cutting down on lock contention when