First off, you don't want to use "simple" socket server to start learning about sockets. It (along with most/all of the other provided examples) make use of asynchronous sockets. While not too difficult to understand, they are more complex (and efficient) than what is necessary to setup a simple communications/data transfer medium.
I like W. Richard Stevens' classic "unix network programming (
http://www.kohala.com/start/unp.html)" (the first edition). The source code at the link should be enough to get you going...it worked for me... The tftp server/client was particular useful.
Cheers,
slacker