Oracle Solaris supports the organization of network interfaces into link aggregations. A link aggregation consists of several interfaces on a system that are configured together as a single, logical unit. Link aggregation, also referred to as trunking, is defined in the IEEE 802.3ad Link Aggregation Standard.
When connecting through a switch that switch must support the link aggregation control protocol (LACP) and you need to configure that as well as on the server you are configuring. That does not cover a switch failure though and what if you wanted to do link aggregation across two switches for hardware resiliency? Well, you can buy a pair of Oracle 24 port 10GbE switches which can be configured to support aggregation over two physical switches (there are other vendors of course) but this might not be feasible on your site for a many reasons. Aggregation spanning multiple switches tend to be vendor specific and not standardised and If you have more than one switch vendor they are unlikely to work cooperatively.
The answer though is easy in Solaris 11. Keep your existing switch infrastructure in place, change nothing, make no modifications to the switches and use Datalink Multipathing Aggregation in Solaris 11. The following diagram shows one aggregate of four ports on a system. In the server two virtual NICS are shown created off the aggregate (but I could have dozens) for two Solaris containers. It does not matter what brand the switches are, they can be different or the same, makes no odds, I could even use more than two switches.
Either switch or a port/cable on a switch can fail and the aggregate will just use another path automatically, no programing in the switch at all, it is completely unaware of the aggregation. If you have multiple vnics networking becomes much simpler than implementing IPMP with the added benefit of a fatter pipe as well.