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
--
- Neels Hofmeyr <nhofmeyr(a)sysmocom.de>
http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschäftsführer / Managing Directors: Holger Freyther, Harald Welte