Re: [zd1211-devs] Copy seems to be working, speed is the next issue

2007-01-05 Thread Ulrich Kunitz
On 07-01-04 20:04 Jon Smirl wrote:

  You should also now retest the vendor driver and see if you can
  reproduce the vendor-driver-is-2x-faster thing.
 
 Linux version of the vendor driver is running about the same speed as
 zd1211rw. It it the Windows version of the vendor driver that is
 faster for the copies. About 50% right now.

Unless we start to reengineer the Windows driver, there is
nothing we can do about this. It might even be that the Windows
driver is using a different firmware.

As Daniel proposed it is worthwhile to check against the Linux
vendor driver. If our driver has a lower performance, than there
is something we can do about it.

 I'll try adding some more hints to the debug output. I wouldn't expect
 to retransmit enough times to cause a frame transmission error. If it
 is noise there would normally be only a single retransmission.
 Multiple retransmissions and then frame transmit failure implies a bug
 somewhere.

I have trouble to follow the logic here. There are several
retransmissions until the device gets the ACK. There is nothing
which guarantees, that the second transmission must succeed.

 When I was using kismet the traces looked more to me like the ACK was
 being transmitted by the AP and the zd1211rw wasn't listening.

Please recognize that the fact that you see the ACK elsewhere,
doesn't mean, that the packet can be seen at another point. There
are interferences. The other fact is that the ZD1211 devices are
cheap devices, the RF transceivers have low quality.

 BTW per packet low level synchronous ACKs is a terrible design for a
 MAC layer. I don't see that they needed any acks at all. UDP is
 unreliable and TCP will recover. TCP also piggybacks acks on return
 traffic which is much more efficient. Those acks waste a huge chunk of
 bandwidth.

This is the way the 802.11 standard has been designed. As far as I
know there is discussion about doing a single ACK for several
packets in 802.11n. There are some vendor based optimizations to
merge several packets into a single packet and so on, but they are
not interoperable.

Kind regards,

Ulrich

-- 
Uli Kunitz

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Zd1211-devs mailing list - http://zd1211.ath.cx/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs


Re: [zd1211-devs] Copy seems to be working, speed is the next issue

2007-01-05 Thread Jon Smirl
On 1/5/07, Ulrich Kunitz [EMAIL PROTECTED] wrote:
  I'll try adding some more hints to the debug output. I wouldn't expect
  to retransmit enough times to cause a frame transmission error. If it
  is noise there would normally be only a single retransmission.
  Multiple retransmissions and then frame transmit failure implies a bug
  somewhere.

 I have trouble to follow the logic here. There are several
 retransmissions until the device gets the ACK. There is nothing
 which guarantees, that the second transmission must succeed.

Noise is somewhat random, so it should result in differing numbers of
retransmission attempts. If there is always the same number of
retransmission attempts, it is more likely a bug.

-- 
Jon Smirl
[EMAIL PROTECTED]

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Zd1211-devs mailing list - http://zd1211.ath.cx/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs


Re: [zd1211-devs] Copy seems to be working, speed is the next issue

2007-01-04 Thread Jon Smirl
On 1/4/07, Daniel Drake [EMAIL PROTECTED] wrote:
 Jon Smirl wrote:
  I just did a 15GB copy test and averaged 13Mb/sec, Windows can copy
  the same files at 19Mb/sec. It appears that CIFS has higher throughput
  than SMBFS (10Mb).

 I think using such a high level protocol for speed tests is a mistake
 and has certainly wasted some of your time so far. You should try
 low-level TCP transfers using netcat or something. I have personally had
 trouble making cifs/samba perform at something comparable to the
 available network bandwidth.

Yes I got burnt on the SMB copy. I never suspected that the code in
the shipping kernel wouldn't have worked after all these years. But it
must be degrading because of CIFS taking over for it and no one is
maintaining it. I wasn't aware that it wasn't being maintained.

I don't care about really getting 20Mb+ performance out of the link,
I'm just using performance as another way of looking for bugs.

I'll have to rearrange my hardware to do netcat type of testing. Is
there any way to get two zd1211rw devices talking to each other?

 You should also now retest the vendor driver and see if you can
 reproduce the vendor-driver-is-2x-faster thing.

Linux version of the vendor driver is running about the same speed as
zd1211rw. It it the Windows version of the vendor driver that is
faster for the copies. About 50% right now.

 You also need to explicitly test downstream and upstream separately, and
 classify the problems by direction.

  I have 1000's of these in my log. 10-15 per second
  handle_retry_failed_int() retry failed interrupt

 These are generated for frame transmission failures (read: no ACK). You
 get several of them for each frame as they are retried multiple times
 before it gives up.

I got 89,330 of these over the 2.5hr copy. There were about 10M
outbound packets so that implies a packet transmission failure rate of
1% (or received ack failure). 89K seems like a lot given that I only
got one CRC error in 15GB.

I'll try adding some more hints to the debug output. I wouldn't expect
to retransmit enough times to cause a frame transmission error. If it
is noise there would normally be only a single retransmission.
Multiple retransmissions and then frame transmit failure implies a bug
somewhere.

When I was using kismet the traces looked more to me like the ACK was
being transmitted by the AP and the zd1211rw wasn't listening.

BTW per packet low level synchronous ACKs is a terrible design for a
MAC layer. I don't see that they needed any acks at all. UDP is
unreliable and TCP will recover. TCP also piggybacks acks on return
traffic which is much more efficient. Those acks waste a huge chunk of
bandwidth.

  I also have a few of these, once every minute
  [21901.205436] zd1211rw 5-1.4:1.0: zd_usb_ioread16v() read timed out
  [21901.205442] zd1211rw 5-1.4:1.0: zd_chip_control_leds error -110

 You could try disabling the LED code and seeing if that has an effect on
 performance.

That might be worthwhile, doesn't that pending read block the whole
USB channel while it is timing out?

 CRC failed, ignore it, frame was discarded.

Only got one of those in 15GB.

-- 
Jon Smirl
[EMAIL PROTECTED]

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Zd1211-devs mailing list - http://zd1211.ath.cx/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs