You should be able to get and install either the Intel (proset) or Broadcom server utility - depending on which kind of NIC you have in your server.
Once you have that on your machine, you can configure fault tolerance on the server. At least with proset (don't have a broadcom server w/ the tool installed right now to look at) you would configure a new team, tell it what type of fault tolerance you want - Adapter, switch, load balancing, etc.
The only gotcha I can think of right now is if you are running MSCS on any of the servers they don't support NICs setup with fault tolerance in any way and the cluster verification will fail.
Some keywords for you to look for "Adapter Fault Tolerance" "NIC Fault Tolerance" "Adapter Load Balancing" "Adapter Fail over"
I think a picture says 1000 words. So you basically can have three situations.
1 - Switch redundancy, but no Router or ISP redundancy:
router spof http://www.brokenhaze.com/sf_images/router-spof.png
2 - Switch, and router redundancy, but no ISP redundancy:
isp spof http://www.brokenhaze.com/sf_images/router-isp-spof.png
3 - Finally, no SPOF - within your control:
no spof http://www.brokenhaze.com/sf_images/no-spof.png
Now each of these setups will obviously be more expensive than the last. For most small/medium sized companies option one holds the best risk/benefit ratio.
Yes, the 'problem' is Spanning-Tree Protocol killing one leg of your bonded connections from X to A+B.
If you need bonded connection to increase bandwidth, run 2 cables from X to each of A/B, for a total of 4 cables. Bond the pair going to A, likewise on the pair going to B. Let STP do its job (which will turn off one pair out of two).
Best Answer
I think the answer is that you would need to create a bonded interface using a failover configuration where whatever NIC work get's the connection. Then you can make your bridges on top of the bond interfaces instead of directly on the nics.