On 8 Nov 2007, Xiaochuan Shen wrote:

> Dear Dave,
>
> Thank you very much for your answering.
>
>
> >Bandwidth limitation doesn't impact buffering directly .. it works by
> >delaying the send of packet N+1 by the transfer time computed for packet
> >N.
>
>
> This seems to me that nistnet leaves the queue length in an unconfigurable
> manner. It buffers up the packets that awaiting processing automatically
> while without a pre-set maximum queue length.
>

That is my impression, but I'm not positive since I've not explicitly
searched the docs and code.

> Is there a way to set pre-defined maximum queue length or buffer size in
> NIST Net? I know that Dummynet has "pipe length" configuration which can
> represent the buffer size effectively. Is there a parallel in NIST Net? and
> if not, is it feasible to do so with further development / code
> modification. I might be interested in doing this..

NistNet already has the ability to drop packets so there is no functional
reason why packets can't be dropped with additional code. I would probably
implement three controls:
   a.  Max Queue time
   b.  Max packet count queued
   c.  Max Bytes in Queue

The idea is that if too much data is sent to flow over a slow link, in the
real world, a router would drop packets .. NistNet should simulate that
behavior. For sure, once the delay for a TCP packet is longer than the Ack
timeout, a packet is a candidate for drop ... perhaps some amount longer
than the time.

Dave Morris


>
> Many thanks,
> Xiaochuan
>
> >On Thu, 8 Nov 2007, Xiaochuan Shen wrote:
> >
> >> Hello group,
> >>
> >>
> >>
> >> I am just wondering if anyone got any idea how much buffer NistNet uses
> >> (or in what way it determines how much buffer should be used) when
> >> bandwidth limitation is applied.
> >>
> >>
> >>
> >>
> >>
> >> This is what I implemented:
> >>
> >>
> >>
> >>
> >>
> >> server ----------------(100mb link) ---------------- NistNet box
> >> ------------------(100mb link) --------------------- Client
> >>
> >>
> >>
> >>
> >>
> >> I am transferring bulk TCP traffic from server to client (a huge file
> >> using FTP transfer).
> >>
> >>
> >>
> >> If I apply:
> >>
> >> Cnistnet server client -bandwidth 187500
> >>
> >>
> >>
> >> Then I observed the "queue length" is around 50 packets.
> >>
> >>
> >>
> >> If all of these packets are full packet of size 1500Byte, a queue
> >> length of 50 packets will introduce 50 * 1500 / 187500 = 400
> >> milli-seconds delay in my configuration. Is this value realistic in a
> >> real network? If not, why nistnet use such a length of buffer?
> >>
> >> I can understand nistnet has to buffer a number of packets before it
> >> can process the coming traffic but is this queue length configurable in
> >> nistnet?
> >>
> >>
> >>
> >> Thanks for anyone looking and answering!
> >>
> >>
> >>
> >> Regards,
> >>
> >> Xiaochuan
> >>
> >>
> >_______________________________________________
> >nistnet mailing list
> >nistnet@antd.nist.gov
> >http://www-x.antd.nist.gov/mailman/listinfo/nistnet
> >
>
_______________________________________________
nistnet mailing list
nistnet@antd.nist.gov
http://www-x.antd.nist.gov/mailman/listinfo/nistnet

Reply via email to