OpenBSC » History » Version 10
laforge, 02/19/2016 10:47 PM
we now use git
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 | 9 | laforge | It requires a GSM [wiki:BTS]. The only currently tested configurations are with a Siemens [wiki:BS11 BS-11] microBTS or a [wiki:nanoBTS ip.access nanoBTS]. |
21 | 1 | laforge | |
22 | == Source code == |
||
23 | |||
24 | You can check out the source code via |
||
25 | {{{ |
||
26 | 10 | laforge | git clone git://bs11-abis.gnumonks.org/openbsc.git |
27 | 1 | laforge | }}} |
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 | 8 | laforge | == IRC (Internet Relay Chat) == |
36 | |||
37 | irc.freenode.net/#openbsc |
||
38 | |||
39 | 2 | laforge | == Project status == |
40 | |||
41 | === Things that work === |
||
42 | * [wiki:OML] Initialization of the BTS |
||
43 | * [wiki:RSL] bringup, channel allocation, Channel required / Immediate Assign |
||
44 | * Very simplistic [wiki:HLR] implemented as sqlite database |
||
45 | * Non-secure Authentication using [wiki:IMEI]/[wiki:IMSI] and regular SIM cards. |
||
46 | * [wiki:IMEI]/[wiki:IMSI] skimming of all phones that try to register with OpenBSC |
||
47 | * [wiki:SMS] reception and [wiki:SMS] sending (simplistic, not possible to route them yet) |
||
48 | * Transmission of MM INFO packets with operator name and local time / timezone |
||
49 | 5 | laforge | * Extremely simplistic call control for MO (Mobile Originated) and MT (Mobile Terminated) calls |
50 | 4 | laforge | * TCH/F support |
51 | 5 | laforge | * paging of mobiles that are registered to the BTS |
52 | 1 | laforge | * signalling of mobile-originated and mobile-terminated calls |
53 | 6 | laforge | * processing/switching of calls from one phone to another |
54 | * demultiplex of the four 16k sub-channels with voice data contained in one [wiki:E1] timeslot |
||
55 | 1 | laforge | |
56 | 5 | laforge | === Things that are implemented but don't work yet or aren't tested yet === |
57 | * support for multiple [wiki:TRX] in one [wiki:BTS] |
||
58 | 2 | laforge | |
59 | 7 | laforge | === Things being worked at === |
60 | * GPS/DCF77 disciplined quartz reference for the HFC-E1 card (via HS-Esslingen, Student Research Project) |
||
61 | |||
62 | 2 | laforge | === Things that are missing === |
63 | * Cell Broadcast |
||
64 | * transcoding of voice data |
||
65 | * TCH/H voice calls |
||
66 | * [wiki:CSD] calls |
||
67 | 1 | laforge | * handover between multiple [wiki:BTS] |
68 | 2 | laforge | * emergency call handling |
69 | * Discontinuous TX and RX ([wiki:DTX] / [wiki:DRX]) support |
||
70 | 4 | laforge | * Support the use of A3/A8 and A5/1 (we need SIM cards with known Ki, e.g. simulated SIM cards) |
71 | 2 | laforge | |
72 | 1 | laforge | == Authors == |
73 | |||
74 | 9 | laforge | OpenBSC was mainly developed by [http://laforge.gnumonks.org/ Harald Welte]. Contributions by Holger Freyther, Stefan Schmidt, Daniel Willmann, Jan Luebbe, Thomas Seiler and Andreas Eversberg. |
75 | 1 | laforge | |
76 | 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. |