[rds-devel] So what is RDS congestion ?
Or Gerlitz
ogerlitz at voltaire.com
Thu Dec 6 04:24:25 PST 2007
Hi Rick, Olaf,
Can you take a look on my comments/questions below?
thanks,
Or.
Or Gerlitz wrote:
> Richard Frank wrote:
>> When an application is recving RDS messages, they are queued at the
>> socket. If the application is not draining these messages promptly
>> then they may queue at the socket up until so_rcvbuf limit is reached.
>> If so_rcvbuf limit is reached RDS sends a back pressure message
>> (congestion update) to the RDS sender node informing it to back
>> pressure sends to the specific destination. When an RDS sender
>> attempts to send to a congested recv socket the sender is back
>> pressured via eagain.
>
>>> Richard Frank wrote:
>>> Re: [rds-devel] RDS IB transport software flow control?
>>> Memory consumption is bounded by so_sndbuf + so_rcvbuf * number of
>>> active endpoints.
>
> Olaf, Rick (Hi, I'm trying to get back on track)
>
> I understand that RDS/IB is using one QP per --ip-- (outgoing and
> incoming) destination address. So there is 1:N mapping between a QP
> which may be used by many RDS sockets with different <src,dst> port
> combinations, but same <src,dst> ip signature, correct?
>
> If yes, then generally speaking, there are two levels of buffer
> management to handle: the QP level, and the socket level.
>
> From reading Rick's FAQ piece and looking on the discussion you held
> over the "RDS IB transport software flow control" thread, I could not
> realize what is the design.
>
> Does the code just computes as in the equation above and posts into the
> QP the additive sum of all the sockets that use it?
>
>> A back pressured sender can either issue a blocking send and wait for
>> can wait in poll with pollin. When the recv socket is un-congested -
>> due to the process pulling off messages, a congestion update message
>> is sent to nodes with back pressured senders which results in waking
>> poll waiters with pollin.
>
> probably a newbie question: why not use pollout?
>
> Or.
>
>
> _______________________________________________
> rds-devel mailing list
> rds-devel at oss.oracle.com
> http://oss.oracle.com/mailman/listinfo/rds-devel
More information about the rds-devel
mailing list