qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gordon Sim <g...@redhat.com>
Subject Re: AMQP 1.0 session outgoing-window usage / meaning
Date Tue, 07 Jul 2015 11:29:00 GMT
On 07/07/2015 07:22 AM, Rafael Schloming wrote:
> IIRC, the definition of the outgoing-window was largely motivated by the
> need to express to receivers certain conditions under which they may be
> required to settle deliveries in order to receive more. For example if an
> implementation uses a fixed sized array to store deliveries, and this array
> is keyed by the offset of the delivery-id from the smallest unsettled
> delivery, then although the sender may have sufficient credit to send more
> transfers, it may not actually be capable of doing this because the next
> delivery-id would land outside the range of deliveries that are currently
> represented within its fixed size array.

The outgoing-window is measured in transfers, right? So in this case 
each slot in the array would be a *transfer* with a single delivery 
possibly spanning multiple slots.

> This could happen for example if
> the receiver issues N credits (where N is the size of the sender's fixed
> array) and settles deliveries 2 through N. The sender is then stuck with an
> unsettled delivery in the first slot of its fixed sized array and cannot
> send another delivery until that first delivery is settled.
>
> Given this, it's certainly true an outgoing-window of 0 is kind of strange
> and useless.

Isn't that exactly the mechanism by which a sender, such as the one in 
your description above, would indicate its inability to send further 
transfers?

> It's probably also true that it is never super useful for the
> incoming window of the receiver to be larger than the outgoing window of
> the sender (or vice versa) since one can't ever exceed the other, so I'd
> say your largest-possible-int default and max-frame-like treatment are
> fairly appropriate.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Mime
View raw message