Practical Unix Programming:
A Guide to Concurrency, Communication, and Multithreading
by Kay. A. Robbins and Steven Robbins
Chapter 12:
Client-Server Communication
In the client-server model, processes called servers
provide services to clients on
a network. Most local area networks have file
servers which manage common disk space making it easier
to share files and perform backups.
Standard Unix network services such as mail and file
transfer also use the client-server paradigm.
This chapter develops a special
library called UICI (Universal Internet Communication Interface)
for simplifying client-server programming and shows how
to program different client-server strategies in terms
of UICI. The chapter then develops implementations of UICI
in terms of three different Unix communication mechanisms --- sockets,
TLI, and STREAMS. A side-by-side comparison of the
implementations clarifies some of the differences between the mechanisms.
POSIX does not yet standardize network communication, and
this chapter follows the SPEC 1170 version of sockets
and TLI.
Next chapter
Back to chapter summaries