Hi Joakim, Would you be interested in testing out a newer implementation that we now have? This is much closer to the 802.1D-2004 standard and has passed the UNH RSTP protocol tests. My updates have not yet made it to Stephen Hemminger's git repo, but I am attaching a a patch set on top of that, as well as a tarball of my git-repo with the additional commits. I don't know how the mailing list handles attachments, let me see anyway. I am interested in seeing this used more, and I will be happy to assist with any issues. Please let me know how things go. This is fairly new code, but it has gone through some testing and use. One limitation is that there is no mechanism to automatically restart or fall back to kernel STP if the RSTP daemon crashes. But it hasn't crashed lately in our testing. Thanks. Srinivas. P.S.: One note on bridge-stp and general bridge startup. We started out with needing an explicit rstpctl command to indicate to the daemon that it needs to run RSTP on a bridge, which is why there is the "exec /sbin/rstpctl rstp $bridge on ;;" (as you corrected in your patch.) But now, the daemon is written to enable RSTP when it finds that the kernel is treating the bridge as RSTP (/sys/class/net/<bridge_name>/bridge/stp_state is 2), so as long as you run "brctl stp <bridge_name> on" before briding the bridge interface up, you can just have a bridge-stp script that returns 0 (success) when you want rstpd to handle the bridge, and non-zero when you want kernel STP running on the bridge. That startup sequence we use is: 0. Have a bridge-stp that returns 0 if you want RSTP for the particular bridge name. Or returns 0 always if you intend to have only one bridge, and want RSTP. 1. Start rstpd 2. Configure the bridge (brctl addbr, brctl addif's ...) 3. brctl stp <bridge_name> on 4. ifconfig <bridge_name> up. (Or ifup <bridge_name>, which should apply any IP config.) On Sat, Mar 29, 2008 at 10:40 PM, Joakim Tjernlund <Joakim.Tjernlund@xxxxxxxxxxxx> wrote: > > -----Original Message----- > > From: Joakim Tjernlund [mailto:Joakim.Tjernlund@xxxxxxxxxxxx] > > Sent: den 29 mars 2008 17:22 > > To: 'Bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx' > > Subject: RSTP in http://git.kernel.org/?p=linux/kernel/git/shemminger/rstp.git;a=summary problems > > > > Hi List > > > > I cloned the above RSTP imp. and cross-compiled it to powerpc and tried > > in on my 2.6.23 kernel, but didn't get very far: > > > > Created a bridge, br0, with brctl and added two interfaces. > > started rstpd without args and ran rstpctl > > rstpctl showbridge br0 > > and all I get is > > CTL_get_bridge_state: Got return code 0, 1003 > > Failed to get bridge state: Err_Bridge_is_down > > > > The br0 i/f is UP amd RUNNING and so is the interfaces I added. > > I probably forgot to do something I suppose, but what? > > > > Jocke > > Never mind, user error on my part. > > I do wonder though if rstpd is production ready or still needs more > testing/fixes? > > > > Jocke > > _______________________________________________ > Bridge mailing list > Bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx > https://lists.linux-foundation.org/mailman/listinfo/bridge >
Attachment:
rstp_patch.gz
Description: GNU Zip compressed data
Attachment:
rstp.tgz
Description: GNU Zip compressed data
_______________________________________________ Bridge mailing list Bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/bridge