diff options
Diffstat (limited to 'manuals/OsmoNITB/chapters/overview.adoc')
-rw-r--r-- | manuals/OsmoNITB/chapters/overview.adoc | 196 |
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] +} +---- |