a6b5211fa7
congestion is only a warning, not an error
2004-06-29 22:30:14 +00:00
4e89b9c363
reliability threshold = median of active and nonfailing (inactive nonfailing can be a large number of 0 reliability peers)
2004-06-29 20:32:36 +00:00
f3e267d2d0
active peer testing - every minute, grab two reliable peers, throw a db store at them, and measure their response time
...
the db store sent is their own, and we use tunnels both ways, so they wont know who we are. we also mark the
success/failure of the tunnels accordingly
2004-06-29 19:45:26 +00:00
2fd87dc1f1
when we select peers to test, lets use all of the reliable peers, not just well integrated peers
2004-06-29 19:41:30 +00:00
40b6b77cfa
use the median reliability value of nonfailing peers for the reliabilty threshold, and simplify determining them for the speed and integration
2004-06-29 19:40:08 +00:00
d0c61dbf4d
use the explicit max ID values (I2NPMessage.MAX_ID_VALUE and TunnelId.MAX_ID_VALUE)
...
logging
2004-06-29 19:32:46 +00:00
1cd5a3fcf7
include the "addedBy" if we're debugging the job, not if we're debugging JobImpl
2004-06-29 19:29:57 +00:00
af81cf2c50
explcitly define the max I2NP message ID value and validate against it
2004-06-29 19:28:40 +00:00
04373c5d1b
just to be explicit about the max tunnel id
2004-06-29 19:25:23 +00:00
e9cdb0f78d
new library
2004-06-29 02:55:53 +00:00
021b933ad3
new library
2004-06-28 23:55:07 +00:00
9fd067c9da
Putting socks/threads/logger/misc in a separate library
2004-06-28 23:24:50 +00:00
d3f3f3bdf7
use the socketManager's new setName function (to let us log more easily)
2004-06-28 13:23:24 +00:00
72727dacd8
javadoc
2004-06-28 13:22:03 +00:00
caeb2bc4e3
the actual fix for the local eepsite problem (if getRemoteID was called *after* the remoteID was set, it would wait for 60s then fail. now we check for that)
...
synchronization cleanup (never get two locks)
logging
2004-06-28 13:21:18 +00:00
13974b601f
added some stats (viewable on the router stat page when the i2ptunnel is run in the router's VM)
...
lots of logging
2004-06-28 13:18:18 +00:00
cbc6aea8b4
logging
2004-06-27 21:20:31 +00:00
290a2f7ccd
(ok this is a little silly)
2004-06-27 21:08:19 +00:00
349e80f206
allow sending ASAP and remove any artificial delays
2004-06-27 20:53:32 +00:00
5c1e001a73
logging
2004-06-27 19:39:45 +00:00
f312318fab
Finished winsock code cleanup
2004-06-27 13:07:06 +00:00
dc04b7cf09
Some winsock improvements
2004-06-27 09:12:05 +00:00
77a8a46d8e
lets try to reduce creating new objects during finalization
2004-06-26 21:15:51 +00:00
95c7cd55c2
logging
2004-06-26 21:15:16 +00:00
5f0ef5e0e8
lets not crap on the secondary tunnel too (even though doing so isn't wrong)
...
this helps avoid catastrophic failures, at least a little, since a failure doesnt kill two sets of tunnels
2004-06-26 21:13:52 +00:00
1f26c603e0
for now, lets disable the tunnel pool persistance. this means that after a router crashes, tunnels it was participating in will fail even if the router comes back up before they expire.
...
disabling this saves us some IO contention (though this may only be relevent on my kaffe box... dunno)
2004-06-26 21:11:22 +00:00
7e2227ad42
lets keep track of how many messages die on our queue due to us being slow
2004-06-26 21:07:07 +00:00
9b4899da07
always use the cached host/port rather than grabbing the socket's InetAddress (in case it disconnects and throws NPEs)
...
use the NativeBigInteger as part of the session key negotiation (oops, forgot this one last time)
logging
2004-06-26 21:05:02 +00:00
83c88ac0c6
minor fixes
2004-06-26 02:26:37 +00:00
44623065b4
Threads (untested)
2004-06-26 02:16:54 +00:00
47c7c8177d
Mutex code (untested)
2004-06-25 22:22:48 +00:00
bde7a5ff59
Mutex code (untested)
2004-06-25 22:19:18 +00:00
a8ad8644c8
0.3.1.5 (backwards compatible)
...
lots of bugfixes. still no rate limiting, but, uh, lots of bugfixes
(release will be packaged and deployed later today)
i2p_0_3_1_5
2004-06-25 19:25:33 +00:00
4e91bb88a5
workaround an aggressively up-to-spec kaffe implementation (the spec says Socket.getInetAddress() is null if not connected,
...
but sun lets the getInetAddress() return a value if it had connected then disconnected, while kaffe buggers off and NPEs)
2004-06-25 19:21:11 +00:00
f60a90e2da
added forum.i2p
2004-06-25 18:48:33 +00:00
784dc0f6a7
boot up quicker
2004-06-25 18:42:27 +00:00
e80e627fba
more tests with the real TCP transport, not just the VM comm system (and for larger sims, dont keepHistory)
2004-06-25 18:41:50 +00:00
d5987c51c9
yet another deployment option - the user can define a jbigi.ref environmental variable to specify a file from which the name of the resource to be loaded should be found (default is "jbigi.cfg")
...
if that file exists, the NativeBigInteger will act as if jbigi.impl was set to the contents of that file.
For instance, a jbigi.cfg containing "win-p4" would have the NativeBigInteger search the classpath for the "win-p4" file and use it as a native library.
The jbigi.ref preempts the jbigi.impl property (only if the file exists and is not empty), but the external platform specific jbigi
preempts this (e.g. jbigi.dll or libjbigi.so), as does the jbigi.enable flag.
This option lets us have the admin console write to a file to choose which jbigi to use, rather than have to parse some shell script, etc
2004-06-25 18:32:17 +00:00
5ced441b17
dont fail the peer based on tunnel activity (it may not be their fault)
...
we *do* still penalize the peer based on tunnel failures, but thats in the reliability calculator, not this one.
2004-06-25 18:15:32 +00:00
57801202fd
flush the protocol flag explicitly
...
make the tcp connection handler nonblocking by adding another (very short lived) thread - this prevents a peer connecting to us that is very slow (or unconnectable) from forcing other cons to timeout
completely ripped out the fscking bandwidth limiter until i get it more reliable
gave threads more explicit names (for the sim)
logging
2004-06-25 18:14:12 +00:00
a019399c3c
reduce synchronization on static (instead use per context objects, for large sims)
2004-06-25 17:21:41 +00:00
e6f610a86c
dont synchronize on statics, instead use a seperate format object per context (so large sims dont get bogged down on synchronization)
2004-06-25 17:20:08 +00:00
7ef528bbde
add some minimal security to the admin console, requiring a passphrase to be entered when updating the clock offset
...
this works by a simple substring match of the URL - if the router.config contains the adminTimePassphrase=blah, the time update will only succeed if the URL contains "blah" in it
if the router.config does NOT contain an adminTimePassphrase, the time update WILL BE REFUSED.
aka to use the timestamper, you MUST set adminTimePassphrase AND update the clientApp.0.args= line to include the passphrase in the URL!
e.g.
clientApp.0.args=http://localhost:7655/setTime?blah pool.ntp.org pool.ntp.org pool.ntp.org
2004-06-25 17:18:21 +00:00
a351a29bf3
if it expired waiting on the queue for processing, kill 'er
2004-06-25 17:12:01 +00:00
983d258bce
logging
2004-06-25 17:09:55 +00:00
f6d38dd5e0
reduce SimpleDateFormat usage (implicit in Date.toString())
2004-06-25 17:03:13 +00:00
d51245aada
logging
2004-06-25 17:02:22 +00:00
56cf51f0f9
New configuration system
2004-06-25 01:31:02 +00:00
eb40fb9c5d
typo
2004-06-24 11:51:24 +00:00
085da0cea7
Started work on a configuration options object
2004-06-24 11:47:01 +00:00