As we want to have all "parts" as modules are we happy with this... server/ /net - basic net_server module /arp /ethernet /include /ipv4 /ppp /tcp /udp Include files should stay with their module as closely as possible, with anything that's global being in include. The main / directory is used to store all sorts of silly general things at present, so maybe we move all those to a seperate "util" directory? david