Multiple Threads Master thread for connection requests Slave threads for handling communication with clients Thread of execution: an abstraction of independent computation Single process can contain one or more threads CSIE, NTUT, Taiwan
Conceptual Server Algorithm Simple Server Algorithm Create a socket Bind the socket to the port Enter an infinite loop Accept request Process request Reply request Not enough in practice generally
Introduction Single thread for multiple transport protocols Motivation Server design and process structure An iterative example Concurrent multiprotocol servers
How applications become clients by initiating communication How applications use TCP or UDP protocols to contact a server How they use socket calls to interact with the protocols CSIE, NTUT, Taiwan
Introduction Loosely specified protocol software interface Interface functionality Conceptual interface specification · System calls Two basic approaches to network communication Basic I/ functions in Linux