I don't remember having these problems when I was playing with 
non-STP bridges.. seem to recall all the initial timeouts could be 
tuned down. But for STP bridges you really need to have the 
initial forwarding delay to you might cause havok.

Attached is a old patch of mine to disable the startup timers 
entirely when STP is disabled (what one expects). Maybe it still 
works..

Regards
Henrik Nordstr�m
MARA Systems AB


On Friday 10 May 2002 16:00, penny wrote:
> Hi everybody:
>
> I'm trying to build a software Access Point , and using bridge
> utilities to connect the wired and wireless network... I find out
> that when I ping from wirelss client to wired host , the packet
> trip time always as slow as 15 sec , and then I find out that it is
> caused by bridge forward delay set to 15 sec default. I use  
> ./brctl setfd br0 0 , to disable the bridge forward delay, but the
> delay of 15 sec still exist.... I read the bridge information by 
> ./brctl showstp br0 and the content is below:
>
> br0
>  bridge id  8000.00508bd07a8f
>  designated root 8000.000143e21429
>  root port     1   path cost   100
>  max age    20.00   bridge max age    20.00
>  hello time     2.00   bridge hello time    2.00
>  forward delay    15.00   bridge forward delay    0.00
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> the " bridge forward delay" is change to 0.00 sec , but there still
> a " forward delay" set to 15 sec can anybody teach me how to
> disable the forward delay to 0 sec correctly....
>
>
> thanks sincerely...
>
>                                                                    
>                                                 from CL Kao ageing
> time   300.00   gc interval     4.00
>  hello timer     0.00   tcn timer     0.00
>  topology change timer    0.00   gc timer     2.56
>  flags
>
>
> eth0 (1)
>  port id  8001   state   forwarding
>  designated root 8000.000143e21429 path cost   100
>  designated bridge 8000.000143e21429 message age timer    0.97
>  designated port 802a   forward delay timer    0.00
>  designated cost    0   hold timer     0.00
>  flags
>
> wlan0 (2)
>  port id  8002   state   forwarding
>  designated root 8000.000143e21429 path cost   100
>  designated bridge 8000.00508bd07a8f message age timer    0.00
>  designated port 8002   forward delay timer    0.00
>  designated cost  100   hold timer     0.97
>  flags
--- linux-2.4.9/net/bridge/br_stp.c.orig	Sat Sep  1 15:19:24 2001
+++ linux-2.4.9/net/bridge/br_stp.c	Sat Sep  1 15:20:08 2001
@@ -369,11 +369,19 @@
 static void br_make_forwarding(struct net_bridge_port *p)
 {
 	if (p->state == BR_STATE_BLOCKING) {
+		if (p->br->stp_enabled) {
 		printk(KERN_INFO "%s: port %i(%s) entering %s state\n",
 		       p->br->dev.name, p->port_no, p->dev->name, "listening");
 
 		p->state = BR_STATE_LISTENING;
 		br_timer_set(&p->forward_delay_timer, jiffies);
+		} else {
+			printk(KERN_INFO "%s: port %i(%s) entering %s state\n",
+			       p->br->dev.name, p->port_no, p->dev->name, "forwarding");
+
+			p->state = BR_STATE_FORWARDING;
+			br_timer_clear(&p->forward_delay_timer);
+		}
 	}
 }
 

Reply via email to