Welcome to Osmocom OpenBSC¶
IMPORTANT NOTICE: This page contains information about a legacy version of the Osmocom software. This legacy version is no longer maintained. If you use it, don't be surprised if it doesn't work. It was your choice to ignore man-years worth of developments, improvements and fixes. Please migrate to the active/supported software (Osmocom CNI, consisting of OsmoBSC, OsmoMSC, OsmoHLR, OsmoSTP, OsmoMGW - a NITB style setup is described at Osmocom_Network_In_The_Box).
- Table of contents
- Welcome to Osmocom OpenBSC
- Overview Diagram
We have started with an A-bis (plus BSC/MSC/HLR) implementation for experimentation and research purpose, but have since moved way beyond that.
What this means: OpenBSC is not just a standard BSC, but a GSM network in a box software, implementing the minimal necessary parts to build a small, self-contained GSM network.
OpenBSC includes functionality normally performed by the following components of a GSM network: BSC (Base Station Controller), MSC (Mobile Switching Center), HLR (Home Location Register), AuC (Authentication Center), VLR (Visitor Location Register), EIR (Equipment Identity Register).
We have started with the Siemens BS11 microBTS, mainly targetted the ip.access nanoBTS for some years, but has since been extended to support a variety of other BTS equipment like the Ericsson RBS 2000 family. Today, most of the users and active developers work not with proprietary BTSs, but with BTSs running our OsmoBTS software, i.e. either the sysmoBTS family of hardware or SDR based hardware with OsmoTRX like the UmTRX or UmSITE.
We are always looking for HardwareDonations of any kind of GSM / 3G related carrier equipment.
Overview Diagram¶
Please see the below overview diagram about common possible configurations of the Osmocom software.
Getting started¶
UnderstandingOpenBSC -- Where to start learning about OpenBSC, what it does, and how.
OpenBSC Software¶
- Software for running a full minimal GSM Network in a Box:
- OpenBSC -- The Free Software project implementing various parts of the GSM network
- osmo-nitb -- A stand-alone gsm-network-in-a-box program implementing minimal subset of BSC, MSC, HLR, AuC and EIR.
- osmo-nitb_VTY -- Reference for the interactive command line and config file
- osmo-nitb -- A stand-alone gsm-network-in-a-box program implementing minimal subset of BSC, MSC, HLR, AuC and EIR.
- OpenBSC -- The Free Software project implementing various parts of the GSM network
- Software utilities for BTS configuration, provisioning and the like
- bs11_config -- A small tool for configuring the BS-11 using RS232
- ipaccess-find -- A small tool to find nanoBTS in your network
- ipaccess-config -- A small tool to set NVRAM configuration of the nanoBTS
- isdnsync -- A small tool to use the PSTN as frequency standard
- Software for running in pure BSC only mode, attaching via A/SCCP to a MSC
- osmo-bsc -- OpenBSC in BSC-only mode
- bsc_mgcp -- A stupid MediaGatewayControlProtocol (MGCP) gateway
- bsc_mgcp_VTY -- Reference for the interactive command line and config file
- Software for UMA/GAN (Unified Mobile Access)
- Special purpose software for aggregating multiple A or Gb links
- bsc_nat -- a BSC NAT/Multiplexer
- bsc_nat_VTY -- Reference for the interactive command line and config file
- bsc_nat_release -- Release testing for the BSC NAT.
- osmo-gbproxy -- A proxy/gateway for aggregating multiple Gb links betwen BSS and SGSN
- osmo-gbproxy_VTY -- Reference for the interactive command line and config file
- Testing -- Comments and what makes sense to test for releases
- bsc_nat -- a BSC NAT/Multiplexer
- OpenBSC related PortNumbers -- A list of TCP port numbers as they are used by OpenBSC and related programs
- Protocol extensions
**MgcpExtensions -- Extensions to MGCP - simulation -- Running OpenBSC without a GSM Basestation
- Important legal information on SoftwareLicensing
- meas_web -- Web based measurement utility for OpenBSC
Supported BTSs¶
BTS Support¶
Information related to a specific BTS model¶
Topics related to BTSs with classic E1 interface (non-IP based):¶
Miscellaneous Information¶
- GSM -- Some links for starting to understand GSM
- LegalNotes -- Important Legal notes on operating GSM base stations
- FieldTests -- The OpenBSC field tests and their reports
Howtos¶
- Standard configuration:
- Building_OpenBSC -- Getting started with OpenBSC under Debian
- multi-BTS_with_handover -- Connecting 2x BTS to a single BSC/NITB and enabling handover
- Advanced topics:
- OpenBSC_with_Asterisk -- A comprehensive tutorial on setting up OpenBSC with Asterisk
- OpenBSC_LCR -- OpenBSC+LCR with Asterisk (obsolete)
- OpenBSC_LCR_Ubuntu1204 -- Short installation guide for OpenBSC with Asterisk on Ubuntu 12.04
- OpenBSC_Crypto -- Howto add A5/x cryptography support to your OpenBSC setup
- SDR_OsmoTRX_network_from_scratch -- Building everything from scratch for SDR based hardware with OsmoTRX, OsmoBTS and OsmoNITB.
- RF Topics:
- cable_antenna -- Build new antennas for your BTS
- ethernet_dummyload -- Use an old ethernet terminator as dummyload
- 10db_attenuator -- Turn 30mW into 3 mW
Binary Packages¶
Osmocom provides binary packages for several flavors of Debian and Ubuntu GNU/Linux on a variety of architectures (i586, x86_64, armhf, armv7l). Unless you are a software developer interested in developing on Osmocom, it is recommended you use those packages instead of building from source.
For more details see Binary_Packages
Developers¶
- Browse the repositories at http://git.osmocom.org/
- Mailinglist
- For voice/SMS/..., use OpenBSC
- For GPRS/SGSN/data-comms related discussions, use osmocom-net-gprs
- Continuous Integration efforts
- Wiki is right here ;)
- Developer conferences: OsmoDevCon
- Tasks -- Tasks/Internships/Junior Jobs for OpenBSC and Osmocom
- Devtools -- Various tools to find/fix errors, send patches, etc
- Coding_standards -- Coding standards
- PacketDump -- Using wireshark on PCAP files
News¶
- OpenBSC ran many more experimental and commercial networks, but no one bothered to update this section...
- OpenBSC was running an experimental GSM network at CCC Camp in the Summer of 2011
- OpenBSC was running an experimental GSM network at 27c3 in December 2010
- The slides of the 25C3 presentation Running your own GSM network are available.
- The slides of the 26C3 presentation Fuzzing GSM handsets using OpenBSC are available
Related projects¶
- simplehlr -- A web interface for the OpenBSC HLR database
- OsmocomBB - Free Software GSM protocol stack for mobile phones
- OpenBTS
- The THC GSM project
- airprobe.org
- Homepage of Dr.-Ing. Joachim Goeller
Thanks¶
- to On-Waves ehf and sysmocom GmbH for funding part of the development and maintennance
- to http://junghanns.net for supporting us with discounted E1 boards
- to Netzing AG for funding part of the earlier OpenBSC development
- to Kevin Redon for the Osmocom logo
Updated by laforge over 5 years ago ยท 146 revisions