Commit Graph

3609 Commits

Author SHA1 Message Date
paulc 5f72fd986b Fixed the linkset/route state checking, notifying and isolation detection.
Isolation timer can be disabled so the router once started will never go down.


git-svn-id: http://voip.null.ro/svn/yate@3641 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-08 12:34:35 +00:00
paulc c2b49808ef Fix for several infrequent memory leaks.
git-svn-id: http://voip.null.ro/svn/yate@3640 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-08 11:28:22 +00:00
paulc edb16091e3 Call the inherited destroyed() method of SLT so it removes itself from the SignallingEngine.
Fixes a double deletion crash on exit.


git-svn-id: http://voip.null.ro/svn/yate@3639 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-08 11:27:43 +00:00
paulc f36ee7c73d Added static method to retrieve (and possibly create) the primary instance of SignallingEngine.
git-svn-id: http://voip.null.ro/svn/yate@3638 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-07 16:07:44 +00:00
paulc 2f97e34afe Enabled abnormal case messages in non-debug mode.
Added troubleshooting information to error messages.
Fixed spelling in a few places.


git-svn-id: http://voip.null.ro/svn/yate@3637 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-07 13:48:06 +00:00
paulc afaa3b190f Fixed computing and clearing of routes, should end in Prohibited state.
Route set test messages now are distributed properly to their networks.


git-svn-id: http://voip.null.ro/svn/yate@3636 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 16:20:57 +00:00
paulc b77016ae01 Send TFP for unexpected packets through SS7Management, support Transfer prohibited inhibition timer (Q.704 T8).
git-svn-id: http://voip.null.ro/svn/yate@3635 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 14:57:09 +00:00
paulc 5acaceaae6 Fixed various SS7 rouning and STP problems.
Fixed the behavior of routes and the advertising to other nodes.
Added a lot of debug messages.


git-svn-id: http://voip.null.ro/svn/yate@3634 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 13:45:15 +00:00
paulc e1006baeb1 Added support for forcibly postpone a SNM even if initial transmission failed.
This allows timing out CBD/COO even if no links are active.


git-svn-id: http://voip.null.ro/svn/yate@3633 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 09:59:28 +00:00
paulc e1dba54ac9 Do not send even SNM on an inhibited link.
git-svn-id: http://voip.null.ro/svn/yate@3632 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 09:44:31 +00:00
paulc 0b7166f289 Initiate linkset emergency restore procedures only if link count worsened.
git-svn-id: http://voip.null.ro/svn/yate@3631 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 08:48:22 +00:00
paulc 7d6d948a18 Simplified notifyRoutes by removing the now useless parameters.
Fixed a bug in setting the state of adjacent vs non-adjacent routes.


git-svn-id: http://voip.null.ro/svn/yate@3630 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 04:52:18 +00:00
paulc 00b15d3703 Perform changeover/changeback on another linkset if required, rely on time sequence if that one fails too.
git-svn-id: http://voip.null.ro/svn/yate@3629 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 04:41:09 +00:00
paulc 9e3b8ef009 Added separate virtual check if SLTA should be sent back else neither end would get in service first.
Added method to check if a link is in service ignoring some inhibition flags.


git-svn-id: http://voip.null.ro/svn/yate@3628 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 04:30:10 +00:00
paulc bc6a3a2cdc Made links fail only after waiting T2 for a second SLTA.
Pausing the linkset disables answering with SLTA so failure can be emulated.


git-svn-id: http://voip.null.ro/svn/yate@3627 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 03:49:58 +00:00
paulc 85866c22ff Changed some debug levels to reflect their importance and frequence.
git-svn-id: http://voip.null.ro/svn/yate@3626 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-03 03:09:22 +00:00
paulc e87d59878e Rewritten the route building and STP advertising logic.
For each attached linkset a view of its routes is used to know when to send transfer change notifications.
Most of the route handling code was moved in SS7Router as it was never used by SS7Layer3.


git-svn-id: http://voip.null.ro/svn/yate@3625 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-02 15:41:26 +00:00
paulc 430d675968 Made the default MTP test timer one second and not reload it on initialize.
This was driving me crazy.


git-svn-id: http://voip.null.ro/svn/yate@3624 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 21:21:43 +00:00
paulc 4148a41c06 Pass the required route state to SS7Route::transmitMSU so we don't attempt to transmit on a prohibited route.
git-svn-id: http://voip.null.ro/svn/yate@3623 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 21:05:12 +00:00
paulc 4af4274b0d Fixed routing bug introduced in Rev 3617 - never send a packet back to the receiving linkset.
git-svn-id: http://voip.null.ro/svn/yate@3622 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 20:17:49 +00:00
paulc 69a8028ac6 Added SLS rotation and received sequence checking to the MTP user part.
git-svn-id: http://voip.null.ro/svn/yate@3621 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 19:42:50 +00:00
paulc 639492b673 Fixed TRA generation and load sharing (must always use adjacent network for SNM and MTN).
Added more debigging information.


git-svn-id: http://voip.null.ro/svn/yate@3620 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 14:16:06 +00:00
paulc 4f0488dc7c Added support for reporting route congestion.
Detection is currently implemented only on SIGTRAN M2UA.


git-svn-id: http://voip.null.ro/svn/yate@3619 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 12:05:55 +00:00
paulc f502fc92b3 Set routes per network the STP is located, combine values to create a best state.
git-svn-id: http://voip.null.ro/svn/yate@3618 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 10:26:16 +00:00
paulc 30d87dd382 Implemented load sharing between linksets.
git-svn-id: http://voip.null.ro/svn/yate@3617 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 08:10:34 +00:00
paulc 7023dcca5a Allow a circular offset of the items in a ListIterator so all elements are iterated but starting with a specific one.
git-svn-id: http://voip.null.ro/svn/yate@3616 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 07:50:57 +00:00
paulc 400a8135f1 Added support for specifying a SLS right shift for balancing between linksets.
git-svn-id: http://voip.null.ro/svn/yate@3615 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 05:08:16 +00:00
paulc 54612c3ca7 By default accept SNM messages only from adjacent nodes.
git-svn-id: http://voip.null.ro/svn/yate@3614 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 04:25:25 +00:00
paulc 3c35a5505b MTP3 now fully obeys Q.707 Link Maintenance and implements both T1 and T2.
SLTx are checked for point codes and SLS, SLTA verifies test pattern.


git-svn-id: http://voip.null.ro/svn/yate@3613 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 03:11:10 +00:00
marian 76e918e444 Fixed Redirection information encoder: copy all message data in msu buffer.
git-svn-id: http://voip.null.ro/svn/yate@3612 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 20:18:00 +00:00
paulc 483a92682d Fixed the UPU and TFP generation logic.
git-svn-id: http://voip.null.ro/svn/yate@3611 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 16:39:48 +00:00
paulc b1266633a2 Removed the useless separate SS7Maintenance user part.
git-svn-id: http://voip.null.ro/svn/yate@3610 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 14:09:51 +00:00
paulc 4e4541ea00 Documented newly added SS7 router settings in the sample config file.
git-svn-id: http://voip.null.ro/svn/yate@3609 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 13:43:13 +00:00
paulc b1794381b0 Added capability to periodically poll neighboring STPs for prohibited and restricted routes.
git-svn-id: http://voip.null.ro/svn/yate@3608 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 13:36:16 +00:00
paulc 7ba4caaa60 Add received address and backwards address to the decoded SNM parameters.
Added decoding capability for route set test messages.


git-svn-id: http://voip.null.ro/svn/yate@3607 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 13:35:20 +00:00
paulc fb59c1d65f Catch LID, warn and stop LIN retransmissions.
Fixed emergency uninhibit, it must be sent only to adjacent nodes.


git-svn-id: http://voip.null.ro/svn/yate@3606 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 11:17:52 +00:00
marian 4ded584163 Fixed bug: properly hexify a data buffer until a byte with extension bit set.
git-svn-id: http://voip.null.ro/svn/yate@3605 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 11:16:08 +00:00
paulc e62044fe1c Added API so a linkset can request uninhibition if running out of cative links.
git-svn-id: http://voip.null.ro/svn/yate@3604 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 10:55:39 +00:00
paulc f9ae4fccc2 Check the existence of the link for all link related Management messages.
git-svn-id: http://voip.null.ro/svn/yate@3603 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 10:09:12 +00:00
paulc f294620e72 Count separately the maintenance checked but inactive links to better notice changes in link states.
git-svn-id: http://voip.null.ro/svn/yate@3602 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 09:42:55 +00:00
marian 8ca79e4a63 Don't terminate incoming calls when blocking for maintenance reason (just make a repeat attempt).
git-svn-id: http://voip.null.ro/svn/yate@3601 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 09:25:27 +00:00
paulc bd026977ac Added a setting to disable the changeover and change back procedures.
It should be only used for testing as disabling them violates the standards.


git-svn-id: http://voip.null.ro/svn/yate@3600 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 08:50:45 +00:00
marian 49b970317a Added option used to ignore unknown digit encoding in numbers (defaults to true).
git-svn-id: http://voip.null.ro/svn/yate@3599 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 07:56:50 +00:00
marian e48fe29f20 Avoid setting twice the reason parameter of the chan.hangup message enqueued by a sig channel.
git-svn-id: http://voip.null.ro/svn/yate@3598 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 07:26:56 +00:00
paulc 1b3c212388 Send a TFP when in STP mode a MSU is received for an unknown destination.
git-svn-id: http://voip.null.ro/svn/yate@3597 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 05:27:21 +00:00
paulc a8cfc57f2a Fixed a bug in SS7 route finding, was ignoring route states.
Added a set bit for unknown routes so they can be matched.


git-svn-id: http://voip.null.ro/svn/yate@3596 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 04:41:27 +00:00
paulc 9759d9957a Put the local point code in the OPC of the UPU, was misrepresenting the source.
git-svn-id: http://voip.null.ro/svn/yate@3595 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 04:04:17 +00:00
marian 3f7398adfb Avoid generating 2 release events (memory leak).
git-svn-id: http://voip.null.ro/svn/yate@3594 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 01:16:06 +00:00
marian 4c0f81ea14 Replace circuits for outgoing calls in early state and terminate all other calls when circuits are blocked for hardware failure reason.
git-svn-id: http://voip.null.ro/svn/yate@3593 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 01:03:35 +00:00
marian a67cb1b0e0 Don't send cause in RLC response sent by the ISUP call.
git-svn-id: http://voip.null.ro/svn/yate@3592 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-31 00:26:15 +00:00