[<prev] [next>] [day] [month] [year] [list]
Message-ID: <42413.142.104.193.193.1227570383.squirrel@wm3.uvic.ca>
Date: Mon, 24 Nov 2008 15:46:23 -0800 (PST)
From: "luming" <luming@...c.ca>
To: linux-kernel@...r.kernel.org
Cc: pan@...c.ca
Subject: adaptive mode in Linux bonding driver
I am currently working on my project which includes some modification to
the kernel bonding driver. I have created a new mode in which each ip
packet will be acknowledged by a linklayer acknowledgment. This ack will
trigger the sender to increase a counter and when the sender send out
packets, it will decrease the SAME counter.
To implement this , I have defined the counter in the structure slave. I
have registered to receive ip packet and ack packets. The problem we found
is when we bond two links (100Mbps) together with this mode, the sending
rate never go above 107Mbps. It seems something slows down the sending
rate. After some investigation, we found that if we access the same
counter in both the sending function and the receiver handler, this
problem will happen. If we only access this counter in one of these two
functions, it will be fine. If we decrease the link bandwidth or the ack
sending frequency, we will see the sending rate increasing. So we think may
be too many acks coming in a very short time that cause too many
interrupts and slow down the system.
(We are using PIII 700MHz with linux 2.6.15-7)
My question is do you know what causes this problem and how can it be solved?
Thanks very much!
I am not subscribed in the list so please reply me back at: luming@...c.ca.
Thanks
Ming
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists