aboutsummaryrefslogtreecommitdiffstats
path: root/manuals/OsmoNITB/chapters/overview.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'manuals/OsmoNITB/chapters/overview.adoc')
-rw-r--r--manuals/OsmoNITB/chapters/overview.adoc196
1 files changed, 196 insertions, 0 deletions
diff --git a/manuals/OsmoNITB/chapters/overview.adoc b/manuals/OsmoNITB/chapters/overview.adoc
new file mode 100644
index 000000000..d161af3f9
--- /dev/null
+++ b/manuals/OsmoNITB/chapters/overview.adoc
@@ -0,0 +1,196 @@
+[[overview]]
+== Overview
+
+This manual should help you getting started with OsmoNITB. It will cover
+aspects of configuring and running the OsmoNITB.
+
+[[intro_overview]]
+=== About OsmoNITB
+
+OsmoNITB is one particular version of the OpenBSC software suite.
+Unlike classic, distributed, hierarchical GSM networks, OsmoNITB
+implements all parts of a GSM Network (BSC, MSC, VLR, HLR, AUC, SMSC)
+__in the box__, i.e. in one element.
+
+The difference between classic GSM network architecture and the OsmoNITB
+based GSM network architecture is illustrated in <<fig-gsm-classic>> and
+<<fig-gsm-nitb>>.
+
+[[fig-gsm-classic]]
+.Classic GSM network architecture (simplified)
+[graphviz]
+----
+digraph G {
+ rankdir=LR;
+ MS0 [label="MS"]
+ MS1 [label="MS"]
+ MS2 [label="MS"]
+ MS3 [label="MS"]
+ BTS0 [label="BTS"]
+ BTS1 [label="BTS"]
+ MSC [label="MSC/VLR"]
+ HLR [label="HLR/AUC"]
+ MS0->BTS0 [label="Um"]
+ MS1->BTS0 [label="Um"]
+ MS2->BTS1 [label="Um"]
+ MS3->BTS1 [label="Um"]
+ BTS0->BSC [label="Abis"]
+ BTS1->BSC [label="Abis"]
+ BSC->MSC [label="A"]
+ MSC->HLR [label="C"]
+ MSC->EIR [label="F"]
+ MSC->SMSC
+}
+----
+
+[[fig-gsm-nitb]]
+.GSM system architecture using OsmoNITB
+[graphviz]
+----
+digraph G {
+ rankdir=LR;
+ MS0 [label="MS"]
+ MS1 [label="MS"]
+ MS2 [label="MS"]
+ MS3 [label="MS"]
+ BTS0 [label="BTS"]
+ BTS1 [label="BTS"]
+ MS0->BTS0 [label="Um"]
+ MS1->BTS0 [label="Um"]
+ MS2->BTS1 [label="Um"]
+ MS3->BTS1 [label="Um"]
+ BTS0->BSC [label="Abis"]
+ BTS1->BSC [label="Abis"]
+ subgraph cluster_nitb {
+ label = "OsmoNITB";
+ BSC
+ MSC [label="MSC/VLR"]
+ HLR [label="HLR/AUC"]
+ BSC->MSC [label="A"]
+ MSC->HLR [label="C"]
+ MSC->EIR [label="F"]
+ MSC->SMSC;
+ }
+}
+----
+
+
+=== Software Components
+
+OsmoNITB contains a variety of different software components, which
+we'll quickly describe in this section.
+
+==== A-bis Implementation
+
+OsmoNITB implements the ETSI/3GPP specified A-bis interface, including
+_3GPP TS 48.056_ <<3gpp-ts-48-056>> (LAPD), _3GPP TS 48.058_
+<<3gpp-ts-48-058>> (RSL) and 3GPP TS 52.021 <<3gpp-ts-52-021>> (OML). In
+addition, it supports a variety of vendor-specific extensions and
+dialects in order to communicate with BTSs from Siemens, Nokia,
+Ericsson, ip.access and sysmocom.
+
+For more information, see <<bts>> and <<bts-examples>>.
+
+
+==== BSC Implementation
+
+The BSC implementation covers the classic functionality of a GSM Base
+Station Controller, i.e.
+
+* configuring and bringing up BTSs with their TRXs and TSs
+* implementing the A-bis interface / protocols for signalling and actual
+ voice data (TRAU frames).
+* processing measurement results from the mobile stations in dedicated
+ mode, performing hand-over decision and execution.
+* Terminating the _3GPP TS 24.008_ <<3gpp-ts-24-008>> RR (Radio Resource)
+ sub-layer from the MS.
+
+For more information, see <<net>>, <<bts>> and <<bts-examples>>.
+
+
+==== HLR/AUC
+
+A minimalistic implementation of the subscriber database (HLR) and
+subscriber secret key storage (AUC).
+
+For more information, see <<hlr>>.
+
+
+==== SMSC
+
+A minimal store-and-forward server for SMS, supporting both MO and MT
+SMS service, as well as multi-part messages.
+
+The built-in SMSC also supports an external SMSC interface. For more
+information, see <<smpp>>.
+
+
+==== MSC
+
+The MSC component of OsmoNITB implements the mobility management (MM)
+functions of the TS 04.08, as well as the optional security related
+procedures for cryptographic authentication and encryption.
+
+Furthermore, it can handle TS 04.08 Call Control (CC), either by use of
+an internal MNCC handler, or by use of an external MNCC agent. For more
+information see <<mncc>>.
+
+
+==== TRAU mapper / E1 sub-channel muxer
+
+Unlike classic GSM networks, OsmoNITB does not perform any transcoding.
+Rather, a compatible codec is selected for both legs of a call, and
+codec frames are passed through transparently. In order to achieve this
+with E1 based BTS, OsmoNITB contains a E1 sub-channel de- and
+re-multiplexer as well as a TRAU mapper that can map uplink to downlink
+frames and vice versa.
+
+
+==== RTP proxy
+
+BTS models implementing A-bis over IP don't use classic TRAU frames but
+typically transport the voice codec frames as RTP/UDP/IP protocol.
+OsmoNITB can either instruct the BTSs to send those voice streams
+directly to each other (BTS to BTS without any intermediary), or it can
+run an internal RTP proxy for passing frames from one BTS to another.
+
+.RTP flow without RTP proxy mode (default)
+[graphviz]
+----
+digraph G {
+ rankdir=LR;
+
+ MS0 [label="MS A"];
+ MS1 [label="MS B"];
+ BTS0 [label="BTS A"];
+ BTS1 [label="BTS B"];
+ NITB;
+
+ MS0 -> BTS0;
+ MS1 -> BTS1;
+ BTS0 -> NITB [label="Abis OML+RSL",dir=both];
+ BTS1 -> NITB [label="Abis OML+RSL",dir=both];
+ BTS0 -> BTS1 [label="RTP",dir=both]
+}
+----
+
+.RTP flow with RTP proxy mode
+[graphviz]
+----
+digraph G {
+ rankdir=LR;
+
+ MS0 [label="MS A"];
+ MS1 [label="MS B"];
+ BTS0 [label="BTS A"];
+ BTS1 [label="BTS B"];
+ NITB;
+
+ MS0 -> BTS0;
+ MS1 -> BTS1;
+ BTS0 -> NITB [label="Abis OML+RSL",dir=both];
+ BTS1 -> NITB [label="Abis OML+RSL",dir=both];
+ BTS0 -> NITB [label="RTP",dir=both]
+ BTS1 -> NITB [label="RTP",dir=both]
+}
+----