RestComm / jss7

RestComm Java SS7 Stack and Services
http://www.restcomm.com/
GNU Affero General Public License v3.0
190 stars 220 forks source link

Sccp given primary PC(wrong) after GT rule match during SS7 Peer node trigger message from SecondaryPC #187

Closed Peramuthan closed 7 years ago

Peramuthan commented 7 years ago

Example SS7 Peer node have both primary & secondary PC with single sccp address primaryPC = 222 secondaryPC = 333 SccpAdderss --> ssn=6, GlobaltitleInd= Route on GT, Globaltitle{Np=1, NA=4, ES=1, GTdigit=919888}

For the above configuration In sccp layer will create 2 RoutingAddress(for both PrimaryPC & SecondaryPC) and single GT Rule.

while trigger message from primaryPC will send back response proper to the same primaryPC. but secondaryPC case sending back response with primaryPC.

Code Snippet: RupeImpl.java --> translate() --> filling ruleaddress signallingPointcode. ==> will always give primaryPC for above scenario Instead of filling ruleaddress pointcode always can we fill the incomingOpc of SccpAddressedMessageImpl.

After this we can achieve existing & above scenario with no service impact.

vetss commented 7 years ago

Hello @Peramuthan

unfortunately I have not fully understood your scenario. Can you describe which point codes are local which are remote, how many m3ua (?) links we have, is there loadsharing in your scenario etc.

Peramuthan commented 7 years ago

Hello @vetss, Local Node Config: SCTP --> Single Association (ip1 - port1) m3ua --> Single PointCode --> 111 SCCP --> Single(ssn=6, GlobaltitleInd= Route on GT, Globaltitle{Np=1, NA=5, ES=1, GTdigit=919666})

Peer Node: SCTP --> Single Association(ip2 - port2) m3ua --> Single Sccp -> mentioned as in issue

vetss commented 7 years ago

Hello @Peramuthan

do you mean that you have:

In this case I do not understand how do you want to share traffic between DPCs (222 and 333 in your case) ? You can make loadsharing for example depending on the SLS least bit, this is supported.

Or I may be do not understand the question properly, if yes, please comment.

Peramuthan commented 7 years ago

Mentioned issue added GT rule like as below sccpStack1.getRouter().addRule(1, RuleType.LOADSHARED, LoadSharingAlgorithm.Undefined,, OriginationType.LocalOriginated, pattern, "K", 1, 3, null, 1);

As per your comment if we not mention the LoadSharingAlgorithm as valid value(i.e. Bit0/1/2/3/4). Then load share functionality won't work rite. If yes, close the issue.

Thanks & Regards, Peramuthan R

vetss commented 7 years ago

Hello @Peramuthan

This is correct:

if we not mention the LoadSharingAlgorithm as valid value(i.e. Bit0/1/2/3/4). Then load share functionality won't work right.

Peramuthan commented 7 years ago

Hello @vetss

Ok thanks, If the GT rule configure as LoadShare, why we allow to configure the LoadSharingAlgorithm as Undefined. better we can remove the Undefined option or make make bit0 as default.
If you feel is it fine or not.

Regards, Peramuthan R

vetss commented 7 years ago

Hello @Peramuthan

If the GT rule configure as LoadShare, why we allow to configure the LoadSharingAlgorithm as Undefined. better we can remove the Undefined option or make make bit0 as default.

This makes sense, agree.

Peramuthan commented 7 years ago

Thanks, shall i proceed to do changes on this?

vetss commented 7 years ago

Thanks, shall i proceed to do changes on this?

ok

deruelle commented 7 years ago

@Peramuthan were you able to make progress on this ?

vetss commented 7 years ago

I am closing this issue. @Peramuthan feel free to provide an update for management.