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

Skip to content
Snippets Groups Projects
  1. Mar 17, 2005
    • jrandom's avatar
      2005-03-17 jrandom · a997a460
      jrandom authored and zzz's avatar zzz committed
          * Update the old speed calculator and associated profile data points to
            use a non-tiered moving average of the tunnel test time, avoiding the
            freshness issues of the old tiered speed stats.
          * Explicitly synchronize all of the methods on the PRNG, rather than just
            the feeder methods (sun and kaffe only need the feeder, but it seems ibm
            needs all of them synchronized).
          * Properly use the tunnel tests as part of the profile stats.
          * Don't flood the jobqueue with sequential persist profile tasks, but
            instead, inject a brief scheduling delay between them.
          * Reduce the TCP connection establishment timeout to 20s (which is still
            absurdly excessive)
          * Reduced the max resend delay to 30s so we can get some resends in when
            dealing with client apps that hang up early (e.g. wget)
          * Added more alternative socketManager factories (good call aum!)
      a997a460
    • jrandom's avatar
      2005-03-16 jrandom · 538dd07e
      jrandom authored and zzz's avatar zzz committed
          * Adjust the old speed calculator to include end to end RTT data in its
            estimates, and use that as the primary speed calculator again.
          * Use the mean of the high capacity speeds to determine the fast
            threshold, rather than the median.  Perhaps we should use the mean of
            all active non-failing peers?
          * Updated the profile page to sort by tier, then alphabetically.
          * Added some alternative socketManager factories (good call aum!)
      538dd07e
  2. Mar 15, 2005
    • jrandom's avatar
      2005-03-14 jrandom · b20aee67
      jrandom authored and zzz's avatar zzz committed
          * New strict speed calculator that goes off the actual number of messages
            verifiably sent through the peer by way of tunnels.  Initially, this only
            contains the successful message count on inbound tunnels, but may be
            augmented later to include verified outbound messages, peers queried in
            the netDb, etc.  The speed calculation decays quickly, but should give
            a better differential than the previous stat (both values are shown on
            the /profiles.jsp page)
      b20aee67
  3. Mar 11, 2005
    • jrandom's avatar
      (no, this doesnt fix things yet, but its a save point along the path) · d74aa6e5
      jrandom authored and zzz's avatar zzz committed
      2005-03-11  jrandom
          * Rather than the fixed resend timeout floor (10s), use 10s+RTT as the
            minimum (increased on resends as before, of course).
          * Always prod the clock update listeners, even if just to tell them that
            the time hasn't changed much.
          * Added support for explicit peer selection for individual tunnel pools,
            which will be useful in debugging but not recommended for use by normal
            end users.
          * More aggressively search for the next hop's routerInfo on tunnel join.
          * Give messages received via inbound tunnels that are bound to remote
            locations sufficient time (taking into account clock skew).
          * Give alternate direct send messages sufficient time (10s min, not 5s)
          * Always give the end to end data message the explicit timeout (though the
            old default was sufficient before)
          * No need to give end to end messages an insane expiration (+2m), as we
            are already handling skew on the receiving side.
          * Don't complain too loudly about expired TunnelCreateMessages (at least,
            not until after all those 0.5 and 0.5.0.1 users upgrade ;)
          * Properly keep the sendBps stat
          * When running the router with router.keepHistory=true, log more data to
            messageHistory.txt
          * Logging updates
          * Minor formatting updates
      d74aa6e5
  4. Mar 08, 2005
    • jrandom's avatar
      2005-03-07 jrandom · 536e604b
      jrandom authored and zzz's avatar zzz committed
          * Fix the HTTP response header filter to allow multiple headers with the
            same name (thanks duck and spotteri!)
      536e604b
  5. Mar 07, 2005
  6. Mar 05, 2005
    • jrandom's avatar
      2005-03-04 jrandom · 01979c08
      jrandom authored and zzz's avatar zzz committed
          * Filter HTTP response headers in the eepproxy, forcing Connection: close
            so that broken (/malicious) webservers can't allow persistent
            connections.  All HTTP compliant browsers should now always close the
            socket.
          * Enabled the GZIPInputStream's cache (they were'nt cached before)
          * Make sure our first send is always a SYN (duh)
          * Workaround for some buggy compilers
      01979c08
  7. Mar 04, 2005
    • jrandom's avatar
      2005-03-03 jrandom · 10afe0a0
      jrandom authored and zzz's avatar zzz committed
          * Loop while starting up the I2PTunnel instances, in case the I2CP
            listener isn't up yet (thanks detonate!)
          * Implement custom reusable GZIP streams to both reduce memory churn
            and prevent the exposure of data in the standard GZIP header (creation
            time, OS, etc).  This is RFC1952 compliant, and backwards compatible,
            though has only been tested within the confines of I2P's compression use
            (DataHelper.[de]compress).
          * Preemptively support the next protocol version, so that after the 0.5.0.2
            release, we'll be able to drop protocol=2 to get rid of 0.5 users.
      10afe0a0
  8. Mar 03, 2005
    • jrandom's avatar
      2005-03-02 jrandom · ef230cfa
      jrandom authored and zzz's avatar zzz committed
          * Fix one substantial OOM cause (session tag manager was only dropping
            tags once the critical limit was met, rather than honoring their
            expiration) (duh)
          * Lots of small memory fixes
          * Double the allowable concurrent outstanding tunnel build tasks (20)
      ef230cfa
  9. Mar 01, 2005
    • jrandom's avatar
      2005-03-01 jrandom · 57d6a2f6
      jrandom authored and zzz's avatar zzz committed
          * Really disable the streaming lib packet caching
          * Synchronized a message handling point in the SDK (even though its use is
            already essentially single threaded, its better to play it safe)
          * Don't add new RepublishLeaseSetJobs on failure, just requeue up the
            existing one (duh)
          * Throttle the number of concurrent pending tunnel builds across all
            pools, in addition to simply throttling the number of new requests per
            minute for each pool individually.  This should avoid the cascading
            failure when tunnel builds take too long, as no new builds will be
            created until the previous ones are handled.
          * Factored out and extended the DataHelper's unit tests for dealing with
            long and date formatting.
          * Explicitly specify the HTTP auth realm as "i2prouter", though this
            alone doesn't address the bug where jetty asks for authentication too
            much.  (thanks orion!)
          * Updated the StreamSinkServer to ignore all read bytes, rather than write
            them to the filesystem.
      57d6a2f6
  10. Feb 27, 2005
    • jrandom's avatar
      2005-02-27 jrandom · 469a0852
      jrandom authored and zzz's avatar zzz committed
          * Don't rerequest leaseSets if there are already pending requests
          * Reverted the insufficiently tested caching in the DSA/SHA1 impl, and
            temporary disabled the streaming lib packet caching.
          * Reduced the resend RTT penalty to 10s
      469a0852
    • jrandom's avatar
      2005-02-26 jrandom · 2e7eac02
      jrandom authored and zzz's avatar zzz committed
          * Force 1.3-isms on the precompiled jsps too (thanks laberhost)
      2e7eac02
  11. Feb 26, 2005
    • jrandom's avatar
      2005-02-26 jrandom · 238389fc
      jrandom authored and zzz's avatar zzz committed
          * 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"
      238389fc
  12. Feb 24, 2005
    • jrandom's avatar
      2005-02-24 jrandom · 4cec9da0
      jrandom authored and zzz's avatar zzz committed
          * 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
      4cec9da0
    • jrandom's avatar
      2005-02-24 jrandom · 00f27d44
      jrandom authored and zzz's avatar zzz committed
          * 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.
      00f27d44
  13. Feb 23, 2005
    • jrandom's avatar
      2005-02-23 jrandom · f61618e4
      jrandom authored and zzz's avatar zzz committed
          * 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?
      f61618e4
    • jrandom's avatar
      * 2005-02-23 0.5.0.1 released · 265d5e30
      jrandom authored and zzz's avatar zzz committed
    • jrandom's avatar
      2005-02-22 jrandom · 10ed058c
      jrandom authored and zzz's avatar zzz committed
          * 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!)
      10ed058c
  14. Feb 22, 2005
    • jrandom's avatar
      2005-02-22 jrandom · 8a21f0ef
      jrandom authored and zzz's avatar zzz committed
          * 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)
      8a21f0ef
    • jrandom's avatar
      2005-02-22 jrandom · c17433cb
      jrandom authored and zzz's avatar zzz committed
          * 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.
      c17433cb
  15. Feb 21, 2005
    • jrandom's avatar
      2005-02-20 jrandom · 35fe7f82
      jrandom authored and zzz's avatar zzz committed
          * 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)
      35fe7f82
  16. Feb 20, 2005
    • jrandom's avatar
      2005-02-20 jrandom · cbf6a70a
      jrandom authored and zzz's avatar zzz committed
          * 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.
      cbf6a70a
  17. Feb 19, 2005
    • jrandom's avatar
      2005-02-19 jrandom · 7d4e093b
      jrandom authored and zzz's avatar zzz committed
          * 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!)
      7d4e093b
  18. Feb 18, 2005
  19. Feb 17, 2005
    • jrandom's avatar
      (not yet tagging this 0.5, but I don't think there's anytihng left) · 15a0dcf4
      jrandom authored and zzz's avatar zzz committed
      2005-02-17  jrandom
          * If the clock is adjusted during a job run, don't act as if the job took
            negative time.
      15a0dcf4
    • jrandom's avatar
      2005-02-17 jrandom · aa3a44c4
      jrandom authored and zzz's avatar zzz committed
          * Included the GPL'ed susimail 0.13 by default (thanks susi23!)
      aa3a44c4
    • jrandom's avatar
      2005-02-17 jrandom · dd107474
      jrandom authored and zzz's avatar zzz committed
          * 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
      dd107474
    • jrandom's avatar
      2005-02-16 jrandom · 77176162
      jrandom authored and zzz's avatar zzz committed
          * 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")
      77176162
  20. Feb 16, 2005
    • jrandom's avatar
      2005-02-16 jrandom · 566a713b
      jrandom authored and zzz's avatar zzz committed
          * (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.
          * More bugfixes thank you can shake a stick at.
      
      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!)
      566a713b
  21. Feb 11, 2005
    • smeghead's avatar
      2005-02-10 smeghead · 293ceaee
      smeghead authored and zzz's avatar zzz committed
          * 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.
      293ceaee
  22. Feb 09, 2005
  23. Feb 07, 2005
    • jrandom's avatar
      2005-02-07 jrandom · b366a4b9
      jrandom authored and zzz's avatar zzz committed
          * Fixed a race in the streaming lib's delayed flush algorithm (thanks anon!)
      b366a4b9
  24. Feb 06, 2005
    • jrandom's avatar
      2005-02-06 Sugadude · 27e92653
      jrandom authored and zzz's avatar zzz committed
          * Added a filter to the addressbook to remove entries that dont end in ".i2p"
      (thanks Sugadude!)
      27e92653
  25. Feb 03, 2005
    • smeghead's avatar
      2005-02-03 smeghead · 382cbb18
      smeghead authored and zzz's avatar zzz committed
          * Added Ant buildfile in apps/fortuna for creating a custom Fortuna PRNG jar
            library from GNU Crypto's CVS HEAD sources.
      382cbb18
  26. Jan 27, 2005
    • smeghead's avatar
      2005-01-26 smeghead · 5f6060b8
      smeghead authored and zzz's avatar zzz committed
          * i2pProxy.pac, i2pbench.sh, and i2ptest.sh are now shipped with the dist
            packages and installed to $i2pinstalldir/scripts.
          * Added command line params to i2ptest.sh and i2pbench.sh: --gij to run them
            using gij + libgcj, and --sourcedir to run them from the source tree
            instead of the installation directory.
          * Fixed unreachable for() statement clause in the KBucketImpl class that was
            causing gcj to toss a compilation warning (jrandom++).
      5f6060b8
    • smeghead's avatar
      2005-01-26 smeghead · 22ca1491
      smeghead authored and zzz's avatar zzz committed
          * Added a couple of scripts, i2ptest.sh and i2pbench.sh, to manage the core
            tests and benchmarks.
          * Routerconsole now builds under gcj 3.4.3.
          * Corrected divide by zero error in TunnelId class under gcj (jrandom++).
      22ca1491
  27. Jan 26, 2005
    • smeghead's avatar
      2005-01-25 smeghead · 4fac2f10
      smeghead authored and zzz's avatar zzz committed
          * Tweaked some classes to enable gcj 3.4.3 to compile the router and
            supporting apps (except for the routerconsole which is still being
            investigated).
      4fac2f10
  28. Jan 24, 2005
    • smeghead's avatar
      2005-01-24 smeghead · de2c975a
      smeghead authored and zzz's avatar zzz committed
          * C#-ification of sam-sharp: interface greatly simplified using delegates
            and events; SamBaseEventHandler provides basic implementation and helper
            methods but is now optional.
          * NAnt buildfile and README added for sam-sharp.
      de2c975a
  29. Jan 23, 2005
    • jrandom's avatar
      2005-01-23 smeghead · d86e2c0f
      jrandom authored and zzz's avatar zzz committed
          * Port the java SAM client library to mono/C# and released into the
            public domain.  The 0.1 version of this port is available in CVS as
            i2p/apps/sam/csharp/src/I2P.SAM.Client.  The other nonfunctional C#
            library has been removed.
      d86e2c0f
Loading