OpenBTS A so,waredefined mobile network
What is OpenBTS?
“The OpenBTS so,ware is a Linux applicaAon that uses a so,ware-‐defined radio to present a standard 3GPP air interface to user devices, while simultaneously presenAng those devices as SIP endpoints to the Internet. This forms the basis of a new type of wireless network which promises to expand coverage to unserved and underserved markets while unleashing a plaLorm for telecom innovaAon.”
What is OpenBTS? – in English
• It’s the 21st century! • We have the internet, we have VoIP and SIP, and…
• We have SDRs, and we don’t have to go broke to get one
• We have servers and open-‐source high-‐performance so,ware.
• Networks can be soooo much simpler to build
How does it work?
OpenBTS.org
OpenBTS turns this...
Abis
BTSBTSBSCA
BSC
VLR
MSCMSCHLRSS7-MAP
AuC
Radio
BH
GMSC
Nc
SGSN
Gb
GGSN
IP
InternetPSTN
Gn
Home Location RegisterAuthentication CenterMobile Switching CenterVisitor Location RegisterGateway Mobile Switching CenterBase Station ControllerServing GPRS Support NodeGateway GPRS Support NodeBase Transceiver Station
Modem
Handset
How does it work?
OpenBTS.org
Radio
PSTN ITSP Internet
IP
SIP/RTP
OpenBTSOpenBTS
SIP/RTP
Modem
Handset
Central ServicesSIPAuthServe
Asterisk
SMQueue
Original IP Architecture
How does it work?
OpenBTS.org
Um
PSTN ITSP Internet
IP
SIP/RTP
OpenBTSOpenBTS
Erlang
Modem
Handset
KazooAuthorization Server
Voice Switch
Message Queue
Kazoo Architecture
FreeSWITCHSIP/RTP
How did it start?
• Project publicly launched in 2008 • Voice only, USRP1 only • 30,000 page hits first few days • By 2011: – Custom SDR and hardware – Added SMS – Started development on GPRS and UMTS
A closer look…
OpenBTS Architecture
GSMHandsetGSM
HandsetGSMHandsetGSMHandsets
DigitalRadio
GSM Stack(L1, L2)
Hybrid GSM/SIPControl Layer
(L3)
Transceiver
time-taggedsample pckets
time-taggedGSM bursts SIP
Privateor Public
IP NetworkSIP,IAX,etc.
AnalogRF Gear
RF
"Um",the GSM
Air Interface
softAbis
smqueueSIP
SIP
Private IPNetwork
SIP
OpenBTS
Hardware
Using an SDR
• ModulaAon is GMSK (MSK w/ Gaussian filter pulse shaping)
• Easily approximated as a BPSK signal with frequency shi, and pulse shaping
• Makes processing much simpler, parAcularly the demodulator
• Our approach: Keep dependency on radio as lifle as possible!!!
• Want radio to do as lifle as possible.
OpenBTS and the SDR • Two separate process:
OpenBTS and Transceiver • OpenBTS: L1.5 and up • Transceiver: L1 and
below
• MulA-‐threaded approach to perform easily parallelizable operaAons
• Receive stream is the BTS clock.Sets the Aming for enAre BTS.
• Bursts for transmission need to get to radio on Ame, especially over USB.
OpenBTS-‐UMTS and the SDR • RadioInterface
abstracts radio(s) from Transceiver
• Keep radio simple:
• Interpolate, Decimate
• Tune TX, RX frequencies
• Tune TX and RX gains
• Calibrate VCTCXO • Minimize amount
of on-‐radio DSP
GSM signal processing
• Per-‐ARFCN demodulaAon is fairly straighLorward
• Higher layers indicated Ameslot has access burst or normal burst
• Correlate midamble sequences to obtain channel esAmate
• Apply phase/amplitude compensaAon or decision-‐feedback equalizaAon if warranted
• Pass so,-‐outputs up to Viterbi decoder
Moving to 3G
• GSM w/ a vastly different physical layer and access scheme. (I’m oversimplifying a bit…)
• No more TDMA and GMSK, its WCDMA • SAll have frames that of 10, 20, 40, 80 ms • Each frame contains 15 slots. • QPSK modulaAon. Data rate is 3.84MHz. • Root raised cosine filter w/ 0.22 rolloff factor
What is spreading/scrambling?
• MulAply each bit by a pseudo-‐noise sequence of N bits.
• Spreads signal power over a bandwidth of that is N Ames larger. Signal looks like noise.
• MulAple signals can share same bandwidth. Use different sequences (or codes)for spreading.
• N is called the spreading factor. • Scrambling is simply XOR of post-‐spread stream with another pseudo-‐noise sequence.
3G Physical Layer
• ModulaAon is simple: – Convert slot’s worth of bits to QPSK – Spread bits by factor of 4-‐512 to match 3.84MHz – Scramble bits and transmit
• Downlink: Users disAnguished by spreading codes, all share same scrambling code
• Uplink: Users disAnguished by scrambling codes, all share same spreading code
3G Physical Layer
• Handsets close to NodeB can drown out handsets that are very far away.
• Called the near/far problem. Classic issue w/ CDMA
• Power control the handsets. Measure power and signal quality (w/ SDR) of each handset.
• Turn down power if handset is above target, turn up power if handset is below target.
• Consider other factors: data rate, QoS, etc.
What is OpenBTS now? • St. Pierre & Miquelon
– Commercially launched Nov 2014
– 2nd Operator in the town of St. Pierre, pop. 6,000
– 6-‐node network using 50W OpenCell base staAons at 900MHz serving an urban area of 25 km2
– Voice, Text, Fill-‐in Data (where WiFi not available)
– Deployed by a Cisco CerAfied Network Administrator (CCNA)
What is OpenBTS now?
St.$Pierre$IP$Backhaul$Network$
OpenCell'
OpenCell'OpenCell'
OpenCell'
Public$Internet$IP$Router$
SIP$Trunk$Provider$
PSTN$(Rest$of$World)$$
Central$Switch$Control$Plane$
ConfiguraBon$/$$Monitoring$
Provisioning$/$Billing$Systems$
PSTN$Gateway$
PSTN$(St.$Pierre)$$
Ethernet$Switch$OpenCell'
OpenCell'
Miquelon$Local$IP$Network$
What is OpenBTS now?
• Research StaAon in AntarcAca • Connects 3 labs • Satellite (IP) link to connect with the rest of the world
What is OpenBTS now? • Base staAon in a helicopter • Rescue hikers using their cellphone as a beacon
“We can now complete the mission in the amount of 3me it used to take to launch the mission”
-‐Baldvin Hansson Director of Technology, Rogg
What does the future hold?
• More and more tracAon amongst operators and equipment providers
• One of the last industries that use closed, proprietary customized hardware soluAons
• Much more awareness of so,ware-‐defined radios and so,ware-‐defined networking.
• Time for commodiAzed hardware! • SDRs are a crucial cornerstone of this evoluAon
Thank you!
• Project site: openbts.org – Join the mailing list – Download the so,ware – Download design files of first-‐gen SDR – Contribute back changes
• Email me: [email protected]