NDS qual 2000 1. (a) a pair of reordered packets does not indicate congestion (b) if there really isn't congestion, then fast retransmit and congestion avoidance merely cuts the window by half (compared with slow start which makes it start from nothing and redetect the network's congestion), thereby improving utilization (c) duplicate ACKs indicate that some packets have arrived while a timeout would indicate congestion, so fast retransmit will not cause congestion 2. (a) statelessness advantages: - easy for the server to recover from a crash--it can just resume processing requests without worrying about open files, locks, etc. - storing state can cause additional disk writes - simple to implement a server (b) statelessness disadvantages: - need a separate protocol for file locking (file lock state) - more verbose, e.g. multiple write requests for the same file must each specify the file, offset, etc. (open file state) - can't provide atomicity or serializability across multiple requests (transaction state) - need to ensure idempotency of operations (sequence numbers) 3. An operation is idempotent if its effects are exactly the same no matter how many times (>= 1) it is applied. Itempotency makes it simpler to implement a retransmission protocol over an unreliable network. Without idempotent operations, a request that is retransmitted due to a dropped acknowledgement might result in inconsistent state if the recipient has already processed the original request. Fixing this requires keeping state at both ends. 4. (see p. 396-398 in Tanenbaum 2002)