TCP
TCP is a connection-oriented transport-layer protocol that provides reliable, ordered delivery of byte streams between network endpoints.
Acing the CCNA Exam: Volume 1 Fundamentals and Protocols
Transmission Control Protocol is a transport-layer protocol that provides reliable, connection-oriented delivery with mechanisms for detecting and recovering from lost data.
- How it is used
- Deploys TCP for Layer 4 application addressing, session multiplexing, reliable delivery, and flow control.
- How deep it goes
- Explains TCP through connection stages, header flags, sequencing, acknowledgment, retransmission, and flow control, without requiring header memorization.
- Examples
- Uses client-server file transfer, PC1-SRV1 handshakes, lost-segment retransmission, and Window Size flow-control diagrams.
- What you can do after
- Evaluate TCP against UDP and explain how its mechanisms provide reliable delivery while adding data, processing, and time overhead.
Read how Acing the CCNA Exam: Volume 1 Fundamentals and Protocols explains TCP →
Rust Servers, Services, and Apps
Transmission Control Protocol is a connection-oriented transport protocol that provides reliable, ordered delivery of a byte stream between endpoints.
- How it is used
- Provides the byte-stream transport for a Rust client-server exchange before HTTP message handling is added.
- How deep it goes
- Works through binding, connecting, reading, writing, and echoing bytes, but does not elaborate TCP reliability mechanisms.
- Examples
- Uses a localhost Rust client and server that connect on port 3000 and echo "Hello".
- What you can do after
- Build it from scratch: create a basic Rust TCP client and server that exchange raw bytes.
Rust in Action: Systems programming concepts and techniques
TCP (Transmission Control Protocol) is a transport-layer network protocol that provides reliable, ordered, connection-oriented delivery of data.
- How it is used
- Connects HTTP applications to lower networking protocols through standard sockets or manually assembled TCP primitives.
- How deep it goes
- Progresses from TcpStream usage to TCP socket states and raw-packet access, but does not detail TCP’s internal reliability algorithms.
- Examples
- Demonstrates TCP with a Rust HTTP GET client, a smoltcp-based mget project, DNS queries, and a virtual networking device.
- What you can do after
- Build it from scratch by sending HTTP requests with TcpStream or a virtual device and minimal TCP implementation.
Read how Rust in Action: Systems programming concepts and techniques explains TCP →
Go in Practice, Second Edition
TCP is a connection-oriented transport-layer protocol that provides reliable, ordered byte streams.
- How it is used
- Deploys TCP for low-level client-server networking, custom servers, network logging, and persistent web communication.
- How deep it goes
- Explains connections, packets, acknowledgements, failures, and back pressure, but stops short of detailed network mechanics.
- Examples
- Uses a TCP network logger, packet acknowledgements, buffered delivery, and a client-server exchange diagram.
- What you can do after
- Build custom TCP servers and diagnose delivery problems involving dropped connections, slow receivers, packet splitting, and acknowledgements.
Python Concurrency with asyncio
TCP is a reliable connection-oriented transport protocol that delivers an ordered byte stream between applications and retransmits lost data.
- How it is used
- Uses TCP sockets to build a server that accepts reliable application connections.
- How deep it goes
- Explains reliability and socket setup through a runnable server, including binding, listening, and accepting connections.
- Examples
- Uses a Python server at 127.0.0.1:8000 that listens for and accepts a client connection.
- What you can do after
- Operate/configure a TCP server socket that binds locally, listens, accepts a connection, and identifies the client.
Related concepts
- HTTPused by · HTTP is a standardized application-layer protocol that defines request-and-response messages for transferring resource representations between networked systems.
- domain name systemused by · The Domain Name System is a distributed, hierarchical naming system that resolves domain names to IP addresses and other network resource records.
- HTTPSused by · HTTPS is HTTP carried over TLS, which provides encryption and endpoint authentication for network communication.
- FTPused by · FTP is an application-layer network protocol for transferring files between networked systems, typically using separate control and data connections.
- TLSused by · Transport Layer Security (TLS) is a cryptographic protocol that protects network communications through confidentiality, integrity, and authentication of communicating endpoints.
- tcp serverused by · A TCP server is a network service that listens for and accepts client connections using the Transmission Control Protocol.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.




