Patent ID: 7389358

Claim:
A method comprising: providing a virtual router (VR)-based switch configured for operation at an Internet point-of-presence (POP) of a service provider, the VR-based switch having a plurality of processing elements; providing a network operating system (NOS) on each of the plurality of processing elements; segmenting resources of the VR-based switch between at least a first subscriber of the service provider and a second subscriber of the service provider by: associating a first plurality of VRs with the first subscriber; associating a second plurality of VRs with the second subscriber; mapping the first plurality of VRs onto a first set of one or more of the plurality of processing elements; mapping the second plurality of VRs onto a second set of one or more of the plurality of processing elements; wherein a shared processing element of the plurality of processing elements is part of the first set of one or more of the plurality of processing elements and the shared processing element is part of the second set of one or more of the plurality of processing elements; configuring a first set of customized services including a plurality of firewalling, virtual private networking, encryption, traffic shaping, routing and network address translation (NAT) to be provided by the VR-based switch on behalf of the first subscriber by allocating a first service object group within the first plurality of VRs, the first service object group including a service object corresponding to each service of the first set of customized services and wherein each service object of the first service object group can be dynamically distributed by the NOS to customized processors of the first set of one or more of the plurality of processing elements to achieve desired computational support; and configuring a second set of customized services including a plurality of firewalling, virtual private networking, encryption, traffic shaping, routing and NAT to be provided by the VR-based switch on behalf of the second subscriber by allocating a second service object group within the second plurality of VRs, the second service object group including a service object corresponding to each service of the second set of customized services and wherein each service object of the second service object group can be dynamically distributed by the NOS to customized processors of the second set of one or more of the plurality of processing elements to achieve desired computational support.