From 88a0789a8e9e926ac66c2ec2507659a2e05690e6 Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Wed, 28 Oct 2020 03:24:27 +0100 Subject: manual: describe LCS and Lb interface Change-Id: I7ba432706759433987fabbc674bfc8cd55f2ce62 --- doc/manuals/chapters/running.adoc | 12 ++++ doc/manuals/chapters/smlc.adoc | 73 ++++++++++++++++++++++ .../message-sequences/location_services_ta.msc | 49 +++++++++++++++ doc/manuals/osmobsc-usermanual.adoc | 2 + 4 files changed, 136 insertions(+) create mode 100644 doc/manuals/chapters/smlc.adoc create mode 100644 doc/manuals/message-sequences/location_services_ta.msc diff --git a/doc/manuals/chapters/running.adoc b/doc/manuals/chapters/running.adoc index ae45afcee..ae177a926 100644 --- a/doc/manuals/chapters/running.adoc +++ b/doc/manuals/chapters/running.adoc @@ -140,3 +140,15 @@ msc 0 mgw remote-ip 10.9.8.7 mgw remote-port 2427 ---- + +==== Configure Lb to connect to an SMLC + +Enable the Lb interface. OsmoBSC will then use the default point-codes to +establish a connection to the SMLC. + +---- +smlc + enable +---- + +More detailed configuration is described in <>. diff --git a/doc/manuals/chapters/smlc.adoc b/doc/manuals/chapters/smlc.adoc new file mode 100644 index 000000000..7fd3e1295 --- /dev/null +++ b/doc/manuals/chapters/smlc.adoc @@ -0,0 +1,73 @@ +== Location Services: Lb interface to SMLC + +OsmoBSC and OsmoSMLC support positioning by Timing-Advance (TA), since October +2020. + +A Perform Location Request is initiated by the MSC via BSSMAP on the +A-interface, for a specific subscriber. The request is typically passed on via +BSSMAP-LE on the Lb-interface to the SMLC. If required, the SMLC may request the +subscriber's Timing Advance (a.k.a. Access Delay) from the BSC via BSSLAP +(encapsulated BSSLAP APDU in a BSSMAP-LE Connection Oriented Information +message). The SMLC may combine several location and velocity estimate methods to +form a GAD PDU containing the resulting geographic location information. In +TA-based positioning, the Timing-Advance information from the BSC is combined +with the preconfigured latitude and longitude of the serving cell to form a +location estimate. This is returned to the BSC via the Lb-interface, and in turn +to the MSC via the A-interface. + +[mscgen] +---- +include::{srcdir}/message-sequences/location_services_ta.msc[] +---- + +Location Services (LCS) are described in 3GPP TS 43.059 <<3gpp-ts-43-059>>. +Messages for LCS on the A-interface (BSSMAP, between BSC and MSC) are described +in 3GPP TS 48.008 <<3gpp-ts-48-008>>, on the Lb-interface (BSSMAP-LE between BSC +and SMLC) in 3GPP TS 49.031 <<3gpp-ts-49-031>>. The resulting geographic +location and possibly velocity information is encoded in GAD, described in 3GPP +TS 23.032 <<3gpp-ts-23-032>>. + +[[smlc-config]] +=== Configure Lb-interface + +All Lb-interface related configuration is found in the `smlc` section of +OsmoBSC's configuration. + +By default, the Lb-interface is disabled in OsmoBSC. It is started by `enable`. + +---- +smlc + enable +---- + +On the Lb-interface, OsmoBSC always uses SSN "BSC (BSSMAP-LE)" (SSN code 250) +and contacts the remote SMLC on SSN "SMLC (BSSMAP-LE)" (SSN code 252). + +The point-codes are configurable, and default to OsmoBSC's local point-code +0.23.3 (187), and remote SMLC point-code 0.23.6 (190). + +To configure a different remote SMLC point-code, first configure an arbitrarily +named SCCP address in the `cs7` address book, and then apply that to the +`smlc-addr` configuration: + +---- +cs7 instance 0 + sccp-address my-smlc + point-code 0.42.6 +smlc + smlc-addr my-smlc +---- + +Similarly, OsmoBSC's local point-code on the Lb-interface is configured by the +`bsc-addr` configuration: + +---- +cs7 instance 0 + sccp-address my-bsc-on-lb + point-code 0.42.3 +smlc + bsc-addr my-bsc-on-lb +---- + +The geographic locations of individual cells are configured at the SMLC. See +for example OsmoSMLC's user manual <>. diff --git a/doc/manuals/message-sequences/location_services_ta.msc b/doc/manuals/message-sequences/location_services_ta.msc new file mode 100644 index 000000000..e6bef38ef --- /dev/null +++ b/doc/manuals/message-sequences/location_services_ta.msc @@ -0,0 +1,49 @@ +msc { + hscale="2"; + + ms[label="MS/BTS"],bsc[label="BSC"],smlc[label="SMLC"],__msc[label="MSC"]; + + ||| [label="Location Services (LCS): Perform Location Request using TA"]; + + |||; + --- [label="MS in DEDICATED MODE (currently active)"]; + + ms =>> bsc [label="earlier Measurement Report provides Timing Advance"]; + + bsc <<= __msc [label="PERFORM LOCATION REQUEST\n3GPP TS 48.008 3.2.1.71"]; + + bsc =>> smlc [label="BSSMAP-LE PERFORM LOCATION REQUEST\n3GPP TS 49.031 9.1\nwith BSSLAP APDU = TA Layer3\n3GPP TS 48.071 4.2.8"]; + + smlc rbox smlc [label="SMLC uses TA included in TA Layer3"]; + + bsc <<= smlc [label="BSSMAP-LE PERFORM LOCATION RESPONSE\n3GPP TS 49.031 9.2"]; + + bsc =>> __msc [label="PERFORM LOCATION RESPONSE\n3GPP TS 48.008 3.2.1.72"]; + + ...; + ...; + --- [label="MS in IDLE MODE (not connected)"]; + + bsc <<= __msc [label="PERFORM LOCATION REQUEST\n3GPP TS 48.008 3.2.1.71"]; + + bsc =>> smlc [label="BSSMAP-LE PERFORM LOCATION REQUEST\n3GPP TS 49.031 9.1"]; + + smlc rbox smlc [label="SMLC needs TA information,\nasks BSC via BSSLAP"]; + + bsc <<= smlc [label="BSSMAP-LE CONNECTION ORIENTED INFORMATION\n3GPP TS 49.031 9.12\nwith BSSLAP APDU = TA Request\n3GPP TS 48.071 4.2.1"]; + + + ms <<= bsc [label="RR Paging Request\n3GPP TS 48.018 9.1.22-24"]; + + ms =>> bsc [label="RSL CHANNEL REQUIRED\n3GPP TS 48.058 8.5.3\nincludes Access Delay (9.3.17) == Timing Advance"]; + + ms =>> bsc [label="RR Paging Response\n3GPP TS 48.018 9.1.25"]; + + ms <<= bsc [label="RF CHANNEL RELEASE\n3GPP TS 48.058 8.4.14"]; + + bsc =>> smlc [label="BSSMAP-LE CONNECTION ORIENTED INFORMATION\n3GPP TS 49.031 9.12\nwith BSSLAP APDU = TA Response\n3GPP TS 48.071 4.2.2"]; + + bsc <<= smlc [label="BSSMAP-LE PERFORM LOCATION RESPONSE\n3GPP TS 49.031 9.2"]; + + bsc =>> __msc [label="PERFORM LOCATION RESPONSE\n3GPP TS 48.008 3.2.1.72"]; +} diff --git a/doc/manuals/osmobsc-usermanual.adoc b/doc/manuals/osmobsc-usermanual.adoc index a34d3d422..3c80cee1c 100644 --- a/doc/manuals/osmobsc-usermanual.adoc +++ b/doc/manuals/osmobsc-usermanual.adoc @@ -30,6 +30,8 @@ include::{srcdir}/chapters/smscb.adoc[] include::{srcdir}/chapters/mscpool.adoc[] +include::{srcdir}/chapters/smlc.adoc[] + include::./common/chapters/counters-overview.adoc[] include::{srcdir}/chapters/counters.adoc[] -- cgit v1.2.3