Newer
Older
2008-05-07 zzz
* Reachability:
- Restrict peers requiring introducers from inbound tunnels,
since it's slow and unreliable... and many of them advertise
NTCP, which seems unlikely to work
- Provide warning on summary bar if firewalled with inbound NTCP enabled
* Stats: Remove the bw.[send,recv]Bps[1,15]s stats unless
log level net.i2p.router.transport.FIFOBandwidthLimiter >= WARN
at startup (you didn't get any data unless you set the log level anyway)
* oldstats.jsp: Don't put 2 decimal places on integer event counts
* Remove the Internals link from the menu bar
* i2psnark: Extend startup delay from 1 to 3 minutes
2008-05-06 welterde
* HTTP Proxy: Add i2jump.i2p jump service
2008-05-05 zzz
* NetDb Stats: Cleanup of commented out stats
* Outbound message:
- Fix a couple of tunnel cache cleaning bugs
- Cache based on source+dest pairs rather than just dest
- Send the reply leaseSet only when necessary,
rather than all the time (big savings in overhead)
- Enable persistent lease selection again
- Logging tweaks
* Reachability:
- Restrict <= .32 SSU-only peers from inbound tunnels,
since they don't know if they are unreachable
- Have SSU bid aggressively when it has less than 3 peers, so
we can determine our IP address and do peer testing.
Otherwise a router may never determine its IP address or reachability status.
* Summary bar:
- Add reachability status
- Add participating tunnel acceptance status
* Throttle: Reject tunnels for first 10m uptime
* I2PTunnel: Change default outproxy to false.i2p
2008-04-20 zzz
* Outbound message/Reachability:
- Fix a bug from -19 causing the persistent lease selection
removed in -17 to be back again
- Use netDb-listed-unreachable instead of detected-unreachable
for exclusion of unreachable peers from selected leases,
as there are potential anonymity problems with using
detected-unreachable
- Tweak logging some more
* NetDb stats: Remove a couple more including the inefficient stat_identities
2008-04-17 zzz
* Reachability:
- Track unreachable peers persistently
(i.e. separately from shitlist, and not cleared when they contact us)
- Exclude detected unreachable peers from inbound tunnels
- Exclude detected unreachable peers from selected leases
- Exclude detected unreachable floodfill peers from lookups
- Show unreachable status on profiles.jsp
2008-04-16 zzz
* SSU/Reachability:
- Extend shitlist time from 4-8m to 40-60m
- Add some shitlist logging
- Don't shitlist twice when unreachable on all transports
- Exclude netDb-listed unreachable peers from inbound tunnels;
this won't help much since there are very few of these now
- Remove 10s delay on inbound UDP connections used for the
0.6.1.10 transition
- Track and display UDP connection direction on peers.jsp
- Show shitlist status in-line on profiles.jsp
2008-04-15 zzz
* SSU Reachability/PeerTestManager:
- Back out strict peer ordering until we fix SSU
- Back out persistent lease selection until we fix SSU
- Fix detection of UDP REJECT_UNSOLICITED by recording status on expiration
- Increase known Charlie time to 10m; 3m wasn't enough
- Don't continue retransmitting peer test if we know Charlie
- Don't run multiple peer tests at once
- Tighten test frequency range to 6.5-19.5m, was 0-26m
2008-04-12 zzz
* Addressbook: Disallow '.-' and '-.' in host names
* NTCP: Don't drop a connection unless both directions are idle;
Fix idle time for outbound connections
* Outbound message: Make sure cached lease is in current leaseSet
* Stats: Put all NetworkDatabase stats in same group
* TunnelPool: Stop building tunnels and leaseSets after client shutdown
* i2psnark: Add locking to prevent two I2CP connections
2008-04-07 zzz
* i2psnark:
- Implement upstream bandwidth limiting
- Fix a rare NPE at startup/shutdown
- Really increase retries for .torrent fetch
* profiles.jsp: Minor cleanup
* DataHelper: Only format < 5s as ms
* Eepget: Fix percentage output on command line eepget retries
* Lower partipating message priority from 400 to 200
* NTCP: Add a debug message
* Outbound message: Minor cleanup
2008-03-30 zzz
* ExploratoryPeerSelector: Try NonFailing even more
* HostsTxtNamingService: Add reverse lookup support
* Outbound message: Minor cleanup
* checklist.txt: Minor edit
* hosts.txt: Add perv.i2p, false.i2p, mtn.i2p2.i2p
* i2ptunnel.config: Change CVS client to mtn
* netdb.jsp: Show leaseSet destinations using reverse lookup
* profiles.jsp: First cut at showing floodfill data
2008-03-27 zzz
* Send messages for the same destination to the same inbound
lease to reduce out-of-order delivery.
* ExploratoryPeerSelector: Back out the floodfill peer exclusion
for now, as it prevents speed rating of those peers
2008-03-26 zzz
* ReseedHandler: Support multiple urls,
add netdb.i2p2.de as a 2nd default
2008-03-25 zzz
* i2psnark:
- Add support for secondary open trackers
- Refactor and simplify the TrackerClient code
- Add welterde's tracker to the default list
- Don't have eepget retry announces
- Slow down tracker contacts if they've failed for a while
- Add some debug support showing connections (?p=2)
* hosts.txt: Add nickyb.i2p, tracker.welterde.i2p
2008-03-22 zzz
* NewsFetcher: Fix bug causing fetch every 10m
2008-03-22 zzz
* Tunnel Testing:
- Fix counting so it really takes 4 consecutive failures
rather than 4 total to remove a tunnel
- Credit or blame goes to the exploratory tunnel as well
as the tunnel being tested
- Adjust tunnel test timeout based on tunnel length
* ExploratoryPeerSelector: Tweak logging
* ProfileOrganizer: Adjust integration calculation again
* build.xml: Add to help
* checklist.txt: Tweak
* readme.html: Fix forum links
* netDb: Remove tunnel.testFailedTime
2008-03-19 zzz
* ExploratoryPeerSelector:
- Exclude floodfill peers
- Tweak the HighCap vs. NonFailing decision; try NonFailing
at least a minimum % of the time
* i2psnark: Increase retries for .torrent fetch
* IRC Proxy: Prevent mIRC from sending an alternate DCC request
containing an IP
* readme.html: Reorder some items
* Stats: Add some more required stats
* Streaming lib: Fix slow start to be exponential growth,
fix congestion avoidance to be linear growth.
Should speed up local connections a lot, and remote
connections a little.
2008-03-14 zzz
* Floodfill Search:
- Prefer heard-from, unfailing, unshitlisted floodfill peers
- Use more recent stats to calculate integration
- Show that fast peers are also high-capacity on profiles.jsp
* readme.html: Update Syndie link
* TunnelPool: Update comments
* netDb: Report 1-2h uptime as 90m to further frustrate tracking,
get rid of the 60s tunnel stats
(effective as of .33 to provide cover)
2008-03-13 zzz
* Floodfill Search:
- Fix a bug that caused a single FloodfillOnlySearchJob
instance to be run multiple times, with unpredictable
results
- Select ff peers randomly to improve reliability
- Add some bulletproofing
2008-03-11 zzz
* ProfileOrganizer:
- Don't require a peer to be high-capacity to be
well-integrated (not used for anything right now,
but want to get it right for possible floodfill verification)
- Don't fall back to median for high-capacity threshold
if the mean is higher than the median, this prevents
frequent large high-capacity counts
- Fix high-capacity selector that picked one too many
* Console: put well-integrated count back in the summary
* EepGet: Fix byte count for bytesTransferred status listeners
(fixes command line status)
* UpdateHandler:
- Fix byte count display
- Display final status on router console
- Don't allow multiple update jobs to queue up
- Increase max retries
- Code cleanup
- Don't show 'check for update' button when update in progress
- Enhance error messages
* NetDb: Comment out published netDb stats disabled for .32
* TunnelPeerSelectors: Implement strict ordering of peers,
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
based on XOR distance from a random hash
separately generated for each tunnel pool
2008-03-07 zzz
* Naming: Optimize lookups for a destkey
* ProfileOrganizer, TunnelPoolSettings, ClientPeerSelector:
- Prevent peers with matching IPs from joining same tunnel.
Match 0-4 bytes of IP (0=off, 1=most restrictive, 4=least).
Default is 2 (disallow routers in same /16).
Set with router.defaultPool.IPRestriction=x
- Comment out unused RebuildPeriod pool setting
- Add random key to pool in preparation for XOR peer ordering
* SusiMail: Add 'Create Account' link
* TunnelDispatcher: Change a common wtf error to a warn
2008-03-05 zzz
* Naming: Make HostsTxt the sole default NamingService
(was Meta = PetName + HostsTxt)
* Naming: Add two new experimental NamingServices, EepGet and Exec,
not enabled by default -
see source comments in core/java/src/net/i2p/client/naming
for configuration instructions
* i2psnark: Don't do a naming lookup for Base64 destkeys
* i2psnark: Add a StartAll button
* Stats: Add code to disable most stats to save memory.
Set on configstats.jsp or set stat.full=false to disable the stats.
(true by default for now)
2008-03-09 Complication
* Give the Jetty build file ability to ask permission
before downloading the Jetty archive from the web,
and to verify its SHA1 + MD5 hashes. Adjust the main build file
in accordance with this change.
* Improve the release checklist.
* 2008-03-09 0.6.1.32 released
2008-03-07 zzz
* Update news and version numbers
2008-03-01 zzz
* Fix netdb.knownLeaseSets count reported by floodfill routers
(was broken by -3)
2008-02-27 zzz
* i2ptunnel: Add 3-hop option to edit.jsp to match configtunnels.jsp
* i2psnark: Remove orion and gaytorrents from default tracker list
* Remove orion from jump list and from eepsite_index.html
* Jbigi: Change jbigi version to 4.2.2 in build scripts - tested by amiga
* Capitalize OutboundMessageDistributor job name
* TunnelPool: Add a warning if all tunnels are backlogged
2008-02-26 zzz
* Reintroduce NTCP backlog pushback, with switch back to
previous tunnel when no longer backlogged
* Catch an nio exception in an NTCP logging statement if loglevel is WARN
* IRC Proxy: terminate all messages with \r\n (thanks TrivialPursuit!)
2008-02-21 zzz
* Raise inbound default bandwidth to 32KBps
* Fix config.jsp that showed 0KBps share bandwidth by default
2008-02-19 zzz
* Addressbook: Disallow '--' in host names except in IDN,
add some reserved host names
* I2PTunnel: Clarify edit form
* NetDb: Remove many stats from netDb, effective as of .32
* profiles.jsp: Display capabilities
* Tunnels: Enforce max tunnel length of 8, catch an index error
http://forum.i2p/viewtopic.php?t=2561
2008-02-16 zzz
* Fix race in TunnelDispatcher which caused
participating tunnel count to seesaw -
should increase network capacity
* Leave participating tunnels in 10s batches for efficiency
* Update participating tunnel ratestat when leaving a tunnel too,
to generate a smoother graph
* Fix tunnel.participatingMessageCount stat to include all
participating tunnels, not just outbound endpoints
* Simplify Expire Tunnel job name
2008-02-13 zzz
* PersistentDataStore: Write out 300 records every 10 min
rather than 1 every 10 sec;
Don't store leasesets to disk or read them in
* Combine rates for pools with the same length setting
in the new tunnel build algorithm
* Clarify a log message in the UpdateHandler
2008-02-13 zzz
* Make graphs clickable to get larger graphs
* Change SimpleTimer CRIT to a WARN, increase threshold
* Checklist update
2008-02-11 welterde
* Fix an NPE in UDP http://forum.i2p/viewtopic.php?t=2545
2008-02-10 zzz
* Add new tunnel build algorithm (preliminary)
* Change NTCP backlogged message from error to warning
* Checklist updates
* 2008-02-10 0.6.1.31 released
2008-02-10 Complication
* Update news and version numbers
2008-02-06 zzz
* build.xml: Add some apps to javadoc
* checklist.txt: Add some things
* news.xml: make links relative
* runplain.sh: Add some comments
* wrapper.config: Add some comments
2008-02-05 Complication
* Change the dates too (sorry for such forgetfulness!)
2008-02-04 Complication
* Also use the new key for checking, and add it into news.xml
2008-02-04 Complication
* Added my release signing key into TrustedUpdate.java
2008-01-31 zzz
* NewsFetcher: Change fetch failed from error to warning
* installer: Fix URL and "email"
* checklist.txt: New release checklist
2008-01-29 zzz
* Addressbook: Change default subscription
* ConfigUpdateHandler: Change default news URL
* initialNews.xml: Update version to .31
* news.xml: More updates
* hosts.txt: Add i2p-projekt.i2p
* readme.html: More URL updates
* SusiDNS: Change references to default subscription
2008-01-28 zzz
* news.xml: Updates, still preliminary
* ReseedHandler: Change default URL
* i2ptunnel.config: Change default outproxies
* readme.html: Change *.i2p.net URLs
* help.jsp: Change *.i2p.net URLs
* eepsite_index.html: Change stats.i2p addressbook subscription URL
* hosts.txt: Add krabs.i2p, true.i2p, www.i2p2.i2p
* 2008-01-28 0.6.1.30-20 converted from CVS to MTN
2008-01-08 zzz
* addressbook: Limit size of subscribed hosts.txt,
don't save old etag or last-modified data
* EepGet: Add some logging,
enforce size limits even when size not in returned header,
don't return old etag or last-modified data,
don't call transferFailed listener more than once
* Sign my update signing key
* NewsFetcher: add last-modified support, reduce number of retries
* Error pages: add icon and logo,
clarify 'destination not found' and 'proxy not found' pages
2008-01-07 zzz
* profiles.jsp formatting cleanup
* NTCP: Reduce max idle time from 60m to 20m
* NTCP: Fix idle time on connections with zero messages,
correctly drop these connections
2008-01-03 zzz
* addressbook: Do basic validation of hostnames and destkeys
* susidns: Add support for the private addressbook,
update the text and links somewhat
2008-01-02 zzz
* Add stats.i2p to the jump list
* Impose 20MB limit on POSTs and catch OOMs in POST
* eepsite_index.html: add stats.i2p services
* addressbook: log source of new keys; disallow dests > 516 bytes
* addressbook: convert hostnames to lower case to prevent duplicates
* susidns: generalize references to orion
* Allow commas in router.trustedUpdateKeys and router.updateURL again
2007-12-26 Complication
* Improve reseed handler (less repetitive code,
avoid reporting errors when less than 10% of fetches fail)
2007-12-26 Complication
* Escape both CR, LF and CR LF line breaks in Router.saveConfig()
and unescape them in DataHelper.loadProps() to support
saving and loading config properties with line breaks
* Change the update URLs textbox into a textarea like keys have,
so different URLs go on different lines
* Modify TrustedUpdate to provide a method which supplies a key list
delimited with CR LF line breaks
* Modify DEFAULT_UPDATE_URL to supply a default URL list
delimited with CR LF line breaks
* Modify selectUpdateURL() to handle URL lists
delimited by any kind of line breaks
* Start saving trusted update keys
* Improve formatting on configupdate.jsp
2007-12-22 zzz
* Add support for multiple update URLs
* Change default for update to use i2p proxy,
add several URLs as defaults
* Enable trusted key form on configupdate.jsp
* Clarify the 'destination not found' error page
2007-12-16 zzz
* i2psnark: remove anonymitytracker from default list
2007-12-02 Complication
* Commit SAM v2 patch from mkvore (thank you!)
* Minor reformatting to preserve consistent whitespace
in old SAM classes (new classes unaltered)
2007-12-01 Complication
* Separate the checks "does Jetty .zip file need downloading"
and "does Jetty .zip file need extracting" in the Jetty buildfile.
First download (unless already done), then extract (unless done).
2007-11-26 zzz
* i2psnark: add timeout for receive inactivity
2007-11-24 zzz
* i2psnark: increase streaming lib write timeout to 240 sec and change
timeout action from "ping" to "disconect", as the fix in .30 to
honor options on outbound connections led to hung outbound connections
(bitfield never transmitted, connection never dropped)
2007-10-11 zzz
* IRC Proxy: Fix several possible anonymity holes:
- Block CTCP in NOTICE messages
- Block CTCP anywhere in PRIVMSG and NOTICE, not just at first character
- Check for lower case commands
(Thanks sponge!)
2007-10-07 jrandom
* back out the NTCP backlog pushback, as it could be used to mount an
active anonymity attack.
2007-10-07 Complication
* Fix an issue in EepGet whereby sending of "etag" and "lastModified" headers
broke retrying.
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
2007-09-22 zzz
* Send messages for the same destination out the same outbound
tunnel to reduce out-of-order delivery.
2007-09-19 zzz
* i2psnark: Fix broken multifile torrent Delete;
cleanup Storage resources in AddTorrent;
don't autostart torrent after Create
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
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
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
2007-08-12 zzz
* readme.html - Add inproxy.tino.i2p, replace search.i2p with eepsites.i2p,
tweak the eepsite and troubleshooting sections
2007-08-11 zzz
* Add stats for individual tunnel rates (nice when graphed)
* i2psnark: Fix outbound tunnel nickname
2007-08-05 Complication
* Update the sharing calculator on config.jsp
and explain the trade-off even more thoroughly.
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.
2007-07-16 zzz
* i2psnark: Add tooltip info for choked/uninterested
2007-07-16 zzz
* Make selection of graphed data configurable via configstats.jsp,
remove most of the default graphs to save some memory
2007-07-15 zzz
* Add current values to graph legends
* Fix up previous Rate fix to check for divide by zero
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).
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.
2007-07-09 zzz
* i2psnark: give a better error message for a non-i2p torrent
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.
2007-07-04 zzz
* Display calculated share bandwidth and remove load testing
on config.jsp
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.
2007-06-27 jrandom
* fix for a streaming lib bug that could leave a thread waiting
indefinitely (thanks Complication!)
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.
2007-05-06 Complication
* Fix the build.xml file, so the preppkg build target won't try copying files
which became deprecated with the old Syndie (thanks for alerting, itsu!)
2007-03-31 zzz
* Add trevorreznik jump server to the http proxy error page
* Add anonymity to the trackers supporting details links in i2psnark
2007-03-24 zzz
* Remove Syndie from build targets and navbar
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
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
2007-03-13 zzz
* i2psnark: Make max total uploaders configurable (thanks Amiga4000!)
2007-03-12 jrandom
* dodge a race on startup (thanks zzz!)
2007-03-10 zzz
* Streaming lib: Change initial RTT deviation from RTT to RTT/2
(RFC 2988) to reduce early RTO values
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
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
2007-03-03 zzz
* Upgrade from Jetty 5.1.6 to 5.1.12 which fixes spaces in URL
* Add a updaterWithJetty build target
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
* 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
2007-02-14 jrandom
* Don't filter out KICK and H(ide oper status) IRC messages
(thanks Takk and postman!)
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
2007-01-30 zzz
* i2psnark: Don't hold _snarks lock while checking a snark,
so web page is responsive at startup
2007-01-28 zzz
* i2psnark: Don't hold sendQueue lock while flushing output,
to make everything run smoother
2007-01-27 zzz
* i2psnark: Fix orphaned Snark reader tasks leading to OOMs
2007-01-20 Complication
* Drop overlooked comment
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.
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
* Add note on Syndie index.html steering people to new Syndie
2007-01-16 zzz
* i2psnark: Fix crash when autostart off and
tcrrent started manually
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
2007-01-15 jrandom
* small guard against unnecessary streaming lib reset packets
(thanks Complication!)
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
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)
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
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
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)
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()
2006-09-29 zzz
* i2psnark: Second try at synchronization fix - synch addRequest()
completely rather than just portions of it and requestNextPiece()
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
2006-09-26 Complication
* Take back another inadverent logging change in NTCPConnection
2006-09-26 Complication
* Take back an accidental log level change
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
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
2006-09-24 zzz
* i2psnark: Add some synchronization to prevent rare problem
after restoring orphan piece
2006-09-20 zzz
* i2psnark: Eliminate duplicate requests caused by i2p-bt's
rapid choke/unchokes
* i2psnark: Truncate long TrackerErr messages on web page
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.
2006-09-13 zzz
* i2psnark: Fix restoral of partial pieces broken by last patch
* 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
2006-09-09 zzz
* i2psnark: Add "Stalled" indication and stat totals on web page
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
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
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
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
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
2006-08-21 Complication
* Fix error reporting discrepancy (thanks for helping notice, yojoe!)
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)
2006-07-29 Complication
* Treat NTP responses from unexpected stratums like failures
2006-07-28 jrandom
* Don't try to reverify too many netDb entries at once (thanks
cervantes and Complication!)
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!)
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.
2006-07-27 jrandom
* Further NTCP write status cleanup
* Handle more oddly-timed NTCP disconnections (thanks bar!)
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
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"
* 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!)
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)
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
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
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!)
2006-06-14 cervantes
* Small tweak to I2PTunnel CSS, so it looks better with desktops
that use Bitstream Vera fonts @ 96 dpi
2006-06-13 jrandom
* Use a minimum uptime of 2 hours, not 4 (oops)
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
2006-06-11 Kloug
* Bugfix to the I2PTunnel IRC filter to support multiple concurrent
outstanding pings/pongs
2006-06-10 jrandom
* Further reduction in proactive rejections
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)
2006-06-08 jrandom
* Be more conservative in the proactive rejections
2006-06-04 Complication
* Trim out sending a blank line before USER in susimail.
Seemed to break in rare cases, thanks for reporting, Brachtus!
* 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
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.
* 2006-05-18 0.6.1.19 released
2006-05-18 jrandom
* Made the SSU ACKs less frequent when possible
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
2006-05-17 jrandom
* Make the peer page sortable
* SSU modifications to cut down on unnecessary connection failures
2006-05-16 jrandom
* Further shitlist randomizations
* Adjust the stats monitored for detecting cpu overload when dropping new
tunnel requests
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
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)
2006-05-11 jrandom
* PRNG bugfix (thanks cervantes and Complication!)
* 2006-05-09 0.6.1.18 released
2006-05-09 jrandom
* Further tunnel creation timeout revamp
2006-05-07 Complication
* Fix problem whereby repeated calls to allowed() would make
the 1-tunnel exception permit more than one concurrent build
2006-05-06 jrandom
* Readjust the tunnel creation timeouts to reject less but fail earlier,
while tracking the extended timeout events.
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)
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)
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
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.
2006-05-01 jrandom
* Fix for a netDb lookup race (thanks cervantes!)
2006-04-27 jrandom
* Avoid a race in the message reply registry (thanks cervantes!)
2006-04-27 jrandom
* Fixed the tunnel expiration desync code (thanks Complication!)
2006-04-19 jrandom
* Adjust how we pick high capacity peers to allow the inclusion of fast
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
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)
2006-04-14 jrandom
* 0 isn't very random
* Adjust the tunnel drop to be more reasonable
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
2006-04-14 jrandom
* Make some more stats graphable, and allow some internal tweaking on the
tunnel pairing for creation and testing.
2006-04-12 jrandom
* Added a further failsafe against trying to queue up too many messages to
a peer.
2006-04-12 jrandom
* Watch out for failed syndie index fetches (thanks bar!)
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.
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.
2006-04-08 jrandom
* Stat summarization fix (removing the occational holes in the jrobin
graphs)
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
2006-04-06 jrandom
* Fix for a bug in the new irc ping/pong filter (thanks Complication!)
2006-04-06 jrandom
* Fixed a typo in the reply cleanup code
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
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
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
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!)
2006-04-01 jrandom
* Take out the router watchdog's teeth (don't restart on leaseset failure)
* Filter the IRC ping/pong messages, as some clients send unsafe
information in them (thanks aardvax and dust!)
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
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
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
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)
2006-03-20 jrandom
* Fix to allow for some slack when coalescing stats
* Workaround some oddball errors
2006-03-18 jrandom
* Added a new graphs.jsp page to show all of the stats being harvested
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
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
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!)
2006-03-15 Complication
* Trim out an old, inactive IP second-guessing method
(thanks for spotting, Anonymous!)
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
2006-03-05 zzz
* Remove the +++--- from the logs on i2psnark startup
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
2006-03-05 Complication
* Reduce exposed statistical information,
to make build and uptime tracking more expensive
2006-03-04 Complication
* Fix the announce URL of orion's tracker in Snark sources
2006-03-03 Complication
* Explicit check for an index out of bounds exception while parsing
an inbound IRC command (implicit check was there already)
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!)
2006-02-27 zzz
* Update error page templates to add \r, Connection: close, and
Proxy-connection: close to headers.
* 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)
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
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
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.
2006-02-23 jrandom
* Increase the SSU retransmit ceiling (for slow links)
* Estimate the sender's SSU MTU (to help see if we agree)
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
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
2006-02-21 Complication
* Reactivate TCP tranport by default, in addition to re-allowing
* 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
* Clean up the address regeneration code so it knows when to rebuild the
local info more precisely.
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_!)
2006-02-20 jrandom
* Reenable the TCP transport as a fallback (we'll continue to muck with
debugging SSU-only elsewhere)
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).
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_!)
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
dealing with higher degrees.
* Load balance the outbound SSU transfers evenly across peers, rather than
across messages (so peers with few messages won't be starved by peers
with many).
* Reduce the frequency of router info rebuilds (thanks bar!)
2006-02-18 jrandom
* Add a new AIMD throttle in SSU to control the number of concurrent
messages being sent to a given peer, in addition to the throttle on the
number of concurrent bytes to that peer.
* Adjust the existing SSU outbound queue to throttle based on the queue's
lag, not an arbitrary number of packets.
2006-02-17 jrandom
* Properly fix the build request queue throttling, using queue age to
detect congestion, rather than queue size.
2006-02-17 jrandom
* Disable the message history log file by default (duh - feel free to
delete messageHistory.txt after upgrading. thanks deathfatty!)
* Limit the size of the inbound tunnel build request queue so we don't
get an insane backlog of requests that we're bound to reject, and adjust
the queue processing so we keep on churning through them when we've got
a backlog.
* Small fixes for the multiuser syndie operation (thanks Complication!)
* Renamed modified PRNG classes that were imported from gnu-crypto so we
don't conflict with JVMs using that as a JCE provider (thanks blx!)
2006-02-16 jrandom
* Add a new toggle to the web config to enable/disable the load testing
2006-02-16 jrandom
* Dropped much of the abandonware from the apps/ directory
2006-02-16 jrandom
* Bugfix to the I2PTunnel web config to properly accept i2cp port settings
* Initial sucker refactoring to simplify reuse of the html parsing
* Beginnings of hooks to push imported rss/atom out to remote syndie
archives automatically (though not enabled currently)
* Further SSU peer test cleanup
2006-02-15 jrandom
* Add in per-blog RSS feeds to Syndie
* Upgraded sucker's ROME dependency to 0.8, bundling sucked enclosures
with the posts, marking additional attachments as Media RSS enclosures
(http://search.yahoo.com/mrss/), since RSS only supports one enclosure
per item.
* Don't allow the default syndie user to be set to something invalid if
its in single user mode.
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
2006-02-15 jrandom
* Merged in the i2p_0_6_1_10_PRE branch to the trunk, so CVS HEAD is no
longer backwards compatible (and should not be used until 0.6.1.1 is
out)
2006-02-14 jrandom
* Syndie ui bugfixes (thanks all!)
2006-02-13 jrandom
* Use the current directory for some temporary I2PSnark files, rather than
the OS default temp dir (thanks anon!)
* Increase the base streaming lib window size (still shrinks to 1 on
retransmission though, of course)
* Fixed the I2PTunnel newlines to work with lighthttpd (thanks all!)
* Implement fast retransmit in the streaming lib (fires at most once per
packet), and increased the default ack delay to 2 seconds (from .5s)
* Don't ask for garlic level message acks for end to end messages unless
they're useful (e.g. to ack session tags)
2006-02-12 cervantes
* Use a different santisation method for some SML attributes
* Make router console update config save button actually save.
* Fix console bandwidth limiter burst rate dropdowns, so the display
relates to what is saved in the config.
2006-02-12 cervantes
* SML is now stricter in it's formatting (attributes should only use
double quotes instead of being allowed to mix with singles).
* Using apostrophes in SML attributes will no longer invalidate the tag.
* Some instances of [blog] tag description were not being displayed
correctly.
2006-02-12 jrandom
* Further SSU peer test throttling
* Put the most common router console features on the main index page too
2006-02-11 jrandom
* Be more careful about SSU peer test floods
2006-02-09 jrandom
* Adjusted one of the SSU timeouts so we don't drop peers as easily (duh)
2006-02-08 jrandom
* Added transparent support for VIA C3 CPUs to jbigi (thanks Nekow42), and
bundled a precompiled libjbigi.so in the jbigi.jar
* Cleaned up the synchronization for some SSU packet handling code
* Allow explicit rejection of more lagged tunnel build requests, rather
than dropping them outright
* Use lighter load testing
2006-02-07 jrandom
* Handle HTTP headers without any values (thanks Sugadude!)
* Don't show the option to make Syndie multiuser, since very few people
need it, and multiuser mode is a lot more complex to use. Geeks can
enable it by adding "syndie.singleUser=false" to syndie/syndie.config
(or in the router's advanced config, for the embedded Syndie)
* When a peer rejects participation in a tunnel, they mean it (duh)
* Decrease tunnel test timeout period to 20s (a 40s lag is insane)
* Remove a throttle on the size of the SSU active outbound pool, since
it was essentially arbitrary
* Use a more appropriate SSU bloom filter size
* Don't "proactively" drop SSU connections if we have partially received
inbound messages (duh)
* Migrate most of the message state across SSU connection reestablishment
2006-02-06 jrandom
* Reduce the SSU retransmit timeout range, and increase the number of ACKs
piggybacked
2006-02-05 jrandom
* Experiment with short exponents for DH/ElGamal, using a 226bit x instead
of a 2048bit x, as reports suggest that size is sufficient for 2048bit
DH/ElGamal when using safe primes (see KeyGenerator.java for references)
* Enable the messageHistory.txt by default, for debugging
2006-02-05 jrandom
* Substantial bugfix for the duplicate message detection in the transport
layer
* Handle tunnel build responses ASAP, rather than queueing them up to wait
in line (processing them is really fast - just a few AES loops)
* Don't bother handling build requests that we have queued up for a while
locally, as the requestor will have timed it out anyway (perhaps we
should reply regardless, but with a backoff instead?)
2006-02-04 jrandom
* Further tunnel test cleanup and disabling of the old tunnel creation
code
2006-02-04 jrandom
* Clean up and reenable the tunnel testing for the new tunnel system.
2006-02-04 jrandom
* Don't cache the archive.txt in syndie when fetching it through the web
interface.
* Logging updates
2006-02-03 jrandom
* Added further replay prevention on the tunnel build requests
* More aggressive streaming lib closing on reset
2006-02-03 jrandom
* More aggressive refusal of peers from the wrong network (oops)
2006-02-01 jrandom
* Instruct the router to reseed against a new URL, for migration purposes:
http://dev.i2p.net/i2pdb2/
* Aggressive error handling during UDP packet creation (thanks cervantes)
2006-02-01 jrandom
* Fix the new tunnel creation crypto, including the addition of a 4 byte
"next message ID" to the encrypted request structure in the spec.
* Backwards incompatible change, using the new tunnel creation crypto, the
fixed MD5 HMAC size, and a new network ID (to prevent cross pollination
with the old incompatible network).
* Reworked the leaseSet request process to handle a race condition
* Disable the TCP transport
* Run four separate threads on the job queue to cut down on job lag
2006-01-28 jrandom
* Removed a race that could show up in leaseSet requesting with the new
tunnel building process
2006-01-25 jrandom
* Run the peer profile coalescing/reorganization outside the job queue
(on one of the timers), to cut down on some job queue congestion. Also,
trim old profiles while running, not just when starting up.
* Slightly more sane intra-floodfill-node netDb activity (only flood new
entries)
* Workaround in the I2PTunnelHTTPServer for some bad requests (though the
source of the bug is not yet addressed)
* Better I2PSnark reconnection handling
* Further cleanup in the new tunnel build process
* Make sure we expire old participants properly
* Remove much of the transient overload throttling (it wasn't using a good
metric)
2006-01-25 dust
* Fix IRC client proxy to use ISO-8859-1.
2006-01-22 jrandom
* New tunnel build process - does not use the new crypto or new peer
selection strategies. However, it does drop the fallback tunnel
procedure, except for tunnels who are configured to allow them, or for
the exploratory pool during bootstrapping or after a catastrophic
failure. This new process prefers to fail rather than use too-short
tunnels, so while it can do some pretty aggressive tunnel rebuilding,
it may expose more tunnel failures to the user.
* Always prefer normal tunnels to fallback tunnels.
* Potential fix for a bug while changing i2cp settings on I2PSnark (thanks
bar!)
* Do all of the netDb entry writing in a separate thread, avoiding
duplicates and batching them up.
2006-01-19 Complication
* Explain better where eepsite's destkey can be found
2006-01-18 cervantes
* Add title attributes to all external links in Syndie, so we can rollover
and quickly see if it's worth clicking on.
* Fixed a minor compiler warning.
2006-01-17 jrandom
* First pass of the new tunnel creation crypto, specified in the new
router/doc/tunnel-alt-creation.html (referenced in the current
router/doc/tunnel-alt.html). It isn't actually used anywhere yet, other
than in the test code, but the code verifies the technical viability, so
further scrutiny would be warranted.
* Removed entirely misleading memory status from the console summary.
* Only create the loadtest.log if requested to do so (thanks zzz!)
* Make sure we cleanly take into consideration the appropriate data
points when filtering out duplicate messages in the message validator,
and report the right bloom filter false positives rate (not used for
anything except debugging)
* Syndie CSS tweaks to removed some redundant declarations, improve font
scaling and layout robustness. Improved cross browser compatibility
(in other words "kicked IE"). Tightened the look of the blog template
a little.
* Include the attachments/blogs/etc for comments on the blog view
* Syndie HTML fixes (thanks cervantes!)
* Make sure we fully reset the objects going into our cache before we
reuse them (thanks zzz!)
* Added the per-post list of attachments/blogs/etc to the blog view in
Syndie (though this does not yet include comments or some further
refinements)
* Have the I2P shortcut launch i2p.exe instead of i2psvc.exe on windows,
removing the dox box (though also removes the restart functionality...)
* Give the i2p.exe the correct java.library.path to support the systray
dll (thanks Bobcat, Sugadude, anon!)
* Removed a longstanding bug that had caused unnecessary router identity
churn due to clock skew
* Temporarily sanity check within the streaming lib for long pending
writes
* Added support for a blog-wide logo to Syndie, and automated the pushing
of updated extended blog info data along side the metadata.
* Bugfix for a rare SSU error (thanks cervantes!)
* More progress on the blog interface, allowing customizable blog-wide
links.
2006-01-08 jrandom
* First pass of the new blog interface, though without much of the useful
customization features (coming soon)
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
2006-01-04 jrandom
* Rather than profile individual tunnels for throughput over their
lifetime, do so at 1 minute intervals (allowing less frequently active
tunnels to be more fairly measured).
* Run the live tunnel load test across two tunnels at a time, by default.
The load test runs for a random period from 90s to the tunnel lifetime,
self paced. This should help gathering data for profiling peers that
are in exploratory tunnels.
2006-01-03 jrandom
* Calculate the overall peer throughput across the 3 fastest one minute
tunnel throughput values, rather than the single fastest throughput.
* Degrade the profiled throughput data over time (cutting the profiled
peaks in half once a day, on average)
* Enable yet another new speed calculation for profiling peers, using the
peak throughput from individual tunnels that a peer is participating in,
rather than across all tunnels they are participating in. This helps
gather a fairer peer throughput measurement, since it won't allow a slow
high capacity peer seem to have a higher throughput (pushing a little
data across many tunnels at once, as opposed to lots of data across a
single tunnel). This degrades over time like the other.
* Add basic OS/2 support to the jbigi code (though we do not bundle a
precompiled OS/2 library)
2006-01-01 jrandom
* Disable multifile torrent creation in I2PSnark's web UI for the moment
(though it can still seed and participate in multifile swarms)
* Enable a new speed calculation for profiling peers, using their peak
1 minute average tunnel throughput as their speed.
2005-12-31 jrandom
* Include a simple torrent creator in the I2PSnark web UI
* Further streaming lib closing improvements
* Refactored the load test components to run off live tunnels (though,
still not safe for normal/anonymous load testing)
2005-12-30 jrandom
* Close streams more gracefully
2005-12-30 jrandom
* Small streaming lib bugfixes for the modified timeouts
* Minor Syndie/Sucker RSS html fix
* Small synchronization fix in I2PSnark (thanks fsm!)
2005-12-30 jrandom
* Replaced the bundled linux jcpuid (written in C++) with scintilla's
jcpuid (written in C), removing the libg++.so.5 dependency that has bit
some distros (e.g. mandriva)
2005-12-29 jrandom
* Minor fix to the new ERR-ClockSkew to deal with people whose clocks are
actually correct
2005-12-27 jrandom
* Add a new Status: line on the router console - "ERR-ClockSkew", in case
the clock is too skewed to do anything useful (check the year and month,
not just the hour and minute).
* Fixed the read/write timeouts in the streaming lib (so that it actually
honors them now)
* Minor I2PSnark cleanups (no read timeout, more careful shutdown and
torrent closing)
* Handle an oddball tunnel creation failure (thanks Xunk)
2005-12-26 Complication
* Fix some integer typecasting in I2PSnark (caused >2GB torrents to fail)
* HTML readability cosmetics on "Peers" page
* 2005-12-22 0.6.1.8 released
2005-12-22 jrandom
* Bundle the standalone I2PSnark launcher in the installer and update
process (launch as "java -jar launch-i2psnark.jar", viewing the
interface on http://localhost:8002/)
* Don't autostart swarming torrents by default so that you can run a
standalone I2PSnark from the I2P install dir and not have the embedded
I2PSnark autolaunch the torrents that the standalone instance is running
* Fixed a rare streaming lib bug that could let a blocking call wait
forever.
2005-12-22 jrandom
* Cleaned up some buffer synchronization issues in I2PSnark that could
2005-12-21 jrandom
* Adjusted I2PSnark's usage of the streaming lib (tweaking it for BT's
behavior)
* Fixed the I2PSnark bug that would lose track of live peers
2005-12-20 jrandom
* Enabled the control in I2PSnark to toggle whether torrents should be
started automatically or not
* Hopefully finished the last hook to close down torrents completely when
they're stopped.
2005-12-19 jrandom
* Fix for old Syndie blog bookmarks (thanks Complication!)
* Fix for I2PSnark to accept incoming connections again (oops)
* Randomize the order that peers from the tracker are contacted
2005-12-19 jrandom
* I2PSnark logging, disconnect old inactive peers rather than new ones,
memory usage reduction, better OOM handling, and a shared connection
acceptor.
* Cleaned up the Syndie blog page and the resulting filters (viewing a
blog from the blog page shows threads started by the selected author,
not those that they merely participate in)
2005-12-18 jrandom
* Added a standalone runner for the I2PSnark web ui (build with the
command "ant i2psnark", unzip i2psnark-standalone.zip somewhere, run
with "java -jar launch-i2psnark.jar", and go to http://localhost:8002/).
* Further I2PSnark error handling
2005-12-17 jrandom
* Let multiuser accounts authorize themselves to access the remote
functionality again (thanks Ch0Hag!)
* Adjust the JVM heap size to 128MB for new installs (existing users can
accomplish this by editing wrapper.config, adding the line
"wrapper.java.maxmemory=128", and then doing a full shutdown and startup
of the router). This is relevent for heavy usage of I2PSnark in the
router console.
2005-12-17 jrandom
* Use our faster SHA1, rather than the JVM's within I2PSnark, and let
'piece' sizes grow larger than before.
2005-12-16 jrandom
* Added some I2PSnark sanity checks, an OOMListener when running
standalone, and a guard against keeping memory tied up indefinitely.
* Sanity check on the watchdog (thanks zzz!)
* Handle invalid HTTP requests in I2PTunnel a little better
2005-12-16 jrandom
* Moved I2PSnark from using Threads to I2PThreads, so we handle OOMs
properly (thanks Complication!)
* More guards in I2PSnark for zany behavior (I2PSession recon w/ skew,
b0rking in the DirMonitor, etc)
2005-12-16 jrandom
* Try to run a torrent in readonly mode if we can't write to the file, and
handle failures a little more gracefully (thanks polecat!)
2005-12-16 jrandom
* Refuse torrents with too many files (128), avoiding ulimit errors.
* Remove an fd leak in I2PSnark
* Further I2PSnark web UI cleanup
2005-12-15 jrandom
* Added a first pass to the I2PSnark web UI (see /i2psnark/)
2005-12-15 jrandom
* Added multitorrent support to I2PSnark, accessible currently by running
"i2psnark.jar --config i2psnark.config" (which may or may not exist).
It then joins the swarm for any torrents in ./i2psnark/*.torrent, saving
their data in that directory as well. Removing the .torrent file stops
participation, and it is currently set to seed indefinitely. Completion
is logged to the logger and standard output, with further UI interaction
left to the (work in progress) web UI.
2005-12-14 jrandom
* Fix to drop peer references when we shitlist people again (thanks zzz!)
* Further I2PSnark fixes to deal with arbitrary torrent info attributes
(thanks Complication!)
2005-12-13 zzz
* Don't test tunnels expiring within 90 seconds
* Defer Test Tunnel jobs if job lag too large
* Use JobQueue.getMaxLag() rather than the jobQueue.jobLag stat to measure
job lag for tunnel build backoff, allowing for more agile handling
(since the stat is only updated once a minute)
* Use tunnel length override if all tunnels are expiring within one
minute.
2005-12-13 jrandom
* Fixed I2PSnark's handling of some torrent files to deal with those
created by Azureus and I2PRufus (it didn't know how to deal with
additional meta info, such as path.utf-8 or name.utf-8).
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
2005-12-09 zzz
* Create different strategies for exploratory tunnels (which are difficult
to create) and client tunnels (which are much easier)
* Gradually increase number of parallel build attempts as tunnel expiry
nears.
* Temporarily shorten attempted build tunnel length if builds using
configured tunnel length are unsuccessful
* React more aggressively to tunnel failure than routine tunnel
replacement
* Make tunnel creation times randomized - there is existing code to
randomize the tunnels but it isn't effective due to the tunnel creation
strategy. Currently, most tunnels get built all at once, at about 2 1/2
to 3 minutes before expiration. The patch fixes this by fixing the
randomization, and by changing the overlap time (with old tunnels) to a
range of 2 to 4 minutes.
* Reduce number of excess tunnels. Lots of excess tunnels get created due
to overlapping calls. Just about anything generated a call which could
build many tunnels all at once, even if tunnel building was already in
process.
* Miscellaneous router console enhancements
2005-12-08 jrandom
* Minor bugfix in SSU for dealing with corrupt packets
* Added some hooks for load testing
2005-12-07 jrandom
* Added a first pass at a blog view in Syndie
2005-12-07 jrandom
* Expand the thread we're viewing to its leaf
* Bugfix on intraday ordering (children are always newer than parents)
2005-12-05 jrandom
* Added an RDF and XML thread export to Syndie, reachable at
.../threadnav/rdf or .../threadnav/xml, accepting the parameters
count=$numThreads and offset=$threadIndex. If the $numThreads is -1, it
displays all threads.
2005-12-04 TLorD
* Patch for the C SAM library to null terminate strings on copy (thanks!)
2005-12-04 jrandom
* Bugfix in Syndie for a problem in the threaded indexer (thanks CofE!)
* Always include ourselves in the favorite authors (since we don't
bookmark ourselves)
2005-12-03 jrandom
* Use newgroup-like tags by default in Syndie's interface
2005-12-03 jrandom
* Added support for a 'most recent posts' view that CofE requested, which
includes the ability to filter by age (e.g. posts by your favorite
authors in the last 5 days).
2005-12-03 jrandom
* Adjusted Syndie to use the threaded view that cervantes suggested, which
displays a a single thread path at a time - from root to leaf - rather
than a depth first traversal.
2005-12-03 jrandom
* Package up a standalone Syndie install into a "syndie-standalone.zip",
buildable with "ant syndie". It extracts into ./syndie/, launches with
"java -jar launchsyndie.jar" (or javaw, on windows, to avoid a dos box),
running a single user Syndie instance (by default). It also creates a
default subscription to syndiemedia without any anonymity (using no
proxy). Upgrades can be done by just replacing the syndie.war with the
one from I2P.
* 2005-12-01 0.6.1.7 released
2005-12-01 jrandom
* Add a new criteria to the tunnel join throttle, backing off people if we
are failing to talk to our peers more than usual.
2005-11-30 jrandom
* Cleaned up the build process to deal with Jetty 5.1.6 and rename the
new commons-logging-api.jar to commons-logging.jar, which it replaces.
Jetty 5.1.6 is pushed with all updates. Also, no need to push a
separate jdom or rome, as they're inside syndie.war.
2005-11-30 jrandom
* Don't let the TCP transport alone shitlist a peer, since other
transports may be working. Also display whether TCP connections are
inbound or outbound on the peers page.
* Fixed some substantial bugs in the SSU introducers where we wouldn't
talk to anyone who didn't expose an IP (even if they had introducers),
among other goofy things.
* When dealing with SSU introducers, send them all a packet at 3s/6s/9s,
rather than sending one a packet at 3s, then another a packet at 6s,
and a third a packet at 9s.
* Fixed Syndie attachments (oops)
2005-11-29 zzz
* Added a link to orion's jump page on the 'key not found' error page.
2005-11-29 jrandom
* Further Syndie UI cleanup
* Bundled our patched MultiPartRequest code from jetty (APL2 licensed),
since it hasn't been applied to the jetty CVS yet [1]. Its packaged
into syndie.jar and renamed to net.i2p.syndie.web.MultiPartRequest, but
will be removed as soon as its integrated into Jetty. This patch allows
posting content in various character sets.
[1] http://article.gmane.org/gmane.comp.java.jetty.general/6031
* Upgraded new installs to the latest stable jetty (5.1.6), though this
isn't pushed as part of the update yet, as there aren't any critical
bugs.
2005-11-29 jrandom
* Added back in the OSX jbigi, which was accidentally removed a few revs
back (thanks for the bug report stoerte!) New installs will get the
full jbigi, or you can pull the jbigi.jar from CVS by going to
http://dev.i2p.net/cgi-bin/cvsweb.cgi/i2p/installer/lib/jbigi/jbigi.jar
and clicking on the first "download" link, saving that jbigi.jar to
lib/jbigi.jar in your I2P installation directory. After restarting your
router, it should load up fine.
2005-11-27 jrandom
* Inlined the Syndie CSS to reduce the number of HTTP requests (and
because firefox [and others?] delay rendering until they fetch the css).
* Make sure we fire the shutdown tasks when regenerating a new identity
(thanks picsou!)
* Cleaned up some of the things I b0rked in the 'dynamic keys' mode
* Don't drop SSU sessions if they're still transmitting data successfully,
even if there are transmission failures
* Adjusted the time summarization to display hours after 119m, not 90m
* Further EepGet cleanup (grr)
2005-11-26 jrandom
* Update the sorting in Syndie to consider children 'newer' than parents,
even if they have the same message ID (duh)
* Cleaned up some nav links in Syndie (good idea gloin, spaetz!)
* Added a bunch of tooltips to Syndie's fields (thanks polecat!)
* Force support for nonvalidating XML in Jetty (so we can handle GCJ/etc
better)
2005-11-26 jrandom
* Be more explicit about what messages we will handle through a client
tunnel, and how we will handle them. This cuts off a set of attacks
that an active adversary could mount, though they're probably nonobvious
and would require at least some sophistication.
2005-11-26 Raccoon23
* Added support for 'dynamic keys' mode, where the router creates a new
router identity whenever it detects a substantial change in its public
address (read: SSU IP or port). This only offers minimal additional
protection against trivial attackers, but should provide functional
improvement for people who have periodic IP changes, since their new
router address would not be shitlisted while their old one would be.
* Added further infrastructure for restricted route operation, but its use
is not recommended.
2005-11-25 jrandom
* Further Syndie UI cleanups
* Logging cleanup
* Fixed link to fproxy.tino.i2p (thanks zzz!)
2005-11-25 jrandom
* Don't publish stats for periods we haven't reached yet (thanks zzz!)
* Cleaned up the syndie threaded display to show the last updated date for
a subthread, and to highlight threads updated in the last two days.
2005-11-24 jrandom
* Fix to save syndication settings in Syndie (thanks spaetz!)
2005-11-23 jrandom
* Removed spurious streaming lib RTO increase (it wasn't helpful)
* Streamlined the tunnel batching to schedule batch transmissions more
appropriately.
* Default tunnel pool variance to 2 +0-1 hops
2005-11-21 jrandom
* IE doesn't strip SPAN from <button> form fields, so add in a workaround
within I2PTunnel.
* Increase the maximum SSU retransmission timeout to accomodate slower or
more congested links (though SSU's RTO calculation will usually use a
much lower timeout)
* Moved the streaming lib timed events off the main timer queues and onto
a streaming lib specific set of timer queues. Streaming lib timed
events are more likely to have lock contention on the I2CP socket while
other timed events in the router are (largely) independent.
* Fixed a case sensitive lookup bug (thanks tino!)
* Syndie cleanup - new edit form on the preview page, and fixed some blog
links (thanks tino!)
2005-11-19 jrandom
* Implemented a trivial pure java PMTU backoff strategy, switching between
a 608 byte MTU and a 1350 byte MTU, depending upon retransmission rates.
* Fixed new user registration in Syndie (thanks Complication!)
2005-11-17 jrandom
* More cautious file handling in Syndie
2005-11-16 jrandom
* More aggressive I2PTunnel content encoding munging to work around some
rare HTTP behavior (ignoring q values on Accept-encoding, using gzip
even when only identity is specified, etc). I2PTunnelHTTPServer now
sends "Accept-encoding: \r\n" plus "X-Accept-encoding: x-i2p-gzip\r\n",
and I2PTunnelHTTPServer handles x-i2p-gzip in either the Accept-encoding
or X-Accept-encoding headers. Eepsite operators who do not know to
check for X-Accept-encoding will simply use the identity encoding.
2005-11-14 jrandom
* Migrate to the new Syndie interface
2005-11-11 jrandom
* Add filtering threads by author to Syndie, populated with authors in the
user's addressbook
* When creating the default user, add
"http://syndiemedia.i2p/archive/archive.txt" to their addressbook,
configured to automatically pull updates. (what other archives should
be included?)
* Tiny servlet to help dole out the new routerconsole themes, and bundle
the installer/resources/themes/** into ./docs/themes/** on both install
and update.
* Initial pass of the routerconsole revamp, starting with I2PTunnel and
being progressively rolled out to other sections at later dates.
Featuring abstracted W3C strict XHTML1.0 markup, with CSS providing
layout and styling.
* Implemented console themes. Users can create their own themes by
creating css files in: {i2pdir}/docs/themes/console/{themename}/
and activating it using the routerconsole.theme={themename} advanced
config property. Look at the example incomplete "defCon1" theme.
Note: This is very much a work in progress. Folks might want to hold-off
creating their own skins until the markup has solidified.
* Added "routerconsole.javascript.disabled=true" to disable console
client-side scripting and "routerconsole.css.disabled=true" to remove
css styling (only rolled out in the i2ptunnel interface currently)
* Fixed long standing bug with i2ptunnel client and server edit screens
where tunnel count and depth properties would fail to save. Added
backup quantity and variance configuration options.
* Added basic accessibility support (key shortcuts, linear markup, alt and
title information and form labels).
* So far only tested on IE6, Firefox 1.0.6, Opera 8 and lynx.
2005-11-11 jrandom
* Default Syndie to single user mode, and automatically log into a default
user account (additional accounts can be logged into with the 'switch'
or login pages, and new accounts can be created with the register page).
* Disable the 'automated' column on the Syndie addressbook unless the user
is appropriately authorized (good idea Polecat!)
2005-11-10 jrandom
* First pass to a new threaded Syndie interface, which isn't enabled by
default, as its not done yet.
2005-11-06 jrandom
* Include SSU establishment failure in the peer profile as a commError,
as we do for TCP establishment failures.
* Don't throttle the initial transmission of a message because of ongoing
retransmissions to a peer, since the initial transmission of a message
is more valuable than a retransmission (since it has less latency).
* Cleaned up links to SusiDNS and I2PTunnel (thanks zzz!)
2005-11-05 jrandom
* Include the most recent ACKs with packets, rather than only sending an
ack exactly once. SSU differs from TCP in this regard, as TCP has ever
increasing sequence numbers, while each message ID in SSU is random, so
we don't get the benefit of later ACKs implicitly ACKing earlier
messages.
* Reduced the max retransmission timeout for SSU
* Don't try to send messages queued up for a long time waiting for
establishment.
Loading
Loading full blame...