Insanity is doing the same thing, over and over again, but expecting different results.
— Rita Mae Brown
Yet another open source journal
Insanity is doing the same thing, over and over again, but expecting different results.
— Rita Mae Brown
My hat’s off today to the guy who packaged Windows Patch KB951847. An update to the .net Framework. There’s three hours of my life that I won’t get back. Just as a general rule I want to know how to turn Windows Update off completely. The Mac OS X’s update is smart. It pops up sometime during the day and says that there are updates. Then it give me the option of downloading them. It lives under the Apple Menu so it’s always easy to find. About 90% of the time I say not right now and then do the update manually within a day or two. On the other hand: windows update complains loudly if I try to make it emulate the same behaviour. It’s constantly putting up a little red shield in the system tray and then putting up a balloon to say “You turned me off, what are you crazy”. It seems reasonably obvious that Windows does not know it’s place in my computing world and more so, doesn’t understand why it got put there in the first place. On my Machine Windows is a VM under Parallels. I’ll start it once every six months or so when openning a Word doc or excel spreadsheet and I’m trying to work around a bug in OpenOffice.org or I just don’t feel like using iWork. That’s pretty much him. I’ll run Windows Update when something breaks but since Windows is a distance also-ran on my computer that won’t be frequent. As to why it got there.Window’s behaviour in the first place is the issue. Insistant system tray applications constantly stealing my screen real estate. Update that were written by crettins who thought to try and save me time by not sending a complete package and an attitude towards system failures that would have stranded Jim Lovell on the Dark Side of the Moon are pretty much all it took to convince me to buy a Mac.
In Dante’s Inferno there were circles in hell designed to separate the ordinary sinner: the guy who designed the keyboard I’m working with (which provides no feedback when a key has been struck for example) from the guy who deliberately put the “global nuclear war” button right next to the “toast apple poptarts” button. My “9th circle of hell award” goes to the guys who designed the firewall that I’m working with lately. It appears that in their wisdom they’ve chosen to implement the “Red Alert — all hands on deck” alarm for the following scenario. You have a server connected to a client via tcp. The server is a fairly recent linux box that can do RFC1323 extensions. The client is a boring Windows XP box with a TCP RWin size of 65536 bytes. Between them is a Comcast business class Cable connection. In this scenerio the Windows box is trying to download a file from the server on the Comcast connection. The problem is literally that the connection is too fast for the Windows XP Box to fully cope. Nowadays when I test Comcast Cable connections I’m surprised to see anything less than 25Mbit/s.In whole numbers thats 25,000,o000 bits / sec. In more familiar units that 312.5 kBytes /s. The problem is that I’m starting to see firewalls that see this as an issue because they have been programmed with very conservative specifications about what constitutes a denial of service attack. I’m seeing firewalls that scream DOS when they are connected to a Business Cable modem line and have clients with tcp receive window size of 65536 bytes. Why? it’s simple. On aBusiness Cable line with 25Mbits/s download rate you have to be able to buffer 96kbytes/s in tcp windows just to keep up with a server (or client) at the other end of a fast line. These firewalls are calling DOS because the other end can fill their TCP window and then some. The right thing to do is to watch. If the otherside wants to DOS you he’ll send many packets after your Rwin is filled. If he’s just a really fast server on a really fast pipe. He’ll respect your RWin and quit sending. If you’re firewall decides to be agressive and drop the connection (by proactively sending a TCP RST) then you should probably act accordingly.
My thanks to Chuck Skuba on this post. I have to be 100% and fess up that I gathered the data but he did the homework.
— Chris