Vista is Lame — ECN Stupidity & southwest.com
For some reason, I was no longer able to connect to southwest’s website from my Vista machine, though I could reach it without a problem from my other linux boxes. Now, I’m somewhat technical savvy, but it was quite a challenge to find the problem and come up with a solution.
First, the problem: I could no longer browse http://www.southwest.com/ from my vista machine. It worked from my unix boxes. I investigated a number of roblems ranging from viruses on my box to a corrupted hosts table. Nothing worked. Odder still, southwest.com is DNS round robin’ed to two different IP – and I experienced the same thing on both IPs.
The solution: After trying a lot of things over multiple days, I managed to install tcpdump on my linksys router (running DD-WRT). I noticed a small diference in the packets going from my vista machine and from my linux box.
01:14:39.667122 IP 76-191-215-90.dsl.dynamic.sonic.net.49913 > www.southwest.com.www: SWE 212965372:212965372(0) win 8192
01:14:42.665436 IP 76-191-215-90.dsl.dynamic.sonic.net.49913 > www.southwest.com.www: SWE 212965372:212965372(0) win 8192
01:14:50.994221 IP 76-191-215-90.dsl.dynamic.sonic.net.40063 > www.southwest.com.www: S 3059118406:3059118406(0) win 5840
01:14:51.047515 IP www.southwest.com.www > 76-191-215-90.dsl.dynamic.sonic.net.40063: S 2964067491:2964067491(0) ack 3059118407 win 5792
The blue is the vista box and the red is the linux box. If you notice, the vista box has flags ‘SWE’ set and the unix box only has the ‘S’ flag set. I forwarded this to two of my smart friends, and one replied…
wtf? Those are some fucked up flags..
S = SYN ( that’s fine )
W = ECN CWR (Explicit Congestion Notification – Congestion Window Reduced)
E = ECN-Echo (telling the sender it received a CE packet)wtf is Vista trying to do??
The ECN shit is all from RFC 3268… read up on it if you want… I don’t
know too much about it, sorry.Fucking Microsoft needs to die in a fire, regardless.
So I googled Vista and ECN, and found a command to turn of ECN…
C:\Users\reza.slut>netsh interface tcp set global ecncapability=disabled
And sure enough, that command turned it off, and now I can go to http://southwest.com/ from my vista box. My only question is — how is a layman supposed to be able to figure that out? God, there are many people at microsoft that deserve to be shot.