Hi Neels,
On Fri, Sep 07, 2018 at 02:27:27AM +0200, Neels Hofmeyr wrote:
Reminds me of the LCLS feature recently implemented -- Local Call Local Switch.
I think the idea of LCLS is to take out the MSC's MGW, and instructing the
BSC's MGW to loop directly back to the BTS. But I guess it's only a tiny step
from there to switching BTS directly back to BTS. osmo-bsc has full control
over that.
LCLS actually doesn't specify how far you go inside the RAN. We chose to
simply keep the stream local to the BSC's MGW as this was simple and matched
the requirements at the time. As stated before, it's just some additional logic
inside osmo-bsc to take the BSC-MGW out of the local loop entirely.
IIUC LCLS happens after bridge.
ack.
IIUC we instruct the MS to generate a ringing signal
anyway?
Yes, but it's known that not all phones really like to do that, in violation of the
GSM specs.
Feels wrong to me to let osmo-sip-connector mess
around with the BTS'
IPAC_MDCX, I think that's firmly osmo-bsc's realm. And sounds like LCLS is the
thing.
Agreed.
Currently we need an MGW both from MSC and from BSC.
Again it seems to me LCLS
is the answer to take out the MSC's MGW, and osmo-bsc's LCLS decision might
then end up bypassing the BSC's MGW, if it doesn't do that yet?
It doesn't do that last step, but it's just some additional logic inside the BSC
to do that.
I think osmo-msc doesn't support LCLS though, only
osmo-bsc? And also I think
the MSC doesn't need to do much for LCLS anyway.
It's correct that osmo-bsc implements LCLS, but osmo-msc doesn't enable LCLS yet.
See
https://osmocom.org/issues/2487
But indeed, all that's needed in osmo-msc is:
* generate a global call reference for each call, include it in the BSSMAP signaling
* permit the BSC to use LCLS (expressed in BSSMAP signaling)
From that point onwards, the work entirely focuses
around the logic if and when you would
like to permit LCLS, or break LCLS again,
etc. - and that depends on your use cases.
The basic use case "switch locally whenever possible" is very easy to achieve.
Also, a simple use case "switch locally only after the CC CONNECT" is equally
easy to achieve,
and that way you get your ringtone from the core network.
If you want to switch it on and of conditionally at whatever other
points during a call, more logic is needed. But I think this is not
Rhizomatica's use case, is it?
There are 3GPP specs how LCLS paramters are signaled via SIP. This is what is used
in "real" LCLS-using GSM networks between the MSCs. The specs should be
referenced from
https://osmocom.org/projects/cellular-infrastructure/wiki/Local_Call_Local_…
But I don't think we need to go there. The "basic use case" should be
sufficient.
The hard problem, as stated in my other mail, is how to signal OSMUX,
and how to handle this in the existing notion/data model/... of SIP
implementations on how the media plane works.
--
- Harald Welte <laforge(a)gnumonks.org>
http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)