Project

General

Profile

Wiki » History » Version 31

daniel, 05/02/2018 03:18 PM

1 13 laforge
h1. Intro: Osmocom Cellular Network Infrastructure
2 1 laforge
3 7 laforge
{{>toc}}
4
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 31 daniel
While previous installations mostly used [[OsmoNITB:]] from the OpenBSC project as a monolithic core development has now shifted to individual projects performing the different tasks that were previously united inside the [[OsmoNITB:]], such as:
12 1 laforge
13 31 daniel
* [[OsmoMSC:]] - a _GSM/UMTS Mobile Switching Center_ with support for AoIP as well as IuCS. SCCPlite support is work in progress
14
* [[OsmoBSC:]] - a _GSM Base Station Controller_ with support for many different BTS vendors and models attached via Abis (over E1 and IP).
15
* [[OsmoSTP:]] - a _SS7 Transfer Point_ to connect MSC and BSC
16
* [[OsmoHLR:]] - a minimal implementation of a _Home Location Register_
17
* [[OsmoMGW:]] - _Media GateWay_ to relay RTP streams
18 1 laforge
19 31 daniel
This is more in line with the way a traditional GSM network is operated.
20
21
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 available, based on our [[OsmoBTS:]] software using hardware from sysmocom ([[openbsc:sysmoBTS]]), Fairwaves ([[UmTRX:]]) or Ettus (USRP)
22
23 24 laforge
In addition, the Osmocom project also develops and maintains the [[OsmoPCU:]], [[OsmoSGSN:]] and [[OpenGGSN:OsmoGGSN]] programs for adding GPRS and EDGE capabilities.
24 1 laforge
25 31 daniel
Most recently, there is a project for adding 3G (UMTS, HSPA) support.  Specifically, this is adding Iu-CS and Iu-PS support to [[OsmoMSC:]] and [[OsmoSGSN:]], as well as a new [[OsmoHNBGW:]] to offer an Iuh interface towards hNodeBs (femtocells, small cells)
26 6 laforge
27
_We are always looking for [[HardwareDonations]] of any kind of 2G / 3G / LTE related carrier equipment._
28 13 laforge
29 6 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.
30 13 laforge
31 6 laforge
There are many other side projects like the "SIMtrace":http://simtrace.osmocom.org/ protocol tracer/sniffer for (U)SIM APDUs.
32 1 laforge
33 13 laforge
34 6 laforge
h1. Overview Diagram
35
36
Please see the below overview diagram about common possible configurations of the Osmocom software.
37
38 31 daniel
!osmocom-cni.png!
39 6 laforge
40 29 lynxis
h1. Getting started
41 1 laforge
42 30 neels
A self-contained setup with minimal config of your core network is described at [[Osmocom Network In The Box]].
43 20 neels
44 30 neels
For a more general overview of your options, take a look at the [[Configuration Guide]].
45 25 neels
46 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]].
47 6 laforge
48
h2. Software
49
50
h3.  Software for a Base Transceiver Station
51
52
* [[OsmoBTS:]] -- A BTS implementation
53
** [[OsmoTRX:]] -- A transceiver for [[OsmoBTS:]] to use with SDR hardware
54 8 laforge
* [[OsmoPCU:]] -- A packet control unit for GPRS/EDGE enabling the BTS.
55 6 laforge
56
h3. Software for running a full minimal GSM Network in a Box
57
58 27 neels
These circuit-switched (voice) related core network components can all run on the same box:
59
60
* [[OsmoHLR:]]
61
* [[OsmoMSC:]]
62
* [[OsmoMGW:]]
63
* [[OsmoSTP:]]
64
* [[OsmoBSC:]]
65
66
They replace the old
67
68 6 laforge
* [[OsmoNITB:]] -- A stand-alone gsm-network-in-a-box program implementing minimal subset of BSC, MSC, HLR, AuC and EIR.
69
70
h3. Software for running in pure _BSC only_ mode, attaching via A/SCCP to a MSC
71
72 16 laforge
* [[OsmoBSC:]] -- [[OpenBSC:]] in BSC-only mode (with external MSC)
73
* [[bsc_mgcp|osmo-bsc_mgcp]] -- A stupid [[MediaGatewayControlProtocol]] (MGCP) gateway for OsmoBSC
74
75 6 laforge
76
h3.  Software for UMA/GAN (Unified Mobile Access)
77
78
* [[OpenBSC:osmo-ganc]] -- [[OpenBSC:]] in GANC mode
79
80
h3.  Special purpose software for aggregating multiple A or Gb links
81 1 laforge
82
** [[bsc_nat]] -- a BSC NAT/Multiplexer
83 6 laforge
** [[osmo-gbproxy]] -- A proxy/gateway for aggregating multiple Gb links betwen BSS and SGSN
84
** [[release-testing|Testing]] -- Comments and what makes sense to test for releases
85
86
h3. GPRS/EDGE related software
87
88 13 laforge
* [[OsmoPCU:]] -- A GPRS + EDGE RLC/MAC and PCU implementation to be used with [[OsmoBTS:]]
89
* [[OsmoSGSN:]] -- A Serving GPRS Support Node
90 24 laforge
* [[OpenGGSN:OsmoGGSN]] -- A Gateway GPRS Support Node
91 6 laforge
92 13 laforge
There's also a tutorial at [[OpenBSC_GPRS]] explaining how to add data support to your [[OsmoNITB:]] setup
93 6 laforge
94 13 laforge
95 9 laforge
* Important legal information on [[SoftwareLicensing]]
96 6 laforge
* [[meas_web]] -- Web based measurement utility for [[OpenBSC:]]
97
98
h2. Developers
99
100 9 laforge
* Browse the repositories at http://git.osmocom.org/
101 13 laforge
* Mailinglists at http://lists.osmocom.org/mailman/listinfo/
102
* Jenkins (continuous integration at http://jenkins.osmocom.org/jenkins/
103 9 laforge
* Wiki is right here ;)
104
* Developer conferences: [[OpenBSC:OsmoDevCon]]
105 22 neels
* [[OpenBSC:Tasks]] -- Tasks/Internships/Junior Jobs for [[OpenBSC:]] and Osmocom
106 6 laforge
* [[Devtools]] -- Various tools to find/fix errors, send patches, etc
107
* [[Coding_standards]] -- Coding standards
108 21 neels
* [[Make a new release]]
109 6 laforge
110
h2. Related projects
111
112
113 1 laforge
* [[OsmocomBB:]] - Free Software GSM protocol stack for mobile phones
114 18 laforge
* OpenBTS:http://gnuradio.org/redmine/projects/gnuradio/wiki/OpenBTS
115 6 laforge
* "The THC GSM project":http://wiki.thc.org/gsm/
116
* "airprobe.org":http://airprobe.org/
117
* "Homepage of Dr.-Ing. Joachim Goeller":http://www2.informatik.hu-berlin.de/~goeller/
118
119
h2. Thanks
120 9 laforge
121 23 pespin
* to "On-Waves ehf":http://on-waves.com/ and "sysmocom GmbH":http://sysmocom.de/ for funding part of the development and maintenance
122 9 laforge
* to http://junghanns.net for supporting us with discounted E1 boards
123 6 laforge
* to "Netzing AG":http://netzing.de/ for funding part of the earlier [[OpenBSC:]] development
124
* to Kevin Redon for the Osmocom logo
125
 
126 4 laforge
---
127 5 laforge
128
Please check the project/wiki pages of the respecitve sub-projects.
129 4 laforge
130
h2. This Wiki
131
132
This wiki contains information that is shared by the various sub-projects.  
133
134 1 laforge
A full list of wiki pages is listed below:
135 3 laforge
136 1 laforge
{{child_pages}}
Add picture from clipboard (Maximum size: 48.8 MB)