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: <20071122.115433.121501746.takano@axe-inc.co.jp>
Date:	Thu, 22 Nov 2007 11:54:33 +0900 (JST)
From:	Ryousei Takano <takano-ryousei@...t.go.jp>
To:	hadi@...erus.ca
Cc:	takano-ryousei@...t.go.jp, netdev@...r.kernel.org,
	shemminger@...ux-foundation.org, t.kudoh@...t.go.jp
Subject: Re: [RFC][PATCH 1/3] NET_SCHED: PSPacer qdisc module

Hi jamal,

> Good stuff.
> I have not read your paper - There are NICs out there (chelsio comes to
> mind) which claim to do pacing and have shown impressive numbers with
> TCP. Is your approach similar? Are there patents involved by some of
> these hardware vendors? (It would not be suprising if they exist).
> 
As far as I know, no. (I have not the details of chelsio NICs.)
Pacing is a general idea, but our approach of implementation is a unique.
PSPacer makes bursty traffic which is often generated by TCP smooth
without any special hardware.

> The advantage with NICs is they have very good control of the timing
> (clock granularity being extremely important in cases like this) - what
> were your measurements based on i.e what clock source did you use on
> Linux?

The key idea of PSPacer is to determine transmission timing of packets 
by the number of bytes transferred. If packets are transferred back to 
back, the timing a packet is sent can be determined by the number of 
bytes sent before the packet. PSPacer fills the gaps between time 
aligned "real packets" (the packets which are sent by user program) by 
"gap packets". The real packets and gap packets are sent back to back, 
and thus the timing of transmission of each real packet can be precisely 
controlled by adjusting the gap packet size. As the gap packets, the IEEE 
802.3x PAUSE frames are used. PAUSE frames are discarded at a switch 
input port, and only real packets go through the switch keeping the 
original intervals. 

In the past, some software-based pacing schemes have been proposed.
These schemes use timer interrupt based packet transmission timing control.
Therefore, to achieve precise pacing, they require the operating system
to maintain a high resolution timer, which could incur a large overhead.

> Also, the idea of using a PAUSE frame to add gaps is interesting, but
> you should note that in linux a qdisc may be attached to any network
> device and this for example maybe a PPP device etc. What would you use
> for gaps in that case? 


> I apologize if the answers are in your papers - i just glossed over.
> 
> cheers,
> jamal 
> 
Best regards,
Ryousei Takano
-
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