Project

General

Profile

Osmo-remsim » History » Version 11

roh, 04/13/2021 09:17 PM

1 1 laforge
{{>toc}}
2
3
h1. osmo-remsim
4
5 7 laforge
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.
6 1 laforge
7 7 laforge
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.
8 1 laforge
9 7 laforge
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.
10 1 laforge
11 7 laforge
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. 
12 1 laforge
13 7 laforge
Both T=1 and extended APDU support can easily be added as a pure software update, should it be required at some future point.
14 1 laforge
15 7 laforge
h2. Typical osmo-remsim deployment with 8 sim cards and two modems
16
17
{{graphviz_link()
18
digraph {
19
        rankdir=LR;
20
21
        subgraph cluster_0 {
22
                label="Data Center";
23
                SIM0 [shape=rect];
24
                SIM1 [shape=rect];
25
                SIM2 [shape=rect];
26
                SIM3 [shape=rect];
27
                SIM4 [shape=rect];
28
                SIM5 [shape=rect];
29
                SIM6 [shape=rect];
30
                SIM7 [shape=rect];
31
                sysmoOCTSIM [shape=rect];
32
                {
33
                        rank=same;
34
                        bankd [label="remsim-bankd"];
35
                        server [label="remsim-server"];
36
                }
37
38
                SIM0 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
39
                SIM1 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
40
                SIM2 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
41
                SIM3 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
42
                SIM4 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
43
                SIM5 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
44
                SIM6 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
45
                SIM7 -> sysmoOCTSIM [label="ISO-7816-2/3",dir=both];
46
47
                sysmoOCTSIM -> bankd [label="USB CCID",dir=both];
48
49
                bankd -> server [label="RSPRO/IPA/TCP"];
50
        }
51
52
        subgraph cluster_1 {
53
                label="Remote Site A";
54
                client1 [label="remsim-client"];
55
                SIMtrace1 [label="SIMtrace2\nAPP=cardem",shape=rect];
56
                Phone1 [label="Phone/Modem",shape=rect];
57
                client1 -> SIMtrace1 [label="USB",dir=both];
58
                SIMtrace1 -> Phone1 [label="ISO-7816-2/3",dir=both];
59
                bankd -> client1 [label="RSPRO/IPA/TCP/IP",dir=both];
60
                client1 -> server [label="RSPRO/IPA/TCP"];
61
        }
62
63
        subgraph cluster_2 {
64
                label="Remote Site B";
65
                client2 [label="remsim-client"];
66
                SIMtrace2 [label="SIMtrace2\nAPP=cardem",shape=rect];
67
                Phone2 [label="Phone/Modem",shape=rect];
68
                client2 -> SIMtrace2 [label="USB",dir=both];
69
                SIMtrace2 -> Phone2 [label="ISO-7816-2/3",dir=both];
70
                bankd -> client2 [label="RSPRO/IPA/TCP/IP",dir=both];
71
                client2 -> server [label="RSPRO/IPA/TCP"];
72
        }
73
74
75
}
76
}}
77
78 1 laforge
{{include(cellular-infrastructure:MacroBinaryPackages)}}
79
80
h2. User Manual
81
82 10 laforge
The latest user manual is available from https://ftp.osmocom.org/docs/latest/osmo-remsim-usermanual.pdf
83 5 laforge
84 8 laforge
h2. Presentation / Video
85
86
An early presentation video recording is available:"osmo-remsim: Remote SIM card Software":https://media.ccc.de/v/osmocon2018-93-osmo-remsim-remote-sim-card-software
87
88
Please keep in mind that this video was done at a relatively early point in the development, so not everything may still be correct today.
89
90 1 laforge
h2. Source code
91
92
The source code is available from @git.osmocom.org@ (module @osmo-remsim@).
93
94
Public read-only access is available via
95
<pre>
96
git clone git://git.osmocom.org/osmo-remsim.git
97
</pre>
98
99
You can browse it via cgit:  https://git.osmocom.org/osmo-remsim
100
101
Contributions are welcome via [[Cellular-Infrastructure:Gerrit]].
102
103
h2. Test Suite
104
105
We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]]
106
107
* source code: https://git.osmocom.org/osmo-ttcn3-hacks/tree/remsim
108
* results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-remsim-test/
109 7 laforge
110
h2. Supported Hardware
111
112
h3. SIM card readers/banks
113
114
* lab / small deployments (less than 8 slots)
115
** any readers supported by "pcsc-lite":https://pcsclite.apdu.fr/ (USB-CCID readers like "CM3121":http://shop.sysmocom.de/products/cm3121 or "CM6121":http://shop.sysmocom.de/products/cm6121)
116
* medium size deployments (8 slots or multiple)
117
** "sysmoOCTSIM":https://www.sysmocom.de/products/lab/sysmooctsim (8 slot reader)
118
* large size deployments (96 slots and up)
119 11 roh
** sysmoSIMBANK-96 and sysmoSIMBANK-192 (19" units with 96 and 192 slots, respectively
120 7 laforge
121
Support for other SIM bank hardware or card readers can of course be added by either contributing related patches or funding related development.
122
123
h3. Interface to Phone/Modem
124
125
* "sysmoQMOD":https://www.sysmocom.de/products/lab/sysmoqmod (board with four mPCIe modem slots and remote SIM support)
126
127
In theory, the [[simtrace2:]] hardware is also capable, but unfortuantely the software is currently not in a fully supported state, see https://osmocom.org/news/114 for an update. Any support is welcome to get this fulyl working again!
128 2 roh
129
h2. Contact / Getting Help
130 1 laforge
131
Contact us via the simtrace@lists.osmocom.org mailing list, see [[Cellular-Infrastructure:Mailing Lists]].
132
133
You can file issues (bugs / feature requests) using the redmine project you're currently viewing.
134
135
h2. Authors / Credit
136
137
osmo-remsim was mainly developed by Harald Welte, with contributions from Kevin Redon.
138 3 laforge
139
h2. Further pages in this wiki
140
141
{{child_pages}}
142 9 laforge
143 10 laforge
{{include(cellular-infrastructure:MacroCommercialSupport)}}
Add picture from clipboard (Maximum size: 48.8 MB)