Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
In Darwin a mode bit is defined as below:
Bit mode; // Advertising mode: 1 conservative, 0 (default) aggressive
In mode 1, congested node (head node) estimates the fair rate and advertises it and upstream nodes have to follow these advertised rate.
In mode 0, since the upstream nodes periodically increment their allow_rate in every decay interval, the congested node can not add more than its fair rate (it can only add as much as left over bandwidth on the ring span). This add rate in turn is feedback to upstream nodes through fairness massages, hence upstream nodes scale back their allow_rate to the advertised rate periodically. Eventually it converges to the fair rate.
Please also see my in line comments.
Thanks.
Necdet
Reuven Zeitak wrote:
Dear All,
I am reading the darwin draft, section 12.
I seem to be missing something essential:
When a node is congested, it advertises a
weighted version of its add_rate, so that upstream
stations will "reduce" their rates. My understanding is that
add_rate is the bandwidth the congested node adds to the ring.
I have two questions:
1) Under what circumstances does the node decrease its own rate ( making add_rate smaller for the next iteration)?
2) Is it obvious that upstream nodes will really reduce their rates ( considering that they have various weights themselves)?
Here is an example of what I mean:
No reserved/ high priority BW in the system.
2 active nodes : rest of the ring--->A---> B---> rest of the ring
link capacity is 10 units of BW
each node has equal weight (1)
Case 1
node A transmits 6 units, node B transmits 4 units.
B is congested, and sends its normalised value 4 /1 to node A
which reduces to 4 giving a total of 8 units of rate ==> congestion removed.
This seems to operate correctly.
case 2
node A transmits 4 units, node B transmits 6 units.
B is congested, and sends its normalised value 6/1 to node A
which *increases* to 6 giving a total of 12 units of rate ==> congestion is increased.
case 3
node A has weight 2,node B has weight 1
node A transmits 6 units, node B transmits 4 units.
B is congested, and sends its normalised value 4/1 to node A
which increases its rate to 2*4/1 giving a total of 12 units of rate ==> congestion is increased.
I am sure that I have misunderstood something here. Can someone please help?
Reuven Zeitak
begin:vcard n:Uzun;Necdet tel;work:408 853 0461 x-mozilla-html:TRUE url:www.cisco.com version:2.1 email;internet:nuzun@xxxxxxxxx adr;quoted-printable:;;Cisco Systems, Inc.=0D=0A170 W. Tasman Drive SJ-16-3=0D=0A;San Jose;CA;95134; fn:Necdet Uzun end:vcard