Spriken ze Interwebs?

Saturday, February 25, 2006

Packet Sniffing and Injection

Packet Sniffing using libpcap and packet injection using libnet can (hopefully) allow you to implement (ahem to some extent) your own network stack without having to modify the kernel. The only thing to consider is that this is like basically implementing a kernel-level module (for want of a better term) in user-space. So, there may be performance hits in terms of processing power (you're basically implementing two parallel network stacks). Also, because it's in user-space, it will be a mission to any network layer interception of application data that needs to use your particular stack - which basically means that each application that's supposed to use your new stack will have to be modified. Whew. Errors ommissions and random events of unpleasantness excepted.


Some posts on kernel level vs user level network stack implementations :

http://www.ussg.iu.edu/hypermail/linux/kernel/9611.0/0102.html

Some more considerations:
http://www.tcpdump.org/lists/workers/2004/03/msg00152.html

Implementing network protocols at user level:
http://citeseer.csail.mit.edu/thekkath93implementing.html


0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home