lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_Kpj0-g-o5yKJQu=oh773ugfYi-=pjVkJ8-N5OCyuz2EYWOw@mail.gmail.com>
Date:	Thu, 10 Jul 2014 01:41:37 +0200
From:	Alexey Orishko <alexey.orishko@...il.com>
To:	Bjørn Mork <bjorn@...k.no>
Cc:	joey ming <joey.zming@...il.com>, jim_baxter@...tor.com,
	"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
	zhao.ming9@....com.cn
Subject: Re: the side effect of using copy skb instead of skb_clone in cdc
 ncm/mbim driver

On Wed, Jul 9, 2014 at 6:01 PM, Bjørn Mork <bjorn@...k.no> wrote:
> Alexey's results were on modem hardware, and I am guessing the OS wasn't
> Linux.
NCM driver was deployed on Unix-like realtime OS and on various
embedded application CPU running Android.

> So NCM is probably a great win for the modems,
> and you are right: That is likely why this aggregating protocol was
> invented.

One comment for this and earlier passages about USB-IF: during
specification development there was no intention "to make life easier"
on the host side, the goal was to make mobile device more efficient
with a weak CPU (since 2007 situation changed significantly for mobile
computing power).

One important comment though about the main idea of the aggregation protocol:
- in order to get a *real* benefit of the protocol sender shall
initially send only a table containing pointers in a separate 512
bytes packet and only then send the rest of NTB.
- receiving side shall allocate DMA job for receiving 512 bytes first
and after parsing it, setup a job for receiving all IP packets into
separate data buffers. After that DMA engine will handle data without
involving CPU.
As a result: minimum CPU usage and all IP packets are placed into
separate skb-s.

However, I don't believe usbnet infrastructure is capable of doing
that, but it can be done in proprietary code in usb modem. I don't
have any info if someone actually manage to build such a system, which
required a lot of efforts; it is much easier to do data coping with
Intel Quad Core 3+GHz CPU with 8+GB RAM - you hardly notice any
difference comparing to embedded systems...

Regards,
Alexey
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ