Project

General

Profile

OsmoBSC » History » Revision 20

Revision 19 (laforge, 09/03/2019 08:47 PM) → Revision 20/28 (laforge, 03/04/2020 08:27 PM)

{{>toc}} 

 h1. OsmoBSC 

 [[OsmoBSC:]] is an implementation of a GSM BSC (Base Station Controller), i.e. it offers 
 * an A-bis interface towards the BTSs 
 * an A-over-IP (AoIP) interface towards an MSC (e.g. [[OsmoMSC:]]). 
 * an Media Gateway Control Protocol (MGCP) interface towards a MGW (e.g. [[OsmoMGW:]] for handling the RTP user plane (voice call codec frames) 

 h2. History / Naming / SCCPlite 

 Until 2017, we used to have an @osmo-bsc@ part of the old @openbsc.git@ repository which implemented a smaller sub-set of the BSC functionality with an [[cellular-infrastructure:SCCPLite]] based A interface.    This legacy program is now called @osmo-bsc-sccplite@ and continues to be available for legacy users.    However, it is not actively developed anymore.    SCCPlite protocol support has been re-introduced in the new @osmo-bsc@ from @osmo-bsc.git@.    Users should not use the obsolete and unmaintained @osmo-bsc-sccplite@ anymore. 

 h2. OsmoBSC in the Osmocom architecture 

 h3. Signaling Plane only 

 {{graphviz_link() 
 digraph G { 
     rankdir = LR; 
     subgraph cluster_RAN { 
         OsmoBTS; 
         OsmoBTS1 [label="OsmoBTS"]; 
         OsmoBTS2 [label="OsmoBTS"]; 
         OsmoBSC [color=red]; 
         label = "RAN"; 
     } 
     subgraph cluster_CN { 
         OsmoMSC [label="MSC\ne.g. OsmoMSC"]; 
         Core [label="Other CN Elements"]; 
         label = "CN"; 
     } 
     OsmoBTS -> OsmoBSC [label="Abis/IP"]; 
     OsmoBTS1 -> OsmoBSC [label="Abis/IP"]; 
     OsmoBTS2 -> OsmoBSC [label="Abis/IP"]; 
     OsmoBSC -> OsmoMSC [label="3GPP AoIP\nvia SIGTRAN/STP"]; 
     OsmoMSC -> Core [label="MAP/ISUP/SIP/GSUP"]; 


     } 
 } 
 }} 

 h3. Signaling + User (Media) Plane 

 {{graphviz_link() 
 digraph G { 
     rankdir = LR; 
     subgraph cluster_RAN { 
         OsmoBTS; 
         OsmoBTS1 [label="OsmoBTS"]; 
         OsmoBTS2 [label="OsmoBTS"]; 
         OsmoBSC [color=red]; 
         OsmoMGW [label="OsmoMGW\n(for BSC)"]; 

         OsmoBTS -> OsmoBSC [label="Abis/IP"]; 
         OsmoBTS1 -> OsmoBSC [label="Abis/IP"]; 
         OsmoBTS2 -> OsmoBSC [label="Abis/IP"]; 
         OsmoBSC -> OsmoMGW [label="MGCP"]; 
         { rank = same; OsmoBSC; OsmoMGW } 

         OsmoBTS -> OsmoMGW [label="RTP"]; 
         OsmoBTS1 -> OsmoMGW [label="RTP"]; 
         OsmoBTS2 -> OsmoMGW [label="RTP"]; 

         label = "RAN"; 
     } 
     subgraph cluster_CN { 
         OsmoMGW1 [label="OsmoMGW\n(for MSC)"]; 
         OsmoMSC [label="MSC\ne.g. OsmoMSC"]; 
         Core [label="Other CN Elements"]; 
         OsmoMSC -> Core [label="MAP/ISUP/SIP/GSUP"]; 
         OsmoMSC -> OsmoMGW1 [label="MGCP"]; 
         { rank = same; OsmoMSC; OsmoMGW1 } 
         OsmoMGW -> OsmoMGW1 [label="RTP"]; 
         OsmoMGW1 -> Core [label="RTP"]; 
         label = "CN"; 
     } 

     OsmoBSC -> OsmoMSC [label="3GPP AoIP\nvia SIGTRAN/STP"]; 

 } 
 }} 


 h2. BTS Support 

 OsmoBSC supports currently all BTSs running the [[OsmoBTS:]] software (such as sysmoBTS), as well as ip.access nanoBTS devices.    Other Abis/IP devices may be supported. 

 Support for legacy E1/T1 TDM based BTSs (like those supported by [[OsmoNITB:]] is on the roadmap. 

 {{graphviz_link() 
 graph G { 

         MSC [label="MSC\n(e.g. OsmoMSC)"]; 
         STP [label="STP\n(e.g. OsmoSTP)"]; 
         nanoBTS [label="ip.access\nnanoBTS", shape=box]; 
         OsmoBTS; 
         sysmoBTS [label="sysmocom sysmoBTS\n(many models)", shape=box]; 
         LC15 [label="Nuran\nLitecell 1.5", shape=box]; 
         OCT [label="Octasic\nOCTBTS", shape=box]; 
         TRX [label="OsmoTRX"]; 
         OtherSDR [label="Other SDR HW", shape=box, style=dashed]; 
         OtherPHY [label="Other GSM PHY", shape=box, style=dashed]; 
         UmTRX [label="Fairwaves\nUmTRX", shape=box]; 
         USRP [label="Ettus USRP\nFamily", shape=box]; 

         MSC -- STP [label="A/IP"]; 
         STP -- BSC [label="A/IP"]; 

         BSC -- nanoBTS [label="Abis/IP"]; 
         BSC -- OsmoBTS [label="Abis/IP"]; 

         BSC -- BS11 [label="Siemens\nAbis/E1"]; 
         BSC -- RBS2K [label="Ericsson\nAbis/E1"]; 
         BSC -- Nokia [label="Nokia\nAbis/E1"]; 

         subgraph cluster_2 { 
                 BSC [label="BSC\n(OsmoBSC, 3rd party)" color=red]; 
                 color=white 
         } 

         subgraph cluster_0 { 
                 BS11 [label="Siemens BS-11", shape=box]; 
                 SIU [label="Ericsson SIU"]; 
                 RBS2K [label="Ericsson RBS 2000\n(many models)", shape=box]; 
                 Nokia [label="Nokia InSite, MetroSite", shape=box]; 

                 BSC -- L2TPD [label="Unix Socket"]; 
                 L2TPD -- SIU [label="Ericsson\nL2TP/IP"]; 
                 SIU -- RBS2K [label="Ericsson\nAbis/E1"]; 

                 { rank=same; BS11 RBS2K Nokia } 

                 label = "Classic E1/T1"; 
         } 

         subgraph cluster_1 { 

                 OsmoBTS -- sysmoBTS [label="osmo-bts-sysmo"]; 
                 OsmoBTS -- LC15 [label="osmo-bts-lc15"]; 
                 OsmoBTS -- OCT [label="osmo-bts-octphy"]; 
                 OsmoBTS -- TRX [label="osmo-bts-trx"]; 
                 OsmoBTS -- OtherPHY [style=dashed]; 

                 TRX -- USRP; 
                 TRX -- UmTRX; 
                 TRX -- OtherSDR [style=dashed]; 

                 { rank=same; nanoBTS sysmoBTS LC15 OCT UmTRX } 

                 label = "IP/Ethernet based"; 
         } 

 } 
 }} 

 {{include(cellular-infrastructure:MacroBinaryPackages)}} 

 h2. User Manuals 

 * osmo-bsc User Manual: http://ftp.osmocom.org/docs/latest/osmobsc-usermanual.pdf 
 * osmo-bsc VTY Reference: http://ftp.osmocom.org/docs/latest/osmobsc-vty-reference.pdf 

 h2. Source code 

 The source code is available from @git.osmocom.org@ (module @osmo-bsc@). 

 Public read-only access is available via 
 <pre> 
 git clone git://git.osmocom.org/osmo-bsc.git 
 </pre> 

 You can browse it via cgit:    https://git.osmocom.org/osmo-bsc 

 Contributions are welcome via [[Cellular-Infrastructure:Gerrit]]. 

 h2. Test Suite 

 We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]] 
 * source code: http://git.osmocom.org/osmo-ttcn3-hacks/tree/bsc 
 * results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-bsc-test/ 

 h2. Contact / Getting Help 

 Contact us via the openbsc@ mailing list, see [[Cellular-Infrastructure:Mailing Lists]]. 

 You can file issues (bugs / feature requests) using the redmine project you're currently viewing. 

 h2. Authors / Credit 

 The old OsmoBSC-SCCPlite was created by Holger Freyther based on the earler OpenBSC/OsmoNITB code by Dieter Spaar, Harald Welte, Holger Freyther and contributors. 

 3GPP AoIP support was developed by sysmocom.    Today, OsmoBSC is maintained by Harald Welte and his team at sysmocom. 

 {{include(cellular-infrastructure:MacroCommercialSupport)}}
Add picture from clipboard (Maximum size: 48.8 MB)