Project

General

Profile

OpenBSC » History » Version 6

laforge, 02/19/2016 10:47 PM
voice calls work quite reliably now

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 5 laforge
It requires a GSM [wiki:BTS].  The only currently tested configuration is with a Siemens [wiki:BS11 BS-11] microBTS.  We are working on supporting [wiki:nanoBTS ip.access nanoBTS], but this is in a very early stage.
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 3 laforge
== Mailing list ==
31
32
There's a developer mailing list called openbsc@lists.gnumonks.org
33
Subscription is available at [http://lists.gnumonks.org/mailman/listinfo/openbsc/]
34
35 2 laforge
== Project status ==
36
37
=== Things that work ===
38
 * [wiki:OML] Initialization of the BTS
39
 * [wiki:RSL] bringup, channel allocation, Channel required / Immediate Assign
40
 * Very simplistic [wiki:HLR] implemented as sqlite database
41
 * Non-secure Authentication using [wiki:IMEI]/[wiki:IMSI] and regular SIM cards.
42
 * [wiki:IMEI]/[wiki:IMSI] skimming of all phones that try to register with OpenBSC
43
 * [wiki:SMS] reception and [wiki:SMS] sending (simplistic, not possible to route them yet)
44
 * Transmission of MM INFO packets with operator name and local time / timezone
45 5 laforge
 * Extremely simplistic call control for MO (Mobile Originated) and MT (Mobile Terminated) calls
46 4 laforge
 * TCH/F support
47 5 laforge
 * paging of mobiles that are registered to the BTS
48 1 laforge
 * signalling of mobile-originated and mobile-terminated calls
49 6 laforge
 * 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 1 laforge
52 5 laforge
=== Things that are implemented but don't work yet or aren't tested yet ===
53
 * support for multiple [wiki:TRX] in one [wiki:BTS]
54 2 laforge
55
=== Things that are missing ===
56
 * Cell Broadcast
57
 * transcoding of voice data
58
 * TCH/H voice calls
59
 * [wiki:CSD] calls
60 1 laforge
 * handover between multiple [wiki:BTS]
61 2 laforge
 * emergency call handling
62
 * Discontinuous TX and RX ([wiki:DTX] / [wiki:DRX]) support
63 4 laforge
 * Support the use of A3/A8 and A5/1 (we need SIM cards with known Ki, e.g. simulated SIM cards)
64 2 laforge
65 1 laforge
== Authors ==
66
67 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.
68 1 laforge
69 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)