TCP: Reliable Communication Explained