What this talk is about

Running your own Internet-style network

Running your own GSM network

Until 2009 the situation looked like this:

Why no cellular FOSS?

Enter Osmocom

In 2008, some people (most present in this room) started to write FOSS for GSM

Classic GSM network architecture

Gsm_structures.svg

GSM Acronyms, Radio Access Network

MS

Mobile Station (your phone)

BTS

Base Transceiver Station, consists of 1..n TRX

TRX

Transceiver for one radio channel, serves 8 TS

TS

Timeslots in the GSM radio interface; each runs a specific combination of logical channels

BSC

Base Station Controller

GSM Acronyms, Core Network

MSC

Mobile Switching Center; Terminates MM + CC Sub-layers

HLR

Home Location Register; Subscriber Database

SMSC

SMS Service Center

GSM Acronyms, Layer 2 + 3

LAPDm

Link Access Protocol, D-Channel. Like LAPD in ISDN

RR

Radio Resource (establish/release dedicated channels)

MM

Mobility Management (registration, location, authentication)

CC

Call Control (voice, circuit switched data, fax)

CM

Connection Management

Osmocom GSM components

osmocom-cni.png

Classic GSM network as digraph

running-osmo-gsm__1.png

Osmocom GSM network

running-osmo-gsm__2.png

Which BTS to use?

We assume a sysmoBTS in the following tutorial

OsmoBTS Overview

osmo-bts.svg

See separate talk about BTS hardware options later today.

BTS Hardware vs. BTS software

Physical vs. Logical Arch (sysmoBTS)

running-osmo-gsm__3.png
running-osmo-gsm__4.png

Physical vs. Logical Arch (SDR e.g. USRP B2xx)

running-osmo-gsm__5.png
running-osmo-gsm__6.png

IP layer traffic

⇒ Make sure you permit the above communication in your network/firewall config

Configuring Osmocom software

Configuring OsmoBTS

Configuring OsmoBTS

bts 0
 band DCS1800 <1>
 ipa unit-id 1801 0 <2>
 oml remote-ip 192.168.100.11 <3>
  1. the GSM frequency band in which the BTS operates

  2. the unit-id by which this BTS identifies itself to the BSC

  3. the IP address of the BSC (to establish the OML connection towards it)

Note
All other configuration is downloaded by the BSC via OML. So most BTS settings are configured in the BSC/NITB configuration file.

Purpose of Unit ID

running-osmo-gsm__7.png

⇒ BSC identifies BTS on Unit ID, not on Source IP!

Configuring Osmocom CNI

Configuring Osmocom CNI

What a GSM phone does after power-up

→ let’s check if we can perform LOCATION UPDATE on our own network

Verifying our network

→ should show LOCATION UPDATE request / reject / accept

Exploring your GSM networks services

Using the VTY

Program

Telnet Port

OsmoBTS

4241

OsmoBSC

4242

OsmoMSC

4254

OsmoHLR

4258

Using the VTY (continued)

osmo-mgw: User Plane

running-osmo-gsm__8.png
running-osmo-gsm__9.png

Further Reading

The End