Commit Graph

178 Commits

Author SHA1 Message Date
Roger Dingledine fccda47039 clean up and slightly document the config files
svn:r179
2003-03-16 04:40:16 +00:00
Roger Dingledine 6591264235 respond to nick's question about link padding
(nick: note that link padding is currently disabled)


svn:r178
2003-03-12 12:06:54 +00:00
Roger Dingledine 9343a2512f some patches on nick's commit
svn:r177
2003-03-12 12:02:06 +00:00
Nick Mathewson d8020d0601 Make ACI anti-collision logic work; make sure that cells are filled with 0s.
svn:r176
2003-03-11 21:38:38 +00:00
Nick Mathewson 0b3da8f291 First draft of most of spec
svn:r175
2003-03-11 21:36:00 +00:00
Roger Dingledine 5612677514 lazy (just in time) directory rebuilding
svn:r174
2003-03-11 01:51:41 +00:00
Roger Dingledine 5783066d15 pack into data cells more intelligently
svn:r173
2003-03-10 22:40:02 +00:00
Roger Dingledine a787fd7677 be less noisy at -l info, now that flow control bug is solved
svn:r172
2003-03-10 22:30:05 +00:00
Roger Dingledine fb83248255 tweaks and responses to the spec
svn:r171
2003-03-07 08:41:57 +00:00
Roger Dingledine 19f149e389 clean out obsolete cell types
svn:r170
2003-03-07 08:24:55 +00:00
Roger Dingledine bbf08354d7 remove the mystery int32 from the or-to-or handshake
thanks nick :)
(note: this change breaks backward compatibility)


svn:r169
2003-03-07 07:57:55 +00:00
Nick Mathewson 02bf3cb28b Spec for current version of onion routing
svn:r168
2003-03-07 02:39:40 +00:00
Roger Dingledine a5ff30e421 clean up prepare_for_poll() so it's fast
svn:r167
2003-03-06 04:52:02 +00:00
Roger Dingledine 177074923d minor code cleanup
svn:r166
2003-03-05 20:03:05 +00:00
Roger Dingledine 3756f147cd a few more todo items
svn:r165
2003-03-04 04:43:19 +00:00
Roger Dingledine fdd14d369f better comments and a few patches
svn:r164
2003-03-04 04:36:37 +00:00
Roger Dingledine 86a01d7250 when we had multiple conns on a circuit, we'd tell the wrong
one to stop reading


svn:r163
2003-02-28 23:49:52 +00:00
Roger Dingledine 140f9b7b64 let up on the bandwidth constraints
svn:r162
2003-02-18 01:55:51 +00:00
Roger Dingledine 0bc8cfe205 Bugfixes and enhancements in sendmes and dns farm
svn:r161
2003-02-18 01:35:55 +00:00
Roger Dingledine d5bce66c12 Allow more connections open at once
svn:r160
2003-02-18 01:35:31 +00:00
Roger Dingledine 5c0602a908 bugfix: actually remember the answer in the cache :)
svn:r159
2003-02-16 02:05:24 +00:00
Roger Dingledine 33e28c3e52 rudimentary dns caching (of both resolves and resolve failures)
serious performance increase over non-caching


svn:r158
2003-02-14 07:53:55 +00:00
Roger Dingledine 36d6c6cbda minor fix
svn:r157
2003-02-14 04:10:22 +00:00
Roger Dingledine 94a53fbf71 commit my current tor rc versions
svn:r156
2003-02-14 04:10:13 +00:00
Roger Dingledine 473748e3d3 a new TODO file with more details
svn:r155
2003-02-14 04:09:56 +00:00
Roger Dingledine edae7be7fa fix endian issues for topics -- they might work on bsd now
(they wouldn't have before)

alternate code which bypasses the dns farm, so we can compare speed


svn:r154
2003-02-06 23:48:35 +00:00
Roger Dingledine efa45fad4d make reusing circuits work (and be the default)
performance is better, but not by much. not sure why yet.


svn:r153
2003-02-06 08:00:49 +00:00
Roger Dingledine b71620157a major overhaul: dns slave subsystem, topics
on startup, it forks off a master dns handler, which forks off dns
slaves (like the apache model). slaves as spawned as load increases,
and then reused. excess slaves are not ever killed, currently.

implemented topics. each topic has a receive window in each direction
at each edge of the circuit, and sends sendme's at the data level, as
per before. each circuit also has receive windows in each direction at
each hop; an edge sends a circuit-level sendme as soon as enough data
cells have arrived (regardless of whether the data cells were flushed
to the exit conns). removed the 'connected' cell type, since it's now
a topic command within data cells.

at the edge of the circuit, there can be multiple connections associated
with a single circuit. you find them via the linked list conn->next_topic.

currently each new ap connection starts its own circuit, so we ought
to see comparable performance to what we had before. but that's only
because i haven't written the code to reattach to old circuits. please
try to break it as-is, and then i'll make it reuse the same circuit and
we'll try to break that.


svn:r152
2003-01-26 09:02:24 +00:00
Roger Dingledine 62406fb790 splay and rbtree implementations, by niels provos
taken from openbsd


svn:r151
2002-12-31 15:05:07 +00:00
Roger Dingledine c068ac3c59 use a rbtree for replay detection, rather than linear search
when we had lots of new onions coming in, we were using 40% of
our time searching through the tracked_onions linked list.


svn:r150
2002-12-31 15:04:14 +00:00
Roger Dingledine 45739fe1af give us more aci-space
svn:r149
2002-12-30 08:51:41 +00:00
Roger Dingledine 65cf866e25 bugfix: couldn't send two creates, two datas, and the destroy all at once
(amazing the odd behavior you get to test when you have a flaky modem
connection)


svn:r148
2002-12-23 06:48:14 +00:00
Roger Dingledine bde952c8ae starting to document what clients need to do and why
svn:r147
2002-12-12 22:53:34 +00:00
Roger Dingledine 94efdccbb6 onions go on and off the network correctly now
we're closer to an OS X port
 CVS: ----------------------------------------------------------------------


svn:r146
2002-12-03 22:18:23 +00:00
Roger Dingledine fd3091d907 onions expire after a day, not an hour
this was a major faq, because it would fail with an error only on
the *server* side when the client-side time was wrong. the client would
simply not work.


svn:r145
2002-12-03 07:06:13 +00:00
Roger Dingledine 31b771efef was leaking 28 bytes every 100 minutes
svn:r144
2002-12-03 05:12:30 +00:00
Roger Dingledine 3148ad270a two more rare race conditions
svn:r143
2002-11-28 07:32:30 +00:00
Roger Dingledine c39f77b134 create cells are now queued and processed only when idle
we also queue data cells destined for a circuit that is
pending, and process them once the circuit opens

destroys reach into the queue and remove the pending onion,
along with its collected data cells


svn:r142
2002-11-27 04:08:20 +00:00
Roger Dingledine f1b4ca5faf removing more unused files
svn:r141
2002-11-25 01:22:34 +00:00
Roger Dingledine 95d20bcb7c per-second cell statistics to help with profiling
svn:r140
2002-11-24 08:45:54 +00:00
Roger Dingledine e7af04bd7d added milliseconds to log lines
svn:r139
2002-11-24 08:45:13 +00:00
Roger Dingledine 7fdc374dfb fixed rare race condition
svn:r138
2002-11-24 08:33:15 +00:00
Roger Dingledine a5f47a1e48 added OnionsPerSecond to prevent create flooding
first cut, probably needs more playing with


svn:r137
2002-11-23 08:49:03 +00:00
Roger Dingledine 9d55882e0b remove popt dependency, consolidate config stuff
reformat parts of onion.c


svn:r136
2002-11-23 06:49:01 +00:00
Roger Dingledine 863db974e0 fix subtle race condition
If you weren't connected to a given router, and you made a directory
request to it simultaneously with a new web query that caused you to
want to connect to that OR... it would think you're already connected.


svn:r135
2002-10-14 06:44:48 +00:00
Roger Dingledine 3b58047d8d expire unfinished handshakes too
don't list non-open ORs in the directory


svn:r134
2002-10-13 13:17:27 +00:00
Roger Dingledine bddf92469d cell.c is now obsolete
svn:r133
2002-10-03 02:17:41 +00:00
Roger Dingledine 6dabcaa66f cleanup and a variety of bugfixes
svn:r132
2002-10-02 22:54:20 +00:00
Nick Mathewson ad302f1668 Add convenience functions to wrap create and init for symmetric ciphers; clean up error handling in onion.c
svn:r131
2002-10-02 20:39:51 +00:00
Roger Dingledine e95694094b cell now has a network appearance and an internal (struct) appearance
svn:r130
2002-10-02 20:12:44 +00:00