Modified: for 12.1.1
The TRM is enhanced to act as a centralized CAC entity in the CS pod. When the TRM is in the SC pod, it sends the CAC requests to the TRM in the CS pod. The TRM of the SC pod sends an ICM to the CS process running in the SC pod that is already connected to the CS process running in the CS pod, and it forwards the ICM message through the ZMQ connection. Upon receiving the message, the CS process running in the CS pod forwards it to the TRM of the CS pod through an ICM. When the TRM of the CS pod receives the message, it performs the CAC check based on the configuration and responds with the result through the same route.
The processes described below refer to the Ingress flow of the call. Similar processes apply to the egress flow for the following messages:
While Sending CAC Request | While Sending CAC Reply | |
TRM of SC pod |
|
|
CS process of SC pod |
|
|
CS process of CS pod |
|
|
TRM of CS pod |
|
|
The following diagram represents the call/message flow between the SC pod and CS pod:
The following diagram represents the call/message flow:
Creation of the per SC CCB list
This is a linked list with each node depicting each SC pod connected to the CS pod, and each node will further have a hash map that will contain the data related to the CCBs as contained by callHashTbl.
Note: In case 2. (a.) mentioned above, if the SC pod's data has been deleted by the CS pod (both CS process and TRM), then whenever it comes up, it registers with the CS pod and the connection between both the pods is up and running, SC TRM will automatically send a sync message with all the CCBs that are associated with it once it gets the connection up event from CS process of SC pod.
SC Switchover Scenario
Whenever an SC pod comes up, either initially or after switchover, and the CS process of the SC pod establishes a connection with the CS pod, it'll send the link's state notification message to SC TRM. Once SC TRM receives link state 'connected' event, it will send a sync message to CS TRM, including all the CCBs it is currently handling.
Upon receiving the sync message, CS TRM will go through the per SC CCB list for this particular SC and will start marking the 'retainCcb' flag as 'true' for all the CCBs received in the sync message. Once the syncing procedure is complete, SC TRM will send a sync completed notify message to CS TRM after that CS TRM will go through that per SC CCB list for that SC and for whichever CCB the 'retainCcb' flag is 'false', it'll delete that CCB from both the lists in CS TRM and will adjust the counters. [The CCBs for which the 'retainCcb' flag would be 'false', would potentially be the calls which got dropped during SC switchover]
SC-CS Disconnection Scenario
As the SC TRM receives SC-CS link state notify message, upon receiving that message:
Note: All the changes in the CCB list of SC TRM during the disconnection period will be updated to CS TRM through the sync message which it would send once the connection between both the pods come up. The updated CCB list could include CCBs that got newly added and exclude the ones that got terminated; and the existing ones, CS TRM will handle all of them while processing the sync message with the help on 'retainCcb' flag as explained in 'SC switchover scenario'.
CS Switchover Scenario
Whenever CS pod would go down, SC TRM will behave exactly as it would in a SC-CS disconnection scenario explained above.