Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for modifying the routing of packets in a system where packets are routed among a plurality of nodes in accordance with a route table having a plurality of route table entries and a route table enable mask having a plurality of route table enable mask entries that characterize the enablement of corresponding route table entries, the method comprising: a. receiving a packet from one of the nodes, the packet including an operation code and an update mask; b. reading the route table enable mask from a memory location; c. generating a new route table enable mask by performing a logical operation on the update mask and the route table enable mask in response to the operation code; and d. storing the new route table enable mask in the memory location.
2. The method according to claim 1 wherein the update mask comprises a plurality of bits and one of the plurality of bits is set to a value to enable corresponding route table entries and the other of the plurality of bits are set to a value to disable corresponding route table entries.
3. The method according to claim 2 wherein the value to enable is a 1, the value to disable is a 0, and the operation code includes an indication to perform an OR operation to generate the new route table enable mask.
4. The method according to claim 1 wherein the update mask comprises a plurality of bits and one of the plurality of bits is set to a value to disable corresponding route table entries and the other of the plurality of bits are set to a value to enable corresponding route table entries.
5. The method according to claim 4 wherein the value to enable is a 1, the value to disable is a 0, and the operation code includes an indication to perform an AND operation to generate the new route table enable mask.
6. A method for updating a route table enable mask in a system where packets are routed among a plurality of nodes in accordance with a route table having a plurality of route table entries where the route table enable mask has a plurality of route table enable mask entries that characterize the enablement of corresponding route table entries, the method comprising: a. receiving a packet from one of the nodes, the packet including an indication to modify the route table enable mask; b. producing an update mask; c. determining which logical operation to perform on the update mask and the route table enable mask in response to at least one of the received packet, the update mask, and the route table enable mask; d. generating a new route table enable mask by performing the appropriate logical operation on the update mask and the route table enable mask in response to the determination of which logical operation should be performed; and e. replacing the route table enable mask with the new route table enable mask.
7. The method according to claim 6 wherein the received packet includes the update mask and the update mask is produced by decoding the update mask from the packet.
8. The method according to claim 7 wherein determination of which logical operation to perform in step (c) is made in response to the update mask.
9. The method according to claim 8 wherein the route table enable mask comprises a plurality of bits and the method comprises determining to perform an AND of the update mask and the route table enable mask if one bit of update mask is a 0 and the other bits of the update mask are a 1, and determining to perform an OR of the update mask and the route table enable mask if one bit of update mask is a 1 and the other bits of the update mask are a 0.
10. The method according to claim 6 wherein the packet includes a source address and step (b) comprises generating the update mask in response to the source address and the route table enable mask.
11. The method according to claim 6 wherein the packet includes an operation code and step (c) comprises decoding the operation code to determine which logical operation to perform.
12. A router for routing packets among a plurality of nodes, the router comprising: a. an input port coupled to at least one of a plurality of nodes for receiving a packet from one of the nodes, the packet including a destination address; b. a plurality of output ports; c. memory for storing a route table having a plurality of route table entries identifying at least one of the plurality of output ports and a route table enable mask having a plurality of route table enable mask entries, each of the route table enable mask entries characterizing the enablement of one or more corresponding route table entries; and d. a processor for producing an update mask, determining which logical operation to perform on the update mask and the route table enable mask in response to at least one of the received packet, the update mask, and the route table enable mask, and for generating a new route table enable mask by performing an appropriate logical operation on the update mask and the route table enable mask in response to the determination of which logical operation to perform.
13. The router according to claim 12 comprising a plurality of input ports, each input port having a corresponding route table.
14. The router according to claim 13 comprising a route table enable mask corresponding to each route table.
15. A symmetric multiprocessor system comprising a. a plurality of cells having at least one processor; and b. a routing fabric having a crossbar for communicating a packet from one of the plurality of cells to another of the plurality of cells, the crossbar comprising: i. a plurality of input ports coupled to one of the plurality of cells for receiving a packet comprising an update mask from the cell, ii. a plurality of output ports coupled to one of the plurality of cells, iii. a storage device for storing a route table having a plurality of route table entries and a route table enable mask having a plurality of route table enable mask entries corresponding to the route table entries, and iv. a processor for generating a new route table enable mask by performing a logical operation on the update mask and the route table enable mask.
16. A symmetric multiprocessor system according to claim 15 wherein the crossbar comprises a distinct route table corresponding to each of its plurality of input ports.
17. A symmetric multiprocessor system according to claim 15 wherein the received packet includes an operation code and the processor decodes the operation code to determine which logical operation to perform on the update mask and the route table enable mask.
18. A symmetric multiprocessor system according to claim 17 wherein the packet received on the input port identifies a route table enable mask corresponding to another input port to be modified.
19. A symmetric multiprocessor system according to claim 15 wherein each crossbar includes a crossbar address, the received packet includes a destination address, and the processor identifies a received packet as a request to modify the route table enable mask in response to the destination address indicating the crossbar address.
20. A symmetric multiprocessor system according to claim 19 wherein the destination address identifies a route table enable mask to be modified.
21. The symmetric multiprocessor according to claim 15 wherein the received packet includes a source address and an indication to modify the route table enable mask and the processor validates the indication to modify the route table enable mask based on the source address of the received packet.
22. The symmetric multiprocessor according to claim 15 wherein at least one of the output ports of the crossbar is coupled to one of the plurality of cells via direct connection to the cell.
23. The symmetric multiprocessor according to claim 15 wherein at least one of the output ports of the crossbar is coupled to one of the plurality of cells via another crossbar coupled to the one of the plurality of cells.
24. A computer readable media comprising computer readable code for instructing a computer to modify routing of packets in a system where packets are routed among a plurality of nodes in accordance with a route table having a plurality of route table entries and a route table enable mask having a plurality of route table enable mask entries that characterize the enablement of route table entries, wherein the computer readable code comprises computer readable code for modifying the route table enable mask by executing steps comprising: a. receiving a packet from one of the nodes, the packet including an operation code and an update mask; b. reading the route table enable mask from a memory location; c. decoding the operation code to determine whether to perform an AND or an OR of the update mask and the route table enable mask; d. generating a new route table enable mask by performing a logical operation on the update mask and the route table enable mask in response to the decoded operation code; and e. storing the new route table enable mask in the memory location.
25. A fabric for communicating data among a plurality of cells in a symmetric multiprocessor system in accordance with a route table having a plurality of route table enable entries and a route table enable mask having a plurality of route table enable mask entries, the fabric comprising: first means for receiving a packet from one of the plurality of cells, the packet including an operation code and an update mask; second means for decoding the operation code to determine which logical operation to perform on the update mask and the route table enable mask; third means for generating a new route table enable mask by performing an appropriate logical operation on the update mask and the route table enable mask in response to the determination of which logical operation to perform; and fourth means for replacing the route table enable mask with the new route table enable ask.
Unknown
March 25, 2008
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.