Hi Gregory,

Below is a simplified version of the of the ss7.conf file I am using. I have one ss7 link on each host (box1 and box2 below). Each host is running mtp3d.

I also had to patch mtp3d.c in chan_ss7 version 1.4.3 with the following:
273c273
<           if (link->linkset == linkset) {
---
> if (link->linkset == linkset || !strcmp((link->linkset)->combined,linkset->combined)) {

Without the patch if host1 receives a signalling messages for host2 the message is sent to the other host.

Some problems with mtp3d:
- if a signalling link on one host fails, the mtp3d on the affected host does not send the MSUs in the transmit buffer of the affected host to the other host. - if a signalling link is down (i.e. cannot be aligned) initially mtp3d will not start on that host. - on the surface the concept used for the cluster configuration seems more reliable than the mtp3d setup as the cluster can communicate with 2 interfaces on each host.

Does this provide what you are trying to achieve?

Cheers,
Amish


[linkset-net]
enabled => yes
enable_st => no
use_connect => no
hunting_policy => seq_htl
subservice => auto
combined => net-stps
language => en
variant => ITU
context => net
t35 => 15000,timeout

[link-net1]
linkset => net
channels => 1-15,17-31
schannel => 16@box1:12000
firstcic => 1
enabled => yes
stp => 19

[link-net2]
linkset => net
channels => 1-15,17-31
schannel => 16@box2:12000
firstcic => 33
enabled => yes
stp => 20

[link-net3]
linkset => net
channels => 1-31
schannel =>
firstcic => 65
enabled => yes
stp => 19

[link-net4]
linkset => net
channels => 1-31
schannel =>
firstcic => 97
enabled => yes
stp => 20

[host-box1]
enabled => yes
default_linkset => net1
opc => 1234
dpc => net:30
links => net1:1,net3:2

[host-box2]
enabled => yes
default_linkset => net1
opc => 1234
dpc => net:30
links => net2:1,net4:2


On 03/08/2011 11:52 AM, Amish wrote:
Hi,

I also could not get the cluster function in 1.4.3 to work - segfault.
Managed to get further with 1.3 and had it up and running on both hosts but had asterisk crash on one of the hosts after a few minutes.

I am now using mtp3d running on both hosts. Will post config later today.

Best Regards,
Amish


On 03/08/2011 03:11 AM, Gregory Massel wrote:
Hello

I'm trying to set up a chan_ss7 cluster, however, both chan_ss7 and mtp3d segfault in config.c when trying to read the [cluster] section of the config file.

To ensure it wasn't my config, I eventually used the ss7.conf.template.two-hosts sample (as distributed in the chan_ss7 source) and the same thing occurred.

The problem seems to arise in config.c on the link lines. The following is problematic:

[cluster]
port => 5040
l1 => gentoo2#if-1,gentoo2#if-2
l2 => gentoo1#if-1,gentoo1#if-2
l3 => gentoo2#if-1,gentoo2#if-2
l4 => gentoo1#if-1,gentoo1#if-2

It results in:

Mar 08 02:35:02 [NOTICE] config.c:502 load_config_linkset Using default context 'default' for linkset 'siuc' Mar 08 02:35:02 [NOTICE] config.c:504 load_config_linkset Using default language '' for linkset 'siuc' Mar 08 02:35:02 [NOTICE] config.c:502 load_config_linkset Using default context 'default' for linkset 'peer2' Mar 08 02:35:02 [NOTICE] config.c:504 load_config_linkset Using default language '' for linkset 'peer2' Mar 08 02:35:02 [NOTICE] config.c:804 load_config_link Configured link 'l1' on linkset 'siuc', firstcic=1 Mar 08 02:35:02 [NOTICE] config.c:804 load_config_link Configured link 'l2' on linkset 'siuc', firstcic=33 Mar 08 02:35:02 [NOTICE] config.c:804 load_config_link Configured link 'l3' on linkset 'peer2', firstcic=1 Mar 08 02:35:02 [NOTICE] config.c:804 load_config_link Configured link 'l4' on linkset 'peer2', firstcic=33
Segmentation fault

As soon as I comment out the link lines:

[cluster]
port => 5040
;l1 => gentoo2#if-1,gentoo2#if-2
;l2 => gentoo1#if-1,gentoo1#if-2
;l3 => gentoo2#if-1,gentoo2#if-2
;l4 => gentoo1#if-1,gentoo1#if-2

Then asterisk starts up and mtp3d gets a bit further:

Mar 08 02:36:51 [NOTICE] mtp.c:2378 mtp_init Initialising 2 signalling links
   -- Starting mtp mainloop, pid=3260.
No signaling channels

I'm trying to use chan_ss7 1.4.3 on Asterisk 1.4.40, Linux kernel 2.6.32-28-server, libc6 2.11.1, Ubuntu 10.04.1 LTS (64-bit).

In terms of trying to isolate where within config.c the segfault occurs, I have tried making an intentional typo on the link name and it does get as far as:

Mar 08 02:50:05 [ERROR] config.c:1123 load_config_cluster The link 'dl1' is not defined while parsing cluster category.

Unfortunately, as soon as there is a valid link name specified, it segfaults, irrespective of what is to the right of the "=>". You can even put garbage (e.g. "l1 => abc") and it will segfault before trying to sanity check the rest of the line.

Thanks

Greg

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-ss7 mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-ss7



--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-ss7 mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-ss7



--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-ss7 mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-ss7

Reply via email to