I''m trying to setup a bottlekneck scenario so I can see the effects of the RED qdisc on a congested interface. My example simulation code is at the bottom of this email if someone wants to see it. The following is a snippet form TCSIMs output. 0.602000 E : 0x80bc080 40 : inputB_eth0: 45000028 00000000 40060000 ... 0.602000 D : 0x80bc080 40 : inputB_eth0: 45000028 00000000 40060000 ... 0.602003 E : 0x80bbfd8 40 : router_eth2: 45000028 00000000 40060000 ... 0.602003 * : 0x80bbfd8 40 : router_eth2: enqueue returns CN (2) 0.602003 E : 0x80bc080 40 : router_eth2: 45000028 00000000 40060000 ... 0.602003 * : 0x80bc080 40 : router_eth2: enqueue returns CN (2) 0.604000 E : 0x80bbfd8 40 : inputA_eth0: 45000028 00000000 40060000 . As I hoped, packets seem to get dropped as marked by ''*'' when the interface gets congested. On closer inspection (with -v) tcsim output is: 0.182000 D : 0x80bc0a0 40 : inputB_eth0: 45000028 00000000 40060000 ... 0.182003 E : 0x80bbff8 40 : router_eth2: 45000028 00000000 40060000 ... 0.182003 e : 0x80bbff8 40 : <1> red (2:0) returns CN (2) 0.182003 e : 0x80bbff8 40 : <0> dsmark (1:0) returns CN (2) 0.182003 * : 0x80bbff8 40 : router_eth2: enqueue returns CN (2) 0.182003 E : 0x80bc0a0 40 : router_eth2: 45000028 00000000 40060000 ... 0.182003 e : 0x80bc0a0 40 : <1> red (2:0) returns CN (2) 0.182003 e : 0x80bc0a0 40 : <0> dsmark (1:0) returns CN (2) 0.182003 * : 0x80bc0a0 40 : router_eth2: enqueue returns CN (2) 0.184000 E : 0x80bbff8 40 : inputA_eth0: 45000028 00000000 40060000 ... I was exspecting the ''*'' to now print as ''x'' to indicate a dropped packet rather than some error occuring! The network setup looks something like this |inputA_eth0|--100 Mbs------] ]----|router_eth2|---10 Bs------|output_eth1| |inputB_eth0|--100 Mbs------] RED is added router_eth2, router_eth2 is set as a 10 Bs interface to force some congestion. Anyone know what''s going on? What does "router_eth2: enqueue returns CN (2)" mean? Any help is much appreciated. Stephen. bottleneck.tcsim ----------------- //inputA to router host { dev inputA_eth0 100 Mbps } //inputB to router host { dev inputB_eth0 100 Mbps } //the router host { dev router_eth0 100 Mbps dev router_eth1 100 Mbps dev router_eth2 10 //the bottleneck { egress { red( min 150 B, max 450 B, burst 200 B, limit 600 B, bandwidth 100 bps, probability 0.4, avpkt 80 B ); } } route 10.0.0.0 netmask 255.0.0.0 router_eth2 } //output destination from router host { dev output_eth0 10 Mbps dev output_eth1 100 Mbps route 10.0.0.2 netmask 255.0.0.0 output_eth1 } connect inputA_eth0 router_eth0 connect inputB_eth0 router_eth1 connect router_eth2 output_eth0 every 0.002s until 5s send inputA_eth0 TCP_PCK($tcp_sport = PORT_HTTP); every 0.002s until 5s send inputB_eth0 TCP_PCK($tcp_sport = PORT_SSH); time 6s end _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/