When learning TCP/UDP and doing the project you will need some basic Java knowledge. The links below contain tutorials for learning Java.
The Source for Java(TM) Technology:
http://java.sun.com/
Java(TM) 2 Platform Standard Edition (Official download site):
http://java.sun.com/j2se/
Java(TM) 2 Platform, Standard Edition, v 1.4.0 API Specification:
http://java.sun.com/j2se/1.4/docs/api/index.html
The Java(TM) Tutorial - A practical guide for programmers
http://java.sun.com/docs/books/tutorial/index.html
Lessons:
Getting Started:
http://java.sun.com/docs/books/tutorial/getStarted/index.html
Language Basics:
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/index.html
Networking and Socket Programming:
http://java.sun.com/docs/books/tutorial/networking/index.html
Handling Errors with Exceptions:
http://java.sun.com/docs/books/tutorial/essential/exceptions/index.html
Threads: Doing Two or More Tasks At Once:
http://java.sun.com/docs/books/tutorial/essential/threads/index.html
The zip archive demo.zip contains the programs used in class for illustrating TCP/UDP.