Jump to content

Tor-Vidalia with KeX on Win 9x/ME


Recommended Posts

Is there any realistic way to prevent this or is an app like Atomic Time Sync the only real option? I have seen the system clock lose time when processor usage hits 100% for an extended period but I don't think that's happening here. Most of the time, I see very little processor usage.

I think the problem may be more related to Interrupt latency than CPU usage.

An APP would be required, but it may be sufficient to read the CMOS Clock rather than reaching out to a time server.

Link to comment
Share on other sites


ATS has worked well for me, after I found an easy to contact time server, but I would prefer to eliminate the problem instead of constantly correcting the clock. Is there any realistic way to prevent it? I'm monitoring processor usage via Process Explorer, resource usage with the built in meter, and memory usage with MemLoad 2.0. ATS is checking server time every 10 minutes but is not correcting the system clock. Is there something else I should be monitoring in order to track this down? Is there an app that can read the CMOS clock and correct the system clock?

After the last restart, I installed a bandwidth monitor and changed the Tor configuration file to log to file instead of sending the output to Vidalia. For now, I've stopped using Vidalia entirely. With the bandwidth monitor and Tor logging to file, Vidalia doesn't serve much purpose. The relay has been back up for a bit over 4 hours, but the traffic level and number of connections are not yet up to their earlier levels. That will probably take a day or so. So far, the system clock has lost no time. During the previous Tor trials, I restricted the usage of this PC to light tasks like web browsing, light CD work, etc. While I want it to be a stable Tor exit that contributes to the network, I can't limit it to that role. It is my primary PC so I will not be limiting its usage during the current test run. So far, it seems able to run Tor and Virtual PC at the same time, but it's only been a bit over 5 hours since it was restarted.

Link to comment
Share on other sites

  • 2 weeks later...

Thanks for the links. ClockMon works great on 98. It doesn't appear to need Kex. I didn't need to do anything with the driver. Just unzip and go. My CMOS clock has been within a second of the time retrieved by ATS. It has been Windows losing time. Running without Vidalia has lessened the time loss by at least 75%.

When I ran µTorrent on its default settings to download a rather large file (approx 600MB) from multiple sources, Tor crashed, according to its log "unknown errors". The Tor traffic was fairly heavy at the time and both apps had established a large number of connections. I don't know exactly how many total connections there were, at least 2 full status screens on Kerio, estimating around 150. 98 was stalling and becoming intermittently unresponsive just before Tor crashed. It appears that the maximum number of allowed connections is set too high, presently at 512. The number of allowed connections for µTorrent definitely needs to be restricted. Other than trial and error, is there a realistic way to determine what the maximum number of connections is that an individual PC can handle?

Except for the connections issue from using Tor and µTorrent together, everything else has performed well and been stable with Tor running. After making a full backup of the existing system, I updated Kex to the latest version. Going to see what else this new version makes possible and make sure that it's compatible with the rest of the apps I use. I'm interested to see how well SeaMonkey 2.4 works on my system and how it compares to 2.0.14. Tor is restarted, running with the same settings. I have no immediate tests planned for it other than its effect the long term stability of the PC during normal usage.

Link to comment
Share on other sites

  • 1 month later...

A quick update. Real life issues have kept me from giving this and other projects/experiments the time they deserve. For the most part, I've kept Tor updated and left it running as an exit node. On January 7, I updated Tor-Vidalia to the current version, 0.2.2.35-0.2.15-1. I'm no longer using Vidalia to start or monitor Tor, choosing to start Tor directly. I assigned a set password and use Vidalia just for controlled shutdowns of Tor. I haven't been able to make Vidalia stable on 98 for an extended time. On my system, the Vidalia network map works inconsistently to start, then not at all after a couple days. NetMeter has proven to be an excellent replacement for Vidalia's traffic monitor. I've changed torrc to log events to file instead of relying on the Vidalia message log. ClockMon has solved the problem of the Windows time clock losing time, making it unnecessary to use Time Sync. The present version of Tor has been running for 12 and 1/2 days. The previous version ran for 5 before I shut it down and updated. All total, this 98 unit has been running as an exit node for almost 18 days now. TorStatus changed its status yesterday, listing it as a stable relay, after which the traffic volume tripled. Except for some minor graphics issues with the browser when it's maximized, there have been no observable problems, save being slow when the Tor traffic load is heavy.

A couple entries in the Tor log caught my attention and are the main reason I'm adding this update. On the morning of January 18, before my exit node status was changed to stable, I saw the WSAENOBUFS error for the first time. The entry appears twice in the log:

Jan 18 06:33:53.890 [warn] write() failed: WSAENOBUFS. Not enough ram?
Jan 18 06:43:48.450 [warn] write() failed: WSAENOBUFS. Not enough ram?

MemLoad showed I had 280MB of RAM available. The swap file hasn't been used. Both instances took place while I had a large download in process and had several tabs open in SeaMonkey.

Neither Tor or Windows crashed and neither showed any problems afterwards. Unless I've misunderstood the Tor bugtrak pages regarding this error, I was under the impression that this was terminal to Tor, causing it to crash and required a reboot of Windows to fix, none of which happened. My understanding of this error and the underlying system is quite limited. Could someone more knowledgeable look at these Torproject pages and tell me if I've got it wrong or have the upgrades made it possible for 98 to recover from a normally terminal error and continue to function?

https://trac.torproject.org/projects/tor/wiki/doc/WindowsBufferProblems

https://trac.torproject.org/projects/tor/ticket/98#comment:74

Link to comment
Share on other sites

Tor itself - server and client[ - is and always has been running perfectly in Windows 98 (no kernelX needed).

My own installation of Tor runs indifferently in Windows XP, 2000 or 98SE - executables and data files being shared between the 3 OSes.

(I also ran Tor under Linux with much success)

If you met problems, they must be traceable exclusively to the FF Browser, Vidalia controller and/or other cr@p, I mean additional components, included in the so-called "bundles" (which are nothing but a trial at a Tor-made-easy-for-dummies)

I've never felt the need to run a "bundle", netiher do /you/ need or want one IMNSHO. And yes I've been running (teeny) servers / relays, off and on for many, many years, without ever using more than basic Tor and ini files customised "by hand".

Tor runs correctly out of the box in Win 98, although for good operation of a relay, or a bridge, some tweaking of the TCP/IP stack params in the Windows registry is recommended (as explained on the Tor wiki.) Such tweaking in not even necessary if you only run Tor as a client.

In no case is KernelX required for running Tor.

Good luck and HTH.

--

Czerno

Link to comment
Share on other sites

KernelEx was installed long before I added Tor and was disabled for the Tor executable before I ever launched it. The only purpose I have for Vidalia is for the timed shutdown of Tor, last used when I updated Tor almost 2 weeks ago. Tor definitely works fine on 98 with a few tweaks, well enough that the browser on my other PC becomes extremely slow and the phone (uses a separate modem) gets erratic. Those tweaks were done some time ago and are listed in earlier posts. The question I'm trying to deal with is how long can 98 serve as an exit node and remain stable. So far, it's holding up, but GDI resources are slowly dropping, down to 49% at the moment. Memory usage is slowly going up. Memload shows Kernel32.dll is now using 9.9MB, far higher than normal. Free physical memory is down to 145.5MB. It's clear that there is a limit to how long 98 will remain stable as an exit node, but the tools I have are not pointing to what is specifically using up the memory and resources.

The only "problem" I've experienced is those log entries. There was no visible problems at the time or since. Vidalia wasn't in use. I wasn't browsing through Tor that day either. I'm looking for better information than is contained in the pages I linked to.

Link to comment
Share on other sites

KernelEx was installed long before I added Tor and was disabled for the Tor executable before I ever launched it. The only purpose I have for Vidalia is for the timed shutdown of Tor, last used when I updated Tor almost 2 weeks ago. Tor definitely works fine on 98 with a few tweaks, well enough that the browser on my other PC becomes extremely slow and the phone (uses a separate modem) gets erratic. Those tweaks were done some time ago and are listed in earlier posts. The question I'm trying to deal with is how long can 98 serve as an exit node and remain stable. (...)

IIRC some resource leaks are known problems with Tor/Windows, not just win 9x. You might want to browse the Tor flyspray. Of course in addition, windows 98 is not known to be the best platform for supporting heavy-duty servers of any kind. How much Tor traffic are you routing ? If your goal were to run a Tor server stably for long periods unattended, Linux would be the obvious choice.

Regarding ordered server shutdown, if that is the only reason you run a controller you might consider instead sending Tor the termination signal "manually", using netcat for instance. This is how I do it, KISS :=) You could shutdown even by just typing a Control-C in Tor's window, it's not the "clean" way but it works, too ... you don't shutdown often anyway (otherwise you wouldn't experience the resource leaks).

Good luck with your Tor

Link to comment
Share on other sites

windows 98 is not known to be the best platform for supporting heavy-duty servers of any kind. How much Tor traffic are you routing ? If your goal were to run a Tor server stably for long periods unattended, Linux would be the obvious choice.

From what I've seen there, all of the non-server versions of Windows don't hold up well. 98 is especially bad "out of the box", but with the upgrades here it's been a very pleasant surprise. Yes, Linux would be a better choice but I don't have a free PC of any real power available to put it on. For me, Linux is like starting over, something I really don't have the time or ambition to do. In this regard, my goals conflict. I might not be able to get 98 to run 6 months continuously, but everything I'm seeing says I can get one month of reliable service. I don't see any Windows units, save a couple of servers, functioning as exit relays listed on Torstatus doing any better. In that respect, one goal has been achieved, having 98 perform at least as well as the new versions of Windows.

My traffic load is quite variable, ranging from 100MB to 2GB per day. At times there's nearly 200 established connections. I've restricted the bandwidth to 24 KB/s average and 32 KB/s maximum in order to leave enough bandwidth for the phone to work. Even at this setting, when the traffic peaks, the phone conversation cuts out. At a higher setting, it fails to ring or dial out at times. Ideally I should upgrade the DSL service but that doubles the price and doesn't double the upload speed. Not much of a selection where I live.

Netcat does look interesting. I wasn't aware of such a tool for Windows. I don't leave Vidalia running as such. I was starting it when I needed to shut Tor down cleanly. Can Netcat send a password to Tor? As for the resource leaks, I'm not certain that Tor is what's leaking. That's a large part of what I'm trying to determine. Anyone know of a resource monitor for 98 that shows the load of each process?

Link to comment
Share on other sites

Netcat does look interesting. I wasn't aware of such a tool for Windows. I don't leave Vidalia running as such. I was starting it when I needed to shut Tor down cleanly. Can Netcat send a password to Tor?

Sure, always be sure to keep good old netcat at hand's reach, aka the "Swiss army knife" of networking !

Application to quickly shuting down Tor : first create a text file named "StopTor.bat" containing :


authenticate ""
signal shutdown
quit

Then create one (lor more) shortcuts to the StopTor bat, on the Desktop or the Start menu (for convenience). Double-click shortcut whenever you need to shut down your server!

The example assumed a blank Tor control password (not a vulnerability if the control port isn't open to the internet, which it is not by default, and local users of the computer are trusted). If you set a password though, insert it between the double quotes (authenticate line).

As for the resource leaks, I'm not certain that Tor is what's leaking. That's a large part of what I'm trying to determine. Anyone know of a resource monitor for 98 that shows the load of each process?

Process monitor and other Sysinternals tools are what come to mind (now owned by Microsoft, download from MS).

Link to comment
Share on other sites

As for the resource leaks, I'm not certain that Tor is what's leaking. That's a large part of what I'm trying to determine. Anyone know of a resource monitor for 98 that shows the load of each process?

I use TaskInfo2000 v2.1 by Igor Arsenin

Amongst many other things, for each process it lists:

  • Data KB (total, in memory, in use)
  • Code KB (total, in memory, in use)
  • Handles count
  • Windows

It uses low resources itself, updates every two second, and shows most of what VWin32 reports (and much more).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...