Project

General

Profile

Wiki » History » Version 13

laforge, 02/27/2016 08:32 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 13 laforge
In addition, the Osmocom project also develops and maintains the [[OsmoPCU:]], [[OsmoSGSN:]] and [[OpenGGSN:]] 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
35 6 laforge
h2. Getting started
36 6 laforge
37 9 laforge
[[OpenBSC:UnderstandingOpenBSC]] -- Where to start learning about [[OpenBSC:]], what it does, and how.
38 6 laforge
39 6 laforge
40 6 laforge
h2. Software
41 6 laforge
42 6 laforge
h3.  Software for a Base Transceiver Station
43 6 laforge
44 6 laforge
* [[OsmoBTS:]] -- A BTS implementation
45 6 laforge
** [[OsmoTRX:]] -- A transceiver for [[OsmoBTS:]] to use with SDR hardware
46 8 laforge
* [[OsmoPCU:]] -- A packet control unit for GPRS/EDGE enabling the BTS.
47 6 laforge
48 6 laforge
h3. Software for running a full minimal GSM Network in a Box
49 6 laforge
50 6 laforge
* [[OsmoNITB:]] -- A stand-alone gsm-network-in-a-box program implementing minimal subset of BSC, MSC, HLR, AuC and EIR.
51 6 laforge
52 6 laforge
h3. Software for running in pure _BSC only_ mode, attaching via A/SCCP to a MSC
53 6 laforge
54 9 laforge
* [[OsmoBSC:]] -- [[OpenBSC:]] in BSC-only mode
55 9 laforge
** [[OsmoBSC:OpenBSCWithSCCP]] -- Howto use [[OpenBSC:]] with a separate/real MSC
56 6 laforge
* [[bsc_mgcp]] -- A stupid [[MediaGatewayControlProtocol]] (MGCP) gateway
57 6 laforge
** [[bsc_mgcp_VTY]] -- Reference for the interactive command line and config file
58 6 laforge
59 6 laforge
h3.  Software for UMA/GAN (Unified Mobile Access)
60 6 laforge
61 6 laforge
* [[OpenBSC:osmo-ganc]] -- [[OpenBSC:]] in GANC mode
62 6 laforge
63 6 laforge
h3.  Special purpose software for aggregating multiple A or Gb links
64 1 laforge
65 1 laforge
** [[bsc_nat]] -- a BSC NAT/Multiplexer
66 6 laforge
*** [[bsc_nat_VTY]] -- Reference for the interactive command line and config file
67 1 laforge
*** [[bsc_nat_release]] -- Release testing for the BSC NAT.
68 6 laforge
** [[osmo-gbproxy]] -- A proxy/gateway for aggregating multiple Gb links betwen BSS and SGSN
69 1 laforge
*** [[osmo-gbproxy_VTY]] -- Reference for the interactive command line and config file
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 1 laforge
** [[OsmoSGSN:osmo-sgsn_VTY]] -- Reference for the interactive command line and config file
77 13 laforge
* [[[OpenGGSN:]] -- A Gateway GPRS Support Node
78 6 laforge
79 13 laforge
There's also a tutorial at [[OpenBSC_GPRS]] explaining how to add data support to your [[OsmoNITB:]] setup
80 6 laforge
81 13 laforge
82 9 laforge
* Important legal information on [[SoftwareLicensing]]
83 6 laforge
* [[meas_web]] -- Web based measurement utility for [[OpenBSC:]]
84 6 laforge
85 6 laforge
h2. Developers
86 6 laforge
87 9 laforge
* Browse the repositories at http://git.osmocom.org/
88 13 laforge
* Mailinglists at http://lists.osmocom.org/mailman/listinfo/
89 13 laforge
* Jenkins (continuous integration at http://jenkins.osmocom.org/jenkins/
90 9 laforge
* Wiki is right here ;)
91 9 laforge
* Developer conferences: [[OpenBSC:OsmoDevCon]]
92 6 laforge
* [[Tasks]] -- Tasks/Internships/Junior Jobs for [[OpenBSC:]] and Osmocom
93 6 laforge
* [[Devtools]] -- Various tools to find/fix errors, send patches, etc
94 6 laforge
* [[Coding_standards]] -- Coding standards
95 6 laforge
96 6 laforge
97 6 laforge
h2. Related projects
98 6 laforge
99 6 laforge
100 6 laforge
* [[OsmocomBB:]] - Free Software GSM protocol stack for mobile phones
101 6 laforge
* [http://gnuradio.org/redmine/projects/gnuradio/wiki/OpenBTS [[OpenBTS]]":http://bb.osmocom.org/]
102 6 laforge
* "The THC GSM project":http://wiki.thc.org/gsm/
103 6 laforge
* "airprobe.org":http://airprobe.org/
104 6 laforge
* "Homepage of Dr.-Ing. Joachim Goeller":http://www2.informatik.hu-berlin.de/~goeller/
105 6 laforge
106 6 laforge
107 6 laforge
h2. Thanks
108 9 laforge
109 9 laforge
* to "On-Waves ehf":http://on-waves.com/ and "sysmocom GmbH":http://sysmocom.de/ for funding part of the development and maintennance
110 9 laforge
* to http://junghanns.net for supporting us with discounted E1 boards
111 6 laforge
* to "Netzing AG":http://netzing.de/ for funding part of the earlier [[OpenBSC:]] development
112 6 laforge
* to Kevin Redon for the Osmocom logo
113 6 laforge
 
114 4 laforge
---
115 5 laforge
116 5 laforge
Please check the project/wiki pages of the respecitve sub-projects.
117 4 laforge
118 4 laforge
h2. This Wiki
119 4 laforge
120 4 laforge
This wiki contains information that is shared by the various sub-projects.  
121 4 laforge
122 1 laforge
A full list of wiki pages is listed below:
123 3 laforge
124 1 laforge
{{child_pages}}