Networking Basics
With
Java, you're mostly programming in the Application Layer. This
means that you don't have to know the details about how the lower levels
work (such as TCP or UDP sockets) - Java has taken care of that for you
in an architecture neutral way.
However, for those that want to network a bit lower using sockets, you
need to understand TCP and UDP.
For Java's purpose, a host is uniquely identified by a hostname/IP
and port.