Often one of the biggest problem areas for me when developing software (win and web) is some of the more (seemingly) abstract areas like tcp/ip, deploying to IIS and the various configurations, etc. This especially pops up when I am deploying a web app to IIS.

What should I know about this so that I can troubleshoot problems, and develop services and apps that leverage an actual understanding of these areas?

Also, WHERE can I learn this??

  • tcp/ip is not really an "abstract" area. The definitive reference is usually amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/… volumes 1 and 2.
    – Pemdas
    Apr 16, 2011 at 3:57
  • @Pemdas: Thanks. It's somewhat abstract when most of development has it abstracted away by the BCL.
    – richard
    Apr 16, 2011 at 4:01
  • To be only slightly pedantic, TCP/IP is the opposite of abstract in this context. Everything else (from HTTP onwards) are abstractions on top of TCP/IP. Apr 16, 2011 at 7:00
  • @Rein: LOL True. In that sense. I meant more like it's abstract to me because it has been "abstracted away" from me.
    – richard
    Apr 16, 2011 at 7:05
  • Ah, so by "abstract" you mean "the opposite of abstract". Got it. Makes perfect sense. ;) Apr 16, 2011 at 7:07

1 Answer 1


Learning TCP to write web apps is digging pretty deep. It is one of those "good to know" things that you refer to once a decade. What is more important is an understanding of how http works, in particular GET and POST.

IIS on the other hand is a much larger topic. At the minimum, you will need to understand IIS web sites, bindings and application pools. Where to look for that information depends largely on which version of IIS you are talking about. 5.0, 6.0, 7.0 or 7.5. Each is a bit different but the biggest change is between 6.0 and 7.0.

After IIS comes Asp.Net, which ties very closely into IIS and has the ability to change many IIS behaviors right from the web.config.

As to troubleshooting, the two obvious places are the windows Event Logs and the IIS logs. If you are talking about troubleshooting Asp.Net, then you can also enable detailed error messages by turning off the friendly error messages

<customErrors mode="Off"/>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.