unknown transition

41 views
Skip to first unread message

ahmet yildirim

unread,
Sep 17, 2020, 5:57:26 AM9/17/20
to mobicents-public
Hello all;

Do you have any idea about below exceptional situation? Remote pointcode restarted and below exception is occured. State is stuck on ACTIVE_SENT state hearbeat is working but m3ua could not come up and after manual asp restarted association came up.


2020.09.17 02:17:46:424 ERROR [Sctp-BossGroup-jss7sgw-1-1] (ManagementMessageHandler:80) - Transition=ntfyaspending. FSM.name=stp_10101_as_PEER old state=PENDING, current state=PENDING
2020.09.17 02:17:46:424 org.mobicents.protocols.ss7.m3ua.impl.fsm.UnknownTransitionException: Transition=ntfyaspending. FSM.name=stp_10101_as_PEER old state=PENDING, current state=PENDING
2020.09.17 02:17:46:425         at org.mobicents.protocols.ss7.m3ua.impl.fsm.FSMState.signal(FSMState.java:131)
2020.09.17 02:17:46:425         at org.mobicents.protocols.ss7.m3ua.impl.fsm.FSM.signal(FSM.java:153)
2020.09.17 02:17:46:425         at org.mobicents.protocols.ss7.m3ua.impl.ManagementMessageHandler.handleNotify(ManagementMessageHandler.java:78)
2020.09.17 02:17:46:426         at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.read(AspFactoryImpl.java:338)
2020.09.17 02:17:46:426         at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.processPayload(AspFactoryImpl.java:787)
2020.09.17 02:17:46:426         at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.onPayload(AspFactoryImpl.java:766)
2020.09.17 02:17:46:426         at org.mobicents.protocols.sctp.netty.NettyAssociationImpl.read(NettyAssociationImpl.java:477)
2020.09.17 02:17:46:427         at org.mobicents.protocols.sctp.netty.NettySctpChannelInboundHandlerAdapter.channelRead(NettySctpChannelInboundHandlerAdapter.java:192)
2020.09.17 02:17:46:427         at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
2020.09.17 02:17:46:427         at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
2020.09.17 02:17:46:428         at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
2020.09.17 02:17:46:428         at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
2020.09.17 02:17:46:428         at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
2020.09.17 02:17:46:429         at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
2020.09.17 02:17:46:429         at io.netty.channel.nio.AbstractNioMessageChannel$NioMessageUnsafe.read(AbstractNioMessageChannel.java:93)
2020.09.17 02:17:46:429         at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
2020.09.17 02:17:46:429         at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
2020.09.17 02:17:46:430         at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
2020.09.17 02:17:46:430         at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
2020.09.17 02:17:46:430         at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112)
2020.09.17 02:17:46:430         at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
2020.09.17 02:17:46:431         at java.lang.Thread.run(Thread.java:748)

Jarosław Kosowski

unread,
Oct 20, 2020, 9:32:35 AM10/20/20
to mobicents-public
Hello All,

I've similar problem with M3UA implementation. I received ASP Inactive Ack message on M3UA layer, although I didn't send ASP Inactive. Stack doesn't handle such transition: 


2020-10-08 15:27:53 AspTrafficMaintenanceHandler [ERROR] Transition=aspinactiveack. FSM.name=ASP1_LOCAL old state=ACTIVE, current state=ACTIVE
org.mobicents.protocols.ss7.m3ua.impl.fsm.UnknownTransitionException: Transition=aspinactiveack. FSM.name=ASP1_LOCAL old state=ACTIVE, current state=ACTIVE
at org.mobicents.protocols.ss7.m3ua.impl.fsm.FSMState.signal(FSMState.java:130)
at org.mobicents.protocols.ss7.m3ua.impl.fsm.FSM.signal(FSM.java:152)
at org.mobicents.protocols.ss7.m3ua.impl.AspTrafficMaintenanceHandler.handleAspInactiveAck(AspTrafficMaintenanceHandler.java:414)
at org.mobicents.protocols.ss7.m3ua.impl.AspTrafficMaintenanceHandler.handleAspInactiveAck(AspTrafficMaintenanceHandler.java:369)
at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.read(AspFactoryImpl.java:448)
at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.processPayload(AspFactoryImpl.java:826)
at org.mobicents.protocols.ss7.m3ua.impl.AspFactoryImpl.onPayload(AspFactoryImpl.java:809)
at org.mobicents.protocols.sctp.AssociationImpl.read(AssociationImpl.java:501)
at org.mobicents.protocols.sctp.SelectorThread.read(SelectorThread.java:431)
at org.mobicents.protocols.sctp.SelectorThread.run(SelectorThread.java:155)
at java.lang.Thread.run(Thread.java:748)

According to RFC 4666 it shall be supported:

"If the ASP receives an ASP Inactive Ack without having sent an ASP Inactive message, the ASP should now consider itself to be in the ASP-INACTIVE state.  If the ASP was previously in the ASP-ACTIVE state, the ASP should then initiate procedures to return itself to its previous state."

It's quite serious bug because in such case remote side treats association as inactive but for local stack m3ua association is still up.

Regards,

Jarek

Reply all
Reply to author
Forward
0 new messages