Project

General

Profile

OpenBSC » History » Revision 3

Revision 2 (laforge, 02/19/2016 10:47 PM) → Revision 3/45 (laforge, 02/19/2016 10:47 PM)

'''OpenBSC''' is the current name for a software program that started with the name bs11-abis. 

 == What is OpenBSC == 
 It is a [wiki:BSC] (Base Station Controller) side implementation of the A-bis protocol, as implemented in the GSM Technical Specification 08.5x and 12.21.    It implements a minimal subset of the [wiki:BSC], [wiki:MSC] and [wiki:HLR].    It does not implement ant of the interfaces (like the A and B interfaces) between the higher-order GSM network components. 

 The goal of the project is to 
  * provide a basis for experimentation and security research with GSM from the network side 
  * document, publicized and point out any security related issues that we find as part of that 
  * learn more about GSM networks on a lower level, particularly the practical aspects with real-world equipment 

 We '''are not interested''' in 
  * building a stable/reliable BSC/MSC for deployment in actual networks 
  * building something that follows the GSM spec to the last detail 
  * disrupting actual commercial GSM network 

 == Requirements == 

 OpenBSC runs only on Linux systems and requires a [wiki:E1] interface card compatible with [wiki:mISDN] 

 It requires a GSM [wiki:BTS].    The only currently tested configuration is with a Siemens [wiki:BS-11] microBTS. 

 == Source code == 

 You can check out the source code via 
 {{{ 
 svn checkout http://bs11-abis.gnumonks.org/svn/trunk/openbsc 
 }}} 
 or browse it at http://bs11-abis.gnumonks.org/trac/browser 

 == Mailing list == 

 There's a developer mailing list called openbsc@lists.gnumonks.org 
 Subscription is available at [http://lists.gnumonks.org/mailman/listinfo/openbsc/] 

 == Project status == 

 === Things that work === 
  * [wiki:OML] Initialization of the BTS 
  * [wiki:RSL] bringup, channel allocation, Channel required / Immediate Assign 
  * Very simplistic [wiki:HLR] implemented as sqlite database 
  * Non-secure Authentication using [wiki:IMEI]/[wiki:IMSI] and regular SIM cards. 
  * [wiki:IMEI]/[wiki:IMSI] skimming of all phones that try to register with OpenBSC 
  * [wiki:SMS] reception and [wiki:SMS] sending (simplistic, not possible to route them yet) 
  * Transmission of MM INFO packets with operator name and local time / timezone 
  * Extremely simplistic call control for MO (Mobile Originated) calls 
  * TCH/F support. 

 === Things that are implemented but don't work === 
  * unfinished support for multiple [wiki:TRX] in one [wiki:BTS] 
  * paging group calculation 

 === Things that are missing === 
  * Cell Broadcast 
  * processing/switching of calls from one phone to another 
  * demultiplex of the four 16k sub-channels with voice data contained in one [wiki:E1] timeslot 
  * transcoding of voice data 
  * TCH/H voice calls 
  * [wiki:CSD] calls 
  * handover between multiple [wiki:BTS] 
  * emergency call handling 
  * Discontinuous TX and RX ([wiki:DTX] / [wiki:DRX]) support 

 == Authors == 

 OpenBSC was mainly developed by [http://laforge.gnumonks.org/ Harald Welte]. Contributions by Holger Freyther, Stefan Schmidt, Daniel Willmann, Jan Luebbe and Thomas Seiler. 

 Thanks to Dieter Spaar for his [wiki:BS11-Init], without which we would not have been able to make progress as quickly as we did. 
Add picture from clipboard (Maximum size: 48.8 MB)