Patent ID: 7539190

Claim:
A method of multicasting data units having destination addresses in a shared memory address space, comprising: dividing the shared memory address space into a plurality of portions, wherein respective individual portions of the shared memory address space are associated with each of a plurality of ports of a switch, respective multicast portions are associated with at least some of the ports, and wherein the multicast portions have associations with one other the method further comprising, for a given data unit: if the destination address is in an individual portion associated with one of the ports, then forwarding the data unit for transmission out the associated port if the destination address is in a first multicast portion associated with one of the ports, then forwarding the data unit for transmission out the port associated with the first multicast portion forwarding the data unit for transmission out a port associated with a second multicast portion associated with the first multicast portion, wherein the forwarded data unit is revised to specify a destination address within the second multicast portion, transmitting data units through at least some of the ports via memory-mapped I/O into the shared memory address space.