Networking exercises

NET-1. Networking

QUESTION NET-1A. Which of the following system calls should a programmer expect to sometimes block (i.e., to return after significant delay)? Circle all that apply.

  1. socket
  2. read
  3. accept
  4. listen
  5. connect
  6. write
  7. usleep
  8. None of these

QUESTION NET-1B. ⚠️ Below are seven message sequence diagrams demonstrating the operation of a client–server RPC protocol. A request such as “get(X)” means “fetch the value of the object named X”; the response contains that value. Match each network property or programming strategy below with the diagram with which it best corresponds. You will use every diagram once.

  1. Loss
  2. Delay
  3. Reordering
  4. Duplication
  5. Batching
  6. Prefetching
  7. Exponential backoff
Example A
Example B
Example C
Example D
A B C D
Example E
Example F
Example G
E F G

QUESTION NET-1C. List some resources that a DoS attack on a network server might exhaust.

QUESTION NET-1D. A server sets up a socket to listen on a connection. When a client wants to establish a connection, how does the server manage the multiple clients? In your answer indicate what system call or calls are used and what they do.