[tickets] [opensaf:tickets] #3097 mds: Incorrect fragment decoding for MDS_PROT_FCTRL_ID
- **status**: assigned --> fixed - **assigned_to**: Minh Hon Chau --> nobody - **Comment**: commit 4779df8727c25af3006794d637bc2d3357bda50d Author: Minh Chau Date: Tue Oct 8 07:41:24 2019 +1100 mds: Enhance decoding for mds flow control message [#3097] --- ** [tickets:#3097] mds: Incorrect fragment decoding for MDS_PROT_FCTRL_ID** **Status:** fixed **Milestone:** 5.19.10 **Created:** Fri Oct 04, 2019 05:35 AM UTC by Minh Hon Chau **Last Updated:** Mon Oct 07, 2019 12:14 AM UTC **Owner:** nobody The current code that decodes protocol identifier ~~~ if ((pro_ver_ & MDS_PROT_VER_MASK) == MDS_PROT_FCTRL) { // decode flow control sequence number ptr = [HeaderMessage::FieldIndex::kFlowControlSequenceNumber]; fseq_ = ncs_decode_16bit(); // decode protocol identifier ptr = [ChunkAck::FieldIndex::kProtocolIdentifier]; pro_id_ = ncs_decode_32bit(); if (pro_id_ == MDS_PROT_FCTRL_ID) { // decode message type ptr = [ChunkAck::FieldIndex::kFlowControlMessageType]; msg_type_ = ncs_decode_8bit(); } } ~~~ In case of fragmentation, the last fragment has pro_ver = MDS_PROT_FCTRL, and coincidently the next 4 bytes (oct11 -> oct14) has the same value to MDS_PROT_FCTRL_ID. Therefore, mds thinks this fragment as ack/nack message, which is wrong. --- Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is subscribed to https://sourceforge.net/p/opensaf/tickets/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.___ Opensaf-tickets mailing list Opensaf-tickets@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-tickets
[tickets] [opensaf:tickets] #3095 mds: Message loss after splitbrain with enabled MDS_TIPC_FCTRL_ENABLED
- **status**: review --> fixed - **assigned_to**: Minh Hon Chau --> nobody - **Comment**: commit cafbc5d02c90b57c7c94a7735ce8e002224b3d6b Author: Minh Chau Date: Tue Oct 8 15:24:06 2019 +1100 mds: Improve error log for MDS_TIPC_FCTRL_ENABLED [#3095] commit 13ccc878e7eac00c27cc66a9b353bb5a474b747f Author: Minh Chau Date: Tue Oct 8 15:24:06 2019 +1100 mds: Add Nack message for MDS_TIPC_FCTRL_ENABLED [#3095] --- ** [tickets:#3095] mds: Message loss after splitbrain with enabled MDS_TIPC_FCTRL_ENABLED** **Status:** fixed **Milestone:** 5.19.10 **Created:** Sat Sep 28, 2019 10:22 PM UTC by Minh Hon Chau **Last Updated:** Mon Oct 07, 2019 12:14 AM UTC **Owner:** nobody After both SCs see each other after split brain, message loss occurs since some sequences are missing 2019-09-27T07:13:08.906+02:00 SC-2-1 tipclog[3762]: Lost link <1.1.1:eth0-1.1.2:eth0> on network plane A 2019-09-27T07:13:25.369+02:00 SC-2-1 tipclog[3762]: Established link <1.1.1:eth0-1.1.2:eth0> on network plane A 2019-09-27T07:13:25.369+02:00 SC-2-1 tipclog[3762]: Established contact with node <1.1.2> mds.log:<139>1 2019-09-27T07:13:25.368051+02:00 SC-2-1 osafamfd 8822 mds.log [meta sequenceId="418"] FCTRL: [me] <-- [node:1001002, ref:1599079723], RcvData[mseq:8066, mfrag:0, fseq:**539**], rcvwnd[acked:535, rcv:**535**, nacked:0], Error[msg loss] mds.log:<139>1 2019-09-27T07:13:25.378774+02:00 SC-2-1 osafimmd 8684 mds.log [meta sequenceId="337"] FCTRL: [me] <-- [node:1001002, ref:2606175488], RcvData[mseq:28901, mfrag:0, fseq:**773**], rcvwnd[acked:771, rcv:**771**, nacked:0], Error[msg loss] At this moment, the message loss will be restransmitted in scenario of tipc buffer overflow (TIPC_RETDATA), the message loss in this scenario (splitbrain) is not retransmitted. Prior that MDS_TIPC_FCTRL_ENABLED, in this scenario, amfd will forward msg with seq=539 to upper layer, and accept to miss the seq=536, 537, 538. With the fix of this ticket, mds will start the restransmission of 536, 537, 538. --- Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is subscribed to https://sourceforge.net/p/opensaf/tickets/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.___ Opensaf-tickets mailing list Opensaf-tickets@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-tickets
[tickets] [opensaf:tickets] #3090 mds: Improve tx probation timer for MDS_TIPC_FCTRL_ENABLED
- **status**: assigned --> fixed - **assigned_to**: Minh Hon Chau --> nobody - **Comment**: commit 153bb7152691365f787d73ef87e02e34f86eeffc Author: Minh Chau Date: Fri Oct 11 14:39:28 2019 +1100 mds: Add Intro message [#3090] --- ** [tickets:#3090] mds: Improve tx probation timer for MDS_TIPC_FCTRL_ENABLED** **Status:** fixed **Milestone:** 5.19.10 **Created:** Wed Sep 25, 2019 04:18 AM UTC by Minh Hon Chau **Last Updated:** Wed Sep 25, 2019 04:18 AM UTC **Owner:** nobody if MDS_TIPC_FCTRL_ENABLED is enabled only either at sender or receiver (1), the tx probation timer will be expired eventually. This tx probation timer currently relies on the mds user's data message sent from the peers to recognize whethere MDS_TIPC_FCTRL_ENABLED is enabled. The problem happens, if both peers enable MDS_TIPC_FCTRL_ENABLED, but after the sender subscribes the receiver's service and not sending any data until the tx probation expires. The sender thinks that the MDS_TIPC_FCTRL_ENABLED is disabled at receiver side and vice versa, hence the mds tipc flow control has no effect. The above problem may not happen within OpenSAF service since most of agent will send the Initialize message after mds subscription. However, if the case (1) happens, the tx probation prolongs until a data message is sent, which should be improved to reduce the tx probation timer. --- Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is subscribed to https://sourceforge.net/p/opensaf/tickets/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.___ Opensaf-tickets mailing list Opensaf-tickets@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-tickets
[tickets] [opensaf:tickets] #3091 mds: Add more overload test cases for mdstest
- **status**: review --> fixed --- ** [tickets:#3091] mds: Add more overload test cases for mdstest** **Status:** fixed **Milestone:** 5.19.10 **Created:** Wed Sep 25, 2019 04:22 AM UTC by Minh Hon Chau **Last Updated:** Fri Sep 27, 2019 11:03 AM UTC **Owner:** Thuan Add more mdstest for ticket #1960. A suggestion: - mdstest for overload . 2 senders overload one receivers . one sender overloads 2 receivers - mdstest for sna . without overload, mds sender gradually sends more than 65535 messages, and receivers should receive them all . with overload, mds sender sends a burst of greater than 65535 messages, and receivers should receive them all - mdstest for #1960 backward compatibility, in order to test the txprob timer . sender enables, receiver disables . sender enables, receiver enables . sender disables, receiver enables ... --- Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is subscribed to https://sourceforge.net/p/opensaf/tickets/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.___ Opensaf-tickets mailing list Opensaf-tickets@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-tickets