running gprs/edge data services with osmocom · gprs con guration (sgsn) sgsn gtp local-ip b.b.b.b...
TRANSCRIPT
Running GPRS/EDGE Data Services with Osmocom
Daniel Willmann <[email protected]>
April 21, 2017
sysmocom - s.f.m.c. GmbH
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Contents
GPRS structure
PCU
NITB
SGSN
GGSN
Running GPRS
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 2
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Classic GPRS
Structure of a GSM network
CN: Core NetworkMS: Mobile Station
UE: UserEquipment
ME: MobileEquipment
ICCGERAN: GSM EDGE Radio
Access Network BSS: Base Station System GPRS PS:
Packet SwitchedPS & CS
CS: CircuitSwitched
AN: Access Network
MSC: MobileSwitching Centre HSSUm
SIM-ME
Abis
Gb
PSTN
A
Nb
Mc
Nc
E
B
CH
D
G
F
Gf,Sv
Gd
Gn
Gc
Gp
Gi
PSTN
Internet
1 2 3
4 5 6
7 8 9
# 0 *
BTS: BaseTransceiver
Station
BSC:Base Station
Controller
CS-MGW
SGSN
MT/TE
SIM
GGSN
VLR
EIR
MSC server
1 2 3
4 5 6
7 8 9
# 0 *
HLR AuC
SMS-GMSC
1 2 3
4 5 6
7 8 9
# 0 *
1 2 3
4 5 6
7 8 9
# 0 *
GMSC
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 3
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Osmocom GPRS
Configuration needed for:
OsmoNITB
OsmoPCU (located at BTS level)
OsmoSGSN
OpenGGSN
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 4
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration
IP: y.y.y.y
Gb/IP
sysmoBTS direct PHY access
PCU Sock
SDR Hardware
OsmoTRX Transceiver
VTY
OsmoBTS
osmo-bts-trx osmo-bts-sysmo
CTRL
sysmoBTS PHYsysmoBTS Hardware
Abis/IP
VTY CTRL
OsmoSGSN
OsmoNITBVTY CTRL
Includes functionality of* BSC* MSC/VLR* HLR/AUC* SMSC
OsmoPCU
CTRLVTY
GTP/IP
OpenGGSN
IP: a.a.a.aIP: x.x.x.x
IP: b.b.b.b
IP: y.y.y.y
IP: c.c.c.c
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 5
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (PCU)
Setup coding scheme (CS) and when to switch CS
Throughput optimizations (flow control, TBF idle time)
BSC/NITB configures the rest
pcu
cs 2
cs max 4
cs threshold 50 80
alloc -algorithm dynamic
dl -tbf -idle -time 1000
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 6
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (NITB)
network
bts 0
gprs mode gprs
gprs routing area 1
gprs cell bvci 1234
gprs nsei 1234
gprs nsvc 0 nsvci 1234
gprs nsvc 0 local udp port 23001
gprs nsvc 0 remote udp port 23000
gprs nsvc 0 remote ip a.a.a.a
trx 0
timeslot 6
phys_chan_config TCH/F_TCH/H_PDCH
timeslot 7
phys_chan_config PDCH
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 7
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (SGSN)
sgsn
gtp local -ip b.b.b.b
ggsn 0 remote -ip c.c.c.c
ggsn 0 gtp -version 1
auth -policy closed
imsi -acl add 12345678901234
!
ns
encapsulation udp local -ip a.a.a.a
encapsulation udp local -port 23000
encapsulation framerelay -gre enabled 0
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 8
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (SGSN)
sgsn
gtp local -ip b.b.b.b
ggsn 0 remote -ip c.c.c.c
ggsn 0 gtp -version 1
auth -policy closed
imsi -acl add 12345678901234
!
ns
encapsulation udp local -ip a.a.a.a
encapsulation udp local -port 23000
encapsulation framerelay -gre enabled 0
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 8
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (SGSN)
auth-policy can be accept-all, closed, acl-only, remote
auth-policy remote for authorization and encryption with osmo-hlr
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 9
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
GPRS configuration (GGSN)
listen c.c.c.c
net 10.23.42.0/24
pcodns1 8.8.8.8
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 10
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Miscellaneous
Don’t forget masquerading/IP forwarding:
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Enable data roaming on your phone
APN might need to be set manually
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 11
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Running it all
Demo
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 12
Overview GPRS structure PCU NITB SGSN GGSN Running GPRS
Thank you
Questions?
https:
//osmocom.org/projects/cellular-infrastructure/wiki/OpenBSC_GPRS
Daniel Willmann | Running GPRS/EDGE Data Services with Osmocom | sysmocom - s.f.m.c. GmbH | 13