Date: Sat, 25 Sep 2004 09:01:16 +0900 From: Shunsuke SHINOMIYA <shino@fornext.org> To: Robert Watson <rwatson@freebsd.org> Cc: freebsd-current@freebsd.org Subject: Re[2]: High rate traffic silence an em interface. Message-ID: <20040925074848.138C.SHINO@fornext.org> In-Reply-To: <Pine.NEB.3.96L.1040924135726.82478I-100000@fledge.watson.org> References: <20040925011147.1388.SHINO@fornext.org> <Pine.NEB.3.96L.1040924135726.82478I-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Robert,=20 thank you for your replying. > You might try using the netrate tool I committed to > src/tools/tools/netrate to try and figure out the threshold transmission > level necessary to trigger the problem. I can reproduce the problem by using netrate from 6-current. 1. send traffic which transmission rate is equal with an output interface's one. (12500pps =3D 10Mps / (38octet + 28octet + 34octet)) > # ifconfig em1 | grep -A 2 media > media: Ethernet 10baseT/UTP <full-duplex> > status: active > # ./netsend 10.1.1.8 8192 34 12500 10 > Sending packet of payload size 34 every 0.000080000 for 10 seconds >=20 > start: 1096066849.000000000 > finish: 1096066859.000012064 > send calls: 125000 > send errors: 0 > approx send rate: 12500 > approx error rate: 0 > waited: 4192850 > approx wait rate: 33 2. send traffic which transmission rate exceeds output interface's one. A difference from 1. is a payload size. (34 -> 35) > # ./netsend 10.1.1.8 8192 35 12500 10 > Sending packet of payload size 35 every 0.000080000 for 10 seconds > send: No buffer space available > send: No buffer space available > send: No buffer space available =2E..<snip> > send: No buffer space available > send: No buffer space available > send: No buffer space available >=20 > start: 1096066886.000000000 > finish: 1096066896.000076879 > send calls: 125000 > send errors: 59409 > approx send rate: 6559 > approx error rate: 0 > waited: 3088416 > approx wait rate: 24 3. send traffic which transmission rate exceeds output interface's one. A difference from 1. is a packet rate.(12500 -> 12600) > # ./netsend 10.1.1.8 8192 34 12600 10 > Sending packet of payload size 34 every 0.000079365 for 10 seconds > send: No buffer space available > send: No buffer space available > send: No buffer space available =2E.. <snip> > send: No buffer space available > send: No buffer space available > send: No buffer space available >=20 > start: 1096067129.000000000 > finish: 1096067139.000860528 > send calls: 125119 > send errors: 65311 > approx send rate: 5980 > approx error rate: 0 > waited: 2931359 > approx wait rate: 23 4. another combination. It seems depending on a traffic rate, not packet rate and interrupt rate. > # ./netsend 10.1.1.8 8192 934 1250 10 > Sending packet of payload size 934 every 0.000800000 for 10 seconds >=20 > start: 1096067795.000000000 > finish: 1096067805.000017967 > send calls: 12500 > send errors: 0 > approx send rate: 1250 > approx error rate: 0 > waited: 4948920 > approx wait rate: 395 > # ./netsend 10.1.1.8 8192 934 1300 10 > send: No buffer space available > send: No buffer space available > send: No buffer space available =2E.. <snip> > send: No buffer space available > send: No buffer space available > send: No buffer space available >=20 > start: 1096067716.000000000 > finish: 1096067726.000841883 > send calls: 13001 > send errors: 2841 > approx send rate: 1016 > approx error rate: 0 > waited: 4887009 > approx wait rate: 375 Would you reproduce the problem by this procedures? --=20 Shunsuke SHINOMIYA <shino@fornext.org>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040925074848.138C.SHINO>