Re: Does NetworkManager support blocking non-home networks (UMTS/3g)



Hi Dan,

> > > > > > I can't seem to find it in the GUI or in the documentation.
> > > > > > 
> > > > > > Can NetworkManager be configured to only connect to home networks? Say I 
> > > > > > am on Vodafone and get free data usage, but then move to an area with 
> > > > > > poor signal for Vodafone, can I prevent switching to T-Mobile which 
> > > > > > costs me money?
> > > > > > 
> > > > > > If yes, can this be determined automatically, or is this done with a 
> > > > > > string match?
> > > > > 
> > > > > For cards where we actually know the commands for controlling roaming,
> > > > > yes we can do this, otherwise NM will need to send the specific MCC/MNC
> > > > > of your operator to the modem, which has its own problems.  This is
> > > > > definitely going to be fixed in the near future, but there's no facility
> > > > > for doing so now other than entering the MCC/MNC of your operator into
> > > > > teh Network entry in the connection editor.
> > > > 
> > > > what do you mean by this. It makes no sense. Which card can be
> > > > controlled to roam or not via its firmware. Normally this is all host
> > > > stack stuff.
> > > 
> > > Yeah, seems that's mostly CDMA cards right now.  My bad.
> > 
> > so with CDMA cards you can actually tell them to allow roaming or not?
> > If so, do you get notifications when it does.
> > 
> > > > You get the current MCC/MNC from the network notifications and your home
> > > > network is part of the IMSI. Only trick part with the IMSI is that you
> > > > have to check first if the MNC is two or three digits long. That value
> > > > is stored somewhere in the SIM card.
> > > 
> > > Does that mean talking directly to the SIM to find out the MNC length?
> > > There's boatloads of networks with 3-digit MNC (americas and India
> > > mostly) so it would completely suck if you couldn't tell just from the
> > > MNC.
> > 
> > Actually you really can't tell it by just looking at the IMSI. In oFono
> > we have to do some heavy lifting to get this information out of the SIM
> > card. And it is the only way to find the home network that actually
> > issued your SIM card (at least to me knowledge).
> 
> So when you say stack-side, you mean that the modem controller has to
> detach the PDP context (or otherwise terminate the data connection) when
> it gets an unsolicited update that the modem has roamed to a cell that
> doesn't have the home MCC/MNC?

for the data connections you have to use CGREG and it will tell you when
you are roaming. GSM does support seamless handover between home and
roaming networks.

However remember that your voice network can be still your home network
while your data network is already roaming and vice versa. Will not
happen that often, but potentially possible.

> If that's the case, that sucks.  Because often networks will have quite
> a few MCC/MNCs that the device can roam to (including most US and Indian
> carriers).  I assume all the "home" MCC/MNCs are stored somewhere on the
> SIM then?  Couldn't that lead to the at least a Kb or so of roaming
> traffic before the stack notices the update and terminates the
> connection?

I think you misunderstood me here. With CGREG you always get the current
network. However when you are roaming and you wanna know what is your
home network (for the device setup for example), then you have to get
the MCC/MNC of your home network from the IMSI. And to know if the MNC
is 2 or 3 digits you need to read bits and pieces from the SIM card.

There is no list of home MCC/MNC stored anyway. What you are talking
about is a preferred list of roaming partners. And that is really not
important since in the end the modem does this all by itself.

However you are right, potentially there could be some kb of roaming
data before you can cut the connection. I have never played with that
since normally I arrive by airplane and put the device into flight mode
during the time when crossing borders.

Regards

Marcel




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]