Hi list,
implementing paging on Iu-CS directed my attention to the following situation: What if a subscriber connects to the CN while another connection with the same subscriber is still recorded active?
In the Iu case, one would expect an Iu-Release or a Reset message and invalidate old connections before a new connection would be established, but we can't/don't want to rely on that. A scenario would be that an hNodeB were suddenly powered down and the UE starts subscribing to another hNodeB nearby, or the UE moves to a new LAC and reconnects using an entirely different SUA link.
So basically I'm saying, when a new gsm_subscriber_connection is established and, from the Location Updating procedure, the conn gets associated with an actual gsm_subscriber instance, I guess we should walk the conn list and discard all other connections that this gsm_subscriber still has open ... does that make sense?
At least for Iu, there should never be more than one conn_id of a SUA link associated with the same gsm_subscriber, let alone more than one SUA link.
I browsed the gsm_04_08.c related code paths but so far couldn't find anything that would discard old gsm_subscriber_connections upon establishing a new location update for a given gsm_subscriber.
Is there a timeout for gsm_subscriber_connections? It's not the anchor_timeout() from gsm_04_08.c, right? That's only while establishing a link...
Am I on the right track here?
If yes, should we discard old conns as soon as the subscriber's IMSI is first seen on a new link, or only after a new Location Update is completed successfully?
Thanks! ~Neels