Project

General

Profile

Osmo-remsim » History » Version 7

laforge, 03/04/2020 08:11 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 5 laforge
The latest user manual is available from https://ftp.osmocom.org/docs/latest/osmobsc-usermanual.pdf
83
84 1 laforge
h2. Source code
85
86
The source code is available from @git.osmocom.org@ (module @osmo-remsim@).
87
88
Public read-only access is available via
89
<pre>
90
git clone git://git.osmocom.org/osmo-remsim.git
91
</pre>
92
93
You can browse it via cgit:  https://git.osmocom.org/osmo-remsim
94
95
Contributions are welcome via [[Cellular-Infrastructure:Gerrit]].
96
97
h2. Test Suite
98
99
We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]]
100
101
* source code: https://git.osmocom.org/osmo-ttcn3-hacks/tree/remsim
102
* results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-remsim-test/
103 7 laforge
104
h2. Supported Hardware
105
106
h3. SIM card readers/banks
107
108
* lab / small deployments (less than 8 slots)
109
** 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)
110
* medium size deployments (8 slots or multiple)
111
** "sysmoOCTSIM":https://www.sysmocom.de/products/lab/sysmooctsim (8 slot reader)
112
* large size deployments (96 slots and up)
113
** sysmoSIMBANK-96 and sysmoSIMBANK-192 (19" units with 95 and 192 slots, respectively
114
115
Support for other SIM bank hardware or card readers can of course be added by either contributing related patches or funding related development.
116
117
h3. Interface to Phone/Modem
118
119
* "sysmoQMOD":https://www.sysmocom.de/products/lab/sysmoqmod (board with four mPCIe modem slots and remote SIM support)
120
121
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!
122 2 roh
123
h2. Contact / Getting Help
124 1 laforge
125
Contact us via the simtrace@lists.osmocom.org mailing list, see [[Cellular-Infrastructure:Mailing Lists]].
126
127
You can file issues (bugs / feature requests) using the redmine project you're currently viewing.
128
129
h2. Authors / Credit
130
131
osmo-remsim was mainly developed by Harald Welte, with contributions from Kevin Redon.
132 3 laforge
133
h2. Further pages in this wiki
134
135
{{child_pages}}
Add picture from clipboard (Maximum size: 48.8 MB)