Overlay networks decouple the network services from the underlying physical network infrastructure. This is achieved by running a virtual network onto of the underlay via the use of network encapsulation.
There are 2 main types of overlay solutions - Network-Centric and Host-Centric Overlays.
With Network-Centric overlays, the network device performs the encapsulation/decapsulation of traffic. In other words, the network performs the role of the overlay "gateway". Therefore the hosts have no knowledge of the overlay network.
However, this type of overlay solution presents a number of disadvantages such as hardware requirements, MAC scaling, VLAN scaling, and STP dependencies.
Examples of Network-Centric overlays include VPLS, TRILL, and L2L-IPSEC.
Host-Centric overlays, on the other hand, are based on the hosts performing the overlay network functions, such as the encapsulation/decapsulation in and out of the overlay tunnel.
The key benefits to Host-Centric overlays include greater flexibility around network automation, multi-tenancy, and VM mobility.
Examples of Host-Centric overlays include VXLAN, NV-GRE, and STT.