An OCS is selected by the OC-DRA function of PCA for an incoming session initiation message, for example, Gy/Ro CCR-I, using a load distribution algorithm. OC-DRA may store and maintain the session state for the subscriber to ensure all the in-session messages, for example, CCR-U and CCR-T, will be routed to the same OCS for online charging processing for this session. The relationship between the subscriber and the OCS lasts during the lifetime of the session.