Coffee, Pizza and TCP
If I send a request from a client to a service, what's the difference between a response and a TCP ACK.
Well it turns out it's all about coffee and pizza.
Me: Can I have a flat white? (Request)
Barrista: Sure (ACK)
Barrista: Here's your flat white mate - I'm in Australia (Response)
Me: Cheers (ACK)
Me on dodgy cell phone: Hi can you send me a 7-inch thin crust Il Padrino (Request)
Me: I said can you send me a 7-inch thin crust Il Padrino (TCP Retransmission)
Pizza Guy: Sure (ACK)
Pizza Delivery Guy: Here's your pizza (Response)
Me: Thanks (ACK)
Notice that the time to serve me the coffee was from Request to Response not to the ACK. Same with the pizza.
Coffee, pizza, TCP - it's all the same.