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

Skip to content
Snippets Groups Projects
history.txt 55.6 KiB
Newer Older
jrandom's avatar
jrandom committed
$Id: history.txt,v 1.157 2005/02/24 18:53:35 jrandom Exp $

2005-02-26  jrandom
    * Further streaming lib caching improvements
    * Reduce the minimum RTT (used to calculate retry timeouts), but also 
      increase the RTT on resends.
    * Lower the default message size to 4KB from 16KB to further reduce the
      chance of failed fragmentation.
    * Extend tunnel rebuild throttling to include fallback rebuilds
    * If there are less than 20 routers known, don't drop the last 20 (to help
      avoid dropping all peers under catastrophic failures)
    * New stats for end to end messages - "client.leaseSetFoundLocally",
      "client.leaseSetFoundRemoteTime", and "client.leaseSetFailedRemoteTime"
jrandom's avatar
jrandom committed

2005-02-24  jrandom
    * Throttle the number of tunnel rebuilds per minute, preventing CPU 
      overload under catastrophic failures (thanks Tracker and cervantes!)
    * Block the router startup process until we've initialized the clock
jrandom's avatar
jrandom committed

2005-02-24  jrandom
    * Cache temporary memory allocation in the DSA's SHA1 impl, and the packet
      data in the streaming lib.
    * Fixed a streaming lib bug where the connection initiator would fail the
      stream if the ACK to their SYN was lost.
jrandom's avatar
jrandom committed

2005-02-23  jrandom 
    * Now that we don't get stale SAM sessions, it'd be nice if we didn't
      get stale tunnel pools, don't you think?
jrandom's avatar
jrandom committed

* 2005-02-23  0.5.0.1 released
jrandom's avatar
jrandom committed

2005-02-22  jrandom
    * Reworked the tunnel (re)building process to remove the tokens and 
      provide cleaner controls on the tunnels built.
    * Fixed situations where the timestamper wanted to test more servers than
      were provided (thanks Tracker!)
    * Get rid of the dead SAM sessions by using the streaming lib's callbacks
      (thanks Tracker!)
jrandom's avatar
jrandom committed

2005-02-22  jrandom
    * Temporary workaround for the I2CP disconnect bug (have the streaminglib
      try to automatically reconnect on accept()/connect(..)).
    * Loop check for expired lease republishing (just in case)
jrandom's avatar
jrandom committed

2005-02-22  jrandom
    * Adjusted (and fixed...) the timestamper change detection
    * Deal with a rare reordering bug at the beginning of a stream (so we 
      don't drop it unnecessarily)
    * Cleaned up some dropped message handling in the router
    * Reduced job queue churn when dealing with a large number of tunnels by
      sharing an expiration job
    * Keep a separate list of the most recent CRIT messages (shown on the 
      logs.jsp).  This way they don't get buried among any other messages.
    * For clarity, display the tunnel variance config as "Randomization" on 
      the web console.
    * If lease republishing fails (boo! hiss!) try it again 
    * Actually fix the negative jobLag in the right place (this time)
    * Allow reseeding when there are less than 10 known peer references
    * Lots of logging updates.
jrandom's avatar
jrandom committed

2005-02-20  jrandom
    * Allow the streaming lib resend frequency to drop down to 20s as the
      minimum, so that up to 2 retries can get sent on an http request.
    * Add further limits to failsafe tunnels.
    * Keep exploratory and client tunnel testing and building stats separate.
    * Only use the 60s period for throttling tunnel requests due to transient
      network overload.
    * Rebuild tunnels earlier (1-3m before expiration, by default)
    * Cache the next hop's routerInfo for participating tunnels so that the
      tunnel participation doesn't depend on the netDb.
    * Fixed a long standing bug in the streaming lib where we wouldn't always
      unchoke messages when the window size grows.
    * Make sure the window size never reaches 0 (duh)
jrandom's avatar
jrandom committed

2005-02-20  jrandom
    * Only build failsafe tunnels if we need them
    * Properly implement the selectNotFailingPeers so that we get a random
      selection of peers, rather than using the strictOrdering (thanks dm!)
    * Don't include too many "don't tell me about" peer references in the 
      lookup message - only send the 10 peer references closest to the target.
jrandom's avatar
jrandom committed

2005-02-19  jrandom
    * Only build new extra tunnels on failure if we don't have enough
    * Fix a fencepost in the tunnel building so that e.g. a variance of
      2 means +/- 2, not +/- 1 (thanks dm!)
    * Avoid an NPE on client disconnect
    * Never select a shitlisted peer to participate in a tunnel
    * Have netDb store messages timeout after 10s, not the full 60s (duh)
    * Keep session tags around for a little longer, just in case (grr)
    * Cleaned up some closing event issues on the streaming lib
    * Stop bundling the jetty 5.1.2 and updated wrapper.config in the update
      so that 0.4.* users will need to do a clean install, but we don't need 
      to shove an additional 2MB in each update to those already on 0.5.
    * Imported the susimail css (oops, thanks susi!)
jrandom's avatar
jrandom committed

* 2005-02-18  0.5 released

2005-02-17  jrandom
    * If the clock is adjusted during a job run, don't act as if the job took
      negative time.
jrandom's avatar
jrandom committed

2005-02-17  jrandom
    * Included the GPL'ed susimail 0.13 by default (thanks susi23!)
jrandom's avatar
jrandom committed

2005-02-17  jrandom
    * Fixed the braindead tunnel testing logic
    * If a large number of tunnels are failing (within the last 5-10 minutes)
      and the current tunnel pool's configuration allows it, randomly build a 
      zero hop tunnel to replace failed tunnels.
    * Enable postman's POP3 and SMTP tunnels by default
jrandom's avatar
jrandom committed

2005-02-16  jrandom
    * Added some error handling when the number of session tags exceeds the
      realistic capacity, dropping a random chunk of received tag sets and
      conducting some minor analysis of the remaining ones.  This is a part
      of a pretty serious error condition, and logs as CRIT (if/when people 
      see "TOO MANY SESSION TAGS!", please let me know the full log line it
      puts in the wrapper.log or /logs.jsp)
    * Update the addressbook to only write to the published hosts location
      if the addressbook's config contains "should_publish=true" (by default,
      it contains "should_publish=false")
jrandom's avatar
jrandom committed

2005-02-16  jrandom
    * (Merged the 0.5-pre branch back into CVS HEAD)
    * Replaced the old tunnel routing crypto with the one specified in
      router/doc/tunnel-alt.html, including updates to the web console to view
      and tweak it.  
    * Provide the means for routers to reject tunnel requests with a wider 
      range of responses:
        probabalistic rejection, due to approaching overload
        transient rejection, due to temporary overload
        bandwidth rejection, due to persistent bandwidth overload
        critical rejection, due to general router fault (or imminent shutdown)
      The different responses are factored into the profiles accordingly.
    * Replaced the old I2CP tunnel related options (tunnels.depthInbound, etc)
      with a series of new properties, relevent to the new tunnel routing code:
        inbound.nickname (used on the console)
        inbound.quantity (# of tunnels to use in any leaseSets)
        inbound.backupQuantity (# of tunnels to keep in the ready)
        inbound.length (# of remote peers in the tunnel)
        inbound.lengthVariance (if > 0, permute the length by adding a random # 
                                up to the variance.  if < 0, permute the length
                                by adding or subtracting a random # up to the 
                                variance)
        outbound.* (same as the inbound, except for the, uh, outbound tunnels
                    in that client's pool)
      There are other options, and more will be added later, but the above are
      the most relevent ones.
    * Replaced Jetty 4.2.21 with Jetty 5.1.2
    * Compress all profile data on disk.
    * Adjust the reseeding functionality to work even when the JVM's http proxy
      is set.
    * Enable a poor-man's interactive-flow in the streaming lib by choking the
      max window size.
    * Reduced the default streaming lib max message size to 16KB (though still
      configurable by the user), also doubling the default maximum window 
      size.
    * Replaced the RouterIdentity in a Lease with its SHA256 hash.
    * Reduced the overall I2NP message checksum from a full 32 byte SHA256 to
      the first byte of the SHA256.
    * Added a new "netId" flag to let routers drop references to other routers
      who we won't be able to talk to.
    * Extended the timestamper to get a second (or third) opinion whenever it 
      wants to actually adjust the clock offset.
    * Replaced that kludge of a timestamp I2NP message with a full blown 
      DateMessage.
    * Substantial memory optimizations within the router and the SDK to reduce
      GC churn.  Client apps and the streaming libs have not been tuned, 
      however.
jrandom's avatar
jrandom committed
    * More bugfixes than you can shake a stick at.
jrandom's avatar
jrandom committed

2005-02-13  jrandom
    * Updated jbigi source to handle 64bit CPUs.  The bundled jbigi.jar still 
      only contains 32bit versions, so build your own, placing libjbigi.so in 
      your install dir if necessary.  (thanks mule!)
    * Added support for libjbigi-$os-athlon64 to NativeBigInteger and CPUID
      (thanks spaetz!)
smeghead's avatar
smeghead committed

2005-02-10  smeghead
    * Initial check-in of Pants, a new utility to help us manage our 3rd-party
      dependencies (Fortuna, Jetty, Java Service Wrapper, etc.). Some parts of
      Pants are still non-functional at this time so don't mess with it yet
      unless you want to potentially mangle your working copy of CVS.

2005-02-09  duck
    * Allow an unneeded newline in the SAM client connection without
      disconnecting.
jrandom's avatar
jrandom committed

2005-02-07  jrandom
    * Fixed a race in the streaming lib's delayed flush algorithm (thanks anon!)
jrandom's avatar
jrandom committed

2005-02-06  Sugadude
    * Added a filter to the addressbook to remove entries that dont end in ".i2p"
smeghead's avatar
smeghead committed

2005-02-03  smeghead
    * Added Ant buildfile in apps/fortuna for creating a custom Fortuna PRNG jar
      library from GNU Crypto's CVS HEAD sources.
smeghead's avatar
smeghead committed

2005-01-26  smeghead
    * i2pProxy.pac, i2pbench.sh, and i2ptest.sh are now shipped with the dist
Loading
Loading full blame...