Project

General

Profile

osmo-remsim

osmo-remsim is a suite of software programs enabling physical/geographic
separation of a cellular phone (or modem) on the one hand side and the
SIM/USIM/ISIM card on the other side.

Using osmo-remsim, you can operate an entire fleet of modems/phones, as
well as banks of SIM cards and dynamically establish or remove the
connections between modems/phones and cards.

So in technical terms, it behaves like a proxy for the ISO 7816 smart
card interface between the MS/UE and the UICC/SIM/USIM/ISIM.

While originally designed to be used in context of cellular networks,
there is nothing cellular specific in the system. It can therefore also
be used with other systems that use contact based smart cards according
to ISO 7816. Currently only the T=0 protocol with standard
(non-extended) APDUs is supported. Both T=1 and extended APDU support
can easily be added as a pure software update, should it be required at
some future point.

Binary Packages

Osmocom provides binary packages for several flavors of Debian and Ubuntu GNU/Linux on a variety of architectures (i586, x86_64, armhf, armv7l). Unless you are a software developer interested in developing on Osmocom, it is recommended you use those packages instead of building from source.

For more details see Binary_Packages

User Manual

Source code

The source code is available from git.osmocom.org (module osmo-remsim).

Public read-only access is available via

git clone git://git.osmocom.org/osmo-remsim.git

You can browse it via cgit: https://git.osmocom.org/osmo-remsim

Contributions are welcome via Gerrit.

Test Suite

There is a testbed designed for CI and longterm tests of the whole suite of components(server, bankd, clients).
It is a small but not minimal configuration:
  • 1x host with 2 x virtual machines, all running debian stable, virt is provided by kvm and libvirt
  • 1x sysmoQMOD board with 4 modems connected via usb
  • 1x SIM card reader with 5 slots using USB CCID
  • bankd vm:
    • runs osmo-remsim-bankd
    • has a forwarded usb device (5slot cardreader)
  • server vm:
    • runs osmo-remsim-server
    • has a netem script in the network sending path - limiting the delay/latency/jitter/bandwith to 'good' VSAT values
  • hostsystem:
    • runs 4 instances of osmo-remsim-client-st2
    • this cannot be done inside a kvm vm due to bugs/limitations forwarding complex usb devices/hubs (sysmoQMOD is a hub with multiple devices behind)


FIXME: add tests/description

Contact / Getting Help

Contact us via the mailing list, see Mailing Lists.

You can file issues (bugs / feature requests) using the redmine project you're currently viewing.

Authors / Credit

osmo-remsim was mainly developed by Harald Welte, with contributions from Kevin Redon.

Further pages in this wiki

Add picture from clipboard (Maximum size: 48.8 MB)