When I use KVM, I create a virtual bridge called virbr0, there is also a bridge called virbr0-nic. Even after I disable and delete virbr0, the virbr0-nic is still there.
Can anyone explain to me what is this?
The interface virbr0-nic is not a bridge, but a normal ethernet interface (although a virtual one, created with ip add type veth.
It's there so that the bridge has at least one interface beneath it to steal it's mac address from. It passes no real traffic, since it's not really connected to any physical device.
The bridge would work without it, but then it could change it's mac address as interfaces enter and exit the bridge, and when the mac of the bridge changes, external switches may may be confused, making the host lose network for some time.