It's interesting that the OP asked this question...
Over past weekend my goal for bonding all 3 MacPros (a 4-core Nehalem, an 8-core Nehalem and a new 12-core MacPro 6,1) at my son's office was successful. My only difficulty was figuring out the IP address of the Cisco switch so I could monitor the link states and obtain statistics of packets being moved over each port and for any errors. There were no errors on any of the links. I disconnected one of each of the bonded ethernet ports to make sure failover worked and that presented no issues.
The switch I used was the Cisco Small Business SG200-18 1 Gigabit switch. It's noiseless (has no fan) and runs quite cool. After 3 hours of use it was slightly warm on ts top surface. This switch has the capacity to process 36 Gbps (just a tad over 4 GBytes/sec) and will support IEEE 802.ad LACP up to 4 groups of dynamic link aggregation, and has a remote web browser-based management providing configuration, system dashboard, system maintenance and monitoring... Very nice indeed. The switch was purchased from NewEgg for $207. I check with Cisco and NewEgg is a certified reseller for Cisco switches. Here's a ref to the switch...
http://www.newegg.com/Product/Product.aspx?Item=N82E16833150120. Interestingly enough, I noted that as soon as I placed my NewEgg order for this switch they increased it by $1.00 - very weird.
The Cisco Small Business 200 Series Smart Switch Administration Guide states on page 116 the following
"Link Aggregation Control Protocol (LACP) is part of IEEE specification (802.3az) that enables you to bundle several physical ports together to form a single logical channel (LAG). LAGs multiply the bandwidth, increase port flexibility, and provide link redundancy between two devices.
Two type of LAGs are supported: Static and Dynamic"
I decided to configure Dynamic LAGs for each of the 3 MacPros in my Son's office.
A LAG supports Load Balancing: Traffic forwarded to a LAG is load-balanced across the active member ports, thus achieving an effective bandwidth close to the aggregate bandwidth of all the active member ports of the LAG. Traffic load balancing over the active member ports of a LAG is managed by a hash-based distribution function that distributes Unicast and Multicast traffic based on Layer 2 or Layer 3 packet header information.
This Cisco managed smart switch has 18-ports. I configured things as follows using the switch's management web-based software which was easy to use. I actually configured the switch at home several days before going to my Son's office.
I used CAT6 wires everywhere, although Cisco indicated CAT5 would be sufficient so long as they were not 100s of feet long.
This Cisco switch can have up to 4 LAGs configured. I only wanted to use 3 for the 3 MacPros that each had 2x 1GbE ports.
With this many cables it's important to label the cable ends, especially the ends that plug into the switch.
Port 1: A Router line from a 1TB TC's LAN port.
Port 2: Connected to a 27" iMac named
Saturn
Ports 9 & 10: connected to MP6,1 named
Titan (these were bonded to aggregate the line data speeds and for failover).
Ports 12 & 13: connected to 8-core MP named
Mercury (these were bonded to aggregate the line data speeds and for failover).
Ports 15 & 16: connected to 4-core MP named
BAZ (these were bonded to aggregate the line data speeds and for failover).
I tested as follows
1) Created a large file named Test_file on Titan's internal 1TB PCIe-based flash storage
2) Setup File sharing on Titan so that Test_file could be accessed by other Macs
3) On each Mac (Saturn, Titan, Mercury and BAZ) I performed a 'time cksum Test_file' at same time
Using Activity Monitor on each Mac I observed the Network's Data received/sec and Data sent/sec
On Titan the Data sent was a steady 380 MBytes/sec
On Mercury the Data received was a steady 145 Mbytes/sec
On BAZ the Data received was a steady 155 Mbytes/sec
On Saturn the Data received was a steady 60 Mbytes/sec
4) I now ran on Mercury, BAZ and Saturn in turn a 'time cksum Test_file' command
On Mercury the Data received was a steady 150 Mbytes/sec with periodic bursts up to 280 MBytes/sec
On BAZ the Data received (did not test this Mac)
On Saturn the Data received was a steady 85 Mbytes/sec with periodic bursts up to 124 MBytes/sec
I was quite happy with these results.
My son wanted me to make the iMac read from Titan at same rate as the 8 and 4 core MPs could. I told him to replace the iMac with a MP. The poor olde iMac has but one ethernet port...
Now all we need is for Apple to develop TCP/IP over Thunderbolt.... (ha ha).
The bonding (Virtual Interface) done using the Network Prefs was very straight forward. I did note that these Virtual interfaces took close to 30 to 60 secs to form a connection and suspect the delay was associated with the Cisco switch figuring things out.
The one problem I was not able to figure out was being blocked from having the Cisco switch system display its CPU utilization.
The Cisco switch and the 4 Mac configuration has now been running solidly for 4 days without issues. Over the next few weeks I will be gather data from the Cisco switch's internally kept statistics to see if errors are occurring and to understand how much data traffic is being sent/received. I will also want to see the size of data packets being routed around to know whether I should configure for jumbo frames or not to improve data send/receive rates.