Of course, TCP isn't the only user protocol in TCP/IP networking.
Although suitable for applications like rlogin, the overhead
involved is prohibitive for applications like NFS. Instead, it uses a
sibling protocol of TCP called UDP, or User Datagram Protocol.
Just like TCP, UDP also allows an application to contact a service on a
certain port on the remote machine, but it doesn't establish a
connection for this. Instead, you may use it to send single packets to
the destination service-- hence its name.
Assume you have mounted the TeX directory hierarchy from the
department's central NFS server, galois, and you want to view a
document describing how to use LaTeX. You start your editor, who
first reads in the entire file. However, it would take too long to
establish a TCP connection with galois, send the file, and release
it again. Instead, a request is made to galois, who sends the file
in a couple of UDP packets, which is much faster. However, UDP was not
made to deal with packet loss or corruption. It is up to the
application-- NFS in this case-- to take care of this.