Claims
- 41. A method performed by a router for routing frames in a network, the method comprising:
a step for receiving routing information at a managing processor of the router, the routing information comprising a plurality of tuples, each tuple comprising indicia of a virtual entity and indicia of a nonvirtual entity; a step for preparing at the managing processor a routing table in accordance with the routing information; a step for providing the routing table to a supervising processor of the router for storage in a memory circuit of the router, the supervising processor coupled for data transfer between the managing processor and the memory circuit, the memory circuit being accessible by a plurality of routing processors of the router coupled by a fabric of the router for routing frames to another routing processor of the plurality via the fabric; a step for receiving at a routing processor of the plurality a frame of a virtual transaction; a step for accessing a tuple of the routing table at the routing processor; a step for redirecting the frame to a nonvirtual entity in accordance with the accessed tuple of the routing table; and a step for routing the redirected frame.
- 42. The method of claim 41 wherein the indicia of a virtual entity identifies at least one of a virtual participant, a virtual member, a virtual resource, a virtual device, a virtual address, a virtual page, and a virtual sector.
- 43. The method of claim 41 wherein the indicia of a nonvirtual entity identifies at least one of a nonvirtual participant, a nonvirtual member, a nonvirtual resource, a nonvirtual device, a nonvirtual address, a nonvirtual page, and a nonvirtual sector.
- 44. The method of claim 41 wherein the nonvirtual entity comprises a proxy process performed by the managing processor.
- 45. The method of claim 41 wherein the nonvirtual entity comprises a nonvirtual resource of a member of the network.
- 46. The method of claim 41 wherein the step for providing further comprises a step for transferring the routing table from the managing processor to the supervising processor via a local area network coupling the managing processor to the supervising processor.
- 47. The method of claim 41 wherein the step for redirecting comprises at least one of:
a step for rewriting a source identifier; and a step for rewriting a destination identifier.
- 48. The method of claim 41 wherein routing information comprises a policy value in association with a virtual resource identifier; and the step for routing the redirected frame comprises a step for routing in accordance with the policy value.
- 49. A method for distributing the burden of virtualization among routers of a network, the method comprising:
a step for receiving first routing information at first router; a step for receiving second routing information at a second router; a step for receiving at the first router a payload of a first frame; a step for determining that the first frame is part of a nonvirtual transaction; a step for routing the payload to the second router as part of a nonvirtual transaction; a step for receiving at the second router the payload; a step for determining that the payload is part of a virtual transaction; a step for accessing a tuple of the second routing information; a step for redirecting the payload to a nonvirtual entity in accordance with the accessed tuple of the routing information; and a step for routing the redirected payload.
- 50. The method of claim 49 wherein the second routing information comprises a policy value in association with a virtual resource identifier; and the step for routing the redirected payload comprises a step for routing in accordance with the policy value.
- 51. A method for revising the configuration of a plurality of routing processors of a network, the method comprising:
a step for facilitating a respective proxy process to route frames of transactions referring to a virtual entity of a first set of virtual entities; a step for directing a routing processor to route frames of transactions referring to a virtual entity of the first set to a respective proxy process with no further reference to first routing information; a step for repeating the step for directing for each routing processor of a second set of routing processors that implement virtualization for a virtual entity of the first set; a step for storing second routing information to implement virtualization for a virtual entity of a third set; a step for enabling a routing processor to route frames of transactions referring to a virtual entity of the third set in accordance with the second routing information; and a step for repeating the step for enabling for each routing processor of a fourth set of routing processors that implement virtualization for a virtual entity of the third set.
- 52. The method of claim 51 wherein routing processors of the fourth set are part of one router of a network.
- 53. The method of claim 51 wherein a first plurality of routing processors of the fourth set are part of a first router of a network and a second plurality of routing processors of the fourth set are part of a second router of the network.
- 54. The method of claim 51 wherein one proxy process is facilitated to route frames of transactions referring to all virtual entities of the first set of virtual entities.
- 55. The method of claim 51 wherein a fifth set of proxy processes are facilitated to route frames of transactions referring to virtual entities of the first set of virtual entities.
- 56. The method of claim 55 wherein a first plurality of proxy process of the fifth set are performed by a first managing processor and a second plurality of proxy processes of the fifth set are performed by a second managing processor.
- 57. The method of claim 55 wherein a all proxy processes of the fifth set are performed by one managing processor.
- 58. The method of claim 51 wherein the step for directing comprises a step for setting a flag to an asserted state and the step for enabling comprises a step for setting the flag to a nonasserted state.
- 59. A router for routing frames in a network, the router comprising:
a memory circuit; a plurality of routing processors, coupled by the fabric for routing frames to another routing processor of the plurality via the fabric, the memory circuit being accessible by each routing processor of the plurality; a managing processor; a supervising processor coupled for data transfer between the managing processor and the memory circuit; means for receiving routing information, the routing information comprising a plurality of tuples, each tuple comprising indicia of a virtual entity and indicia of a nonvirtual entity; means for preparing a routing table in accordance with the routing information; means for providing the routing table to the supervising processor for storage in the memory circuit; means for receiving at a routing processor of the plurality a frame of a virtual transaction; means for accessing a tuple of the routing table at the routing processor; means for redirecting the frame to a nonvirtual entity in accordance with the accessed tuple of the routing table; and means for routing the redirected frame.
- 60. The router of claim 59 wherein the indicia of a virtual entity identifies at least one of a virtual participant, a virtual member, a virtual resource, a virtual device, a virtual address, a virtual page, and a virtual sector.
- 61. The router of claim 59 wherein the indicia of a nonvirtual entity identifies at least one of a nonvirtual participant, a nonvirtual member, a nonvirtual resource, a nonvirtual device, a nonvirtual address, a nonvirtual page, and a nonvirtual sector.
- 62. The router of claim 59 wherein the nonvirtual entity comprises a proxy process performed by the managing processor.
- 63. The router of claim 59 wherein the nonvirtual entity comprises a nonvirtual resource of a member of the network.
- 64. The router of claim 59 wherein the means for providing further comprises means for transferring the routing table from the managing processor to the supervising processor via a local area network coupling the managing processor to the supervising processor.
- 65. The router of claim 59 wherein the means for redirecting comprises at least one of:
means for rewriting a source identifier; and means for rewriting a destination identifier.
- 66. The router of claim 59 wherein routing information comprises a policy value in association with a virtual resource identifier; and the means for routing the redirected frame comprises means for routing in accordance with the policy value.
- 67. A network for distributed virtualization, the network comprising:
means for receiving first routing information at a first router; means for receiving second routing information at a second router; means for receiving at the first router a payload of a first frame; means for determining that the first frame is part of a nonvirtual transaction; means for routing the payload to the second router as part of a nonvirtual transaction; means for receiving at the second router the payload; means for determining that the payload is part of a virtual transaction; means for accessing a tuple of the second routing information; means for redirecting the payload to a nonvirtual entity in accordance with the accessed tuple of the routing information; and means for routing the redirected payload.
- 68. The network of claim 67 wherein the second routing information comprises a policy value in association with a virtual resource identifier; and the means for routing the redirected payload comprises means for routing in accordance with the policy value.
- 69. A network for orderly reconfiguration of routing processors, the network comprising:
means for performing at least one proxy process; a plurality of routing processors; means for facilitating a respective proxy process to route frames of transactions referring to a virtual entity of a first set of virtual entities; means for directing a routing processor of the plurality to route frames of transactions referring to a virtual entity of the first set to a respective proxy process with no further reference to first routing information, wherein directing is repeated for each routing processor of a second set of routing processors that implement virtualization for a virtual entity of the first set; means for storing second routing information to implement virtualization for a virtual entity of a third set; and means for enabling a routing processor to route frames of transactions referring to a virtual entity of the third set in accordance with the second routing information, wherein enabling is repeated for each routing processor of a fourth set of routing processors that implement virtualization for a virtual entity of the third set.
- 70. The network of claim 69 wherein routing processors of the fourth set are part of one router of the network.
- 71. The network of claim 69 wherein a first plurality of routing processors of the fourth set are part of a first router of the network and a second plurality of routing processors of the fourth set are part of a second router of the network.
- 72. The network of claim 69 wherein one proxy process is facilitated to route frames of transactions referring to all virtual entities of the first set of virtual entities.
- 73. The network of claim 69 wherein a fifth set of proxy processes are facilitated to route frames of transactions referring to virtual entities of the first set of virtual entities.
- 74. The network of claim 73 wherein a first plurality of proxy process of the fifth set are performed by a first managing processor and a second plurality of proxy processes of the fifth set are performed by a second managing processor.
- 75. The network of claim 73 wherein a all proxy processes of the fifth set are performed by one managing processor.
- 76. The network of claim 69 wherein the means for directing comprises means for setting a flag to an asserted state and the means for enabling comprises means for setting the flag to a nonasserted state.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional patent application of and claims priority to U.S. patent application Ser. No. 10/120,266, filed on Oct. 18, 2001, by William C. Terrell, et al.
Divisions (1)
|
Number |
Date |
Country |
Parent |
10120266 |
Oct 2001 |
US |
Child |
10285226 |
Oct 2002 |
US |