Let's get this Forum moving. The "Game Programming" forum guys are running rings around us. Here's a question. What all would go into writing a TCP/IP stack. It sounds like a great learning experience to write a replacement stack for windows in 100% assembly. Does the Mad Wizard have any ideas?
Posted on 2002-02-26 11:45:18 by rdaneel
And while we're at it, let's make it compatible
with IPv6!

Posted on 2002-02-27 03:09:44 by farrier
It would probably involve writing your own drivers and communicating with ethernet drivers. I haven't worked much with networking at that level so I'm afraid I can't tell you much about it..

Posted on 2002-02-27 10:55:34 by Thomas
I have downloaded the ipv6 stack from research.microsoft.com. It seems to be setup similar to the ipv4 stack as far as the files go. Does anyone have any links to protocol driver information or have done any work on the matter. I'm having trouble locating info on the structure of a protocol driver. I'll find it, I just don't want to bang my head against the google if someone else already has some info.
Posted on 2002-03-01 17:06:22 by rdaneel

I haven't had time to look into this, but I do
remember hearing that M$ directly borrowed
everything they wrote about the IP stack from the
BSD Unix source. I'll look there when I get time.

Posted on 2002-03-03 04:33:34 by farrier
Sorry for my inferrier knowledge about the subject, but what exactly are you trying to do? Are you wanting to rewrite the IP files for windows (replace the originals) or just control what is sent to them? Sounds like a fun project, and I would like to help if wanted.
If you are just wanting to control what is sent to them, sounds like you need a VxD that takes the information from the phyical layer and create your own stack. But then it wouldnt be faster because all that is happening is adding more code to execute. So I assum you mean to replace the exsiting files. So to my question. Are you just trying to replace the IP files (like if you go to network and select the "IP Protocal->Network Device") or are you talking about the files deep within windows that handles all of the network interfaces? Jag
Posted on 2002-03-03 12:08:57 by Jag
To write a replacement IP stack, you'd have to communicate with
NDIS, which is (thankfully) hardware independent. Apart from the
learning experience, there probably wouldn't be too much reason
to rewrite the IP stack - except perhaps raw socket support on 9x.
Posted on 2002-03-03 12:55:37 by f0dder
Raw sockets is definitely an idea, but the main reason is to add some filtering functionality at the network layer similar to netfilter in linux.
Posted on 2002-03-03 23:22:37 by rdaneel