Professional Documents
Culture Documents
Abstract—Open source development applied to cellular GSM In recent years, open source implementations of various
technology is a fairly recent, but growing, concept. Another trend GSM components have been introduced as viable candidates
is the continually growing capability of low-power embedded for cellular system testing, research, and deployment. In open
processors, which makes them increasingly suitable for open
source GSM applications. This paper applies two open source source development, source code or hardware designs - and
software packages, OpenBTS and OpenBSC, to an readily generally many reserved rights - are provided under an open
available embedded hardware platform, the Universal Hardware license that permits nonrestrictive use. Two such open source
Radio Peripheral (USRP) E100. The USRP E100 device is a GSM examples are OpenBTS [2] and OpenBSC [3] which
heterogeneous processor platform designed for software-defined implement Base Transceiver Station (BTS) and Base Station
radio use. The result is an embedded base station that can
be deployed in standalone configuration or as part of a larger Controller (BSC) functionalities respectively. Together, the
GSM network. A software radio transceiver implementation is BTS and BSC comprise the Base Station Subsystem (BSS),
presented that leverages optimized capabilities of all available which is the combined entity that handles air interface traffic
processors: a general purpose ARM processor, DSP, and FPGA. and signalling between mobile handsets and the GSM core
Comparative performance measures are also provided. network.
While typically associated with software, the open source
I. I NTRODUCTION
model also applies to hardware where essential design infor-
The Global System for Mobile (GSM) cellular standard, mation, such as schematics, firmware, or driver source code,
having been in existence for nearly two decades, is the most is made openly available. For example, the Universal Software
widely deployed wireless technology in the world. As of July Radio Peripheral (USRP) is a well known example of the open
2012, the number of overall cellular subscriptions worldwide source development model applied to a hardware product.
stands at 5.6 billion with roughly 75% of connections served With products such as the USRP and the general availabil-
by standard GSM [1]. Undoubtedly, third generation networks ity of low-cost, high performance processing capability, the
and beyond, such as Universal Mobile Telecommunications often complicated task of procuring dedicated – and gener-
System (UMTS) and Long Term Evolution (LTE), are under- ally restrictive – GSM baseband equipment is substantially
going extraordinary growth and will constitute a significant reduced. The combination of easily accessible open source
market share moving forward. Currently, however, users of software and hardware has allowed GSM implementations to
these advanced networks still make up a minority share of be developed and operational systems constructed in relatively
subscribers when examined at a global scale - this is especially short periods of time with significantly lower costs compared
true in many developing regions and conflict zones where sub- to more traditional development paths. With a substantially
scribers may be restricted by economic or political concerns in lower barrier to entry, open source implementations such as
addition to limited availability of high speed networks. While OpenBTS, OpenBSC, and the USRP have influenced and
we can surely expect GSM market share to decline over time, supported discussion around critical topics such as mobile
GSM networks will continue to maintain a large worldwide security [4]–[6], rural access [7], [8], privacy and public policy
presence serving billions of users for the near and indefinite [9], [10].
future. Progressing in parallel to the availability of open hardware
Given the ubiquity of GSM based products, access to is the progressing capability of embedded processors and de-
developmental GSM technology has generally been prohibitive vices. Low-power and increasingly fast embedded processors
for most researchers and individuals outside of commercial have distinctly driven a new wave of consumer and military
wireless industries. The restrictive nature of the technology is applications in products such as smartphones and military ra-
both complex and longstanding; various reasons include regu- dios. When combined with open source GSM software, similar
latory access, proprietary licensing, and patent encumbrances application processors that drive these now ubiquitous prod-
among numerous other concerns. While the state of these and ucts are also capable of supporting unconventional applications
other related issues continue to evolve within their respective such as embedded base station and network functionality.
circles, alternative development paths have recently emerged The potential effects of easily accessible open source GSM
from the open source community. technology existing in the reduced form factor of embedded
A. Interprocessor Communication
Distribution of base station functionality across the set
of multiple, heterogeneous cores greatly improves efficiency
and increases the capabilities of the device, but introduces
the added task of managing communication across each of
the different processing units. Because of disparate physical
locations, interconnects, and the unique characteristics of each
processor, there is no unified interprocessor communication
architecture available for the E100. Rather, interaction between
the specialized DSP and FPGA cores and the GPP occurs
through separate, independently implemented interfaces. Also,
no direct FPGA–DSP line of interaction is implemented as all
communications flows through the GPP. While less optimal Fig. 3. C64x shared memory transport
than a directly mapped FPGA–DSP interface, this approach
was found sufficient for OpenBTS use as shown in the
performance results section. IV. P HYSICAL L AYER I MPLEMENTATION
The FPGA communicates with the ARM processor through The FPGA of the E100 provides a variety of functions that
a combination of GPIO and memory transfers controlled by include supporting external connectivity, device configuration,
and interfacing to mixed signal components. Serving as an
intermediate stage between GSM signal processing and the
digital converters, the FPGA provides flexible sample rate
selection and rate matching appropriate for the GSM specific
symbol rate of 270.833 ksps. Furthermore, by shifting the
high rate, and most intensive, filtering operations to the FPGA
reduces overall computational burden throughout the entire
system.
A. TDMA Interface
The GSM standard uses time division multiple access
(TDMA) for network access which places strict timing re-
quirements on the hardware in order to maintain precise times-
lot alignment. Real time performance limitations of general
purpose application processors, such as the ARM, prohibit
their direct use for cellular applications. Even when real
time operating systems (RTOS) are employed, the necessary
sample stability for cellular TDMA access [15] is a significant
magnitude greater than the performance available from a GPP.
Consequently, OpenBTS leverages the FPGA, which provides Fig. 4. OpenBTS L1/PHY receive chain
predictable, deterministic behavior based on programmable
logic for timeslot alignment.
For the OpenBTS transceiver, the FPGA maintains send
and receive side buffers that contain packets of sampled data
and additional timing metadata. The timing metadata indicates
when the samples arrived or when samples should be sent for
receive and transmit functionalities respectively. With these
hardware generated timestamp values, TDMA timeslots are
precisely aligned by the FPGA with respect to other timeslots
in both downlink and uplink directions.
The combination of FPGA and ARM packet handling with
added timing metadata relaxes real time requirements that
would otherwise be intractable on the host GPP processor.
Real time requirements still exist on the host in the need
for packets to arrive on the FPGA before a rolling deadline,
however, this limitation is significantly less restrictive than that Fig. 5. OpenBTS L1/PHY transmit chain
of maintaining accurate sample timing alignment.
C. Performance Results in the form of small and large sized memory transactions
respectively.
In order to justify the architecture choices, independent test
cases were created to evaluate and compare different code and V. BSC I NTERFACING
processor combinations. The benchmark test case was based With an operational embedded transceiver, OpenBTS can be
on iterative convolution operations, which form the basis of the configured for standalone operation or modified for more typ-
OpenBTS transceiver signal processing. Repeated convolution ical BSC interface use. Section II described typical OpenBTS
closely reflects the transmit side modulation operation as well operation using a hybrid GSM–VoIP approach that operates
as interpolation filtering heavily used in the OpenBTS receiver. without a dedicated BSC. This section describes the alternative
The tests included 20,000 iterations of randomized GSM bursts approach of attaching a BSC to OpenBTS over IP.
(sequences of 156 complex symbols sampled at 2 samples
per symbol) convolved with an 8 tap real valued FIR filter. A. Motivations
Mean burst processing rate was then derived from the overall Integrating OpenBTS and OpenBSC connects two major
completion time. We compared NEON and DSP optimized open source projects together, allowing for more control
implementations against the ARM processor with the standard and customization of GSM components and protocols. This
GCC compiler output. Because use of the DSP involves inter- approach is accommodated by Osmo-USRP, a new interface
processor communication, we also examine various message layer designed to provide an interface between the two open
transport sizes. source packages. There are a number of motivations for such
A large increase in achievable burst handling rate was ob- an approach, which include addressing certain limitations of
served with SIMD and DSP optimization as shown in Table I. OpenBTS network configuration. Since OpenBTS has a hybrid
With NEON we observed a 12x speedup much higher than L3 with GSM and SIP features, the program cannot connect to
the expected 4x from vector operations alone. This disparity any GSM core infrastructure via the standard Abis interface.
is attributed selective memory operations, which constitute While this is an advantage of a strictly OpenBTS configuration
a sizeable portion of processor time in addition to internal in many ways, it can be prohibitive in other situations – namely
register–register arithmetic operations. Much larger speedups OpenBTS does not support standardized multi-cellular features
are found in the DSP case with the dedicated processor enabled by the BSC. By building an interface to connect
and fixed point implementation. Note that DSP performance OpenBTS to OpenBSC and effectively remove hybrid SIP
was directly linked to transport message size, which clearly functionality, there are additional possibilities for operating
illustrates the overhead of interprocessor communications. In a custom open source GSM network with multiple BTS
fact, we can conclude that for our GSM test case, the C64x components. Configuration and operating status, as well as
DSP is underutilized and primarily limited by memory and custom goals such as monitoring target users, can then be
transport overhead rather than actual signal processing. managed at a centralized instance of OpenBSC.
In summary, the GCC compiler is not particularly effec-
tive in generating efficient ARM code for repetitive filtering B. Design Implementation
operations. Substantial increases can be found by optimizing The L1 and transceiver functionality of OpenBTS is inte-
with NEON assembly instructions. Not surprisingly, addi- grated with the GSM core network of OpenBSC and Osmo-
tional, substantial gains can be found by using the dedicated BTS. This integration is achieved through the Osmo-USRP
DSP coprocessor. With this approach, though, the accelerated layer, which removes most of L2 and hybrid L3 from
computing capability must be balanced with the overhead of OpenBTS and provides an interface to the L2 of Osmo-BTS.
interprocessor communication. Additionally, in both NEON In Figure 6, the architecture of interconnecting open source
and DSP cases, we encounter limitations of memory I/O speed programs is compared to that of the standard GSM network.
Finally, source code was also modified to support multiple
configurations of standalone OpenBTS operation or standard
GSM networked operation with OpenBSC.
R EFERENCES
[1] Global mobile Suppliers Association (GSA), “Global mobile market
update and output for GSM, WCDMA-HSPA/HSPA+ and LTE,” Sept
2011.
[2] D. Burgess, H. Samra, et al., “The OpenBTS Project,” [Online] Avail-
able: http://wush.net/trac/rangepublic, April 2012.
[3] H. Welte, H. Freyther, et al., “OpenBSC,” [Online] Available: http://
openbsc.osmocom.org, April 2012.
[4] I. Androulidakis, “Confidentiality, Integrity, and Availability Threats
in Mobile Phones,” in Mobile Phone Security and Forensics, ser.
SpringerBriefs in Electrical and Computer Engineering, 2012, pp. 1–
11.
[5] M. Becher, F. Freiling, J. Hoffmann, T. Holz, S. Uellenbeck, and
C. Wolf, “Mobile Security Catching Up? Revealing the Nuts and Bolts
of the Security of Mobile Devices,” in Security and Privacy, 2011 IEEE
Symposium on, May 2011, pp. 96 –111.
Fig. 7. Osmo-BTS inter-layer message handling [6] M. Paik, “Stragglers of the herd get eaten: security concerns for GSM
mobile banking applications,” in Proceedings of the Eleventh Workshop
on Mobile Computing Systems & Applications, ser. HotMobile ’10. New
York, NY, USA: ACM, 2010, pp. 54–59.
Osmo-USRP is highlighted to show its place in the GSM stack [7] A. Anand, V. Pejovic, E. M. Belding, and D. L. Johnson, “Villagecell:
of a standard BTS, between the L1 USRP transceiver and the cost effective cellular connectivity in rural areas,” in Proceedings of
the Fifth International Conference on Information and Communication
L2-L3 Osmo-BTS. Technologies and Development. New York, NY, USA: ACM, 2012, pp.
Osmo-USRP uses inter-layer primitives defined in Osmo- 180–189.
BTS to process messages passed between the L1 and an event- [8] V. Gabale, R. Gopalakrishnan, and B. Raman, “The pilot deployment of
a low cost, low power gateway to extend cellular coverage in developing
driven L2 via a pair of Unix domain sockets. In the downlink regions,” in Proceedings of the 5th ACM workshop on Networked
direction, a thread multiplexer functions to route the message systems for developing regions. New York, NY, USA: ACM, 2011,
to the appropriate OpenBTS L1 logical channel specified by pp. 21–26.
[9] S. D. Meinrath, J. W. Losey, and B. Lennett, “A Growing Digital Divide:
the L2 header. In the reverse direction, L2 header information Internet Freedom and the Negative Impact of Command-and-Control
is attached to L1 messages, which are then written to the Networking,” IEEE Internet Computing, vol. 15, no. 4, pp. 75–79, 2011.
uplink socket and processed in Osmo-BTS L2. This system [10] K. Rechert, K. Meier, B. Greschbach, D. Wehrle, and D. von Su-
chodoletz, “Assessing Location Privacy in Mobile Communication Net-
architecture, along with the connections to USRP and Osmo- works,” in Information Security, X. Lai, J. Zhou, and H. Li, Eds.
BTS, is shown in Figure 7. Springer, 2011, vol. 7001, pp. 309–324.
[11] A. Dhananjay, M. Tierney, J. Li, and L. Subramanian, “Wire: a new rural
VI. C ONCLUSION connectivity paradigm,” SIGCOMM Comput. Commun. Rev., vol. 41,
no. 4, pp. 462–463, Aug. 2011.
While the long term impact of open source GSM software [12] M. Kretschmer, C. Niephaus, T. Horstmann, and K. Jonas, “Providing
and hardware on the cellular environment remains to be seen, mobile phone access in rural areas via heterogeneous meshed wireless
back-haul networks,” in Communications Workshops (ICC), 2011 IEEE
more immediate influences can be observed in the greater International Conference on, June 2011, pp. 1–6.
availability and comparatively easy access of products suitable [13] 3GPP, “Physical layer on the radio path; General description,” 3rd
for GSM development. This paper describes one such example Generation Partnership Project (3GPP), TS 05.01, Dec. 2004.
[14] Gumstix, “Overo COMS,” [Online] Available: http://www.gumstix.com,
in the form of an embedded GSM femtocell built from open April 2012.
source software packages, OpenBTS and OpenBSC, and a [15] 3GPP, “Radio subsystem synchronization,” 3rd Generation Partnership
popular off-the-shelf software radio product, USRP E100. Project (3GPP), TS 05.10, Sep. 2003.
[16] P. Laurent, “Exact and approximate construction of digital phase
Required toolchains and supporting libraries were freely avail- modulations by superposition of amplitude modulated pulses (amp),”
able to support multi-processor integration and optimization Communications, IEEE Transactions on, vol. 34, no. 2, pp. 150 – 160,
for signal processing. Performance results demonstrate that Feb 1986.
[17] ARM, “ARM Architecture Reference Manual: ARMv7-A and ARMv7-
the open hardware and software combination is capable of R edition,” ARM DDI 0406C, 2011.
obtaining the desired result of supporting OpenBTS operation
on the target E100 embedded platform.