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

Skip to content
Snippets Groups Projects
  1. Sep 27, 2008
  2. Sep 25, 2008
  3. Jul 16, 2008
  4. Sep 18, 2007
    • zzz's avatar
      2007-09-18 zzz · b7721790
      zzz authored and zzz's avatar zzz committed
          * 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
      b7721790
  5. Dec 30, 2005
    • jrandom's avatar
      2005-12-30 jrandom · 8e87ae08
      jrandom authored and zzz's avatar zzz committed
          * Small streaming lib bugfixes for the modified timeouts
          * Minor Syndie/Sucker RSS html fix
          * Small synchronization fix in I2PSnark (thanks fsm!)
      8e87ae08
  6. Jul 11, 2005
    • jrandom's avatar
      2005-07-11 jrandom · 9d5f16a8
      jrandom authored and zzz's avatar zzz committed
          * Reduced the growth factor on the slow start and congestion avoidance for
            the streaming lib.
          * Adjusted some of the I2PTunnelServer threading to use a small pool of
            handlers, rather than launching off new threads which then immediately
            launch off an I2PTunnelRunner instance (which launches 3 more threads..)
          * Don't persist session keys / session tags (not worth it, for now)
          * Added some detection and handling code for duplicate session tags being
            delivered (root cause still not addressed)
          * Make the PRNG's buffer size configurable (via the config property
            "i2p.prng.totalBufferSizeKB=4096")
          * Disable SSU flooding by default (duh)
          * Updates to the StreamSink apps for better throttling tests.
      9d5f16a8
  7. Jul 04, 2005
    • jrandom's avatar
      2005-07-04 jrandom · 18d3f5d2
      jrandom authored and zzz's avatar zzz committed
          * Within the tunnel, use xor(IV, msg[0:16]) as the flag to detect dups,
            rather than the IV by itself, preventing an attack that would let
            colluding internal adversaries tag a message to determine that they are
            in the same tunnel.  Thanks dvorak for the catch!
          * Drop long inactive profiles on startup and shutdown
          * /configstats.jsp: web interface to pick what stats to log
          * Deliver more session tags to account for wider window sizes
          * Cache some intermediate values in our HMACSHA256 and BC's HMAC
          * Track the client send rate (stream.sendBps and client.sendBpsRaw)
          * UrlLauncher: adjust the browser selection order
          * I2PAppContext: hooks for dummy HMACSHA256 and a weak PRNG
          * StreamSinkClient: add support for sending an unlimited amount of data
          * Migrate the tests out of the default build jars
      
      2005-06-22  Comwiz
          * Migrate the core tests to junit
      18d3f5d2
  8. Apr 20, 2005
    • jrandom's avatar
      2005-04-20 jrandom · a2c7c5a5
      jrandom authored and zzz's avatar zzz committed
          * In the SDK, we don't actually need to block when we're sending a message
            as BestEffort (and these days, we're always sending BestEffort).
          * Pass out client messages in fewer (larger) steps.
          * Have the InNetMessagePool short circuit dispatch requests.
          * Have the message validator take into account expiration to cut down on
            false positives at high transfer rates.
          * Allow configuration of the probabalistic window size growth rate in the
            streaming lib's slow start and congestion avoidance phases, and default
            them to a more conservative value (2), rather than the previous value
            (1).
          * Reduce the ack delay in the streaming lib to 500ms
          * Honor choke requests in the streaming lib (only affects those getting
            insanely high transfer rates)
          * Let the user specify an interface besides 127.0.0.1 or 0.0.0.0 on the
            I2PTunnel client page (thanks maestro^!)
      (plus minor udp tweaks)
      a2c7c5a5
  9. Mar 26, 2005
    • jrandom's avatar
      2005-03-26 jrandom · ebac4df2
      jrandom authored and zzz's avatar zzz committed
          * Added some error handling and fairly safe to cache data to the streaming
            lib (good call Tom!)
      ebac4df2
  10. 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
  11. Mar 01, 2005
    • smeghead's avatar
      big code cleanup to reduce number of compiler warnings · 2d15a421
      smeghead authored and zzz's avatar zzz committed
      2d15a421
    • 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
  12. 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
  13. 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
  14. Jan 17, 2005
    • jrandom's avatar
      2005-01-17 jrandom · 61f217c6
      jrandom authored and zzz's avatar zzz committed
          * Added meaningful support for adjusting the preferred message size in the
            streaming lib by setting the i2p.streaming.maxMessageSize=32768 (or
            whatever).  The other side will mimic a reduction (but never an increase).
          * Always make sure to use distinct ConnectionOption objects for each
            connection (duh)
          * Reduced the default ACK delay to 500ms on in the streaming lib
          * Only shrink the streaming window once per window
          * Don't bundle a new jetty.xml with updates
          * Catch another local routerInfo corruption issue on startup.
      61f217c6
  15. Jan 06, 2005
    • jrandom's avatar
      2005-01-05 jrandom · 48385644
      jrandom authored and zzz's avatar zzz committed
          * Handle unexpected network read errors more carefully (thanks parg!)
          * Added more methods to partially compare (DataHelper) and display
            arrays (Base64.encode).
          * Exposed the AES encryptBlock/decryptBlock on the context.aes()
          * Be more generous on the throttle when just starting up the router
          * Fix a missing scheduled event in the streaming lib (caused after reset)
          * Add a new DisconnectListener on the I2PSocketManager to allow
            notification of session destruction.
          * Make sure our own router identity is valid, and if it isn't, build a new
            one and restart the router.  Alternately, you can run the Router with
            the single command line argument "rebuild" and it will do the same.
      48385644
  16. Dec 11, 2004
    • jrandom's avatar
      2004-12-11 jrandom · 60f8d349
      jrandom authored and zzz's avatar zzz committed
          * Use a simpler and less memory intensive job for processing outbound
            client messages when the session is in mode=bestEffort.  We can
            immediately discard the data as soon as its sent the first time,
            rather than wait for an ack, since we will never internally resend.
          * Reduce some synchronization to avoid a rare deadlock
          * Replaced 'localhost' with 127.0.0.1 in the i2ptunnel config, and special
            case it within the tunnel controller.
          * Script cleanup for building jbigi/jcpuid
          * Logging
      60f8d349
  17. Dec 09, 2004
  18. Dec 04, 2004
    • jrandom's avatar
      2004-12-03 jrandom · 1a30cd5f
      jrandom authored and zzz's avatar zzz committed
          * Toss in a small pool of threads (3) to execute the events queued up with
            the SimpleTimer, as we do currently see the occational event
            notification spiking up to a second or so.
          * Implement a SAM client API in java, useful for event based streaming (or
            for testing the SAM bridge)
          * Added support to shut down the SAM bridge on OOM (useful if the SAM
            bridge is being run outside of the router).
          * Include the SAM test code in the sam.jar
          * Remove an irrelevent warning message from SAM, which was caused by
            perfectly normal operation due to a session being closed.
          * Removed some unnecessary synchronization in the streaming lib's
            PacketQueue
          * More quickly clean up the memory used by the streaming lib by
            immediately killing each packet's resend job as soon as it is ACKed (or
            cancelled), so that there are no longer any valid pointers to the
            (potentially 32KB) packet.
          * Fixed the timestamps dumped to stdout when debugging the PacketHandler.
          * Drop packets that would expand our inbound window beyond our maximum
            buffer size (default 32 messages)
          * Always read the ACK/NACK data from the verified packets received, even
            if we are going to drop them
          * Always adjust the window when there are messages ACKed, though do not
            change its size except as before.
          * Streamlined some synchronization in the router's I2CP handling
          * Streamlined some memory allocation in the SAM bridge
          * Default the streaming lib to disconnect on inactivity, rather than send
            an empty message.
      this still doesnt get the BT to where it needs to be, or fix the timeout problem,
      but i dont like having so many commits outstanding and these updates are sound
      1a30cd5f
  19. Nov 26, 2004
  20. Nov 25, 2004
    • jrandom's avatar
      2004-11-25 jrandom · 8bd99f69
      jrandom authored and zzz's avatar zzz committed
          * Revised the installer to include start menu and desktop shortcuts for
            windows platforms, including pretty icons (thanks DrWoo!)
          * Allow clients specified in clients.config to have an explicit startup
            delay.
          * Update the default install to launch a browser pointing at the console
            whenever I2P starts up, rather than only the first time it starts up
            (configurable on /configservice.jsp, or in clients.config)
          * Bugfix to the clock skew checking code to monitor the delta between
            offsets, not the offset itself (duh)
          * Router console html update
          * New (and uuuuugly) code to verify that the wrapper.config contains
            the necessary classpath entries on update.  If it has to update the
            wrapper.config, it will stop the JVM and service completely, since the
            java service wrapper doesn't reread the wrapper.config on JVM restart -
            requiring the user to manually restart the service after an update.
          * Increase the TCP connection timeout to 30s (which is obscenely long)
      ------------------------------------------------
      8bd99f69
  21. Nov 16, 2004
    • jrandom's avatar
      2004-11-16 jrandom · d943b499
      jrandom authored and zzz's avatar zzz committed
          * Clean up the propogation of i2psocket options so that various streaming
            libs can honor them more precisely
      d943b499
  22. Nov 10, 2004
    • jrandom's avatar
      *cough* · 6fc6866e
      jrandom authored and zzz's avatar zzz committed
      6fc6866e
    • jrandom's avatar
      2004-11-10 jrandom · 881524a5
      jrandom authored and zzz's avatar zzz committed
          * Allow loading the (mini)streaming connection options from the
            environment.
          * More defensive programming in the DSA implementation.
      881524a5
  23. Nov 08, 2004
    • jrandom's avatar
      2004-11-08 jrandom · 0c049f39
      jrandom authored and zzz's avatar zzz committed
          * Remove spurious flush calls from I2PTunnel, and work with the
            I2PSocket's output stream directly (as the various implementations
            do their own buffering).
          * Another pass at a long standing JobQueue bug - dramatically simplify
            the job management synchronization since we dont need to deal with
            high contention (unlike last year when we had dozens of queue runners
            going at once).
          * Logging
      0c049f39
  24. Nov 02, 2004
    • jrandom's avatar
      2004-11-02 jrandom · 6ef22166
      jrandom authored and zzz's avatar zzz committed
          * Fix for a long standing synchronization bug in the JobQueue (and added
            some kooky flags to make sure it stays dead)
          * Update the ministreaming lib to force mode=guaranteed if the default
            lib is used, and mode=best_effort for all other libs.
      6ef22166
    • jrandom's avatar
      2004-11-02 jrandom · 1107e501
      jrandom authored and zzz's avatar zzz committed
          * Fixed up the configuration overrides for the streaming socket lib
            integration so that it properly honors env settings.
          * More memory usage streamlining (last major revamp for now, i promise)
      1107e501
  25. Oct 30, 2004
    • jrandom's avatar
      (mmMMmm profiling) · 58fcbad2
      jrandom authored and zzz's avatar zzz committed
      2004-10-30  jrandom
          * Cache the temporary objects used in the AES encryption/decryption
            process so that AES doesn't require any memory allocation to process
            data.
          * Dramatically reduce memory usage within various crypto implementations
            by avoiding unnecessary (though simplifying) buffers.
          * If we specify some tags to be sent in an I2CP message explicitly, use
            only those, not those plus a new set (otherwise we aren't sure on ACK
            which set was delivered)
          * Allow configuration for the partial send timeout (how long before
            resending a message down a different tunnel in a lease).  This can be
            updated with the "router.clientPartialSendTimeout" router config prop.
          * Logging
      58fcbad2
  26. Oct 25, 2004
  27. Oct 24, 2004
    • jrandom's avatar
      2004-10-24 jrandom · 9680effb
      jrandom authored and zzz's avatar zzz committed
          * Allow explicit inclusion of session tags in the SDK, enabling the
            resending of tags bundled with messages that would not otherwise
            be ACKed.
          * Don't force mode=guaranteed for end to end delivery - if mode=bestEffort
            no DeliveryStatusMessage will be bundled (and as such, client apps using
            it will need to do their own session tag ack/nack).
          * Handle client errors when notifying them of message availability.
          * New StreamSinkSend which sends a file to a destination and disconnects.
          * Update the I2PSocketManagerFactory to build the specific
            I2PSocketManager instance based on the "i2p.streaming.manager" property,
            containing the class name of the I2PSocketManager implementation to instantiate.
      9680effb
    • jrandom's avatar
      2004-10-23 jrandom · 813679ba
      jrandom authored and zzz's avatar zzz committed
          * Minor ministreaming lib refactoring to simplify integration of the full
            streaming lib.
          * Minor bugfixes to data structure serialization.
      813679ba
  28. Oct 07, 2004
    • jrandom's avatar
      logging · 37479d8c
      jrandom authored and zzz's avatar zzz committed
      37479d8c
  29. Oct 01, 2004
    • jrandom's avatar
      logging · 2b54d850
      jrandom authored and zzz's avatar zzz committed
      2b54d850
  30. Sep 26, 2004
  31. Aug 25, 2004
  32. Aug 15, 2004
    • jrandom's avatar
      deal with a race on close · e5d66f46
      jrandom authored and zzz's avatar zzz committed
      more zealous bc synchronization
      make sure we always close the streams explicitly
      logging
      e5d66f46
Loading