Project

General

Profile

Actions

OpenBSC » History » Revision 12

« Previous | Revision 12/45 (diff) | Next »
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 configurations are with a Siemens [wiki:BS11 BS-11] microBTS or a [wiki:nanoBTS ip.access nanoBTS].

Source code

=== Releases ===
FIXME

=== Development Version ===
You can check out the source code via {{{
git clone git://bs11-abis.gnumonks.org/openbsc.git
}}}
or browse it at http://bs11-abis.gnumonks.org/trac/browser

Mailing list

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

IRC (Internet Relay Chat)

irc.freenode.net/#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) and MT (Mobile Terminated) calls * TCH/F support * paging of mobiles that are registered to the BTS * signalling of mobile-originated and mobile-terminated calls * 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 * support for multiple [wiki:TRX] in one [wiki:BTS]

=== Things that are implemented but don't work yet or aren't tested yet === * GPRS support (SGSN + GGSN inside OpenBSC) * Support the use of A3/A8 and A5/1 (we need SIM cards with known Ki, e.g. simulated SIM cards)

=== Things being worked at === * GPS/DCF77 disciplined quartz reference for the HFC-E1 card (via HS-Esslingen, Student Research Project)

=== Things that are missing === * Cell Broadcast * transcoding of voice data * TCH/H voice calls (in standalone config) * [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, Thomas Seiler and Andreas Eversberg.

Special thanks to Dieter Spaar for [wiki:BS11-Init] and tons of feedback and comments, without which we would not have been able to make progress as quickly as we did.

Files (0)

Updated by laforge about 8 years ago · 12 revisions

Add picture from clipboard (Maximum size: 48.8 MB)