100 likes | 449 Views
Chapter 3 The Client-Server Model and Software Design. Why the Client Server Model?. TCP/IP provides peer-to-peer communication channels for data transfer But, it does not dictate when, why, how programmers should organize application programs.
E N D
Chapter 3 The Client-Server Model and Software Design • Why the Client Server Model? • TCP/IP provides peer-to-peer communication channels for data transfer • But, it does not dictate when, why, how programmers should organize application programs. • To ensure that computers are ready to communicate (background process) and start automatically when the OS boots (daemon).
Terminology & Concepts • Client • Server • Usually, server provides some additional functions for access control or security, such as authentication, authorization, data security, privacy and protection.
Two broad classes of client applications (1) TCP/IP standard services Telnet, FTP, and SMTP (e-mail) (2) TCP/IP non standard services, built by users. Port number Protocols: TCP or UDP
Stateless and Stateful servers • Solution of Stateless Server - Idempotent operation • Server as client Internet Time Server File Server Client
Concurrent processing in Client- Server Software • Concurrency in networks • Concurrency in servers • Program examples • A sequential C program • A concurrent version • Timingslicing • Making processes diverge • System call - select