Re: [LARTC] doubt about esfq

2008-01-31 Thread Corey Hickey
Salatiel Filho wrote:
 In esfq README i have:
 
 Depth sets the number of slots. If the number of active flows is greater
than the number of slots, flows will end up sharing slots and ESFQ will no
longer be fair. If you anticipate more than 128 concurrently active flows,
you should use a larger depth and probably a larger divisor (see below).
 
If you expect there to be far fewer than 128 concurrent flows, you may
want to use a lower depth in order to benefit from slightly better latency
(because limit can then be lower as well).
 
 
 
 I am just curious, 128 active flows would mean [in ESFQ] 128 different
 IPs if i hash for ip dst ? or would it be 128 connections.
 For example let`s say i download from my machine using some download
 accelerator and put 128 parallel connections[ theorically of course :)
 ] , so  would i be using all slots or just one ?

Maybe. I had to re-read your message a couple times, and I'm not sure I
completely understand your question. In any case, you didn't specify
whether you are using ESFQ on the LAN interface or the WAN interface of
your router.

Scenario 1: downloading from 128 different IPs
  hash dst on LAN interface:
puts all packets in a single slot--after all, the destination IP is
that of your workstation. This approach would only be useful if
other workstations on your LAN were downloading as well, since their
packets would go in other slots.
  hash dst on WAN interface:
divides packets into 128 different slots[1], since the destination
IPs are those of the servers from which you are downloading. Note,
however, that if you're only downloading, these packets would be
empty ACKs, which are quite small. Unless your upstream bandwidth
is severely limited (or in heavy use for other reasons), the ACK
packets would not need any special consideration. This approach is
more useful for if you are actually uploading data and you want the
outbound traffic to be allocated fairly among the remote hosts.

Scenario 2: downloading from one IP, with 128 connections
  hash dst on LAN interface:
puts all packets on a single slot (same as in scenario 1).
  hash dst on WAN interface:
puts all packets in a single slot, since there is only one remote
host to which the packets are going.


From what I've written, you may gather that using hash dst is not of
much use for distributing inbound traffic to a single workstation. If
that is really what you need to do, then you can look into hash src.


[1] This is subject to the limitations of the hash function, and there
may be collisions that result in slots being shared. See the divisor
and perturb parameters.

-Corey
___
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc


[LARTC] doubt about esfq

2007-12-18 Thread Salatiel Filho
In esfq README i have:

Depth sets the number of slots. If the number of active flows is greater
   than the number of slots, flows will end up sharing slots and ESFQ will no
   longer be fair. If you anticipate more than 128 concurrently active flows,
   you should use a larger depth and probably a larger divisor (see below).

   If you expect there to be far fewer than 128 concurrent flows, you may
   want to use a lower depth in order to benefit from slightly better latency
   (because limit can then be lower as well).



I am just curious, 128 active flows would mean [in ESFQ] 128 different
IPs if i hash for ip dst ? or would it be 128 connections.
For example let`s say i download from my machine using some download
accelerator and put 128 parallel connections[ theorically of course :)
] , so  would i be using all slots or just one ?

-- 
[]'s
Salatiel

O maior prazer do inteligente é bancar o  idiota
   diante de um  idiota que banca o inteligente.
___
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc