Project

General

Profile

Wiki » History » Version 26

neels, 10/19/2017 05:20 PM

1 13 laforge
h1. Intro: Osmocom Cellular Network Infrastructure
2 1 laforge
3 7 laforge
{{>toc}}
4 7 laforge
5 13 laforge
This is a project aiming to create a [[Free / Open Source Software]], (A)GPL-licensed software implementations for the GSM/3GPP protocol stacks and network elements, preferably as pure software implementations running on general-purpose computers.  All our software is available in source code form, to anyone.
6 1 laforge
7 13 laforge
This is very contrary to classic telecom vendors, where every network element is implemented as proprietary hardware and software, without the ability to understand or modify then, and where each and every feature is subject to license fees.
8 1 laforge
9 13 laforge
We had originally started with an A-bis (plus BSC/MSC/HLR) implementation for experimentation and research purpose (now called [[OpenBSC:]], but have since moved way beyond that and implemented many other interfaces and network elements of GSM, GPRS, EDGE and UMTS/HSPA networks.
10 1 laforge
11 13 laforge
At the heart of most installations is the OpenBSC project with its two flavors
12 13 laforge
* [[OsmoNITB:]] - a _GSM network in a box_ software, implementing the minimal necessary parts to build a small, self-contained GSM network.
13 13 laforge
* [[OsmoBSC:]] - a pure _GSM Base Station Controller_ with support for many different BTS vendors and models attached via Abis (over E1 and IP).
14 1 laforge
15 13 laforge
The actual radio interface of such a network can be provided by classic GSM BTS equipment from classic Vendors like Siemens, Nokia, Ericsson, ip.access.  However, a variety of more modern BTS options are avalable, based on our [[OsmoBTS:]] software using hardware from sysmocom ([[openbsc:sysmoBTS]]), Fairwaves ([[UmTRX:]]) or Ettus (USRP)
16 1 laforge
17 24 laforge
In addition, the Osmocom project also develops and maintains the [[OsmoPCU:]], [[OsmoSGSN:]] and [[OpenGGSN:OsmoGGSN]] programs for adding GPRS and EDGE capabilities.
18 1 laforge
19 13 laforge
Most recently, there is a project for adding 3G (UMTS, HSPA) support.  Specifically, this is adding Iu-CS and Iu-PS support to [[OsmoNITB:]], as well as a new [[OsmoHNBGW:]] to offer an Iuh interface towards hNodeBs (femtocells, small cells)
20 6 laforge
21 11 laforge
_We are always looking for [[HardwareDonations]] of any kind of 2G / 3G / LTE related carrier equipment._
22 6 laforge
23 13 laforge
There is also work on creating SS7 / SIGTRAN / TCAP / MAP protocol stacks, both in the [[erlang-core-network-signalling-projects:Erlang]] programming language as well as in Smalltalk.
24 6 laforge
25 13 laforge
There are many other side projects like the "SIMtrace":http://simtrace.osmocom.org/ protocol tracer/sniffer for (U)SIM APDUs.
26 6 laforge
27 13 laforge
28 6 laforge
h1. Overview Diagram
29 6 laforge
30 6 laforge
Please see the below overview diagram about common possible configurations of the Osmocom software.
31 6 laforge
32 4 laforge
!osmocom-gsm.png!
33 6 laforge
34 6 laforge
h2. Getting started
35 1 laforge
36 25 neels
The recommended way of installing Osmocom software is by [[Nightly Builds]] (for Debian and Ubuntu based systems).
37 20 neels
38 1 laforge
The alternative is to [[Build from Source]].
39 20 neels
40 26 neels
To pick which Osmocom components you need and where to go from there, take a look at the [[Configuration Guide]].
41 25 neels
42 26 neels
If you have an OsmoNITB installation and would like to move to separate OsmoMSC and OsmoBSC with the new M3UA SIGTRAN, see the [[OsmoNITB Migration Guide]].
43 6 laforge
44 6 laforge
h2. Software
45 6 laforge
46 6 laforge
h3.  Software for a Base Transceiver Station
47 6 laforge
48 6 laforge
* [[OsmoBTS:]] -- A BTS implementation
49 6 laforge
** [[OsmoTRX:]] -- A transceiver for [[OsmoBTS:]] to use with SDR hardware
50 8 laforge
* [[OsmoPCU:]] -- A packet control unit for GPRS/EDGE enabling the BTS.
51 6 laforge
52 6 laforge
h3. Software for running a full minimal GSM Network in a Box
53 6 laforge
54 6 laforge
* [[OsmoNITB:]] -- A stand-alone gsm-network-in-a-box program implementing minimal subset of BSC, MSC, HLR, AuC and EIR.
55 6 laforge
56 6 laforge
h3. Software for running in pure _BSC only_ mode, attaching via A/SCCP to a MSC
57 6 laforge
58 16 laforge
* [[OsmoBSC:]] -- [[OpenBSC:]] in BSC-only mode (with external MSC)
59 16 laforge
* [[bsc_mgcp|osmo-bsc_mgcp]] -- A stupid [[MediaGatewayControlProtocol]] (MGCP) gateway for OsmoBSC
60 16 laforge
61 6 laforge
62 6 laforge
h3.  Software for UMA/GAN (Unified Mobile Access)
63 6 laforge
64 6 laforge
* [[OpenBSC:osmo-ganc]] -- [[OpenBSC:]] in GANC mode
65 6 laforge
66 6 laforge
h3.  Special purpose software for aggregating multiple A or Gb links
67 1 laforge
68 1 laforge
** [[bsc_nat]] -- a BSC NAT/Multiplexer
69 6 laforge
** [[osmo-gbproxy]] -- A proxy/gateway for aggregating multiple Gb links betwen BSS and SGSN
70 6 laforge
** [[release-testing|Testing]] -- Comments and what makes sense to test for releases
71 6 laforge
72 6 laforge
h3. GPRS/EDGE related software
73 6 laforge
74 13 laforge
* [[OsmoPCU:]] -- A GPRS + EDGE RLC/MAC and PCU implementation to be used with [[OsmoBTS:]]
75 13 laforge
* [[OsmoSGSN:]] -- A Serving GPRS Support Node
76 24 laforge
* [[OpenGGSN:OsmoGGSN]] -- A Gateway GPRS Support Node
77 6 laforge
78 13 laforge
There's also a tutorial at [[OpenBSC_GPRS]] explaining how to add data support to your [[OsmoNITB:]] setup
79 6 laforge
80 13 laforge
81 9 laforge
* Important legal information on [[SoftwareLicensing]]
82 6 laforge
* [[meas_web]] -- Web based measurement utility for [[OpenBSC:]]
83 6 laforge
84 6 laforge
h2. Developers
85 6 laforge
86 9 laforge
* Browse the repositories at http://git.osmocom.org/
87 13 laforge
* Mailinglists at http://lists.osmocom.org/mailman/listinfo/
88 13 laforge
* Jenkins (continuous integration at http://jenkins.osmocom.org/jenkins/
89 9 laforge
* Wiki is right here ;)
90 9 laforge
* Developer conferences: [[OpenBSC:OsmoDevCon]]
91 22 neels
* [[OpenBSC:Tasks]] -- Tasks/Internships/Junior Jobs for [[OpenBSC:]] and Osmocom
92 6 laforge
* [[Devtools]] -- Various tools to find/fix errors, send patches, etc
93 6 laforge
* [[Coding_standards]] -- Coding standards
94 21 neels
* [[Make a new release]]
95 6 laforge
96 6 laforge
h2. Related projects
97 6 laforge
98 6 laforge
99 1 laforge
* [[OsmocomBB:]] - Free Software GSM protocol stack for mobile phones
100 18 laforge
* OpenBTS:http://gnuradio.org/redmine/projects/gnuradio/wiki/OpenBTS
101 6 laforge
* "The THC GSM project":http://wiki.thc.org/gsm/
102 6 laforge
* "airprobe.org":http://airprobe.org/
103 6 laforge
* "Homepage of Dr.-Ing. Joachim Goeller":http://www2.informatik.hu-berlin.de/~goeller/
104 6 laforge
105 6 laforge
h2. Thanks
106 9 laforge
107 23 pespin
* to "On-Waves ehf":http://on-waves.com/ and "sysmocom GmbH":http://sysmocom.de/ for funding part of the development and maintenance
108 9 laforge
* to http://junghanns.net for supporting us with discounted E1 boards
109 6 laforge
* to "Netzing AG":http://netzing.de/ for funding part of the earlier [[OpenBSC:]] development
110 6 laforge
* to Kevin Redon for the Osmocom logo
111 6 laforge
 
112 4 laforge
---
113 5 laforge
114 5 laforge
Please check the project/wiki pages of the respecitve sub-projects.
115 4 laforge
116 4 laforge
h2. This Wiki
117 4 laforge
118 4 laforge
This wiki contains information that is shared by the various sub-projects.  
119 4 laforge
120 1 laforge
A full list of wiki pages is listed below:
121 3 laforge
122 1 laforge
{{child_pages}}
Add picture from clipboard (Maximum size: 48.8 MB)