Patent ID: 8107376

Claim:
A method comprising: configuring a policy engine of a virtual router (VR) of a plurality of VRs of a VR-based telecommunications system to define services available to a plurality of subscribers of a service provider during respective subscriber connections by defining each of a plurality of service contexts available to the plurality of subscribers in terms of one or more profile identifiers of a plurality of profile identifiers each of which is representative of a particular subscriber service supported by the service provider; establishing a scalable subscriber profile database in which a memory requirement for the scalable subscriber profile database is dependent upon a number of available service contexts by hierarchically organizing the plurality of profile identifiers as intermediate profile identifiers and leaf profile identifiers, wherein the leaf profile identifiers explicitly define subscriber services and the intermediate profile identifiers indirectly represent sets of one or more subscriber services, which are defined by way of the intermediate profile identifiers' associations with one or more lower-level identifiers including zero or more of the leaf profile identifiers and zero or more of the intermediate profile identifiers; receiving, by the policy engine, a first-level profile identifier; determining, by the policy engine, whether the first-level profile identifier is among those of the plurality of first-level profile identifiers stored in the scalable subscriber profile database; and if the first-level profile identifier is not stored in the scalable subscriber profile database, then performing the following obtaining service profile information associated with the first-level profile identifier; if the first-level profile identifier is an intermediate profile identifier that is associated with one or more leaf profile identifiers, then obtaining the one or more leaf profile identifiers and profile information associated with the one or more leaf profile identifiers and storing the one or more leaf profile identifiers and the profile information in the scalable subscriber profile database; and storing the first-level profile identifier and the service profile information associated with the first-level profile identifier in the scalable subscriber profile database.