Project

General

Profile

Wiki » History » Revision 27

Revision 26 (roh, 11/22/2019 05:53 PM) → Revision 27/33 (laforge, 03/04/2020 08:28 PM)

h1. [[OsmoBTS]] 


 [[OsmoBTS]] is a software implementation of a GSM BTS(Base Transceiver Station).  

 It implements the follwing protocols/interfaces: 
 * LAPDm (GSM 04.06) 
 * RTP 
 * A-bis/IP in IPA multiplex 
 * OML (GSM TS 12.21) 
 * RSL (GSM TS 08.58) 

 [[OsmoBTS]] is building up on work done previosuly for [[OpenBSC:]] (e.g. RSL, OML, RTP) and [[OsmocomBB:]] (e.g. LAPDm).    The Abis/IP protocol staking is inspired by ip.access A-bis/IP, sometimes called IPA multiplex. 

 h2. OsmoBTS in the Osmocom architecture 

 h3. OsmoBTS in a GSM + GPRS/EDGE network using [[OsmoNITB:]] 

 {{graphviz_link() 
 digraph G { 
     rankdir = LR; 
     OsmoTRX -> OsmoBTS [label="bursts over UDP"]; 
     sysmoPHY -> OsmoBTS [label="/dev/msgq/"]; 
     octPHY -> OsmoBTS [label="Raw Ethernet"]; 
     OsmoBTS -> OsmoNITB [label="Abis/IP"]; 
     OsmoBTS -> OsmoPCU [label="pcu_sock"]; 
     OsmoPCU -> OsmoSGSN [label="Gb/IP"]; 
     OsmoBTS [color=red]; 
 } 
 }} 

 h3. OsmoBTS in a GSM + GPRS/EDGE network using [[OsmoBSC:]] and [[OsmoMSC:]] 

 {{graphviz_link() 
 digraph G { 
     rankdir = LR; 
     OsmoTRX -> OsmoBTS [label="bursts over UDP"]; 
     sysmoPHY -> OsmoBTS [label="/dev/msgq/"]; 
     octPHY -> OsmoBTS [label="Raw Ethernet"]; 
     OsmoBTS -> OsmoBSC [label="Abis/IP"]; 
     OsmoBSC -> OsmoMSC [label="3GPP AoIP"]; 
     OsmoMSC -> OsmoHLR [label="GSUP"]; 
     OsmoBTS -> OsmoPCU [label="pcu_sock"]; 
     OsmoPCU -> OsmoSGSN [label="Gb/IP"]; 
     OsmoSGSN -> OsmoGGSN [label="Gp"]; 
     OsmoBTS [color=red]; 
 } 
 }} 

 h2. Backends / Hardware support 


 [[OsmoBTS]] is modular and has support for multiple back-ends.    A back-end talks to a specific L1/PHY implementation of the respective BTS hardware. Based on this architecture, it should be relatively easy to add a new back-end to support so-far unsupported GSM PHY/L1 and associated hardware. 

 So far [[OsmoBTS]] has been integrated with several different L1/PHY and hardware systems. The backends are: 
 * osmo-bts-sysmo 
 ** Multiple indoor and outdoor BTS products    called "sysmoBTS":https://www.sysmocom.de/products/bts/ by "sysmocom":http://sysmocom.de/ 
 * osmo-bts-trx 
 ** Wideband SDR transceiver hardware supported by [[OpenBTS]] transceiver or [OsmoTRX] PHY layer software, including the [[umtrx:UmTRX]], the USRP family, etc. 
 ** Multiple indoor and outdoor "fairwaves":https://fairwaves.co BTSs, like UmDESK and UmSITE 
 * osmo-bts-litecell15 
 * osmo-bts-octphy 
 * osmo-bts-bb 
 ** A pretty crazy experimental BTS hardware based on two [[OsmocomBB]] phones had originally been supported, but needs to be re-integrated with core code changes. 

 {{graphviz_link() 
 graph G { 
   OsmoBTS [color=red]; 
   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]; 

   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; sysmoBTS LC15 OCT UmTRX } 
 } 
 }} 

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

 

 h2. Manuals 

 * User Manual: http://ftp.osmocom.org/docs/latest/osmobts-usermanual.pdf 
 * VTY Reference: http://ftp.osmocom.org/docs/latest/osmobts-vty-reference.pdf 
 * Abis Protocol Manual: http://ftp.osmocom.org/docs/latest/osmobts-abis.pdf 

 

 h2. GPRS support 

 In the GSM architecture, the BTS is an element in the circuit-switched domain only. 

 For packet-switched support, OsmoBTS provides    a socket interface towards [[OsmoPCU:]]. This adds GPRS and EDGE support to it. 

 h2. Source code 


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

 Public read-only access is available via 
 <pre> 
 git clone git://git.osmocom.org/osmo-bts.git 
 </pre> 
 You can browse it via cgit: https://git.osmocom.org/osmo-bts/ 

 h2. Test Suite 

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

 h2. Authors / Credits 


 [[OsmoBTS]] was originally developed in 2011 by Andreas Eversberg and Harald Welte.   

 Today it is mostly maintained by Harald Welte and his team at sysmocom. 

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