Jim Cheung

Network Programming with Go

Chapter 1: An Overview of Networked Systems

The organization of nodes in a network is called its topology.

Chapter 2: Resource Location and Traffic Routing

Sending packets from one IP address to another IP address is known as unicast addressing

IP multicasting: sending a single message to a group of nodes

Broadcasting is the ability to concurrently deliver a message to all IP addresses in a network.

Unlike multicasting, the nodes in the subnet don’t first need to opt in to receiving broadcast messages.

The Address Resolution Protocol(ARP) finds the appropriate MAC address for a given IP address—a process called resolving the MAC address

Nodes maintain ARP tables that map an IPv4 address to a MAC address.

Chapter 3: Reliable TCP Data Streams

Chapter 4: Sending TCP Data

Chapter 5: Unreliable UDP Communication

Chapter 6: Ensuring UDP Reliability

Chapter 7: Unix Domain Sockets

Chapter 8: Writing HTTP Clients

Chapter 9: Building HTTP Services

Chapter 10: Caddy: A Contemporary Web Server

Chapter 11: Securing Communications with TLS

Chapter 12: Data Serialization

Chapter 13: Logging and Metrics

Chapter 14: Moving to the Cloud