* Killed three more streaming lib bugs, one of which caused excess packets
to be transmitted (dupacking dupacks), one that was the root of many of
the old hung streams (shrinking highest received), and another that was
releasing data too soon.
* Only allow autodetection of our IP address if we haven't received an
inbound connection in the last two minutes.
* Increase the default max streaming resends to 8 from 5 (and down from
the earlier 10)
* Support noreseed.i2p in addition to .i2pnoreseed for disabling automatic
reseeding - useful on OSes that make it hard to create dot files.
Thanks Complication (and anon)!
* Fixed the installer version string (thanks Frontier!)
* Added cleaner rejection of invalid IP addresses, shitlist those who send
us invalid IP addresses, verify again that we are not sending invalid IP
addresses, and log an error if it happens. (Thanks Complication, ptm,
and adab!)
2005-09-29 jrandom
* Let syndie users modify their metadata.
* Reseed the router on startup if there aren't enough peer references
known locally. This can be disabled by creating the file .i2pnoreseed
in your home directory, and the existing detection and reseed handling
on the web interface is unchanged.
2005-09-29 jrandom
* Let syndie users modify their metadata.
* Reseed the router on startup if there aren't enough peer references
known locally. This can be disabled by creating the file .i2pnoreseed
in your home directory, and the existing detection and reseed handling
on the web interface is unchanged.
* I2PTunnel bugfix (thanks Complication!)
* Increase the SSU cwin slower during congestion avoidance (at k/cwin^2
instead of k/cwin)
* Limit the number of inbound SSU sessions being built at once (using
half of the i2np.udp.maxConcurrentEstablish config prop)
* Don't shitlist on a message send failure alone (unless there aren't any
common transports).
* More careful bandwidth bursting
* Reworded the SSU introductions config section (thanks duck!)
* Force identity content encoding for I2PTunnel httpserver requests
(thanks redzara!)
* Further x-i2p-gzip bugfixes for the end of streams
* Reduce the minimum bandwidth limits to 3KBps steady and burst (though
I2P's performance at 3KBps is another issue)
* Cleaned up some streaming lib structures
* Allow reseeding on the console if the netDb knows less than 30 peers,
rather than less than 10 (without internet connectivity, we keep the
last 15 router references)
* Reenable the x-i2p-gzip HTTP processing by default, flushing the stream
more aggressively.
* Show the status that used to be called "ERR-Reject" as "OK (NAT)"
* Reduced the default maximum number of streaming lib resends of a packet
(10 retransmits is a bit much with a reasonable RTO)
* Better i2paddresshelper handling in the I2PTunnel httpclient, plus a new
conflict resolution page if the i2paddresshelper parameter differs from
an existing name to destination mapping.
2005-09-25 jrandom
* Fix a long standing streaming lib bug (in the inactivity detection code)
* Improved handling of initial streaming lib packet retransmissions to
kill the "lost first packet" bug (where a page shows up with the first
few KB missing)
* Add support for initial window sizes greater than 1 - useful for
eepsites to transmit e.g. 4 packets full of data along with the initial
ACK, thereby cutting down on the rtt latency. The congestion window
size can and does still shrink down to 1 packet though.
* Adjusted the streaming lib retransmission calculation algorithm to be
more TCP-like.
* Bugfix in susidns for deleting entries
2005-09-21 jrandom
* Add support for HTTP POST to EepGet
* Use HTTP POST for syndie bulk fetches, since there's a lot of data to
put in that URL.
* Added support for pure 64bit linux with jbigi and the java service
wrapper (no need for jcpuid if we're on os.arch=amd64). Thanks mule
et al for help testing!
* UI cleanup in Syndie (thanks gloin and bar!)
2005-09-17 jrandom
* Clean up syndie a bit more and bundle a default introductory post with
both new installs and updates.
* Typo fixes on the console (thanks bar!)
* Updated the bandwidth limiter to use two tiers of bandwidth - our normal
steady state rate, plus a new limit on how fast we transfer when
bursting. This is different from the old "burst as fast as possible
until we're out of tokens" policy, and should help those with congested
networks. See /config.jsp to manage this rate.
* Bugfixes in Syndie to handle missing cache files (no data was lost, the
old posts just didn't show up).
* Log properly in EepPost
* Added the natively compiled jbigi and patched java service wrapper for
OS X. Thanks Bill Dorsey for letting me use your machine!
* Don't build i2p.exe or i2pinstall.exe when run on OS X machines, as we
don't bundle the binutils necessary (and there'd be a naming conflict
if we did).
* Added 'single user' functionality to syndie - if the single user
checkbox on the admin page is checked, all users are allowed to control
the instance and sync up with remote syndie nodes.
* Temporarily disable the x-i2p-gzip in i2ptunnel until it is more closely
debugged.
* Adjust I2PTunnelHTTPServer so it can be used for outproxy operators
(just specify the spoofed host as an empty string), allowing them to
honor x-i2p-gzip encoding.
* Let windows users build the exes too (thanks bar and redzara!)
* Allow I2PTunnel httpserver operators to disable gzip compression on
individual tunnels with the i2ptunnel.gzip=false client option
(good idea susi!)