From: Vlad Yasevich <vladislav.yasevich@hp.com>
To: Steve Hill <steve.hill@dialogic.com>
Cc: netdev@vger.kernel.org, lksctp-developers@lists.sourceforge.net,
Sridhar Samudrala <sri@us.ibm.com>
Subject: Re: [Lksctp-developers] Fw: Intermittent SCTP multihoming breakage
Date: Wed, 07 Feb 2007 15:45:23 -0500 [thread overview]
Message-ID: <45CA3A63.8000306@hp.com> (raw)
In-Reply-To: <E096369D937D3A4DB271B382850C5C5F48E60D@pysmail.eicon.com>
[-- Attachment #1: Type: text/plain, Size: 853 bytes --]
Hi Steve
I think I've tracked this down. Can you apply the attached patch on top
of the one I posted before and re-run your test.
With both patches, I was able flip-flop the downed interface multiple times
and in all cases path failover completed and data flow resumed.
Here is the modified script I was running:
#!/bin/sh
net1="$1"
net2="$2"
flush() {
iptables -F
echo "Flush"
exit
}
trap flush EXIT
while true; do
# clear table
iptables -F
echo "flushed"
sleep 5
# block net1
iptables -A INPUT -i "$net1" -p sctp -j DROP
echo "set net1"
sleep 5
# clear table
iptables -F
echo "flushed"
sleep 5
# block net2
iptables -A INPUT -i "$net2" -p sctp -j DROP
echo "set net2"
sleep 5
done
I was able to run this script for 10 minutes sustaining the message flow.
-vlad
[-- Attachment #2: 0001-SCTP-Strike-the-transport-before-updating-rto.patch --]
[-- Type: text/x-patch, Size: 1322 bytes --]
>From 72d6856f7e45a17e0910e0eacd1a01d44fafd1c0 Mon Sep 17 00:00:00 2001
From: Vlad Yasevich <vladislav.yasevich@hp.com>
Date: Wed, 7 Feb 2007 14:58:25 -0500
Subject: [PATCH] [SCTP] Strike the transport before updating rto
Once we reach a poing where we exceed the max.path.retrans
strike the trasport before updating the rto. This will force
transport switch at the right time, instead of 1 retransmit too
late.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
---
net/sctp/sm_statefuns.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index fbbc9e6..801f9d6 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -4605,12 +4605,12 @@ sctp_disposition_t sctp_sf_do_6_3_3_rtx(const struct sctp_endpoint *ep,
* sent as soon as cwnd allows (normally when a SACK arrives).
*/
- /* NB: Rules E4 and F1 are implicit in R1. */
- sctp_add_cmd_sf(commands, SCTP_CMD_RETRAN, SCTP_TRANSPORT(transport));
-
/* Do some failure management (Section 8.2). */
sctp_add_cmd_sf(commands, SCTP_CMD_STRIKE, SCTP_TRANSPORT(transport));
+ /* NB: Rules E4 and F1 are implicit in R1. */
+ sctp_add_cmd_sf(commands, SCTP_CMD_RETRAN, SCTP_TRANSPORT(transport));
+
return SCTP_DISPOSITION_CONSUME;
}
--
1.5.0.rc3.g6506
next prev parent reply other threads:[~2007-02-07 20:51 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-06 9:26 [Lksctp-developers] Fw: Intermittent SCTP multihoming breakage Steve Hill
2007-02-06 21:48 ` Vlad Yasevich
2007-02-07 20:45 ` Vlad Yasevich [this message]
2007-02-08 14:07 ` Steve Hill
2007-02-08 14:15 ` Vlad Yasevich
-- strict thread matches above, loose matches on Subject: below --
2007-02-05 17:26 Steve Hill
2007-02-05 20:34 ` Vlad Yasevich
2007-02-05 16:53 Steve Hill
2007-02-05 17:07 ` Vlad Yasevich
2007-02-05 14:13 Steve Hill
2007-02-05 16:39 ` Vlad Yasevich
2007-01-03 23:46 Andrew Morton
2007-01-04 0:59 ` Sridhar Samudrala
2007-01-10 11:55 ` Steve Hill
2007-01-10 20:10 ` Sridhar Samudrala
2007-01-11 10:10 ` Steve Hill
2007-01-25 16:32 ` [Lksctp-developers] " Vlad Yasevich
2007-01-25 16:37 ` Vlad Yasevich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=45CA3A63.8000306@hp.com \
--to=vladislav.yasevich@hp.com \
--cc=lksctp-developers@lists.sourceforge.net \
--cc=netdev@vger.kernel.org \
--cc=sri@us.ibm.com \
--cc=steve.hill@dialogic.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.