discussion
[Top] [All Lists]

Re: [Discussion] Why dual traffic in 100Mbps envrionment is much less th

To: fu zhijun <fuzhijun.door@xxxxxxxxx>
Subject: Re: [Discussion] Why dual traffic in 100Mbps envrionment is much less than 100M?
From: "Xiaoliang (David) Wei" <weixl@xxxxxxxxxxx>
Date: Fri, 28 Apr 2006 09:29:06 -0700 (PDT)
We experienced similar problem: when the numbers of flows in the two
directions are small.

Our understanding is that this is the dynamic of TCP window control. You
can read the paper of Lixia Zhang et al if you want to see the details:

Lixia Zhang, Scott Shenker, David D. Clark: Observations on the Dynamics
of a Congestion Control Algorithm: The Effects of Two-Way Traffic. SIGCOMM
1991: 133-147
(Your case is the out of phase synchronization in that paper).

-David


---------------------------------------------------------
Xiaoliang (David) Wei
http://davidwei.org    Graduate Student, Netlab, Caltech
======================================

On Fri, 28 Apr 2006, fu zhijun wrote:

> Hi all,
> Is there anyone who has performed dual-direction tcp performance test (with
> two connections, one connection each direction) in 100M environment ?
> I am working on some modifications with Linux kernel to implement a TCP
> performance enhancement proxy for long fat pipes, currently the goal is for
> 100Mbps environment. Recently, I met a problem which took me a lot of time
> but still haven't been solved.
> In my test, I connect two Linux PC with a Linux bridge running netem(a wan
> emulator,able to set wan parameters such as delay,loss rate ), and running
> iperf to do performance test.
> When I set a delay of several hundred miliseconds, and run iperf to
> generate one direction traffic(set a large buffer with -w, of
> course),performance reachs to over 90Mbps in a few seconds. But when I run
> iperf for dual direction traffic (that means, two connections with the
> opposite direction),the connection can not reach peak performance, sometimes
> one achieve about 90M with the other one almost zero, and sometimes one is
> about 60M and the other is about 30M.
> To make test complete, I also tested cases with no delay, when I set a large
> buffer for iperf, I saw the samiliar issue; but with a small buffer, both
> connections can achieve about 90M.
>
> I also examined /proc/net/snmp, and there is almost no packet loss, and in
> the case with delay, the cwnd has grown to a value large enougth for 100Mbps
> thoughput.
>
> A glue I found is in the case of no delay, when I set a big buffer for
> iperf, the NIC driver called "netif_stop_queue" many times, while with a
> small buffer for iperf, there is seldom. I added some debug info in NIC
> driver to find this.
> Is this related to the problem I met? And how I can locate and solve this
> performance problem?
>
> Thanks a lot in advance.
>

_______________________________________________
Discussion mailing list
Discussion@xxxxxxxxxx
http://internal.web100.org/mailman/listinfo/discussion

<Prev in Thread] Current Thread [Next in Thread>