README.md: add 'osmo-' prefix to remsim-{server,bankd,client}

Change-Id: I42df660d8c7f696a12118d4e4c38f7ee9e48d2e8
This commit is contained in:
Harald Welte 2019-04-03 17:24:42 +02:00
parent 942f0f981f
commit f0184cb4af
1 changed files with 21 additions and 20 deletions

View File

@ -4,22 +4,23 @@ osmo-remsim - Osmocom remote SIM software suite
This software suite is a work in progress. This software suite is a work in progress.
remsim-client osmo-remsim-client
------------- ------------------
The client interfaces with GSM phones / modems via dedicated "Card The client interfaces with GSM phones / modems via dedicated "Card
Emulation" devices such as the Osmocom SIMtrace2 or sysmocom sysmoQMOD Emulation" devices such as the Osmocom SIMtrace2 or sysmocom sysmoQMOD
board + firmware. This hardware implements the ISO7816-3 electrical board + firmware. This hardware implements the ISO7816-3 electrical
interface and protocol handling and passes any TPDU headers received interface and protocol handling and passes any TPDU headers received
from the phone/modem to remsim-client for further processing of the from the phone/modem to osmo-remsim-client for further processing of the
TPDUs associated to the given APDU transfer. TPDUs associated to the given APDU transfer.
remsim-client connects via a RSPRO control connection to remsim-server osmo-remsim-client connects via a RSPRO control connection to
at startup and registers itself. It will receive configuration data osmo-remsim-server at startup and registers itself. It will receive
such as the remsim-bankd IP+Port and the ClientId from remsim-server. configuration data such as the osmo-remsim-bankd IP+Port and the
ClientId from osmo-remsim-server.
After receiving the configuration, remsim-client will establish a RSPRO After receiving the configuration, osmo-remsim-client will establish a
data connection to the remsim-bankd IP:Port. RSPRO data connection to the osmo-remsim-bankd IP:Port.
As the USB interface for remote SIM in simtrace2.git uses one interface As the USB interface for remote SIM in simtrace2.git uses one interface
per slot, we can implement the client in blocking mode, i.e. use per slot, we can implement the client in blocking mode, i.e. use
@ -27,22 +28,22 @@ blocking I/O on the TCP/RSPRO side. This simplifies the code compared
to a more complex async implementation. to a more complex async implementation.
remsim-bankd osmo-remsim-bankd
------------ -----------------
The remsim-bankd (SIM Bank Daemon) manages one given SIM bank. The The osmo-remsim-bankd (SIM Bank Daemon) manages one given SIM bank. The
initial implementation supports a PC/SC driver to expose any PC/SC initial implementation supports a PC/SC driver to expose any PC/SC
compatible card readers as SIM bank. compatible card readers as SIM bank.
remsim-bankd initially connects via a RSPRO control connection to osmo-remsim-bankd initially connects via a RSPRO control connection to
remsim-server at startup, and will in turn receive a set of initial osmo-remsim-server at startup, and will in turn receive a set of initial
[client,slot]:[bankd,slot] mappings. These mappings determine which [client,slot]:[bankd,slot] mappings. These mappings determine which
slot on the client (corresponding to a modem) is mapped to which slot on slot on the client (corresponding to a modem) is mapped to which slot on
the SIM bank. Mappings can be updated by remsim-server at any given the SIM bank. Mappings can be updated by osmo-remsim-server at any given
point in time. point in time.
remsim-bankd implements a RSPRO server, where it listens to connections osmo-remsim-bankd implements a RSPRO server, where it listens to
from remsim-clients. connections from osmo-remsim-clients.
As PC/SC only offers a blocking API, there is one thread per PC/SC slot. As PC/SC only offers a blocking API, there is one thread per PC/SC slot.
This thread will perform blocking I/O on the socket towards the client, This thread will perform blocking I/O on the socket towards the client,
@ -62,10 +63,10 @@ reader, and that mapping is only established at a later point after the
client has identified itself. The advantage is that the entire bankd client has identified itself. The advantage is that the entire bankd
can live without any non-blocking I/O. can live without any non-blocking I/O.
The main thread handles the connection to remsim-server, where it can The main thread handles the connection to osmo-remsim-server, where it
also use non-blocking I/O. However, re-connection would be required, to can also use non-blocking I/O. However, re-connection would be
avoid stalling all banks/cards in the event of a connection loss to the required, to avoid stalling all banks/cards in the event of a connection
server. loss to the server.
worker threads have the following states: worker threads have the following states:
* INIT (just started) * INIT (just started)