Hi Philipp and Neels,
On Thu, Jul 06, 2017 at 11:31:26AM +0200, Philipp Maier wrote:
(any reason to
not discuss this on openbsc@?)
I put it on CC.
Still missing in this proposal: how do you tell
e.g. the MSC's A and IuCS
code
to use a given SCCP instance, local SSN and
remote SCCP address?
I would add a VTY command where the user has to tell on which ss7 instance
the A or IuCS interface should bind. When the IDs for both match up, we know
that we use the same SCCP instance, but I think we do not even have to check
that. Its implicit by the pointers. If the numbers are the same we will end
up with the same sccp instance pointer for both.
sounds fine.
A much simpler
soultion to the problem would be to pack the configuration
options into struct osmo_ss7_instance. Then when the config file parsing
is done, the user must call a function e.g. "osmo_sscp_init()" or so to
trigger the call to osmo_sccp_simple_client().
In struct osmo_ss7_instance we already have the .cfg sub struct. I think we
should add the items there instead of introducing something new. Also if we
do
so we would have to change it for the existing code too to have it
consistent.
Lets do some practical examples:
1) A and IuCS use the same sscp/ss7 instance
cs7 instance 1
sccp-address msc_local
point-code 0.0.2
routing-indicator PC
sccp
name iucs_and_a
pc msc_local
prot M3UA
local-port 1234
remote-port 5678
local-ip 1.1.1.1
remote-ip 2.2.2.2
No, this looks wrong. Why are we inventing new VTY configuration for
anything below the SCCP protocol layer? This is all already present in
libosmo-sigtran?
The application *only* cares about using the SCCP User SAP. It does not
care about what happens below that SAP, and who and how it is
configured. What signalling links exist, and which protocol (M3UA) they
use, etc. is all out of scope/concern here. This is done by the existing
'cs7 as' and 'cs7 asp' and friends. The only difference between STP and
ASP side configuration in all of the related data structures is a single
flag. So whether you configure an AS/ASP on the STP, or you do that on
the ASP side (e.g. OsmoMSC) is not different.
I'm not entirely happy about the amount of discussion this entire topic
is drawing up, for several weeks. IMHO it should in fact be very
straight forward and simple:
* osmo_ss7 code handles M3UA + related config/vty (99.9% exists for months)
* osmo_sccp code handles SCCP address book
* application simply uses adresses from SCCP address book. By the
addresses being each part of a ss7 instance, it is well-defined via
which SCCP-instance communication to the respective peer should
happen, and that SCCP instance is bound to the respective SS7
instacne.
Please let me know which particular part I am missing here?
--
- Harald Welte <hwelte(a)sysmocom.de>
http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschaeftsfuehrer / Managing Director: Harald Welte