The document discusses various protocols used in data communication including peer-to-peer protocols, ARQ protocols, and sliding window protocols. Peer-to-peer protocols can operate between two communicating entities across a single hop or end-to-end across a network. ARQ protocols like stop-and-wait ARQ and go-back-N ARQ use acknowledgements and retransmissions to provide reliable data transmission. Sliding window protocols use sequence numbers and sender/receiver windows to implement flow control and allow multiple unacknowledged frames to be transmitted.