Billions of devices distributed across the planet are connected to today’s Internet, where any one of them can send and receive messages with any of the other devices. The network that connects these devices must itself also be highly distributed, and is built from millions of packet switches. Part II describes how to build a global-scale best-effort packet delivery service by interconnecting switches. This substrate makes it possible for those devices to host the edge software stack described in Part III.