[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: Regarding kdelibs/kio
From:       Thiago Macieira <thiago () kde ! org>
Date:       2011-06-05 10:24:29
Message-ID: 1448264.guJBMyJA5d () doriath
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Em Sunday, 5 de June de 2011, ās 12:00:35, todd rme escreveu:
> How big is the kernel buffer, on average?  

A few tens of kilobytes. The size itself will vary according to kernel 
parameters.

> Is the connection done on a per-file or per-transfer basis?  (i.e. if you
> copy and paste 20 files
> in dolphin, is that one connection or 20?)  If this is a per-file
> thing, and it is in the hundreds of kilobytes to a few megabytes, the
> buffer may never fill.

That depends on the KIO scheduling: whether it will reuse the same slave or 
not. For sequential copies, I believe it reuses the slave.

However, I doubt that KIO does pipelining of commands, meaning that it will 
drain the buffer of a previous transfer before sending a new command. That 
means the new transfer, even if using the same buffer, will undergo the same 
non-buffer-full phase until it stabilises. On the average of a multiple-file-
transfer, the limit will be obeyed; but if you look closely, there will be 
spikes and periods with no transfer at all.

Also note that there are more buffers into play introducing delays. There's the 
ioslave chunk buffer too (which should be small, 4k or so), plus the actual 
network socket buffer, which needs to be filled up before the TCP algorithm 
begins delaying ACK replies and thus causing the remote to stop sending.

Anything smaller than 256 kB will probably not kick in the rate-limiting at 
all. And anything smaller than 2 MB will probably be at a very wrong transfer 
rate (10% above the limit or more). [from the point of view of the sender]

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

["signature.asc" (application/pgp-signature)]

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic