Multicasting Computer Bus Switch
First Claim
1. A method of multicasting data units in a shared memory address space, comprising:
- associating two or more multicast portions of the shared memory address space with respective end points, wherein each multicast portion is associated with at least one other multicast portiontransmitting data units to at least some of the end points via memory-mapped I/O into the shared memory address spacewherein, when a destination address of a data unit is in a first multicast portion associated with a first end point, the method further comprises;
transmitting the data unit to the first end pointrevising the data unit to specify a destination address in a second multicast portion associated with the first multicast portiontransmitting the data unit to a second end point associated with the second multicast portion.
5 Assignments
0 Petitions
Accused Products
Abstract
There is disclosed apparatus and methods of multicasting in a shared address space. A shared memory address space may include two or more multicast portions. Each multicast portion may be associated with a respective end point and with at least one other multicast portion. Data units may be transmitted to at least some of the end points via memory-mapped I/O into the shared memory address space. When a destination address of a data unit is in a first multicast portion associated with a first end point, the data unit may be transmitted to the first end point, revised to specify a destination address in a second multicast portion associated with the first multicast portion, and transmitted to a second end point associated with the second multicast portion.
77 Citations
19 Claims
-
1. A method of multicasting data units in a shared memory address space, comprising:
-
associating two or more multicast portions of the shared memory address space with respective end points, wherein each multicast portion is associated with at least one other multicast portion transmitting data units to at least some of the end points via memory-mapped I/O into the shared memory address space wherein, when a destination address of a data unit is in a first multicast portion associated with a first end point, the method further comprises; transmitting the data unit to the first end point revising the data unit to specify a destination address in a second multicast portion associated with the first multicast portion transmitting the data unit to a second end point associated with the second multicast portion. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A switch for multicasting in a shared memory address space, the switch comprising
a buffer to receive data units transmitted via memory mapped I/O to addresses in the shared memory address space a plurality of ports associated with a corresponding plurality of end points, at least two of the plurality ports associated with a respective multicast address portion in the shared memory address space, wherein each of the multicast address portions is associated with at least one other multicast address portion logic to cause data units in the buffer having a destination address in a first multicast address portion associated with a first port to be forwarded for transmission out the first port without being removed from the buffer and then replace the destination address with an address in a second multicast address portion associated with the first multicast address portion cause data units in the buffer having a destination address in the second multicast address portion to be forwarded for transmission out the second port.
-
10. A switch for multicasting in a shared memory address space, the switch comprising
a buffer to receive data units transmitted via memory mapped I/O to addresses in the shared memory address space a plurality of ports associated with a corresponding plurality of end points, at least some of the ports associated with one or more multicast groups, wherein at least two ports are associated with each multicast group and each multicast group is associated with a respective multicast address portion of the shared memory address space logic to cause data units in the buffer having a destination address in a first multicast address portion to be forwarded for transmission out all ports associated with a first multicast group associated with the first multicast address portion.
-
14. A method of multicasting in a shared memory address space using a switch having a plurality of ports associated with a corresponding plurality of end points, the method comprising:
-
associating a plurality of multicast portions of the shared memory address space with respective ports;
wherein each multicast portion is associated with at least one other multicast portionreceiving data units transmitted via memory-mapped I/O to destination addresses in the shared memory address space wherein, when a destination address of a data unit is in a first multicast portion associated with a first port, the method further comprises; forwarding the data unit for transmission out the first port revising the data unit to specify a destination address in a second multicast portion associated with the first multicast portion forwarding the data unit for transmission out a second port associated with the second multicast portion. - View Dependent Claims (15, 16, 17, 19)
-
-
18. A method of multicasting in a shared memory address space using a switch having a plurality of ports associated with a corresponding plurality of end points, the method comprising:
-
associating a plurality of individual portions of the shared memory address space with respective ports associating at least one multicast portion of the shared memory address space with two or more ports receiving data units addressed to destination addresses in the shared memory address space, wherein when a destination address of a data unit is in an individual portion, forwarding the data unit for transmission out the respective port when a destination address of a data unit is in a multicast portion, forwarding the data unit for transmission out each of the ports associated with multicast portion when a destination address of a data unit is in a broadcast portion of the shared memory address space, forwarding the data unit for transmission out all of the plurality of ports.
-
Specification