The BNG controller of any combination of examples 1-2, wherein the one or more core applications include a network resource manager (NRM) configured to: periodically receive health data of each vBNG instance of the plurality of vBNG instances; and when health data for a particular vBNG instance of the plurality of vBNG instances is not received within a threshold time, output, to the NICM, a request to generate the additional vBNG instance for recovering BNG subscriber sessions of the particular vBNG instance from the NSDB, wherein the NICM is configured to output the instruction to generate the additional vBNG instance in response to the request to generate the additional vBNG instance and to recover the BNG subscriber sessions of the particular vBNG instance from the NSDB.
The BNG controller of example 6, wherein the NRM is configured to: when health data for the particular vBNG instance of the plurality of vBNG instances is not received within the threshold time, output, to the NICM, an instruction to destroy the particular vBNG instance, wherein the NICM is further configured to output an instruction, to edge router of the one or more edge routers that provisioned the particular vBNG instance, to delete the particular vBNG instance in response to receiving the instruction to destroy the particular vBNG instance.