Project

General

Profile

OpenBSC » History » Version 2

laforge, 02/19/2016 10:47 PM
more wiki annotations, project status

1 1 laforge
'''OpenBSC''' is the current name for a software program that started with the name bs11-abis.
2
3
== What is OpenBSC ==
4 2 laforge
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.
5 1 laforge
6
The goal of the project is to
7
 * provide a basis for experimentation and security research with GSM from the network side
8
 * document, publicized and point out any security related issues that we find as part of that
9
 * learn more about GSM networks on a lower level, particularly the practical aspects with real-world equipment
10
11
We '''are not interested''' in
12
 * building a stable/reliable BSC/MSC for deployment in actual networks
13
 * building something that follows the GSM spec to the last detail
14
 * disrupting actual commercial GSM network
15
16
== Requirements ==
17
18 2 laforge
OpenBSC runs only on Linux systems and requires a [wiki:E1] interface card compatible with [wiki:mISDN]
19 1 laforge
20 2 laforge
It requires a GSM [wiki:BTS].  The only currently tested configuration is with a Siemens [wiki:BS-11] microBTS.
21 1 laforge
22
== Source code ==
23
24
You can check out the source code via
25
{{{
26
svn checkout http://bs11-abis.gnumonks.org/svn/trunk/openbsc
27
}}}
28
or browse it at http://bs11-abis.gnumonks.org/trac/browser
29
30 2 laforge
== Project status ==
31
32
=== Things that work ===
33
 * [wiki:OML] Initialization of the BTS
34
 * [wiki:RSL] bringup, channel allocation, Channel required / Immediate Assign
35
 * Very simplistic [wiki:HLR] implemented as sqlite database
36
 * Non-secure Authentication using [wiki:IMEI]/[wiki:IMSI] and regular SIM cards.
37
 * [wiki:IMEI]/[wiki:IMSI] skimming of all phones that try to register with OpenBSC
38
 * [wiki:SMS] reception and [wiki:SMS] sending (simplistic, not possible to route them yet)
39
 * Transmission of MM INFO packets with operator name and local time / timezone
40
 * Extremely simplistic call control for MO (Mobile Originated) calls
41
 * TCH/F support.
42
43
=== Things that are implemented but don't work ===
44
 * unfinished support for multiple [wiki:TRX] in one [wiki:BTS]
45
 * paging group calculation
46
47
=== Things that are missing ===
48
 * Cell Broadcast
49
 * processing/switching of calls from one phone to another
50
 * demultiplex of the four 16k sub-channels with voice data contained in one [wiki:E1] timeslot
51
 * transcoding of voice data
52
 * TCH/H voice calls
53
 * [wiki:CSD] calls
54
 * handover between multiple [wiki:BTS]
55
 * emergency call handling
56
 * Discontinuous TX and RX ([wiki:DTX] / [wiki:DRX]) support
57
58 1 laforge
== Authors ==
59
60 2 laforge
OpenBSC was mainly developed by [http://laforge.gnumonks.org/ Harald Welte]. Contributions by Holger Freyther, Stefan Schmidt, Daniel Willmann, Jan Luebbe and Thomas Seiler.
61 1 laforge
62 2 laforge
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)