1. A method comprising: providing a network operating system (NOS) on each processor element (PE) of a plurality of PEs of a switch; establishing, via the NOS, a plurality of object groups, wherein each of the plurality of object groups corresponds to one of a plurality of virtual routers provided by the switch; assigning, via the NOS, a plurality of software objects to each of the plurality of object groups, wherein each software object provides a discrete network service; distributing, via the NOS, each of the plurality of software objects to at least one of the PEs; providing, at the switch, discrete network services for the plurality of virtual routers according to the assigned plurality of software objects for each of the plurality of object groups; determining, via the NOS, in response to a change in traffic through the switch that at least one discrete network service associated with a first of the plurality of software objects is not receiving a correct level of processing from a first PE of the plurality of PEs; and dynamically redistributing, via the NOS, the first of the plurality of software objects from the first of the plurality of PEs to another of the plurality of PEs.