Feature #4425
closedMT call generator
100%
Description
In order to test the RAN part, we would like to have a MT call generator that simply establishes lots of parallel MT voice calls to a number of subscribers.
This could be done either directly via MNCC or via osmo-sip-connector.
Given my previous work on http://git.osmocom.org/mncc-python/, I would build a solution on top of that. The GsmCallFsm class already understands the FSM of a voice call. The GsmCallConnector class currently connects two MT calls together, which is not strictly speaking a requirement here, but at least unless we want to do something more useful with the user plane data (like verify its correctness), it doesn't hurt either.
In the end, http://git.osmocom.org/mncc-python/tree/mncc_test.py should be usable more or less as-is for an initial use case. We simply need to make the pairs of MSISDNs configurabl via some config file (e.g. a CSV) and probably consider a bit of rate limiting like a sleep between calls to connect_call()?
But it's up to you (Neels, Oliver), how to implement it.
For early testing, ignoring the user plane is sufficient. Later, we probably would want to send e.g. PRNG data in downlink to a subscriber and verify that the same data is coming back. That would mean we need a RTP source and sink, ....
Updated by neels about 4 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 80
The solution we are using now is mncc-python with some patches to launch osmo-gapk to inject an initial RTP frame.
However, this only works when osmo-mgw is also patched to accept RTP sourced from a different port than configured by MGCP.
http://git.osmocom.org/mncc-python/log/?h=neels/virt-voice
http://git.osmocom.org/osmo-mgw/log/?h=neels/virt-voice
Updated by laforge about 4 years ago
- Status changed from In Progress to Resolved
- % Done changed from 80 to 100
mncc-python.git has meanwhile been extended by a controllable RTP source whihc is used to generate steady streams of 20ms-spaced RTP packets.