I have seen that in virtual networking, guest VMs/containers can be connected with host and internet either by using kernel bridges(linux) or Virtual Switches.
Example - Bridges
docker uses linux kernel bridges to connect the guest containers to host and internet. Even, VMWare/VirtualBox allows to use bridge networking to connect the guest VM's with the host and internet. Example - Virtual Switches
VMWare ESX uses virtual switches to connect VM's with host and internet. Microsoft Hyper-V uses virtual switches to connect VM's with host and internet. So, I started to wonder what's the difference between these two (bridges and virtual switches) and which approach is better than the other.
(please feel free to edit the question to expand or make the question more meaningful.)
First of all, many terms in IT are created by marketing departments, so they mean whatever the manufacturer wants it to mean.
Functionally, bridges and switches are the same thing. They forward packets based on layer 2 information. In the physical world, switches tend to have more ports than bridges and often have more features than "pure" bridges.