Docker networking was previously handled by Docker Engine and libcontainer, but is now managed by libnetwork, a standalone library. Libnetwork aims to modularize networking logic and provide a pluggable, driver-based model. It defines components like networks, endpoints, and sandboxes and supports multiple active drivers. Common drivers include the bridge and overlay drivers.