What exactly are the differences between these two??

I want to build some modules to put on a remastered cd, so I need the kernel-headers plus I will probably want to recompile the kernel.
What do I need and which of these do I need?

So for Knoppix 3.8.1
kernel-headers-2.6.11 OR
kernel-headers-2.6.11-1 AND DO I NEED
kernel-kbuild-2.6-3 ?
kernel-source-2.6.11 OR
kernel-tree-2.6.11?

When I've used apt-get install to install kernel-source it created the directory tree under /usr/src/kernel-2.6.11 irrc. Also what symlinks are required for all these?